Reconstrucción de Superficies de Forma Libre Mediante
Funciones NURBS
Ernesto Cuartas Morales
Universidad Nacional de Colombia
Sede Manizales
Facultad de Ingeniería y Arquitectura
Maestría en Ingeniería - Automatización Industrial
Manizales, Colombia
2006
Reconstrucción de Superficies de Forma Libre Mediante
Funciones NURBS
Por
Ernesto Cuartas Morales, Ing
Director
Flavio Prieto, PhD
Trabajo de Grado
Presentada a la Facultad de Ingeniería y Arquitectura de la
Universidad Nacional de Colombia
Sede Manizales
En cumplimiento
de los Requerimientos
para el Grado de
Magister en Ingeniería - Automatización Industial
Universidad Nacional de Colombia
Sede Manizales
Resumen
El modelado 3D es uno de los campos de investigación con más auge en el área de
visión por computador. La reconstrucción de objetos del mundo real en un computador a
cobrado un nuevo significado gracias al avance en los digitalizadores 3D, que rastrean la
geometría de un objeto con una mayor precisión en cada nueva generación. El problema de
convertir una densa nube de puntos desorganizados en un modelo útil es uno de los campos
de mayor interés. Este trabajo aporta un método de reconstrucción de vistas parciales de
objetos tridimensionales mediante funciones NURBS, haciendo uso de la proyección planar
de los datos y la triangulación planar de Delaunay para particionar en cuadriláteros una
reconstrucción inicial que puede contener bordes irregulares y agujeros. Posteriormente se
parametrizan los vecindarios con funciones NURBS bicúbicas en un proceso de proyección
que permite rastrear la información espacial del modelo a reconstruir. La aproximación es
optimizada mediante un sistema lineal generalizante que permite ajustar los pesos y los
puntos de control en la parametrización.
Abstract
The 3D modeling is one of the investigation fields with more work’s in the com-
puter vision area. The computational reconstruction of real world objects have now a new
meaning, this thanks to the advance in the 3D digitalizators. Whit these, the geometry of an
object can be captured with a better precision in each new one generation. The problem of
transforming a dense disorganized cloud of points in an useful model is one of the fields of
most interest. This work illustrates a method of NURBS reconstruction for partial views of
three dimensional objects. The reconstruction is made through planar projection of the data
and the Delaunay triangulation for the quadrilaterals split of the model reconstruction, that
can contain irregular borders and holes. Later, the parametrization process is made in each
one of the neighborhoods using bicubic NURBS functions. A projection process allows
to approach the space information of the object. The approach is optimized with a lineal
system, optimizing the control points and the weights after the parametrization process.
V
Agradecimientos
ERNESTO CUARTAS MORALES
Universidad Nacional de Colombia
Sede Manizales
Abril 2006
A Flavio Prieto por la confianza que me brindó para llevar a cabo este proyecto.
A mi familia por su apoyo incondicional.
A los integrantes del grupo PCI.
A Amanda y Alba.
A Lina.
Al DINAIN que financió el proyecto de investigación “Modelado de Superficies de Forma
Libre Empleando Técnicas de Visión Artificial”.
Al programa de becas “Estudiantes Sobresalientes de Posgrado” de la Universidad
Nacional de Colombia.
VI
Contenido
Portada I
Resumen IV
Abstract V
Agradecimientos VI
Contenido VII
Lista de Tablas XI
Lista de Figuras XII
Lista de Anexos XV
Introducción 1
Capítulo 1. Reconstrucción de Superficies 4
1.1. Generación de modelos computacionales a partir de muestras de la superfi-
cie de un objeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1. Reconstrucción mediante funciones B-Splines . . . . . . . . . . . . 6
1.2. Reconstrucción propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3. Consideraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
VII
VIII
Capítulo 2. Particionamiento Cuadrilateral de Vistas Parciales 12
2.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2. Geometría de los objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1. Disposición matricial ordenada de las funciones NURBS . . . . . . 17
2.3. Proyección planar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.1. Extracción del borde . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4. Particionamiento cuadrilateral . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.1. Triangulación de Delaunay . . . . . . . . . . . . . . . . . . . . . . 22
2.4.2. Vecindarios cuadrilaterales a partir del grafo de Delaunay . . . . . 23
2.4.3. Vecindarios cuadrilaterales sobre los bordes . . . . . . . . . . . . . 24
2.4.4. Vecindarios cuadrilaterales en los agujeros . . . . . . . . . . . . . 26
2.4.5. Consideraciones acerca de la metodología propuesta . . . . . . . . 28
2.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Capítulo 3. Parametrización de Superficies NURBS 32
3.1. Selección de puntos de control en el plano . . . . . . . . . . . . . . . . . . 33
3.1.1. Caso cuadrilateral regular . . . . . . . . . . . . . . . . . . . . . . 33
3.1.2. Caso cuadrilateral irregular . . . . . . . . . . . . . . . . . . . . . . 35
3.2. Aproximación de la profundidad . . . . . . . . . . . . . . . . . . . . . . . 38
3.2.1. Proyección punto a punto . . . . . . . . . . . . . . . . . . . . . . . 38
3.2.2. Proyección punto a triángulo . . . . . . . . . . . . . . . . . . . . . 41
3.2.3. Consideraciones acerca de la metodología propuesta . . . . . . . . 45
3.3. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Capítulo 4. Continuidad Entre Funciones NURBS 47
4.1. Continuidad en Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2. Continuidad entre parches NURBS . . . . . . . . . . . . . . . . . . . . . . 49
4.2.1. Continuidad de vértices C0 . . . . . . . . . . . . . . . . . . . . . . 49
4.2.2. Continuidad de normales C l . . . . . . . . . . . . . . . . . . . . . 49
IX
4.3. Ajuste de la continuidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3.1. Continuidad entre ejes . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3.2. Continuidad en los vértices . . . . . . . . . . . . . . . . . . . . . . 52
4.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Capítulo 5. Optimización de Funciones NURBS 55
5.1. Formulación del problema . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.1.1. Optimización lineal . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.2. Métrica del error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.2.1. Proyección de superficies . . . . . . . . . . . . . . . . . . . . . . . 58
5.3. Consideraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Capítulo 6. Evaluación y Resultados 62
6.0.1. Configuración del experimento . . . . . . . . . . . . . . . . . . . . 65
6.1. Particionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.1.1. Caracterización del borde . . . . . . . . . . . . . . . . . . . . . . 65
6.1.2. Selección de los puntos de control . . . . . . . . . . . . . . . . . . 66
6.1.3. Selección aleatoria . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.1.4. Selección aleatoria restringida . . . . . . . . . . . . . . . . . . . . 67
6.1.5. Tiempo de cálculo . . . . . . . . . . . . . . . . . . . . . . . . . . 68
6.2. Parametrización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
6.2.1. Selección de puntos de control en el plano . . . . . . . . . . . . . . 68
6.2.2. Indexación cuadrada . . . . . . . . . . . . . . . . . . . . . . . . . 69
6.2.3. Proyección punto a punto . . . . . . . . . . . . . . . . . . . . . . 70
6.2.4. Proyección punto a triángulo . . . . . . . . . . . . . . . . . . . . . 71
6.2.5. Error en la aproximación . . . . . . . . . . . . . . . . . . . . . . . 73
6.3. Continuidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
6.3.1. Tiempo de cálculo . . . . . . . . . . . . . . . . . . . . . . . . . . 75
6.4. Optimización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
X
6.5. Reconstrucción completa . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Capítulo 7. Conclusiones y Trabajo Futuro 79
7.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
7.2. Trabajo Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Bibliografía 82
Apéndice A. NURBS A–1
A.1. Curvas y Superficies de Bézier . . . . . . . . . . . . . . . . . . . . . . . . A–2
A.2. Funciones Base Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–3
A.2.1. Propiedades de las Funciones Base Splines . . . . . . . . . . . . . A–4
A.2.2. Vector paramétrico de nodos . . . . . . . . . . . . . . . . . . . . . A–5
A.3. B-Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–7
A.3.1. Curvas B-Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . A–7
A.3.2. Superficies B-Splines . . . . . . . . . . . . . . . . . . . . . . . . . A–8
A.4. B-Splines Racionales no Uniformes (NURBS) . . . . . . . . . . . . . . . . A–9
A.4.1. Propiedades de la representación racional con B-Splines . . . . . . A–10
A.4.2. Curvas y Superficies NURBS . . . . . . . . . . . . . . . . . . . . A–12
A.4.3. Grados de libertad . . . . . . . . . . . . . . . . . . . . . . . . . . A–13
Apéndice B. Algoritmos de reconstrucción B–1
B.1. Algoritmo de Delaunay . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–1
Lista de Tablas
6.1. Borde - caracterización . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.2. Optimización con 9 vecindarios . . . . . . . . . . . . . . . . . . . . . . . 76
6.3. Optimización con 14 vecindarios . . . . . . . . . . . . . . . . . . . . . . . 76
XI
Lista de Figuras
1.1. Reconstrucción de una vista parcial . . . . . . . . . . . . . . . . . . . . . 9
1.2. Metodología de reconstrucción propuesta . . . . . . . . . . . . . . . . . . 10
2.1. Vecindario cuadrilateral poliédrico . . . . . . . . . . . . . . . . . . . . . . 13
2.2. Reconstrucción de Loop, tomado de [20] . . . . . . . . . . . . . . . . . . . 14
2.3. Particionamiento cuadrilateral de Hoppe, tomado de [17] . . . . . . . . . . 15
2.4. Geometría de los objetos 3D . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.5. Ordenamiento de puntos de control en Splines . . . . . . . . . . . . . . . . 18
2.6. Mapeo matricial ordenado en vecindario irregular . . . . . . . . . . . . . . 19
2.7. Triángulos de borde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.8. Ejemplo de caracterización del borde . . . . . . . . . . . . . . . . . . . . 21
2.9. Vecindarios cuadrilaterales regulares . . . . . . . . . . . . . . . . . . . . . 23
2.10. Disposición de ejes radiales . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.11. Ejes radiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.12. Particionamiento en agujeros . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.13. Metodología de particionamiento propuesta . . . . . . . . . . . . . . . . . 28
2.14. Particionamiento cuadrilateral . . . . . . . . . . . . . . . . . . . . . . . . 29
3.1. Parametrización - caso regular . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2. Parametrización - caso irregular . . . . . . . . . . . . . . . . . . . . . . . 36
3.3. Parametrización planar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
XII
XIII
3.4. Proyección punto a punto . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.5. Pertenencia de un punto a un triángulo . . . . . . . . . . . . . . . . . . . . 42
3.6. Proyección punto a triángulo . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.7. Estrategia de Parametrización Propuesta . . . . . . . . . . . . . . . . . . . 45
3.8. Parametrización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1. Proyección en superficies . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2. Continuidad entre Ejes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3. Continuidad en los vértices . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.4. Ajuste de Continuidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.1. Proyección en superficies . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.1. Conjunto de datos rostro . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.2. Conjunto de datos válvula . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.3. Conjunto de datos buda . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.4. Conjunto de datos cerámica precolombina . . . . . . . . . . . . . . . . . . 64
6.5. Conjunto de datos máscara . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6.6. Particionamiento - Selección de puntos de control . . . . . . . . . . . . . . 67
6.7. Parametrización - indexación cuadrada . . . . . . . . . . . . . . . . . . . . 69
6.8. Parametrización punto a punto . . . . . . . . . . . . . . . . . . . . . . . . 70
6.9. Parametrización - tiempo de cálculo . . . . . . . . . . . . . . . . . . . . . 71
6.10. Parametrización punto a triángulo . . . . . . . . . . . . . . . . . . . . . . 72
6.11. Parametrización - Tiempo de Cálculo . . . . . . . . . . . . . . . . . . . . . 73
6.12. Parametrización - error de aproximación . . . . . . . . . . . . . . . . . . . 74
6.13. Continuidad en modelo válvula . . . . . . . . . . . . . . . . . . . . . . . . 75
6.14. Reconstrucción cerámica precolombina . . . . . . . . . . . . . . . . . . . 77
6.15. Reconstrucción máscara . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
A.1. Funciones base splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–5
XIV
A.2. Funciones base con nodos no uniformes . . . . . . . . . . . . . . . . . . . A–7
A.3. Proyección del plano racional W . . . . . . . . . . . . . . . . . . . . . . . A–10
A.4. Superficies NURBS con diferentes pesos . . . . . . . . . . . . . . . . . . . A–11
A.5. Curva NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–12
A.6. Superficie NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–13
Introducción
La generación de superficies de forma libre y objetos del mundo real en un orde-
nador es una labor compleja incluso para los diseñadores que emplean sistemas de modela-
do geométrico avanzado. El rastreo de la geometría de objetos del mundo real es de mayor
interés en aplicaciones prácticas como realidad virtual, CAD, medicina, visualización, man-
ufactura y control de calidad. El avance en las tecnologías de adquisición 3D permite que
los escáner de rango laser de última generación rastreen la superficie de un objeto con alta
precisión. El proceso resulta en una nube de puntos discreta, bastante densa, que contiene la
información espacial de la geometría del objeto. Convertir la gran cantidad de puntos gen-
erados por un escáner laser en un modelo geométrico útil se define como reconstrucción de
superficies a partir de imágenes de rango.
La reconstrucción de modelos de forma libre tuvo una primera aproximación en
los cubos marchantes y la distancia signada. Este método combinado con un refinamiento
posterior de la reconstrucción, ofrece excelentes resultados y modelos realistas. Las repre-
sentaciones generadas a partir estos métodos son colecciones de caras planares poligonales
(generalmente triángulos) conectadas entre si, las cuales recrean de manera brusca la su-
perficie del modelo a representar. Aunque existen diversas técnicas para el suavizado de los
métodos poligonales, la continuidad del modelo y el error en la reconstrucción no hacen
parte de los parámetros del proceso; además, un alto nivel de detalle requiere un número
mayor de polígonos, y por consiguiente un mayor costo computacional.
2
Las funciones NURBS son empleadas para diversas tareas tales como la recons-
trucción de imágenes 3D, diseño de alto nivel o modelado complejo de formas humanas
en animación. Su mayor utilidad se encuentra en el área de reconstrucción de superficies
de forma libre debido a su alto grado de adaptación y su representación suave y contin-
ua. Sin embargo, el paradigma del modelado mediante B-Splines está limitado, debido a
que los puntos de control sobre el modelo a recrear deben estar organizados en una estruc-
tura matricial ordenada. Este problema hace que no sea útil el ajuste de una sola superficie
B-Spline a un modelo complejo con morfología irregular. La adaptación de una sola fun-
ción paramétrica NURBS se ha afrontado desde diferentes puntos de vista con resultados
poco prometedores. La reconstrucción eficiente de modelos de forma libre requiere la in-
troducción de una red de parches que se unan entre si de forma adecuada para aproximar la
superficie cambiante de un modelo irregular. La generación automática de la red y la para-
metrización de los puntos sobre cada parche es un problema complejo, debido que se debe
garantizar la continuidad de plano tangente C l en las fronteras de los parches adyacentes y
la representación final depende de un proceso de particionamiento adecuado del modelo.
Mediante este trabajo se pretende afrontar el problema de la reconstrucción de su-
perficies de forma libre, empleando colecciones de funciones NURBS ensambladas de for-
ma suave y haciendo uso de técnicas de optimización para la obtención de representaciones
paramétricas de vistas parciales de objetos del mundo real.
La disposición del documento es la siguiente: En el Capítulo 1 se hace una re-
visión general de la reconstrucción de superficies orientada hacia la reconstrucción medi-
ante funciones B-Splines. El Capítulo 2 expone el método de particionamiento cuadrilate-
ral propuesto, el cual está basado en la proyección planar de los datos y la triangulación
de Delaunay. En el Capítulo 3 se plantea el problema de la parametrización mediante fun-
ciones B-Splines y se presenta la metodología de parametrización desarrollada. El Capítulo
4 muestra el esquema de ajuste de continuidad empleado para garantizar la suavidad en-
3
tre las funciones NURBS adyacentes. El Capítulo 5 muestra el proceso de optimización
del ajuste empleado. Finalmente el Capítulo 6 ilustra las pruebas realizadas al método de
reconstrucción propuesto, y en el Capítulo 7 se comentan las Conclusiones y el Trabajo
Futuro propuesto. Adicionalmente, en el Apéndice A se presenta un análisis minucioso de
las funciones NURBS.
Capítulo 1
Reconstrucción de Superficies
Los escáner 3D muestrean la superficie de un objeto con una aproximación que
ofrece una nube de puntos bastante densa, y con cierto ruido residual inherente al proceso
de adquisición [1]. A partir de esta nube de puntos, se puede obtener un modelo estimado
que brinde información geométrica de la superficie del objeto y, que además, esté sujeto
a restricciones de continuidad. Una sola imagen de rango provee información parcial de la
superficie del objeto, por lo tanto, es necesario combinar múltiples imágenes de rango desde
diferentes puntos de vista en un mismo espacio coordenado para obtener un modelo com-
pleto. Este procedimiento involucra procesos tales como el registro y la integración [2,3,4].
El proceso de reconstrucción de superficies tiene varias etapas que van desde la
adquisición hasta la integración del modelo [5]. El método de triangulación, es por mucho
el método más empleado para inferir la información espacial de un objeto del mundo real
por medio de dispositivos ópticos [6]. Los sistemas de captura por triangulación se compo-
nen generalmente por un sistema de “proyección” de luz estructurada, que emplea patrones
de luz tales como puntos, líneas, rejillas, etc, los cuales son captados por un sensor ópti-
co, que típicamente es un CCD [1]. Las técnicas de luz estructurada simplifican de manera
importante el proceso de triangulación de la posición de un punto en el espacio, esto de-
bido a que mediante el conocimiento de los parámetros de la cámara se puede encontrar
4
5
directamente el rastreo paramétrico espacial de una imagen planar generada por un sensor
CCD. Los métodos de luz estructurada hacen posible la adquisición de imágenes de rango
en tiempo real sin la necesidad de ordenadores muy veloces [7].
Mediante el proceso de registro se deben encontrar las transformaciones geométri-
cas que referencian un conjunto de imágenes de rango de un objeto real a un mismo espacio
coordenado [3, 5]. Uno de los algoritmos más usados en la etapa de registro es el ICP (Iter-
ative Closest Point) [8].
Este trabajo se centra en el proceso de adaptación de superficies empleando fun-
ciones NURBS, ya que estas presentan características ideales para la aproximación a mo-
delos de forma libre [9].
1.1. Generación de modelos computacionales a partir de mues-
tras de la superficie de un objeto
Si se retoma el problema de la reconstrucción de superficies al terminar la etapa de
registro, este se puede definir de la siguiente manera:
Dado un conjunto de datos de rango fi tomados desde diferentes puntos de vista de
una escena, y previamente alineados (registrados), hallar la superficie continua M i que se
aproxime de mejor manera a la superficie real M [5].
La idea de generar construcciones espaciales generalizadas a partir de muestras de
superficies tridimensionales cautivó a matemáticos e ingenieros durante la década de los
80’s (1980 - 1990) [10]. Planteado el problema, se deben analizar las implicaciones de su
solución. La nube de puntos es un muestreo de la superficie de un objeto físico tridimen-
sional, es decir, la información rastreada está concentrada en un casquete que define la
6
geometría de la superficie del objeto, y aunque el muestreo es desorganizado (despúes de
las etapas de adquisición y registro), dicha nube de puntos contiene información espacial
del objeto que queremos reconstruir.
La reconstrucción de modelos de forma libre a partir de imágenes de rango tuvo una
primera aproximación en los cubos marchantes y la distancia signada [10,5,6], este método
combinado con un refinamiento posterior de la reconstrucción ofrece excelentes resultados
y modelos realistas [11,12]. Las representaciones generadas a partir de estos métodos están
conformadas por caras planares poligonales (generalmente triángulos) conectadas entre si,
las cuales recrean de manera brusca el modelo final. Aunque existen diversas técnicas para
el suavizado de los métodos poligonales [10, 12, 13], la continuidad del modelo y el error
en la reconstrucción no hacen parte de los parámetros del proceso, además, un alto nivel de
detalle requiere un número mayor de polígonos, y por consiguiente un mayor costo com-
putacional.
1.1.1. Reconstrucción mediante funciones B-Splines
Las funciones B-Splines en su forma bitensorial cruzada (superficies generalizadas
Splines) prometían ser una de las herramientas más útiles en el área de la reconstrucción
de objetos de forma libre en la última década del siglo pasado (1990− 2000). No obstante,
el paradigma del modelado mediante B-Splines está limitado debido a que los puntos de
control sobre el modelo a representar deben estar organizados en una estructura matricial
ordenada. Este problema hace que el ajuste de una sola superficie B-Spline a un modelo
complejo no sea útil. Las funciones NURBS son la representación racional de las funciones
primitivas B-Splines (la forma racional introduce pesos asociados que crean una nueva di-
mensión en la parametrización ver Anexo A). La adaptación de una sola función paramétri-
ca NURBS se ha abordado desde diferentes puntos de vista con resultados poco promete-
dores [14, 15, 16]. Por tanto, se ha difundido el hecho de que la reconstrucción eficiente de
7
modelos complejos requiere la introducción de una red de parches NURBS (o B-Splines).
La reconstrucción de superficies mediante funciones paramétricas NURBS es tratada por
diversos autores [14, 15, 17, 18, 19, 20, 21, 22, 23], y, aunque han surgido planteamientos
que en su momento han pretendido ser el enfoque correcto en cuanto a parametrización y/o
particionamiento para la reconstrucción efectiva de modelos de forma libre mediante fun-
ciones B-Splines, en todos y cada uno de los trabajos revisados en la literatura queda claro
que todavía no existe un método óptimo para adaptar funciones paramétricas a muestras
desordenadas de la superficie de un objeto. Sin embargo, diversos enfoques ofrecen solu-
ciones prácticas y simples, que a falta de una metodología estandarizada, se convierten en
el modelo a seguir.
Como se mencionó anteriormente, el ajuste de una sola superficie B-Spline a un mo-
delo irregular se ha afrontado desde diferentes puntos de vista con resultados poco promete-
dores [14, 15], Esto debido a la restricción de adaptación matricial de los modelos Splines.
Las metodologías con mejores resultados, reportadas en la literatura son el trabajo de In Kyu
Park [18,19] y el trabajo de Hugues Hoppe [17]. En ambos, se plantea la reconstrucción de
modelos volumétricos cerrados con algunas restricciones.
In Kyu Park [18, 19] desarrolla una técnica de reconstrucción de modelos de forma
libre mediante superficies NURBS. Su aproximación se vale de un clustering mediante el
algoritmo K-medias [19] para encontrar un modelo inicial con particiones poliédricas de
una nube de puntos desorganizada. A partir del modelo inicial se conforma una reconstruc-
ción triangular conectando los vértices y el centroide de cada parche poliédrico. Finalmente,
la reconstrucción triangular es apareada para encontrar la división cuadrilateral del mode-
lo. La metodología propuesta por Park es poco práctica debido a que la partición inicial
debe ser fina para evitar resultados erróneos en el algoritmo K-medias y el apareamiento de
la base triangular no siempre es posible, además, el proceso de parametrización introduce
problemas adicionales que pueden ser simplificados como la obtención del vector de no-
8
dos [24]. El método de Park esta restringido a modelos con curvaturas poco pronunciadas,
esto debido al proceso de particionamiento, que plantea la conexión de los puntos de control
sobre la nube de puntos desorganizada por medio de un proceso de agrupamiento basado
en la distancia espacial.
El trabajo de Hugues Hoppe [17] es el trabajo más completo reportado en la literatu-
ra en el área de reconstrucción de modelos de forma libre empleando funciones paramétric-
as a trozos. Al igual que Park, Hoppe propone un método de particionamiento cuadrilateral
para la parametrización del modelo. A partir de la nube de puntos original, se genera una
reconstrucción poligonal inicial M0. Esta reconstrucción inicial es particionada en vecin-
darios irregulares mediante el algoritmo de Voronoi, al cual se le aplica la triangulación de
Delaunay con la restricción de un número par de triángulos, que garantiza el apareamien-
to [25, 7]. Finalmente, la base triangular es apareada para construir el particionamiento
cuadrilateral del modelo [26].
El método de Hoppe presenta los mejores resultados para la reconstrucción de
modelos de forma libre mediante el ajuste suave de Splines, esto gracias a una partición
volumétrica efectiva y a una etapa de refinamiento adaptativo que genera modelos realistas
de objetos complejos. Sin embargo, el ajuste de los modelos G-Splines de Peters no ofrece
una parametrización racional lo cual se ve reflejado en un control local menor del ajuste
de las funciones paramétricas. En la metodología propuesta en este trabajo se emplean fun-
ciones NURBS, mediante las cuales es posible realizar un ajuste local fino por medio de la
optimización conjunta de los pesos y puntos de control [24].
9
Figura 1.1: Reconstrucción de una vista parcial
La Figura 1.1 ilustra la reconstrucción mediante el método propuesto de una vista
parcial de un modelo con un agujero.
Los trabajos más recientes emplean modelos modificados de funciones B-Splines
[27, 28], los cuales se adaptan a vecindarios triangulares y por tanto a los modelos poligo-
nales triangulados. Inclusive en enfoques como estos, el tamaño de los vecindarios y la can-
tidad de funciones necesarias para la reconstrucción de modelos simples sigue estando lejos
del paradigma de la reconstrucción planteado por las funciones paramétricas adaptables, las
cuales parecen tener un mejor lugar en el modelado por computador de formas sintéticas
y no en la reconstrucción de modelos mediante muestras de su superficie. No obstante, el
hecho de ofrecer condiciones ajustables de continuidad y diferenciación, la posibilidad de
medir el error de ajuste y la capacidad de deformación suave hacen de la reconstrucción por
medio de superficies B-Splines un tema actual, apasionante y en ciertas aplicaciones más
adecuado que las reconstrucciones trianguladas primitivas [29, 30, 9, 31].
10
No se encontraron en la literatura trabajos que abordaran la reconstrucción medi-
ante funciones NURBS de vistas parciales de objetos tridimensionales teniendo en cuenta
el mapeo de bordes irregulares y agujeros. Los métodos reportados analizan solo modelos
volumétricos cerrados, sin la presencia de bordes o agujeros. La metodología de reconstruc-
ción propuesta plantea un método de parametrización generalizante para modelos de vistas
parciales, los cuales presentan bordes irregulares y agujeros en su representación inicial.
1.2. Reconstrucción propuesta
La metodología desarrollada en este trabajo se basa en la proyección planar de las
muestras de la superficie, por lo tanto, mediante el método propuesto solo es posible recon-
struir vistas parciales de modelos tridimensionales, los cuales pueden contener agujeros en
su representación triangulada inicial. Es decir, modelos abiertos, no cerrados que puedan
ser mapeados en un plano.
Figura 1.2: Metodología de reconstrucción propuesta
La figura 1.2 ilustra el diagrama de bloques general del proceso de reconstrucción
propuesto
11
1.3. Consideraciones
Los procesos de adquisición y registro de imágenes de rango derivan en un conjunto
de puntos en el espacio (nube de puntos). Dicho conjunto contiene la información implíci-
ta de la superficie del modelo a reconstruir, sin embargo, si no se cuenta con información
adicional sobre la escena en los procesos precedentes, la nube de puntos resultante es total-
mente desordenada.
Debido a que la parametrización mediante funciones NURBS requiere un orde-
namiento riguroso de los datos y una disposición matricial de los mismos, se adoptaron var-
ios de los enfoques de las metodologías analizadas en la literatura. Por ejemplo, partir de un
modelo inicial triangulado; emplear el método de triangulación de Delaunay para generar
vecindarios cuadrilaterales y emplear un esquema simplificado de funciones NURBS con
una expansión uniforme en sus funciones base (ver Anexo A).
Se emplearán funciones paramétricas NURBS, las cuales han sido empleadas en
varios de los enfoques revisados en la literatura debido a que mediante estas es posible
generar aproximaciones suaves y continuas de superficies de forma libre. Además, su alto
grado de adaptación permite crear representaciones flexibles, deformables y más livianas,
las cuales a su vez son compatibles con paquetes gráficos de alto desempeño como el
OpenGL o programas de modelado avanzado como el 3ds Max. Adicionalmente, la for-
ma racional de las funciones NURBS permite una adaptabilidad local mayor con respecto
a funciones paramétricas primitivas como las B-Splines, G-Splines o Bezier.
Capítulo 2
Particionamiento Cuadrilateral de
Vistas Parciales
Como se mencionó anteriormente (ver sección 1.2), la reconstrucción de un modelo
útil mediante funciones B-Splines, requiere la introducción de una red de parches ensam-
blados de forma adecuada para poder representar la superficie cambiante de modelos de
forma libre. Debido a esto, se hace necesario particionar el conjunto de datos inicial de al-
guna forma, con el fin de reconstruir el modelo a trozos mediante funciones NURBS.
El proceso de particionamiento propuesto es generalizante y se puede aplicar a mo-
delos de forma libre con la siguientes restricciones. Las representaciones deben ser vistas
parciales de objetos de forma libre que puedan ser mapeadas hacia un plano; la disposición
de los puntos en el conjunto de datos puede ser totalmente desordenada. La triangulación
inici8al del modelo a reconstruir debe ser correcta, y no debe contener triángulos aislados.
2.1. Antecedentes
Existen diferentes enfoques de particionamiento reportados en la literatura. En to-
dos ellos se hace evidente la necesidad de vecindarios adecuados (cuadrilaterales) para la
12
13
adaptación de funciones B-Splines [32], esto debido al condicionamiento de una disposi-
ción matricial ordenada de los datos (ver anexo A.4.2).
Lee, S y Tan, H [33] afrontaron el problema de la agrupación de puntos no organi-
zados en vecindarios cuadrilaterales para la disposición de superficies paramétricas [9]. Su
aproximación consiste en la formulación de matrices de mezcla para el ajuste de parches
Bezier (ver Anexo A) en vecindarios aislados no cuadrilaterales.
Figura 2.1: Vecindario cuadrilateral poliédrico
La Figura 2.1 ilustra un vecindario aislado no cuadrilateral.
El modelo de Lee, S y Tan, H presenta una formulación matemática compleja, ex-
tensa y poco práctica, debido a que las matrices de mezcla deben ser recalculadas para cada
vecindario aislado extraordinario con n (n 6= 4) lados. Por su complejidad y su mínima
adaptabilidad, el uso práctico de esta aproximación está lejos de ser el mejor en un esque-
ma de reconstrucción generalizante.
Charles L [20] propone una técnica de particionamiento de modelos sintéticos cer-
rados, mediante la cual se generan vecindarios cuadrilaterales sin la presencia de caras
aisladas con n lados (n 6= 4). La partición del modelo es generada a partir de una recons-
trucción inicial M0, la cual es refinada mediante un proceso geométrico que combina un
14
vértice y las caras adyacentes a este en M0, para obtener una nueva representación M1.
La reconstrucción de Loop se aplica a modelos simplificados generados por com-
putador y no es útil para objetos del mundo real rastreados por un sensor de rango, además,
la complejidad de su método de parametrización es considerable debido a que aplica fun-
ciones Splines con diferentes grados para garantizar la continuidad C l (ver sección 4) en
las fronteras de los vecindarios [20].
Figura 2.2: Reconstrucción de Loop, tomado de [20]
En la Figura 2.2 se aprecia la partición refinada y la reconstrucción resultante del
método de Loop. Las zonas de la imagen azules y amarillas corresponden a Splines con
parches Bezier cuárticos, las zonas rojas y verdes a Splines con parches Bezier cúbicos
y las zonas grises a parches Splines bicuadráticos (ver anexo A). Como ya se mencionó,
este método es útil sólo en modelos sintéticos los cuales están totalmente caracterizados,
además el hecho de emplear colecciones diferentes de funciones Splines para garantizar la
continuidad entre los parches influye en la complejidad de procesos posteriores como la
optimización.
15
Al igual que en los trabajos anteriores, Hoppe propone un método de particiona-
miento cuadrilateral para la parametrización del modelo. A partir de la nube de puntos
original, se genera una reconstrucción poligonal inicial M0 que está basada en sus trabajos
previos de distancia signada y cubos marchantes [11, 12, 13]. Esta reconstrucción inicial
es particionada en vecindarios irregulares mediante el algoritmo de Voronoi, al cual se le
aplica la triangulación de Delaunay con la restricción de un número par de triángulos que
garantiza el apareamiento [25, 7]. Finalmente, la base triangular es apareada para construir
el particionamiento cuadrilateral del modelo [26].
(a) Reconstrucción M0 (b) Partición Voronoi
(c) Delaunay (d) Base Cuadrilateral K�
Figura 2.3: Particionamiento cuadrilateral de Hoppe, tomado de [17]
La figura 2.3 muestra el proceso del particionamiento cuadrilateral de Hoppe, en la
figura 2.3(a) se aprecia la reconstrucción inicial M0, las figuras 2.3(b) y 2.3(c) muestran la
16
partición de Voronoi y la triangulación de Delaunay del modelo respectivamente. En la figu-
ra 2.3(d) se aprecia la partición cuadrilateral final. El enfoque de particionamieto de Hoppe
presenta diversas ventajas. Su estructura base siempre es un cuadrilátero y su proceso puede
ser refinado para generar una concentración mayor de vecindarios en las zonas con mayor
curvatura. Sin embargo, su método se aplica solo a modelos cerrados sin agujeros o bordes
irregulares.
Otros autores como In Kyu Park [18, 19] emplean algoritmos de clasificación para
generar una red de cuadriláteros sobre la superficie de la nube de puntos. Este tipo de seg-
mentación emplea modelos basados en métricas de distancia espacial entre los datos, los
cuales no tienen en cuenta la conectividad implícita de los puntos en la superficie a repre-
sentar. Todo lo anterior deriva en un particionamiento pobre, con un gran número de vecin-
darios y por lo tanto, un número elevado de parches. Algunas de las aproximaciones propo-
nen la interpolación de los datos [27], lo cual hace que el número de funciones paramétricas
y datos en la reconstrucción total sea incluso mayor que en el modelo original.
2.2. Geometría de los objetos
Debido a la complejidad de un particionamiento volumétrico efectivo, y a la necesi-
dad de reconstruir vistas parciales con bordes irregulares y agujeros, en este trabajo se optó
por una reconstrucción de superficies mediante la proyección planar de los datos. Este es-
quema difiere en gran medida con los métodos encontrados en la literatura, ya que todos
ellos se basan en la reconstrucción de modelos completos y cerrados.
Para generar un método de particionamiento efectivo y generalizante que se pue-
da aplicar a proyecciones planares de modelos tridimensionales, es necesario analizar la
geometría de los objetos y sus implicaciones. El borde irregular de este tipo de proyec-
ciones es especialmente problemático, debido a su forma libre (figura 2.4(b)).
17
(a) Modelo 3D (b) Proyección planar
Figura 2.4: Geometría de los objetos 3D
La figura 2.4 ilustra la geometría cambiante de una superficie irregular de forma li-
bre, en este caso una válvula industrial, la figura 2.4(b) corresponde a la proyección planar
del modelo tridimensional de la figura 2.4(a).
2.2.1. Disposición matricial ordenada de las funciones NURBS
Como se mencionó anteriormente, debido a la formulación de las funciones NURBS,
los puntos de control y los pesos no sólo deben estar dispuestos en una matriz (forma rec-
tangular) sino que deben respetar un orden dado. Para entender las implicaciones de la
condición de ordenamiento de los datos en el mapeo paramétrico de las funciones NURBS
se ilustra a continuación un ejemplo en curvas planares paramétricas.
18
(a) Curva 1 (b) Curva 2
Figura 2.5: Ordenamiento de puntos de control en Splines
La figura 2.5 ilustra la importancia del ordenamiento de los puntos de control en
funciones B-Splines como las NURBS. La figura 2.5(a) ilustra una curva NURBS con ocho
puntos de control y diferentes pesos asociados. Al intercambiar el orden de los puntos P4
y P5 (figura 2.5(b)) se puede apreciar como la curva se envuelve sobre si misma debido al
nuevo ordenamiento en los puntos de control. Las superficies NURBS se comportan de for-
ma similar pero en ambas direcciones paramétricas, razón por la cual el ordenamiento de los
datos en este tipo de funciones es de gran importancia. No obstante, el mapeo paramétri-
co que se puede generar a partir de una superficie B-Spline no necesariamente debe ser
rectangular regular, es decir, la necesidad de una estructura matricial ordenada no implica
que la parametrización de las funciones NURBS solo pueda ser empleada en vecindarios
cuadrilaterales con ejes rectilíneos.
19
(a) Regular (b) Irregular
Figura 2.6: Mapeo matricial ordenado en vecindario irregular
La figura 2.6 muestra un ejemplo de mapeo matricial ordenado en un cuadrilátero
con ejes rectilíneos (figura 2.6(a)) y otro ejemplo con un vecindario cuadrilateral (con 4
ejes), en donde uno de los ejes (en este caso el eje inferior en color azul) no es rectilíneo.
Incluso en esta estructura irregular (figura 2.6(b)) es posible generar una disposición ma-
tricial ordenada que permita el mapeo paramétrico de una función B-Spline al conjunto de
datos que la representan.
2.3. Proyección planar
La proyección planar de los datos simplifica el problema de un particionamiento
volumétrico efectivo, pero introduce otro tipo de consideraciones que deben ser tomadas en
cuenta como los bordes del modelo o las irregularidades de los objetos de forma libre. Este
trabajo propone un tratamiento planar del modelo mediante el cual se simplifica en gran
medida el proceso de particionamiento.
Los datos del modelo a reconstruir son proyectados hacia el plano generado por la
dirección normal del conjunto de puntos (o en la dirección normal promediada de la nube
20
de puntos inicial), la cual pude obtenerse durante el proceso de adquisición. La nube de
puntos a reconstruir mediante la metodología propuesta puede estar compuesta por una o
más imágenes de rango (puntos desorganizados). El conjunto de datos inicial es rotado para
que dicho plano coincida con el plano z = 0, y los datos son trasladados para que el cen-
troide de los mismos coincida con el origen (coordenada (0, 0, 0)).
La proyección planar de los datos se realiza después de los procesos de adquisición
y registro (ver capítulo 1). El borde del modelo es extraído a partir de una reconstrucción
inicial triangulada, ya sea por un método de triangulación volumétrico como el de Cubos
Marchantes o por medio de la triangulación planar de Delaunay [7] (ver anexo B.1).
2.3.1. Extracción del borde
Partiendo de un modelo inicial triangulado, se pueden extraer tanto el borde exterior
del modelo como el borde que caracteriza a un agujero.
Figura 2.7: Triángulos de borde
En la figura 2.7 se ilustra un conjunto planar de puntos triangulado. Debido a que la
nube de puntos corresponde a un mapeo planar de los datos, el modelo triangulado es abier-
21
to [30]. En este tipo de modelos, los triángulos interiores (en color verde) tendrán siempre
un triángulo vecino por cada eje, o sea v = 3 vecinos de ejes. En contraste, los triángulos
exteriores que contienen ejes del borde tendrán menos de 3 triángulos vecinos de ejes y al
menos un triángulo de ejes vecino 1 ≤ v < 3. Además, cada triángulo que contenga un eje
del borde tendrá 2 triángulos vecinos que contengan ejes del borde [7].
Debido a la presencia de agujeros en el modelo pueden existir triángulos de borde
que no pertenezcan al borde exterior en la reconstrucción inicial, por ello, se debe encontrar
el triángulo de borde más alejado en una de las direcciones ortogonales del plano (x o y) y
a partir de dicho triángulo caracterizar el borde exterior. Partiendo de un triángulo de borde
inicial, es posible encontrar 2 triángulos de borde adyacentes, y si se elige una dirección es
posible encontrar el borde exterior del modelo o el borde que caracteriza a un agujero en
forma ordenada.
Figura 2.8: Ejemplo de caracterización del borde
La figura 2.8 ilustra la caracterización de los bordes en una vista parcial de un mo-
delo. El algoritmo 1 enuncia la metodología empleada para encontrar bordes en un modelo
planar triangulado.
22
2.4. Particionamiento cuadrilateral
La metodología empleada para el particionamiento cuadrilateral de modelos planares
está basada en el método de triangulación de Delaunay y la correcta caracterización de los
bordes del modelo inicial.
2.4.1. Triangulación de Delaunay
Hoppe emplea en [17] la triangulación de Delaunay 3D para generar vecindarios
cuadrilaterales mediante un apareamiento de triángulos, este enfoque requiere un número
par de triángulos en el grafo de Delaunay y un algoritmo elaborado de apareamiento que
evite aislar triángulos lejanos.
En este trabajo se plantea un esquema de particionamiento mediante la triangula-
ción planar de Dealuany en donde cada triángulo del grafo de Delaunay se divide en 3
cuadrilateros. Este tipo de particionamiento genera seis veces mas vecindarios que un mo-
delo de apareamiento, no obstante, el hecho de que no tenga que existir un número par de
triángulos en el grafo de Delaunay hace que la escogencia de los puntos de control para
generar la partición no esté restringida.
El grafo planar de Delaunay cumple con las leyes de Euler que dictan que dv−de +
dt = 1, donde dv es el número de vértices en el grafo, de el número de ejes y dt el número
de triángulos. A partir de la fórmula de Euler se encuentra que:
Sea P un conjunto de n puntos en el plano, no todos colineales, y sea dk el número
de puntos en P que se encuentran sobre la envolvente convexa de P . Entonces, cualquier
triangulación de P tiene 2dv − 2− dk triángulos y 3dv − 3− dk bordes.
23
Envolvente Convexa
El conjunto de ejes que no pertenecen a dos caras en la triangulación de Delaunay
de P generan la envolvente convexa del conjunto planar de puntos P .
El grafo de Delaunay siempre tendrá una envolvente convexa que contiene los ejes
y vértices del borde. Esta construcción será de gran utilidad para generar los vecindarios
del borde del modelo.
Implementación
El algoritmo de Delaunay implementado [7] es una construcción recurrente incre-
mental que permite encontrar la triangulación de un conjunto planar de puntos, calculando
su envolvente convexa (ver anexo B.1).
2.4.2. Vecindarios cuadrilaterales a partir del grafo de Delaunay
Los vecindarios cuadrilaterales son obtenidos al particionar cada una de las caras
triangulares de la triangulación de Delaunay en tres cuadrilateros.
(a) Triangulo (b) Cuadrilateros
Figura 2.9: Vecindarios cuadrilaterales regulares
24
La figura 2.9 ilustra el particionamieto cuadrilateral generado a partir de las caras de
la triangulación de Delaunay. Cada uno de los triángulos es dividido en tres cuadriláteros,
(figura 2.9(a)) los cuales son generados al partir el triángulo desde el centroide hasta los
puntos medios de sus ejes (figura 2.9(b)).
Retomando la teoría de euler para grafos planares se pueden calcular el número de
ejes, vértices y cuadriláteros de la partición. Siendo dt el número de triángulos, de el número
de ejes y dv el número de vértices en el grafo de Delaunay, y conociendo que cada triángulo
genera 3 cuadriláteros, el número de cuadriláteros es qc = 3dt; como cada eje se parte en 2,
y se generan 3 nuevos ejes por cada triángulo, el número de ejes es qe = 2de + 3dt; debido
a que en cada eje y en los centroides de cada triángulo se adiciona un vértice, el número de
vértices es qv = dv + de + dt. Entonces, al particionar cada triángulo es posible conocer el
número exacto de vértices, ejes y cuadriláteros generados a partir del grafo de Delaunay en
el esquema propuesto.
2.4.3. Vecindarios cuadrilaterales sobre los bordes
Para recrear la forma cambiante de los bordes en los modelos de forma libre planares
(figura 2.4(b)), se analizaron las implicaciones de la disposición matricial ordenada de las
funciones NURBS (ver sección 2.2.1).
Al partir de una figura convexa (como la envolvente generada por el grafo de De-
launay), inscrita al interior del borde del modelo planar, se pueden trazar ejes radiales que
corten el borde del modelo y permitan construir vecindarios cuadrilaterales irregulares.
La figura 2.10 muestra la proyección planar del modelo válvula (ver figura 2.4(a))
con una figura convexa inscrita al interior de su borde, a partir de la cual, se generan vecin-
darios cuadrilaterales irregulares que contienen el borde del modelo a representar.
25
Figura 2.10: Disposición de ejes radiales
Proyección de Ejes Radiales
Partiendo de la envolvente convexa del grafo de Delaunay, se generan ejes radiales
en cada uno de los vértices y los puntos medios de los ejes sobre la envolvente convexa.
(a) ejes angulares (b) ejes paralelos
Figura 2.11: Ejes radiales
La Figura 2.11 muestra los dos casos posibles en la proyección de los ejes de la
envolvente convexa hacia el borde del modelo. Para el caso de la figura 2.14(a) el vector
26
radial R estará dado por la suma reflejada de los vectores V1 y V2 (R = −(V1 + V2)). En
el caso paralelo, R está dado por la rotación de uno de lo vectores V (R(x) = V1(y) y
R(y) = V1(x)).
Cada uno de los ejes radiales es alargado para posteriormente encontrar su corte con
el borde del modelo. Debido a que un eje radial puede cortar el borde del modelo en varios
puntos, se escoge el punto de corte que produzca la menor distancia euclídea. Los vecinda-
rios generados por los ejes radiales y el borde del modelo planar, aunque irregulares, son
parametrizables, es decir, se puede generar una matriz ordenada que permita aplicar una
función NURBS a un vecindario con un borde irregular.
Al igual que en el particionamiento interno del grafo de Dealunay, mediante la
proyección de los ejes radiales, es posible calcular el número exacto de nuevos vértices,
ejes y cuadriláteros generados. Siendo dk el número de ejes y vértices sobre la envolvente
convexa del grafo de Delaunay, el número de nuevos ejes, vértices y cuadriláteros es 2dk,
así, el número total de datos está dado por:
qc = 2dk + 3dt
qe = 2dk + 2de + 3dt
qv = 2dk + dv + de + dt
(2.1)
Mediante la ecuación 2.1 es posible calcular la cantidad de datos y el tamaño de los
arreglos en la implementación del particionamiento cuadrilateral propuesto.
2.4.4. Vecindarios cuadrilaterales en los agujeros
Al igual que en el borde del modelo, para recrear la forma cambiante de los bordes
en los agujeros se generó una construcción especial que permite particionar el modelo ras-
treando la geometría del borde sobre sus agujeros.
Top Related