1. Introducción a la Geometría
Computacional
Ubicación: http://wwwdi.ujaen.es/asignatuas/gc/tema1.odp
Curso: 1º de Ingeniería Informática, Plan 2004
Profesor: Lidia Ortega Alvarado
Departamento: Informática
Curso académico: 2009/10
Actualizado: 21/09/2009
Geometría
Computacional
Tema 1
2. Índice
Introducción
a
la
Geometría
Computacional
¿Cómo nace la Geometría Computacional?
Un poco de historia
Aplicaciones
Informática Gráfica
Reconstrucción de modelos 3D
Visión Artificial
Sistemas de Información Geográfica
Robótica
Diseño y Fabricación de Productos
Biología Molecular
Astrofísica
Soluciones que aporta la G.C.
Estructuras de Datos
Bibliografía
3. ¿Cómo nace la Geometría Computacional?
Introducción
a
la
Geometría
Computacional
Geometría
Clásica
Desarrollo
del hardware
Estructuras de
datos
Definiciones/Lemas/
Teoremas/Corolarios
Máquinas capaces de
procesar miles de
instrucciones por segundo
EEDD generales pero también
específicas que permiten
operaciones eficientes
Clásicas o específicas para
conseguir métodos eficientes
Técnicas
algorítmicas
Geometría
Computacional
4. Un poco de historia
Introducción
a
la
Geometría
Computacional
¿Cuando nace?
Hay quien dice que el primer algoritmo de G.C. nace cuando una serie
de pasos correctos, no ambiguos y con un final, resuelven un problema
geométrico. El precursor: Euclides
En 1902 aparece el término complejidad de la resolución de un
problema (no a nivel computacional pero sí a nivel de realización)
El término “Geometría Computacional” lo introduce M. I. Shamos en
1975, aunque existen trabajos previos enmarcados en esta disciplina
Un nuevo enfoque para la geometría
La potencia computacional de los ordenadores son aprovechadas por
muchas disciplinas a partir de la segunda mitad del siglo XX
Los objetos geométricos pasan a ser estructuras de datos y las
metodologías clásicas de resolución de problemas se transforman en
algoritmos eficientes
5. Aplicaciones
Introducción
a
la
Geometría
Computacional
Ámbitos de aplicación de la Geometría Computacional
1.- Informática Gráfica
2.- Reconstrucción de modelos 3D
3.- Visión artificial
4.- Sistemas de Información Geográfica (SIG)
5.- Robótica
6.- Biología Molecular
7.- Astrofísica
8.- Diseño Asistido por Ordenador
9.- Procesos de fabricación
6. Aplicaciones
Introducción
a
la
Geometría
Computacional
Informática Gráfica
Modelado (descripción de superficies, luz, etc.)
Simulación (predecir el comportamiento de
escenarios virtuales)
rendering: descripción de una escena + puntos de
luz = simulación realista
Visibilidad y representación de sólidos
¿qué se ve y qué se oculta?
¿qué se ilumina? ¿existen colisiones?
representación interna de un sólido
Geometría Computacional
7. Aplicaciones
Introducción
a
la
Geometría
Computacional
Reconstrucción de Modelos 3D
(a partir de imágenes 2D procedentes de fotografías, escáner, etc.)
Orientadas a volúmenes (apilando imágenes 2D
+ interpolando)
Orientado a fronteras (formando poliedros: los
vértices son puntos fronterizos y las aristas la unión
entre vértices adyacentes de la misma imagen 2D y
de las superiores/inferiores)
Métodos
Estructuras de datos/teselaciones
triangulación de Delaunay
diagrama de Voronoi
Geometría Computacional
8. Aplicaciones
Introducción
a
la
Geometría
Computacional
Visión Artificial
Algoritmos y estructuras de datos
geométricas
Geometría Computacional
(que suele utilizar imágenes tipo bitmap )
Reconocimiento de patrones (construir modelos
3D a partir de proyecciones 2D)
Representación de imágenes (transformar
imágenes bitmap en líneas de contorno por
versatilidad/compresión de imágenes, etc.)
Problemas
Segmentación (distinguir formas del fondo/primer
plano
9. Aplicaciones
Introducción
a
la
Geometría
Computacional
Sistemas de Información Geográfica
Geometría Computacional
(captura, manejo, análisis, modelado y visualización de Inf. Geogr.)
Tipos de representación:
Vectorial (mejor para fronteras, ríos,
carreteras,etc)
Raster (simplicidad en algoritmos y hardware, pero
usa mucho espacio)
Isolíneas (mejores para visualización de mapas)
Problemas
TIN (Triangulación de Delaunay)
Eliminar elementos sobrantes (puntos,etc)
Representación de curvas complejas
Algoritmos para conversión entre modelos
Intersección de regiones (polígonos)
10. Aplicaciones
Introducción
a
la
Geometría
Computacional
Robótica
Planificación de movimientos/trayectorias
Detección de colisiones
Aproximación de curvas
Simplificación de objetos (envolvente convexa
2D/3D)
Geometría Computacional
Industrial (los robots poseen brazos con diferentes
grados de libertad definiendo movimientos en
forma de costosas curvas)
Robots autónomos (la escena de objetos estáticos,
objetos dinámicos y trayectorias se convierten en )
objetos geométricos que intersectan/giran/etc., y
simplifican su geometría )
11. Aplicaciones
Introducción
a
la
Geometría
Computacional
Diseño y fabricación de productos
Ayuda al diseño en la interfaz de diseño
No maneja curvas sino objetos lineales
Algoritmos para tratamiento de intersecciones
Minimizar el número de triángulos en el diseño
Geometría Computacional
Modelado de sólidos (representación y manipulación
de objetos 3D)
Se ha pasado de cilindros, esferas, etc. a curvas
complejas usando parches y superficies paramétricas
12. Aplicaciones
Introducción
a
la
Geometría
Computacional
Biología Molecular
Diseño de modelos geométricos (modelos
esféricos) para determinar la estructura
geométrica de las proteínas
Geometría Computacional
Estructura de las proteínas ( Las cadenas de
proteínas tienen propiedades químicas y
geométricas)
(disciplina creciente con el estudio del genoma humano)
13. Aplicaciones
Introducción
a
la
Geometría
Computacional
Astrofísica
Bases de datos que respondan a cuestiones:
Dado una caja rectangular de d dimensiones,
encontrar todos los objetos dentro de él
Dado un objeto, encontrar el más cercano o los
k más cercanos
Geometría Computacional
Manejo de mapas digitales:
mapas digitales con 20 Terabytes
con 5 bandas de longitud de onda
100 millones de objetos clasificados por tipos
con datos en Rd,
, con d=8 (5 colores, declinación,
ascensión derecha, redshit)
Problemas
14. Soluciones que aporta
Introducción
a
la
Geometría
Computacional
1.- El/los vecino/s más cercano/s
2.- Detección de colisiones
3.- Planificación de movimientos y trayectorias
4.- Intersección de polígonos
5.- Simplificación de curvas y polígonos
6.- Eliminación de datos redundantes
7.- Computación exacta (Exact computation)
8.- Partición de polígonos
9.- Envolvente convexa
Algunos de los problemas que la GC soluciona:
15. Estructuras de datos
Introducción
a
la
Geometría
Computacional
1.- Teselaciones del plano/espacio
Diagrama de Voronoi
Triangulaciones
2.- Estructuras de datos basadas en árboles
segment-trees
k-d trees
quadtrees/octrees
árboles de intervalos
BSP
Algunas estructuras de datos utilizadas
17. Bibliografía
Introducción
a
la
Geometría
Computacional
CHAZELLE B. The Computational Geometry Impact Task Force
Report. B. Chazelle + 35 co-authors, Advances in Discrete and
Computational Geometry, Contemporary Mathematics, 223,
AMS, Providence (1999), 407-463.
disponible en:
http://www.cs.princeton.edu/~chazelle/pubs/CGreport99.pdf
PREPARATA Franco P., Ian Shamos Michael. Computational
Geometry. Springer-Verlag. 1985.
enlaces de interés:
GEOMETRY IN ACTION: http://www.ics.uci.edu/~eppstein/geom.html
SITIO WEB DE MÚLTIPLES ENLACES:
http://cgm.cs.mcgill.ca/~godfried/teaching/cg-web.html
APLICACIONES A LA INFORMÁTICA GRÁFICA:
http://www.cs.princeton.edu/~dpd/Papers/DobkinIEEE.pdf