MEJORAMIENTO META-HEURISTICO DE

123

Transcript of MEJORAMIENTO META-HEURISTICO DE

Page 1: MEJORAMIENTO META-HEURISTICO DE
Page 2: MEJORAMIENTO META-HEURISTICO DE

MEJORAMIENTO META-HEURISTICO DE CORRESPONDENCIAS EN LA MODELACIÓN 3D

A PARTIR DE IMÁGENES

TESIS

MAESTRÍA EN CIENCIAS EN SISTEMAS INTELIGENTES

INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY

POR

ING. ERIC ENRIQUE VILLAFAÑA HERRERA

DICIEMBRE 2009

Page 3: MEJORAMIENTO META-HEURISTICO DE

M e j o r a m i e n t o Meta-Heurístico de Correspondencias en la Modelación 3D a

par t i r de Imágenes

T E S I S

Maestría en Ciencias en Sistemas Inteligentes

Instituto Tecnológico y de Estudios Superiores de Monterrey

P o r

Ing. E r i c Enrique Villafaña Herrera

Diciembre 2009

Page 4: MEJORAMIENTO META-HEURISTICO DE

Mejoramiento Meta-Heurístico de Correspondencias en la Modelación 3D a

partir de Imágenes

TESIS

Maestría en Ciencias en

Sistemas Inteligentes

Instituto Tecnológico y de Estudios Superiores de Monterrey

P o r

Ing. Er i c Enrique Villafaña Herrera

Diciembre 2009

Page 5: MEJORAMIENTO META-HEURISTICO DE

M e j o r a m i e n t o Meta-Heurístico de Correspondencias en la Modelación 3D a

p a r t i r de Imágenes

Presentada a la División de Mecatrónica y Tecnologías de Información

Este trabajo es requisito parcial para obtener el grado académico de Maestro en

Ciencias en Sistemas Inteligentes

Instituto Tecnológico y de Estudios Superiores de Monterrey

Campus Monterrey

Monterrey, N . L . Diciembre de 2009

P o r

Ing. E r i c Enrique Villafaña Herrera

TESIS

Page 6: MEJORAMIENTO META-HEURISTICO DE

A mi familia, por su inmenso cariño y apoyo.

Page 7: MEJORAMIENTO META-HEURISTICO DE

Reconocimientos

Deseo externar un sincero agradecimiento a las personas que de alguna forma co-laboraron en el desarrollo de esta tesis.

Quiero agradecer de todo corazón a mis padres y hermanos por su amor, cariño, apoyo y comprensión que me han dado durante toda m i vida, así como la fuerza y el coraje que me inculcaron para terminar la tesis. Es una alegría inmensa ser parte de esta familia.

A l Dr . Santiago Enrique Conant Pablos, por su asesoría durante el desarrollo de esta investigación; por su constante apoyo que siempre fue un estímulo para concluir este proyecto.

A mis sinodales, Dra . Ol iv ia Barrón y Dr . Horacio Martínez, por sus consejos para mejorar la calidad de esta tesis.

A mis profesores de la maestría, por sus enseñanzas y a Doris Juárez, que siempre estuvo allí cuando necesite de su apoyo.

A mis amigos que siempre me dieron ánimos en los momentos difíciles.

Además, deseo agradecer a la persona que hizo m i v ida especial, siempre me br in-da su apoyo y comprensión de manera incondicional, y me llena con su amor. Gracias Gladys Quintal por ser parte de mi vida.

E R I C E N R I Q U E V I L L A F A Ñ A H E R R E R A

Instituto Tecnológico y de Estudios Superiores de Monterrey-Diciembre 2009

VI

Page 8: MEJORAMIENTO META-HEURISTICO DE

Mejoramiento Meta-Heurístico de Correspondencias en la Modelación 3D a

partir de Imágenes

Eric Enrique Villafaña Herrera, M . C . Instituto Tecnológico y de Estudios Superiores de Monterrey, 2009

Asesor de la tesis: Dr. Santiago E. Conant Pablos

L a generación de modelos 3D ha demostrado ser de mucha utilidad en diversos tipos de aplicaciones que van desde aplicaciones en laboratorios de investigación científica hasta implementaciones de dichos modelos en la industria, como por ejemplo en la recreación 3D de edificios para el análisis de sus estructuras. La creación de modelos 3D es un tema que ha sido muy estudiado dentro del área de visión computacional por diferentes investigadores y se han realizado varios trabajos al respecto, como el de registro e integración de múltiples vistas de objetos para construcción de modelos en 3D y el de reconstrucción de objetos a partir de imágenes no calibradas, entre otros. L a reconstrucción 3D ha sido estudiado bajo diferentes contextos como el ambiente, el tipo de imágenes, la calibración de cámaras, etc.

E n el contexto de modelación 3D surgen múltiples métodos o esquemas para re-solver el problema de la reconstrucción, en particular se tiene el interés por el enfoque no calibrado dado que no requiere de costosos equipos ni de una compleja calibración, debido a esto se podría considerar que este esquema es más parecido al sistema natural de visión que usan las personas en comparación con otros esquemas. E l generador de modelos 3D está conformado por varias partes, cada una de las cuales tiene su propia complejidad y pueden ser tratadas hasta, cierto punto de manera aisladas unas de otras, corno por ejemplo, la selección de puntos de interés no siempre genera de manera ade-cuada todos los puntos característicos, como las esquinas de los objetos en las imágenes, por lo que a pesar de que puede tratarse de manera independiente afecta el resultado final de la reconstrucción.

Entre las diferentes partes que conforman a un modelador 3D se encuentra la se-lección de los puntos 2D en las imágenes que representan a un mismo punto del espacio 3D. Esta parte del modelador es una de las de mayor interés, debido a que es una de las partes más importantes y complejas de resolver y por lo tanto sigue siendo un

Page 9: MEJORAMIENTO META-HEURISTICO DE

problema abierto. E n este trabajo se utilizan técnicas de visión computacional para determinar las correspondencias mencionadas, para esto se realizaron modificaciones a dos algoritmos: el algoritmo de selección de correspondencias y el algoritmo de elimi-nación de falsas correspondencias (outliers). Para eliminar los outliers se establece un algoritmo sencillo que explore un subconjunto de los puntos de interés para encontrar las mejores correspondencias y a partir de estos explotar las características geométricas para proyectarlos y encontrar otros puntos correspondientes.

L a presente investigación plantea mejorar las correspondencias para obtener ma-yor exactitud al calcular las transformaciones de movimiento que sufren las imágenes y modificar un método robusto de eliminación de falsas correspondencias (outliers) mediante la aplicación de algoritmos de inteligencia computacional con la finalidad de disminuir una mayor cantidad de outliers que los métodos tradicionales o eliminar los efectos causados por los mismos. E n este trabajo también se demuestra que es factible aplicar algoritmos de inteligencia computacional en el post-procesamiento de los puntos correspondientes con el objetivo de mejorar el rendimiento del algoritmo utilizado para la eliminación de outliers y de esta manera generar mejores resultados.

VIII

Page 10: MEJORAMIENTO META-HEURISTICO DE

Índice general

Reconocimientos VI

Resumen VII

índice de tablas XII

índice de figuras XIV

índice de algoritmos XVII

Capítulo 1. Introducción 1 1.1. Definición del problema 4 1.2. Motivación 5 1.3. Objetivos 6

1.3.1. Objetivos específicos 6 1.4. Hipótesis 6

1.4.1. Justificación 7 1.5. Contribución 7 1.6. Organización de la tesis 8

Capítulo 2. Antecedentes 9 2.1. Modelador 3D a partir de imágenes no calibradas 9 2.2. Extracción de puntos característicos 11

2.2.1. Método de Harris 12 2.3. Selección de correspondencias entre características 15

2.3.1. Seguimiento de características 15 2.3.2. Método robusto de selección de correspondencias basado en ven-

tanas de correlación 19 2.4. Geometría Epipolar 22

2.4.1. Algoritmo R A N S A C 23 2.4.2. Reconstrucción Proyectiva 25

2.5. Reconstrucción con múltiples vistas 28

I X

Page 11: MEJORAMIENTO META-HEURISTICO DE

2.5.1. Actualizar la reconstrucción proyectiva a euclidiana 29 2.6. Visualización 33 2.7. Recocido simulado 34 2.8. Algoritmos Genéticos 35

2.8.1. Evaluación y Selección 36 2.8.2. Cruce 37 2.8.3. Mutación 37

Capítulo 3. Modelo de solución 38 3.1. Algoritmo para mejorar correspondencias basado en el algoritmo de co-

rrelación 39 3.1.1. Algoritmo de selección de puntos característicos 40 3.1.2. Algoritmo de Selección de Correspondencias 40 3.1.3. Mínimos cuadrados 43 3.1.4. Método de solución para encontrar mejores correspondencias . . 44

3.2. Algoritmo para eliminación de falsas correspondencias en los puntos ca-racterísticos 48 3.2.1. Algoritmo Genético 52 3.2.2. Recocido Simulado 55 3.2.3. Función de evaluación 57

3.3. Proceso de validación 58 3.4. Resumen 58

Capítulo 4. Mejoramiento a las correspondencias 60 4.1. Impacto del algoritmo de selección de correspondencias 60 4.2. Experimentos para encontrar las mejores correlaciones utilizando algo-

ritmos genéticos 65 4.3. Experimentos para mejorar las correlaciones 70 4.4. Resumen 72

Capítulo 5. Eliminación de outliers 73 5.1. Impacto del algoritmo para eliminar las falsas correspondencias . . . . 74

5.1.1. Descripción de la experimentación 75 5.1.2. Algoritmos híbridos ( G A S A C y SASAC) 77 5.1.3. Resultados de los algoritmos R A N S A C . G A S A C y S A S A C . . . 78

5.2. Resumen 96

Capítulo 6. Conc lus iones 97 6.1. Conclusiones 97 6.2. Contribuciones 99 6.3. Trabajo futuro 99

x

Page 12: MEJORAMIENTO META-HEURISTICO DE

Bibliografía 101

V i t a 105

X I

Page 13: MEJORAMIENTO META-HEURISTICO DE

Indice de tablas

4.1. Resultados obtenidos de la aplicación de A G s sobre las imágenes. . . . 68 4.2. Resultados del error en la estimación de la matriz fundamental en los

algoritmos de seguimiento, correlación y mejora a la correlación 71

5.1. Resultados obtenidos de la aplicación de R A N S A C sobre las imágenes. 74 5.2. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del teléfono 79 5.3. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del laboratorio 79 5.4. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes de frisco quake 80 5.5. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del pentágono 81 5.6. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes de plantas 83 5.7. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del teléfono 90 5.8. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del laboratorio 91 5.9. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes de frisco quake 91 5.10. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del pentágono 92 5.11. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes de plantas 92 5.12. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del teléfono 93 5.13. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes del laboratorio 93 5.14. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-

nes de frisco quake 91

X I I

Page 14: MEJORAMIENTO META-HEURISTICO DE

5.15. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-nes del pentágono 94

5.16. Resultados obtenidos de la aplicación de los algoritmos sobre las imáge-nes de plantas 95

XIII

Page 15: MEJORAMIENTO META-HEURISTICO DE

índice de figuras

1.1. Proceso de modelación 3D a partir de imágenes no calibradas 2 1.2. Unión de vistas 5

2.1. Estructura del modelador 3D 10 2.2. Cubo de Rubik 13 2.3. Puntos característicos generados por Harris, Gaussiana=l,umbral=1500,radio=3 14 2.4. Ventana de correlación 19 2.5. Imagen base para la correlación con sus respectivos puntos característicos 20 2.6. Segunda imagen para la correlación con sus respectivos puntos carac-

terísticos 21 2.7. Imagen resultante de la correlación 21 2.8. Geometría epipolar (imagen modificada del trabajo de Israel Vite [8]) . 22 2.9. Conjunto de puntos característicos a proyectar 26 2.10. Resultado de la reconstrucción proyectiva 28 2.11. Resultado de la reconstrucción proyectiva con múltiples vistas 30 2.12. Resultado de la reconstrucción Euclidiana 33

3.1. Modelo de solución 39 3.2. Cromosoma del algoritmo genético 46 3.3. Operador de cruce en el algoritmo genético 47 3.4. Operador de mutación en el algoritmo genético 47 3.5. Regresión sin outliers 48 3.6. Regresión con outliers 49 3.7. Algoritmo para mejorar el rendimiento del algoritmo R A N S A C 51 3.8. Algoritmos para eliminación de outliers 51 3.9. Forma del cromosoma del Algoritmo Genético 52 3.10. Cruce de dos puntos 54 3.11. Mutación de reemplazo aleatorio 54 3.12. Forma de los estados del Recocido Simulado 56 3.13. Aplicación de la función siguiente del Recocido Simulado 56

4.1. Estructura del modelador 3D 61

X I V

Page 16: MEJORAMIENTO META-HEURISTICO DE

4.2. Primera imagen de la secuencia de la casa antigua 62 4.3. Modelo resultante de la reconstrucción 3D observado desde la toma lateral 63 4.4. Imagen del modelo 3D resultante observado desde la toma aérea . . . . 63 4.5. Efecto de imprecisión de los puntos en las correspondencias en la recons-

trucción 3D observado desde una toma lateral 64 4.6. Efecto de imprecisión de los puntos en las correspondencias en la recons-

trucción 3D observado desde una toma aérea 64 4.7. Efecto de los outliers en la reconstrucción 3D observado desde una toma

aérea 65 4.8. Efecto de los outliers en la reconstrucción 3D observado desde una toma

lateral 66 4.9. Comportamiento de la correlación alrededor de la ventana de correlación. 68 4.10. Comportamiento de la correlación alrededor de la ventana de correlación. 70

5.1. Imagen del teléfono utilizada para experimentación 79 5.2. Imagen del laboratorio utilizada para experimentación 80 5.3. Imagen de frisco quake utilizada para experimentación 81 5.4. Imagen del pentágono utilizada para experimentación 82 5.5. Imagen de las plantas utilizada para experimentación 82 5.6. Resultado de una corrida sobre la imagen laboratorio donde se muestra

como varía la cantidad de inliers identificados por R A N S A C 83 5.7. Resultado de una corrida sobre la imagen laboratorio donde se muestra

como varía la cantidad de inliers identificados por G A S A C 84 5.8. Resultado de una corrida sobre la imagen laboratorio donde se muestra

como varía la cantidad de inliers identificados por S A S A C 84 5.9. Resultado de una corrida sobre la imagen laboratorio donde se muestran

los mejores modelos encontrados por R A N S A C 85 5.10. Resultado de una corrida sobre la imagen laboratorio donde se muestran

los mejores modelos encontrados por G A S A C 86 5.11. Resultado de una corrida sobre la imagen laboratorio donde se muestra

los mejores modelos encontrados por S A S A C 86 5.12. Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio

donde se muestra como se generan los modelos por el algoritmo R A N S A C 87 5.13. Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio

donde se muestra como se generan los modelos por el algoritmo de GASAC 87 5.14. Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio

donde se muestra como se generan los modelos por el algoritmo de S A S A C 88 5.15. Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio

donde se muestra los mejores individuos encontrados por el algoritmo R A N S A C 89

x v

Page 17: MEJORAMIENTO META-HEURISTICO DE

5.16. Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio donde se muestra los mejores individuos encontrados por el algoritmo de G A S A C 89

5.17. Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio donde se muestra los mejores individuos encontrados por el algoritmo de S A S A C 90

5.18. Líneas epipolares de la imagen izquierda e izquierda del laboratorio . . 96

XVI

Page 18: MEJORAMIENTO META-HEURISTICO DE

Indice de algoritmos

1. Algoritmo de Harris con supresión de puntos no máximos 14 2. Algoritmo de seguimiento de características 17 3. Algoritmo de correspondencias 20 4. Algoritmo para calcular matriz fundamental a partir de 2 imágenes . . 23 5. Algoritmo Ransac 24 6. Algoritmo de estimación de movimiento 25 7. Algoritmo de Triangulación lineal 27 8. Algoritmo de estructura de múltiples vistas 29 9. Algoritmo de actualización a reconstrucción euclidiana 32 10. Algoritmo de rectificación de imágenes 34 11. Algoritmo genético básico 36 3.12. Algoritmo de correlación 40 3.13. Función de costo para calcular los parámetros de la rectificación semi-

euclidiana 43 3.14. Algoritmo de rectificación semi-euclidiana 44 3.15. Algoritmo de solución para mejorar correspondencias 45 3.16. Algoritmo R A N S A C 50

X V I I

Page 19: MEJORAMIENTO META-HEURISTICO DE

Capítulo 1

Introducción

L a visión humana es un medio importante para recabar información del entorno que nos rodea. E l cerebro toma los datos del medio visual y determina ciertas carac-terísticas sobre las imágenes percibidas para producir información referente al medio que lo rodea. Debido a esto la visión computacional surge de la necesidad de auto-matizar el procesamiento de imágenes. L a visión computacional uti l iza la información visual , como imágenes o vídeo, como entrada de ta l manera que le permite procesar y obtener las características de las imágenes para poder realizar un análisis de dichas imágenes.

L a generación de modelos 3D ha sido una de las problemáticas que ha demostra-do ser de importancia en diversas áreas, tales como la biología, e-bussiness, juegos de computadora, etc. [13]. E n el ámbito industrial ha sido de mucha uti l idad al facilitar la realización de ciertos análisis, como por ejemplo, el uso de recreación 3D de edificios para el análisis de estructuras. E n medicina el procesamiento de mamografías en 3D permite aumentar la precisión del diagnóstico de cáncer, de esta manera reduce la nece-sidad de realizar pruebas adicionales; la reconstrucción 3D de dientes permite realizar pruebas de colocación de implantes en los mismos, etc. Para la recreación 3D de objetos existen diversas técnicas, las cuales dependen del medio ambiente, como por ejemplo de la iluminación, y características de las imágenes, como por ejemplo la cantidad de imágenes, sobre el cual se aplique, para obtener resultados adecuados.

Para lograr realizar la reconstrucción se tomó como base un modelador que obtiene la reconstrucción a partir de imágenes no calibradas. E l enfoque no calibrado del modelo básico fue elegido porque sólo requiere el uso de una cámara convencional, lo cual hace factible económicamente su implementación, en comparación con modelos que requieren sensores especializados de costo elevado. Los módulos que componen el modelo básico son los siguientes:

• Primero, módulo de procesamiento de imágenes, donde cada par de vistas sucesi-vas sigue una secuencia de pasos: detección de puntos de interés, correspondencia de puntos y reconstrucción de puntos. E n el proceso de reconstrucción se deter-minan los parámetros que describen el movimiento (matriz de rotación R y el

1

Page 20: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 1.1: Proceso de modelación 3D a partir de imágenes no calibradas

vector de traslación T) entre las dos vistas. Esta secuencia de pasos se repite para todos los pares de vistas sucesivas del conjunto.

• Segundo, módulo de creación del modelo 3D del objeto, para lo cual toman los puntos correspondientes y los parámetros de movimiento para determinar el mapa total de todos los puntos 3D generados, una vez obtenido el mapa total, la malla se genera por triangulación [6]. A pesar de que se tienen identificadas las diferentes partes de este tipo de modelos, no es posible tener resultados exactos, debido a que las partes involucradas para el proceso no son precisas [35].

Existen otros trabajos como el de Remondino [28] que propone una secuencia diferente de acciones para realizar la reconstrucción 3D. E l propone como pasos los siguientes: la adquisición y análisis de secuencia de imágenes, calibración y orientación de las imágenes, proceso de correspondencias y la generación de puntos y modelado 3D.

Otro trabajo de reconstrucción de modelos 3D es el de Taylor et al. [31]. Taylor crea modelos de objetos poliédricos, y su efectividad se funda en la explotación de las características de la escena, que en este caso son escenas arquitectónicas.

E l proyecto realizado por Tomasi y Kanade [32], el cual mediante un método de factorización recupera la información para poder realizar la reconstrucción en 3D a partir de imágenes, requiere de ciertas restricciones sobre proyecciones ortográficas.

L a Figura 1.1, que se adaptó del trabajo de Franco et al. [4], presenta la mane-ra en que el modelo básico realiza la reconstrucción de un objeto en 3D. L a imagen está dividida en dos partes: la parte (A) muestra una serie de imágenes tomadas del

2

Page 21: MEJORAMIENTO META-HEURISTICO DE

objeto, dichas imágenes serán procesadas siguiendo los pasos del modelo básico, para dar como resultado el modelo 3D presentado en la parte (B) de la Figura 1.1.

E l procesamiento de imágenes es afectado por el ambiente, como en el caso de los cambios en las condiciones de iluminación sobre los que se diseñaron. Debido a esto es difícil tener sistemas capaces de adaptarse a diferentes condiciones del entorno. Como ejemplo de esta situación tenemos a los algoritmos que sirven para delimitar los elementos que participan en una imagen; dichos algoritmos, con cambios en las condiciones sobre las que fueron diseñados presentan fallas, aún cuando dichos cambios sean mínimos [22].

Los métodos de reconstrucción son muy sensibles al ruido generado por el ambien-te; debido a esto, la precisión en la unión de las imágenes puede afectar directamente los resultados del modelo 3D generado [36]. E l modelo básico requiere mejorar la fase de detección de puntos característicos, que son cualquier punto en la imagen para la cual cambia la magnitud de la intensidad de color, como por ejemplo las esquinas de los objetos dentro de las imágenes [38]. Con la finalidad de disminuir el ruido se realizarán experimentos sobre el algoritmo de correspondencia de manera que se puedan mejorar los resultados.

Los datos raramente son perfectos; como por ejemplo, los puntos que nos servirán para unir las imágenes pueden tener errores debido a factores como una deficiente i lu -minación, errores como falsas correspondencias entre los puntos que nos servirán para unir las imágenes las cuales deben de ser eliminadas del conjunto de datos. Entre los puntos correspondientes diferenciaremos 2 tipos de datos: Los outliers son datos que son inconsistentes con el resto de los datos, los cuales pueden ser generados por ruido, medidas erróneas, etc. y los inliers son datos que son consistentes con el modelo. L a presencia de los outliers en un conjunto de datos puede causar errores al momento de hacer inferencias sobre los dato, de allí la importancia de reducir el impacto que tienen en el estadístico cuando se analizan los datos. E l termino outliers será utilizado en este documento para referirse a las falsas correspondencias y a los datos inconsistentes, y el termino inliers se utilizará para referirse a las correspondencias correctas y a los datos consistentes de un conjunto de datos. Para localizar outliers existen varias técnicas de regresión, como el error cuadrático medio, que nos ayudan a minimizar sus efectos o para ubicarlos entre los datos. Una clase de estas técnicas es conocida con el nombre de diagnostico de outliers multi-caso, la cual provee una manera de caracterizar los outliers de los conjuntos de puntos relativos al conjunto de todos los puntos. L a parte difícil de la aplicación de dichas técnicas de regresión es seleccionar cuales subconjuntos se evalúan, y por lo tanto la selección adecuada de subconjuntos se vuelve un problema de fundamento combinacional. Dada la naturaleza combinatoria de estos problemas se hace adecuada la aplicación de algoritmos de inteligencia computacional, tales como los algoritmos genéticos y el recocido simulado que son métodos de optimización heurísti-ca [2:. Este problema es uno de los puntos que mayor interés ha despertado en esta

3

Page 22: MEJORAMIENTO META-HEURISTICO DE

investigación, debido a que puede ser planteado como un problema de optimización y por lo tanto puede ser resuelto con técnicas de Inteligencia Computacional.

E s t a investigación tiene como objetivo mejorar los resultados obtenidos por el mo-delo básico de reconstrucción 3D a partir de una secuencia de imágenes no calibradas mediante la aplicación de algoritmos de inteligencia computacional. Estás técnicas han dado buenos resultados en problemas de optimización, lo cual es necesario en algunas partes del modelo básico, como por ejemplo en eliminación de las falsas corresponden-cias en los puntos utilizados para unir las imágenes.

1.1. Definición del problema

L a creación de modelos 3D es un problema complejo, debido a que depende de muchos factores como la iluminación, por lo que no se tiene un esquema único de solución, n i modelos que proporcionen resultados exactos con respecto al sistema de visión natural [21]. L a eficiencia de las técnicas utilizadas define la calidad final de la reconstrucción. Si suponemos un conjunto de puntos mal representado, existirán puntos definidos que no cumplan las condiciones óptimas para la malla que representa la superficie del objeto [6].

L a calidad de la información de entrada es la base para realizar un buen modelado, por lo que es necesario determinar condiciones que permitan obtener los datos más precisos que servirán como base para la reconstrucción 3D. L a calibración de la cámara con la que se obtienen las imágenes nos permite determinar ciertos datos del mundo, es decir, se obtiene información de las métricas de las imágenes 2D del mundo 3D [24]. U n a mala calibración produce resultados erróneos sobre las métricas obtenidas; este hecho afecta directamente a la reconstrucción 3D haciendo que los modelos 3D resultantes sean muy diferentes al objeto real a reconstruir.

U n a vez conociendo las características de los objetos participantes en las imágenes, se determinan las relaciones que existen entre una imagen y otra. Este paso es tedioso y complejo debido a que depende en gran medida del tipo de las imágenes [37], y una mala elección de estos puntos puede producir malos resultados, o no determinar una correcta correlación entre las diversas partes del objeto [6].

L a presente investigación se centra en la parte del modelo de selección de pun-tos característicos adecuados junto con los puntos correspondientes en la secuencia de imágenes. Debido que al establecerse las relaciones entre los puntos de las imágenes que representan al mismo punto en el espacio pueden generarse correspondencias equivoca-das [25].

L a Figura 1.2, se tomó del trabajo presentado por Gustavo Olague [20]. Esta figura muestra un par de vistas, en donde los círculos rojos representan el conjunto de puntos que se unirán y las flechas representan las correspondencias de un conjunto de puntos

4

Page 23: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 1.2: Unión de vistas

de una imagen con un conjunto de puntos de la otra imagen. Los conjuntos de puntos encerrados por el rectángulo negro tienen cierto ruido e influyen en el resultado de la unión de las vistas, mientras que en los círculos amarillos se muestra los puntos que no están presentes en ambas imágenes.

E l modelo de solución propuesto establece una extensión de trabajos previos como el de Kovesi [11] y el de N C C [10], que encuentran las correspondencias basados en el uso de ventanas de correlación. Sin embargo, en ambos casos no necesariamente se encuentran los puntos con más alta correlación debido a que sólo se busca entre los puntos característicos (los cuales tienen una alta correlación pero no necesariamente la más alta).

E l algoritmo R A N S A C (RANdom Sampling Consensus) es importante dentro del modelo, debido a que permite minimizar o eliminar los efectos de las falsas correspon-dencias de los puntos entre las imágenes. Otra aportación del modelo de solución es la implementación de un algoritmo híbrido que mezcla algunas de las características del algoritmo R A N S A C con algoritmos evolutivos, como los algoritmos genéticos y el recocido simulado, con la finalidad de mejorar el desempeño en tiempo y en la cantidad de inliers obtenidos.

1.2. Motivación L a creación de modelos 3D es un tema que ha sido muy estudiado dentro del

campo de la visión computacional por diferentes investigadores y se han realizado varios trabajos al respecto, como el de registro e integración de múltiples vistas de objetos para construcción de modelos en 3D y el de reconstrucción de objeto a partir de imágenes calibradas, entre otros.

Existen varios métodos de reconstrucción 3D, de los cuales algunos requieren equi-

5

Page 24: MEJORAMIENTO META-HEURISTICO DE

po costoso. Algunos métodos requieren de una sola cámara, y por lo tanto no son tan costosos pero necesitan controlar el ambiente, como la luz o las sombras, lo cual reduce el alcance de su aplicación.

También existen otros métodos que dependen de la calibración precisa de la cáma-ra , lo cual dificulta la adquisición de la información, como las imágenes en una ubicación específica, para el modelo. Incluso algunos métodos requieren la interacción del usuario, y por lo tanto la información está propensa a errores [39]. L a motivación principal de este trabajo es analizar los resultados del modelo propuesto y compararlos contra los resultados de la aplicación de algoritmos clásicos para la detección de las correspon-dencias entre los puntos de pares de imágenes.

1.3. Objetivos

E l objetivo general de la presente investigación es mejorar la generación del modelo 3D de un objeto real a partir de una secuencia de imágenes en 2D, aumentando la precisión de las posiciones de los puntos en las imágenes que corresponden al mismo punto en el espacio y disminuyendo las falsas correspondencias mediante técnicas de Inteligencia Computacional.

1.3.1. Objetivos específicos

• Realizar experimentos con algoritmos genéticos para encontrar los puntos de más alta correlación.

• Implementar un algoritmo que utilice un esquema de correspondencias basado en ventanas para mejorar la precisión de la matriz fundamental.

• Implementar algoritmos híbridos ( R A N S A C - A l g o r i t m o evolutivo) para eliminar los outliers de los puntos correspondientes de las imágenes. E l sistema implemen-tado deberá cumplir con las siguientes características:

Mantener un tiempo corto de ejecución y bajo esfuerzo computacional.

Tener un diseño simplificado de implementación

• Determinar bajo que condiciones los algoritmos híbridos generan mejores resul-tados que el algoritmo R A N S A C tradicional.

1.4. Hipótesis

L a hipótesis principal de la presente tesis, es que utilizando técnicas de Inteligencia Computacional es posible mejorar los resultados del modelo 3D del objeto de ta l manera

6

Page 25: MEJORAMIENTO META-HEURISTICO DE

que los nuevos modelos representen de manera más precisa a los objetos reales. Las preguntas que sirvieron como pauta para la investigación son:

• ¿Es posible mejorar las correspondencias implementando un algoritmo genético para encontrar los puntos de más alta correlación?

• ¿Es posible implementar un algoritmo que utilice un esquema de correspondencias basado en ventanas para mejorar la precisión de la matriz fundamental?

• ¿Es posible implementar un algoritmo híbrido que combine R A N S A C con a l -goritmos de inteligencia computacional para eliminar los outliers de los puntos correspondientes en las imágenes?

• ¿Se puede determinar las condiciones bajo las cuales los algoritmos híbridos ge-neran mejores resultados que el algoritmo de R A N S A C tradicional?

1.4.1. Justificación

L a determinación de correspondencias entre puntos de diferentes imágenes es una etapa compleja y muy importante en el resultado final de la aplicación [6]. Existen múltiples técnicas para calcular las correspondencias, como las basadas en programa-ción lineal, pero estás técnicas tienden a fallar por la aparición de oclusiones. U n a técni-ca muy poderosa para la selección de correspondencia es la basada en la correlación [34]. Aún utilizando un método robusto para seleccionar correspondencias, los pun-tos característicos vienen contaminados con un número de correspondencias erróneas o outliers, util izando la técnica tradicional de los mínimos cuadrados para eliminarlos fallaría, por lo tanto se requiere de un método robusto para realizarlo como el método R A N S A C [25].

Tomando en consideración lo anterior se puede justificar esta investigación y se fortalece la idea de que la hipótesis propuesta es correcta.

1.5. Contribución

E s t a investigación brinda información sobre la forma en la cual es posible llevar a cabo un proceso de reconstrucción 3D de objetos, a partir de una secuencia de imágenes no calibradas en 2D. Con base en las preguntas de investigación, este trabajo contribuye de forma particular en la obtención de una mayor comprensión acerca de:

• L a existencia de un algoritmo para obtener las mejores correspondencias entre pares de imágenes, de ta l manera que se obtenga una matriz fundamental más precisa entre ellas y mejore los resultados de las transformación de movimiento entre las imágenes.

7

Page 26: MEJORAMIENTO META-HEURISTICO DE

• L a efectividad del empleo de un algoritmo híbrido que combine la potencia de un algoritmo robusto para la detección de outliers y una técnica evolutiva de optimización.

• Las ventajas de generar y obtener las correspondencias adecuadas en un par de imágenes, utilizando ejemplos reales.

• L a consistencia en los resultados de la aplicación del post-procesamiento de las correspondencias, mejorando los resultados del modelo 3D.

1.6. Organización de la tesis A continuación se presenta una descripción general de la organización de la pre-

sente Tesis: E n el Capítulo 2 se presentan el marco teórico vinculado con el problema de reconstrucción 3D con imágenes no calibradas junto con los métodos involucrados en el proceso. E l Capítulo 3 presenta el modelo de solución propuesto, en él se exponen los temas específicos sobre el funcionamiento de un algoritmo híbrido (RANSAC-algoritmo evolutivo), un algoritmo para obtener mejores correspondencias y la metodología ut i -lizada para llevar a cabo la experimentación. E n el Capítulo 4 se presentan los expe-rimentos y los resultados obtenidos del método para seleccionar correspondencias. E l Capítulo 5 presenta los experimentos y resultados obtenidos del proceso de eliminación de outliers. Finalmente, en el Capítulo 6 se presentan las conclusiones y se incluyen sugerencias para trabajos futuros.

8

Page 27: MEJORAMIENTO META-HEURISTICO DE

Capítulo 2

Antecedentes

E n este capítulo se presenta la teoría que sustenta este trabajo de tesis. Los temas presentados en este capítulo son necesarios para l a comprensión de la investigación y sus implicaciones. Primero se describe el modelo de reconstrucción de objetos a partir de imágenes no calibradas, así como los métodos principales para tratar con problemas de este tipo.

2.1. Modelador 3D a partir de imágenes no calibra-das

E n esta sección se presenta de manera general cada una de las partes que incluye el modelador. Cada una de estás partes del modelador se detallada a mayor profundidad en las diferentes secciones que conforman este capítulo. L a estructura del modelador 3D uti l izada en este trabajo se muestra en la Figura 2.1, y esta compuesta por módulos que realizan las siguientes tareas:

• Extracción de puntos característicos - E n este proceso se seleccionan los puntos de interés en la imagen que se procesarán para definir las relaciones geométricas entre las imágenes y definir la forma del objeto.

• Selección de Correspondencias - Se establecen las relaciones entre los puntos de interés de distintas imágenes, es decir, se determina que punto de una imagen corresponde a que punto en otra imagen. Para esto, se uti l izan los siguientes algoritmos:

• Algoritmo de seguimiento.- Este algoritmo permite seguir una serie de puntos de una imagen entre las imágenes de una secuencia.

• Algoritmo de correlación.- Este algoritmo permite relacionar los puntos ca-racterísticos entre pares de vistas.

• Algoritmo RANSAC- Este algoritmo permite la detección y eliminación de outliers entre las correspondencias de pares de imágenes.

9

Page 28: MEJORAMIENTO META-HEURISTICO DE

10

Page 29: MEJORAMIENTO META-HEURISTICO DE

• Calibración de cámara- E n este proceso se considera que se tiene acceso a los datos de calibración de la cámara, o que existe algún medio para obtenerlos; o sea, que tomando ciertas consideraciones, como la posición del punto principal y la forma de los pixeles, se pueden calcular los parámetros extrínsecos e intrínsecos de la cámara.

• Reconstrucción 3D.- Este proceso calcula, a partir de las correspondencias y l a calibración de la cámara, los parámetros de movimiento entre las imágenes (ro-tación y traslación), y a partir de estos realiza las siguientes reconstrucciones del modelo 3D:

• Reconstrucción Proyectiva- Pr imera reconstrucción que uti l iza la informa-ción de la geometría proyectiva para generar la estructura 3D.

• Reconstrucción Euclidiana- Reconstrucción que ut i l iza la información de la escena, como la calibración de la cámara para generar el modelo 3D. Este método proporciona resultados más precisos que los obtenidos con la reconstrucción proyectiva. Sin embargo, es posible pasar un modelo 3D de la geometría proyectiva a la euclidiana mediante un seria de transformaciones.

• Rectificación.-La rectificación transforma pares de imágenes de ta l manera que líneas epipolares correspondientes en ambas imágenes se encuentren alineadas en la misma posición sobre el eje vertical, es decir, que la diferencia entre los puntos de las imágenes este dada por una traslación simple en X. A l nuevo conjunto de imágenes resultantes de estás tranformaciones se les conoce como imágenes rectificadas.

• Mapeo denso de correspondencias- E n las imágenes rectificadas es posible de-terminar correspondencias adicionales a las obtenidas mediante los algoritmos de correspondencia de arriba, realizando una búsqueda de cada punto de una imagen entre los puntos que tengan la misma coordenada Y en la otra imagen.

• Mapeo de texturas - A los puntos correspondientes se aplican una serie de funciones para obtener la reconstrucción 3D. Sobre estos nuevos puntos en 3D se interpola la textura de ta l forma que se recree el objeto real.

2.2. Extracción de puntos característicos

U n a imagen contiene una gran cantidad de datos; la mayoría de ellos proporciona poca información para interpretar la escena. U n sistema de visión debe extraer de ma-nera eficaz y robusta las características de las imágenes de modo que nos proporcionen

11

Page 30: MEJORAMIENTO META-HEURISTICO DE

la máxima información posible para realizar una tarea particular, que en el caso de esta investigación es la obtención de buenos modelos 3D de los objetos captados.

Aunque al principio, las características de los objetos a modelar eran seleccionados manualmente por un experto, en la actualidad se busca automatizar el proceso. Se han desarrollado distintos métodos para la detección de características importantes en imágenes, tales como regiones significantes (bosques, lagos, campos), líneas (líneas costeras, caminos, ríos) o puntos (esquinas de regiones, intersecciones de líneas, puntos sobre curvas con alta curvatura). Estas deben ser distintivas, estar distribuidas sobre toda la imagen y ser detectadas eficientemente. También se espera que sean estables en el tiempo, de forma que no se muevan mientras se realiza l a tarea.

E n trabajos de modelación automática de objetos a partir de imágenes es común la utilización de esquinas como puntos característicos dado que cumplen con las carac-terísticas antes mencionadas. Existen muchos trabajos que pueden realizar este proceso, ta l como el detector de esquinas de Kitchen-Rosenfeld [9], el cual calcula el valor de la "Esquina" como el valor que produce la magnitud del gradiente local y la tasa de cambio de la dirección del gradiente. Sin embargo, para la tarea de selección de carac-terísticas requerido en este trabajo se seleccionó el método de Harris, el cual se detalla a continuación.

2.2.1. Método de Harris

E l algoritmo de detección de esquinas de Harris combina varios operadores para determinar si un punto representa a una esquina de un objeto:

1. E l operador Prewitt2 que le permite realzar las zonas donde hay un cambio i m -portante en la intensidad del color,

2. E l operador Gaussiano que le permite disminuir el ruido de la imagen, y

3. E l operador de confidencialidad con el cual genera un valor que se compara contra un umbral para determinar si el punto es o no una esquina.

Cuando se aplica la medida de Harris, existe la posibilidad de que muchos puntos cercanos a las esquinas cumplan con el criterio de selección, por lo que se recomienda util izar un algoritmo de supresión de puntos no máximos.

Sea / la imagen, Ix e Iy las derivadas parciales de la imagen en el punto (x, y), y w(u, v) es l a ponderación Gaussiana de manera que

(2.1)

12

L a medida de Harris viene dada por l a ecuación:

Page 31: MEJORAMIENTO META-HEURISTICO DE

C = det (A) - k * trace 2 (A) = (l2x * I¡ - Ixy) - k * ( / J + I2

y) (2.2)

Existe otra medida de confidencialidad C dada por Nobel[18], la cual tiene la ventaja de utilizar menos variables para calcular el valor. Este valor se compara con cierto umbral para determinar si un punto es una esquina (esta medida se ut i l iza en la experimentación).

(2.3)

Las entradas para el algoritmo de detección de puntos característicos de Harris con supresión de puntos no máximos son:

• Imagen a procesar.

• Desviación estándar del filtro Gaussiano.

• Valor sobre el que se determinarán las esquinas (Umbral).

• Radio de eliminación de puntos no máximos.

F i g u r a 2.2: Cubo de Rubik

Como ejemplo, la Figura 2.3 presenta el resultado de aplicar el método de Harris a la imagen de la Figura 2.2. Las cruces representan los puntos detectados por el algoritmo.

E l algoritmo de Harris es un algoritmo robusto para detectar puntos característicos en imágenes. Este algoritmo tiene como ventaja que al estar basado en la primera derivada es menos sensible al ruidos que otro métodos basados en la segunda derivada. L a principal desventaja de este algoritmo es que no determina las esquinas en las posiciones exactas en todos los casos, por lo que puede generar puntos en posiciones donde no se tiene una esquina.

E n cuanto al efecto del valor asignado a los parámetros, si al algoritmo se le aumenta el tamaño del umbral generará menos puntos; mientras que si se disminuye,

13

Page 32: MEJORAMIENTO META-HEURISTICO DE

A l g o r i t m o 1 Algoritmo de Harris con supresión de puntos no máximos

1: Generar los operadores de derivación con respecto a x e y, dx = y

dy = transpose(dx) 2: Aplicar los operadores dx y dy sobre la imagen mediante las convoluciones, Ix =

conv (I, dx) e Iy == conv (/, dy) 3: Generar un filtro Gaussiano de tamaño a, g = gaussian(a) 4: Calcular Ix e i ? , e 7X 2 / = Ix* W 5: Aplicar el operador Gaussiano, 72 x = conv ( I 2 , y)), 72 y = conv (7 2 , y)), 7 x y =

conv (Ixy,g) 6: Aplicar la medida de Harris, C = ( /2 X * I2y — Ixy) — k * (J2 X + 72 y) 7: Los puntos que estén por encima del umbral son las esquinas. Para la supresión de

puntos no máximos: 8: Se aplica una dilatación morfológica en escala de grises (mx) a los puntos carac-

terísticos 9: Se elimina de mx los puntos que estén a una distancia menor que el radio con

respecto al borde de la imagen 10: Se toman como esquinas los puntos que caen dentro del umbral y que estén tanto

en mx como en los puntos generados por Harris

F i g u r a 2.3: Puntos característicos generados por Harris, Gaussia-na=l,umbral=1500,radio=3

14

Page 33: MEJORAMIENTO META-HEURISTICO DE

se incrementa la posibilidad de que se encuentren más puntos que lo superen, y por lo tanto de encontrar muchos puntos característicos que no necesariamente son esquinas.

Si aumentamos el tamaño de la ventana se eliminarán los puntos más cercanos a las esquinas y si lo disminuimos tendremos una conglomeración de puntos cercanos a las esquinas reales [12].

2.3- Selección de correspondencias entre característi-cas

Este proceso permite relacionar puntos característicos entre pares de imágenes. L a idea básica es ir tomando cada elemento característico de la primera imagen y buscar el elemento característico que más se le parezca en la segunda. Este proceso no es fácil de resolver debido a la presencia de oclusiones, entre otros factores. Para esta tarea se analizan dos posibilidades de solución; el primero cuando se tiene una secuencia de imágenes y el segundo cuando se limita a un solo par de imágenes.

2.3.1. Seguimiento de características Este proceso toma en consideración pequeñas transformaciones de movimiento

entre las imágenes consecutivas de la secuencia. Considera que las posiciones de los pixeles correspondientes en la siguiente imagen están ubicados en una posición similar, es decir, a unos cuantos pixeles de distancia de la posición que ocupan en la imagen anterior. E l desplazamiento de un punto característico x entre dos imágenes puede ser calculado como la suma de las diferencias al cuadrado entre las 2 imágenes h(x) y Ii+i(x + d) dentro de una ventana W(x) alrededor del punto x. E l desplazamiento puede ser resuelto minimizando:

(2.4) iíW(x)

E l método cerrado para solucionar este problema está dado por:

(2.5)

Donde,

G = (2.6)

y,

15

m i n d £ ( d ) = J2 [h{x + d) - h{x)f

Page 34: MEJORAMIENTO META-HEURISTICO DE

b =

utilizando la diferencia de primer orden It = I2 — h como una aproximación a la derivada temporal. Cuando el desplazamiento entre las vistas excede de 2 a 3 pixeles, las diferencias de primer orden no pueden ser usadas para calcular las derivadas temporales. Por este motivo el esquema de seguimiento implementa un esquema multiescala, lo que puede ser logrado creando "pirámides de imágenes" a partir del alisado y escalado de las imágenes originales.

Por ejemplo, tomemos 2 imágenes Iy e I2, para ellas calculamos para cada imagen una pirámide de 4 niveles, para cada imagen se calculan las imágenes I1 de tamaño 640x480, y se escala consecutivamente a la mitad para obtener í 2 , I3 e I4 de tamaños 320x240, 160x120 y 80x60, respectivamente. Entonces, el proceso inicia con la parte más alta de la pirámide, es decir en el par de imágenes (I4,del cual se obtiene el primer desplazamiento d4 = — G~lb. Este desplazamiento se escala por un factor de 2 para ser aplicado a la siguiente imagen, la ventana W(x) es movida a W(x + 2d4) para I3 y vista como 7| = ¡2 (x + 2d 4). Este mismo esquema se aplica al par (Jf, I3) y con ello se estima el desplazamiento d3. E l proceso se repite hasta el nivel más bajo I\ = / i (x + 2d 4), es decir, hasta encontrar d1. E l desplazamiento final es calculado con la ecuación d = d1 +2d? + 4d3 + 8d4. E n este proceso se pueden realizar iteraciones en la escala más alta (la imagen más pequeña), de forma que el desplazamiento sea calculado entre Iy y la deformación interpolada de la imagen (/g) = ^(x + d1 + d2 + d3 +... -f-d*). Por lo general con 5 o 6 iteraciones es suficiente para obtener una localización con un error de un décimo de pixel en una ventana de 7x7.

Las entrada para el algoritmo es la secuencia de imágenes a procesar. L a primera imagen de la secuencia se usa como base y el algoritmo busca los puntos de esta imagen que se encuentran presentes en el resto imágenes de la secuencia.

Afinación del seguimiento con afinación de contraste

L a ventana W puede ser elegida de cualquier tamaño. Puede ser grande para tratar de contrarrestar los efectos del ruido, o pequeña para que la deformación entre las imágenes pueda aproximarse mediante una traslación. E n esta procedimiento se asume que x es transformada por Ax + d en lugar de sólo usar x + d. Los cambios microscópicos son determinados por un desplazamiento de las intensidades S¡r de las ventanas y un cambio en el factor de contraste A/.;. Un modelo más robusto infiere los cambios de desplazamientos d que son estimados a lo largo de A. XE y para minimizar un residuo del peso de intensidad.

Donde I(x,t) es la intensidad de la imagen en el pixel x en el tiempo t, y W(x) es una función de peso que puede ser ic — 1 o alguna función Gaussiana de x. Los

16

(2.7)

Page 35: MEJORAMIENTO META-HEURISTICO DE

Algoritmo 2 Algoritmo de seguimiento de características 1: Utilizar el detector de puntos característicos (Harris) para obtener las esquinas en

la primera imagen, 2: Determinar el número de niveles (k) y construir la pirámide de imágenes (escalar

las imágenes a la mitad de su tamaño) 3: Se toma como punto de partida la parte más alta de la pirámide (la imagen más

pequeña), 4: repeat 5: Calcular d — —G~1b para las imágenes ( i f , Ik) 6: Se mueve la ventana W(x) una distancia 2dk y se actualiza el valor de I^1 =

I¿l(x + 2dk) 7: Ahora tendremos d = d + 2dk y actualizamos el valor de k = k — 1, de esta

manera trabajaremos con la siguiente imagen de la pirámide 8: until el nivel más bajo (imagen más grande) de la pirámide, donde tendremos que

k = 0. 9: Se establece d = d1.

10: repeat 11: d = d + di+\i = i + 1, donde dk+1 = -G~lb 12: until i — número de imágenes de la pirámide 13: Evaluar la calidad de los puntos característicos utilizando el criterio de H a r r i s y

verificar que puntos caen dentro del umbral. Este proceso se realiza entre la imagen base del seguimiento y las demás imágenes de la secuencia.

17

Page 36: MEJORAMIENTO META-HEURISTICO DE

tiempos en la cámara son calculados entre el tiempo 0 y el tiempo í, en caso de tomarse desplazamientos largos, los tiempos se toman de substituyendo 0 con t y t con t + 1.

E(A, d, XE, SE) = w{x)[I(x,0)-(XEI(Ax + d.t)+6E)]2 (2.8) í í W ( x )

L a expansión de primer orden para el segundo término de la función objetivo E con respecto a todas las incógnitas esta dada por la ecuación

(XEI{Ax + d,t) + SE) « J ( X , Í ) + / ( x , t ) T z (2.9)

Donde f(x, i) = [xlx ylx xly yly Ix Iy I l] y z = [ a n au a2i a 2 2 dx dy A SE) colecciona todos los parámetros de interés. Con esto se concluye que la aproximación de primer orden para E está dada por:

E(z) = £ [/(í,0) - I(x,t) - / ( x , í ) V ) 2 (2.10)

Para encontrar la función z que minimiza E(z), se tiene el siguiente sistema de ecuaciones lineales Sz — c, donde

c = £ u ; ( x ) ( / ( í , 0 ) - / ( x , t ) ) / ( x , í ) (2.11)

s= w(í)f(x,t)f(x,t)T (2.12)

donde

s = (2.13)

Por lo tanto, para encontrar el valor de z se resuelve la ecuación z = S 'o. Desde T

el valor de z = [au « ] 2 a 2 i a 2 2 dx dy X SE] se puede encontrar el valor de d si 5 es inversible.

18

xtW(x)

y

xcW(x)

Page 37: MEJORAMIENTO META-HEURISTICO DE

2.3.2. Método robusto de selección de correspondencias basa-do en ventanas de correlación

E n la parte de selección de correspondencias existen varios tipos de algoritmos, como los basados en programación dinámica [19] y los basados en multiescalas de las imágenes [1]. Estas técnicas fallan principalmente con la aparición de oclusiones. Una técnica que ha dado buenos resultados consiste en explorar regiones para determinar la correlación entre dos puntos y seleccionar el de mayor valor (el de mayor correlación). Estos algoritmos no comparan punto a punto para determinar las correspondencias sino que comparan áreas alrededor de los puntos de interés. A estas áreas alrededor de los puntos se les conoce como ventanas de correlación [34].

Existen varias técnicas utilizadas para comparar las regiones alrededor de los pun-tos para determinar las correspondencias; entre las más populares esta la NCC(Normalized Cross Correlation), la M C (Median Correlation) la cual está basada en N C C , y la me-dida utilizada por Peter Kovesi [11], entre otras.

L a medida N C C se define como:

NCC(d, x) = (2.14)

Donde W es la ventana de correlación, h(x) es la intensidad de un punto de la primera imagen que está dentro de la ventana Wl (ventana de correlación de la primera imagen), l2(x) es la intensidad de un punto de la segunda imagen que está dentro de la ventana W2(ventana de la segunda imagen), íi = YlitW(x) h{x)/n es el promedio de las intensidades dentro de la ventana de correlación, y I2 = ^¿eW(x) ^Áx)l

n es e

^ promedio de las intensidades dentro de la ventana de correlación.

F i g u r a 2.4: Ventana de correlación

Las entradas para el algoritmo son:

• U n par de imágenes,

• Los puntos característicos detectados en cada imagen.

19

Ex<w<

x)(h(x) ~ h)((h(x + d) - I2))

Page 38: MEJORAMIENTO META-HEURISTICO DE

• E l tamaño de la ventana sobre la cual se realizará la correlación para cada par de puntos, y

• E l radio máximo que establece sobre que puntos se determinará la correlación.

1: Crear un arreglo vacío de correspondencias. 2: for Cada punto de la primera vista do 3: Crear una ventana de tamaño r 4: Determinar que puntos de la segunda vista caen en este radio establecido por la

imagen 1 5: Determinar la correlación del punto de la primera imagen con cada punto de

la segunda que está dentro del radio de la ventana, utilizando la medida de correlación NCC sobre w\ y u>2, donde w\ es la ventana de correlación en la primera imagen y tu 2 es la ventana de correlación en la imagen 2, como se muestra en la Figura 2.4

6: Determinar cual de estos puntos tiene la mayor correlación, y añadir al arreglo de correspondencias

7: e n d for

F i g u r a 2.5: Imagen base para la correlación con sus respectivos puntos característicos

Como un ejemplo de la aplicación del algoritmo, la figura 2.5 y 2.6 representan las imágenes con sus puntos característicos,las marcas de color rojo sobre cada imagen, y la Figura 2.7 representa el resultado de la correlación. E n la imagen resultante de la correlación los puntos rojos son los puntos característicos de la primera, los verdes representan los puntos característicos de la segunda y las líneas azules representan la correlación, es decir, une los puntos de la primera imagen con sus correspondientes en la segunda imagen.

L a selección de los puntos característicos y la determinación de correspondencias en la secuencia de imágenes son de las tareas más difíciles y críticas en el proceso

20

A l g o r i t m o 3 Algoritmo de correspondencias

Page 39: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 2.6: Segunda imagen para la correlación con sus respectivos puntos carac-terísticos

F i g u r a 2.7: Imagen resultante de la correlación

de modelación debido a la presencia de oclusiones, reflexiones, sombras e ilusiones ópticas. Los algoritmos presentados proporcionan resultados adecuados, con una buena aproximación con respecto a las coordenadas del punto correspondiente real.

E l algoritmo de seguimiento es un algoritmo robusto para generar puntos carac-terísticos. Este algoritmo toma asume que las imágenes de la secuencia describen pe-queñas transformaciones de rotación y traslación, de manera que se pueda determinar de manera precisa la ubicación de los puntos correspondientes en las demás imágenes de la secuencia. E l algoritmo de correlación no maneja suposiciones sobre el tipo de transformaciones que sufre la imagen, sino que considera la vecindad de los posibles pixeles y un radio de búsqueda para encontrar la correlación.

E l algoritmo de seguimiento aunque parece comportarse mejor en la determinación de los pares de puntos correspondientes, no es posible usarlo en todas las secuencias de vídeo, ya que en casos donde las transformaciones en algunas de las imágenes de la secuencia sean más grandes que las permitidas por el método de diferencias utilizado, el algoritmo de correlación obtiene mejores resultados.

21

Page 40: MEJORAMIENTO META-HEURISTICO DE

2.4. Geometría Epipolar

" L a geometría epipolar recoge toda la información geométrica de un sistema de dos cámaras" [23].

Figura 2.8: Geometría epipolar (imagen modificada del trabajo de Israel V i te [8])

L a Figura 2.8 muestra el modelo de la geometría epipolar. E n esta geometría, el punto X es proyectado en la imagen 1 como x y en la imagen 2 como x'. E l plano que es formado por los centros ópticos de las cámaras C y C, respectivamente, y el punto en el espacio X es conocido con el nombre de plano epipolar II. Los epipolos son los puntos de intersección entre la línea que une los centros ópticos de las cámaras y el plano donde se encuentra localizada la imagen. Las líneas epipolares son las líneas que unen a los puntos de la imagen con el epipolo [8].

L a matriz fundamental tiene codificada información de los parámetros intrínsecos y extrínsecos de la cámara. Esta matriz tiene las siguientes propiedades:

• L a matriz fundamental es homogénea.

• E l determinante de la matriz fundamental es cero.

• E l rango de la matriz fundamental debe ser dos.

Sea xy x' los puntos correspondientes de la vista 1 y de la vista 2, respectivamente, la matriz fundamental cumple con la siguiente ecuación:

xTFx' = 0 (2.15)

Tomando los puntos de P¿ = \X\ Y\ l ] y los de Pd = [X2 Y2 l ] , se tiene que:

22

Page 41: MEJORAMIENTO META-HEURISTICO DE

2.4.1. Algoritmo R A N S A C E l algoritmo R A N S A C se ut i l iza para determinar los parámetros de un mode-

lo matemático. Este algoritmo consiste en seleccionar un subconjunto de los datos, el mínimo necesario para estimar el modelo, para posteriormente seleccionar un subcon-junto de los datos restantes para determinar cuantos de los datos son compatibles con el modelo generado. Si cierta cantidad de estos datos de prueba son compatibles con el modelo obtenido, se toma otro subconjunto de datos y así sucesivamente, sino se

23

[xix2 y\x<2 x2 xxy2 yijfy y2 x\ yi l ] (2.16)

Donde

/ = [Fu Fí2 - ^ 1 3 F2i F22 F23 F31 F 3 2 F 3 3 ] (2.17)

Y por lo tanto

xiX2Fn + yix2F12 + XiF13+yiX2F2i+yiy2F22 + yiF23 + X2F3i+y2F32 + F33 = 0 (2.18)

Esta ecuación cuenta con 8 incógnitas y por lo tanto se necesitan al menos 8 pares de puntos correspondientes para determinar la matriz fundamental. L a ecuación se puede generalizar de la siguiente manera:

xix2 yix2 xi y\x2 ym Vi x2 y2 1

X\nX2n y\nX2n X\n yínX2n y\ny2n yin X2n yin 1.

(2.19)

Es decir, se tiene la forma Af = 0.

Algoritmo 4 Algoritmo para calcular matriz fundamental a partir de 2 imágenes 1: Crear l a matriz A poniendo en cada fila los valores de :

[xux2i y\iX2i xu yiiX2i yulfa Vu x2i y2i l ] , donde el índice i repre-senta el numero de punto del conjunto de puntos, para este algoritmo se requieren al menos 8 pares de puntos

2: Descomponer por SVD (Singular Valué Decomposition) de la matriz A en las variables UDV. [U,D,V] = svd(A)

3: Tomar la columna de V con el valor singular más pequeño y se construye F. 4: Descomponer por SVD de la matriz F en las variables UDV. [U,D,V] = svd(F) 5: Reconstruir F de la siguiente manera F = U * diag([D(l, 1)D(2, 2)0]) * V [33]

Page 42: MEJORAMIENTO META-HEURISTICO DE

vuelven a tomar otros datos para volver a generar el modelo. E l proceso es iterativo y termina hasta encontrar la mayor cantidad de datos que en consenso acepten el mode-lo. Para el problema de modelación, el objetivo del algoritmo R A N S A C es estimar la mejor matriz fundamental, la que mejor se ajusta al conjunto de datos, y así separar las correspondencias erróneas ("outliers") de las correspondencias correctas ("inliers").

Los puntos correspondientes entre pares de imágenes cumplen con:

xtrFx = Q,j = l,2,...,n (2.20)

Donde F es l a matriz fundamental, y Xa-yx tienen las coordenadas de los puntos correspondientes de la primera imagen y de la segunda imagen. Para calcular la F se puede usar un algoritmo de 8 puntos. E l algoritmo R A N S A C irá eligiendo 8 puntos aleatoriamente y calculando la matriz fundamental F correspondiente. E l modelo se evaluará con respecto la cantidad de puntos que satisfacen las restricciones epipolares, permitiendo un margen de error para dichos puntos. E l error en la re-proyección de los puntos puede ser aproximado utilizando como medida la distancia de Sampson [12], especificada como

(2.21)

Las entradas para el algoritmo son:

• Los puntos característicos del par de imágenes, y

• L a distancia t, la cual sirve de umbral para determinar los inliers (ci, < t); esta variable comúnmente toma valores entre 0.01 y 0.001.

1: Seleccionar un conjunto de 8 puntos de manera aleatoria (8 puntos correspondientes del par de imágenes).

2: for i = 1 to N do 3: Est imar la matriz fundamental Fk , utilizando el algoritmo de 8 puntos mediante

la descomposición S V D . 4: Determinar cuántos puntos cumplen la condición (conjunto de consenso, Sk)

dP < t pixeles, es decir, los puntos deben tener una distancia límite de t pixeles (los inliers).

5: Seleccionar otro conjunto de 8 puntos aleatorios. 6: end for 7: Teniendo el subconjunto de puntos que generaron el modelo con más inliers, se

vuelve a estimar el modelo utilizando todos los puntos del conjunto.

24

dj =

Algoritmo 5 Algoritmo Ransac

Page 43: MEJORAMIENTO META-HEURISTICO DE

E l método R A N S A C es un método robusto para estimar los mejores parámetros de un modelo, aún cuando se encuentren presentes outliers. L a desventaja con este método es que depende de la selección de un umbral adecuado, ya que al tomar un umbral grande se incrementan las correspondencias pero se decrementa el número de pares que realmente son correspondientes, y al tomar un umbral pequeño se decrementa la cantidad de puntos correspondientes.

2.4.2. Reconstrucción Proyectiva

L a geometría proyectiva es una estructura matemática que estudia las inciden-cias de puntos y rectas sin tener en cuenta la medida. L a geometría proyectiva puede entenderse, como la geometría que se obtiene cuando se coloca en un punto, mirando desde ese punto. Esto es, cualquier línea que incide en el "ojo" del observador parece ser sólo un punto, ya que no se "ven" los puntos que hay detrás. De esta forma, la geo-metría proyectiva también equivale a la proyección sobre un plano de un subconjunto del espacio en la geometría euclidiana tridimensional. Las rectas que salen del ojo del observador se proyectan sobre puntos. Los planos definidos por cada par de ellas se proyectan sobre rectas.

Para realizar la primera reconstrucción proyectiva se estiman las primeras trans-formaciones de movimiento a partir de los puntos característicos obtenidos. Estás trans-formaciones de movimiento se calculan utilizando la matriz fundamental como se ve en el algoritmo 6.

U n a vez calculados los parámetros de movimiento se determina la reconstrucción 3D proyectiva, para lo cual se uti l iza el método de triangulación lineal.

E l método de triangulación lineal ut i l iza las matrices de proyección para generar un sistema de sistema compuesto por 6 ecuaciones lineales con 3 incógnitas, de las cuales las últimas 2 ecuaciones son dependientes de las otras, y por lo tanto se eliminan reduciéndose a un sistema de 4 ecuaciones con 3 incógnitas de la forma AXP = b. E l sistema generado se resuelve utilizando la descomposición S V D de A, A — UDV, y la solución viene dada por la tercera columna de V y el factor de escala es la tercera coordenada de la tercera columna de V.

E l sistema de 4 ecuaciones está conformado por:

25

Algoritmo 6 Algoritmo de estimación de movimiento 1: Calcular l a transpuesta de la matriz fundamental F. 2: Realizar l a descomposición SVD, sobre la transpuesta de F, ([U, S, V] — svd(F ' ) ) . 3: L a translación esta dada por la tercera columna de V, T = V(:, 3). 4: L a rotación está dada por el producto de la transpuesta del skew de la tercera

columna de V y la matriz F, (R = skew(v(:, 3)' * F')).

Page 44: MEJORAMIENTO META-HEURISTICO DE

XiitfXp = n\TXp (2.22)

XlTifXp = n¡TXp (2.23)

y l 7 r 3 T X p = ix2TXp (2.24)

1/iTr f X p = 7rfX p (2.25)

Donde I I l p = [vrí TT2 T T 3 ] T = [7,0] y U2p = [TX\ TT¡ ir¡]T = {R,T'¡ son las matrices de proyección en base a sus tres columnas.

Las entradas para el algoritmo son:

• Los puntos característicos del par de imágenes, y

• Las matrices de transformación de movimiento de la segunda imagen con respecto a la primera, es decir, la matriz de traslación y rotación.

F i g u r a 2.9: Conjunto de puntos característicos a proyectar

Como ejemplo de la aplicación del algoritmo, la Figura 2.10 presenta el resultado de la reconstrucción 3D aplicada a la secuencia de imágenes de experimentación que contiene como base a la imagen de la Figura 2.9. Los puntos 3D generados son los puntos correspondientes a los puntos 2D proyectados sobre la imagen.

E l método de triangulación lineal presenta resultados aceptables dependientes de los puntos característicos detectados y de la estimación de la rotación y traslación de las imágenes. Este método no forma adecuadamente el modelo 3D, debido a que no maneja datos del mundo real y con las imágenes únicamente puede formar planos proyectados del modelo 3D.

26

Page 45: MEJORAMIENTO META-HEURISTICO DE

Algoritmo 7 Algoritmo de Triangulación lineal 1: Calcular la matriz de calibración K tomando en cosideración que el punto del centro

óptico de la cámara es el centro de la imagen, que los pixeles son cuadrados, y que la imagen tiene un tamaño de {Dx, Dy) pixeles.

2: Calcular la primera matriz de calibración: K =

3: Calcular los valores normalizados de los coordenadas de las imágenes: í\ = Kx\, ¿ 2 = Kx[.

4: for Para cada par de puntos do 5: Hacer ( x l 7 r 3 T - TT\T)XP = 0, ( x l 7 r f - ?rf)XP = 0, y i i r f - TT2T)XP = 0, ( x l 7 r f -

AT)xv = 0 visto de manera matricial tenemos:

A =

donde ¿ i = [x l y l l] , x 2 = ¡x2 y2 l] son los valores normalizados de la primera imagen y de la segunda imagen respectivamente.

6: Calcular la descomposición SVD de A y llamar X una distancia límite de t pixeles.

7: L a tercera columna de Xp = X/X(4) representa la escala (o¿) de la imagen, siempre que los valores estén normalizados a 1.

8: Los valores de Xp(l — 3) representan los valores de las coordenadas X, Y y Z, respectivamente.

9 : Seleccionar otro conjunto de 8 puntos al azar. 1 0 : end for

27

Page 46: MEJORAMIENTO META-HEURISTICO DE

Reconstrucción proyectiva de 2 vistas

Figura 2.10: Resultado de la reconstrucción proyectiva

2.5. Reconstrucción con múltiples vistas E l objetivo de este proceso es recobrar la relación de movimiento entre las vistas

(rotación y traslación) y los puntos 3D de los puntos que aparecen en común en todas las imágenes. Para ello se utiliza la ecuación:

donde,

(2.26)

A®B = (2.27)

, que es la norma de producto de Kronecker. Este sistema puede ser resuelto usando S V D para obtener las rotaciones y trasla-

ciones existentes entre cada par de vistas. Además se recalculan los valores de o para las rotaciones R y las traslaciones T calculadas, mediante

(2.28)

28

Page 47: MEJORAMIENTO META-HEURISTICO DE

Posteriormente se calcula el error de esta estimación, y en caso de que el error sea mayor que un umbral se repite este proceso; en caso de no ser mayor se detienen las iteraciones [12].

Las entradas para el algoritmo son:

• Los puntos característicos de todas las imágenes que estén en todas las vistas, y

• Las matrices de transformación de movimiento de la segunda imagen con respecto a la primera, es decir, la matriz de traslación y rotación.

1: Obtener las a's del algoritmo de triangulación lineal, a? = las cuales son las escalas obtenidas de las 2 vistas.

2: Obtener la matriz de rotación y traslación para todas las vistas de la secuencia. 3: Sea k = 0 y e r > e, donde er es el error de reproyección y e es el umbral de error:

para los valores de k las a de las m imágenes. 5: Crear l a matriz P utilizando las escalas (las as) 6: for cada ecuación do 7: Calcular el vector Vi¿ asociado al valor más pequeño de P¿, i = 1, 2 , 3 , . . . , ra. E l

valor de la matriz R se obtiene tomando las primeras 9 entradas del vector vi¿. E l valor de la matriz T se obtiene tomando las últimas 3 entradas del vector v\¿-

8: end for 9: Con los parámetros de movimiento (rotación y traslación) de las imágenes se recal-

culan las escalas, = 10: Recalcular las coordenadas 3D de cada punto XJ

k+1 = A¿ + 1 x^. 11: Calcular el error de la reproyección el cual si es mayor que un umbral establecido

er > e entonces k = A: + 1. er = ¿ £ ™ 1 £ J = 1 1 | x{ - K, \R{ T{] ||2.

L a F igura 2.11 presenta el resultado de la reconstrucción proyectiva 3D de la se-cuencia completa de imágenes. Los puntos 3D generados son los puntos correspondientes que se encuentran presentes en todas las imágenes de la secuencia [12].

2.5.1. Actualizar la reconstrucción proyectiva a euclidiana

L a geometría euclidiana genera una reconstrucción 3D más realista, de tal manera, que el objeto 3D resultante es más parecido al real en comparación con el modelo resultante de la reconstrucción proyectiva.

L a geometría proyectiva Xp se relaciona con la geometría Eucl idiana mediante una transformación.

29

Algoritmo 8 Algoritmo de estructura de múltiples vistas

4: Calcular o? =

Page 48: MEJORAMIENTO META-HEURISTICO DE

Reconstrucción proyectiva de múltiples vistas

Figura 2.11: Resultado de la reconstrucción proyectiva con múltiples vistas

\ixi = IliX = [Ri,Ti\X (2.29)

Por lo tanto, para cualquier imagen se cumple que \ÍX\ = Hi.pXp = \~li.pHH~lXp, Hie

HiPH,Xe = H~1XP para algunas matrices H . Donde

H =

Tomando el valor de H y R tenemos que:

KÍRÍ

Sobre la cual se aplica la transpuesta para obtener:

(2.30)

(2.31)

(2.32)

Substituyendo el producto de la matriz de calibración y su inversa por S , y la matriz con elementos en términos de K tenemos:

UipQUjp ~ S - 1

E l cual es resuelto mediante una minimización no lineal.

(2.33)

30

KiKj

Page 49: MEJORAMIENTO META-HEURISTICO DE

E n ocasiones aunque los parámetros de calibración de la cámara sean conocidos existen algunas situaciones que pueden hacerlos variar como el zoom, el movimiento del lente, etc . . . ; los valores pueden retinarse mediante algoritmos de optimización lineal. Para ello se deben de asumir inicialmente ciertos parámetros de la cámara como que el centro de la imagen es el punto principal y que el eje óptico de la cámara es perfectamente ortonormal al plano de la imagen. Asumiendo esto se tiene que:

E n donde S 1 cumple:

(2.34)

SU = S22, Sl2 = S í 3 = S 2 3 = 0, S 2 1 = S 3 1 = « 3 2 = 0 (2.35)

Esto puede traducirse a restricciones sobre la matriz Q de la siguiente manera:

W = o T r f QJT? = 0

K?Q*1 = 0

(2.36)

(2.37)

(2.38)

(2.39)

De los parámetros del cuadrático absoluto de Q se obtienen los valores de H y de v de la siguiente manera:

Ki =

v = —

(2.40)

(2.41)

Con estos datos iniciales iv~¿, i?¿, T¿, Xe se puede hacer un refinamiento minimizando la siguiente ecuación:

Las entradas para el algoritmo son:

(2.42)

• Los datos de la estructura de movimiento de las imágenes, rotación y traslación,

y

31

Page 50: MEJORAMIENTO META-HEURISTICO DE

2: Se construye la matriz x que corresponde a las res-tricciones mostradas en la ecuación 2.36: X =

, s i e n d o Qs = [ a i a 2 a 3 a 4 0 5 ] .

u\ 4- u\ — v\ —u\ 2 l í 4 U i — 2viVg 2 « 4 « 2 ~ 2v2V4 2u 4 W3 — 2V3V4 u\ — v\

U\V\ + U2V2 U4V+U\V4 U4V2 + U2V4 U4V3 + U3V4 U4V4

U1W1 + U2U!2 U4W+UiW4 U4W2 + U2Wi U4W3 + U3W4 U4W4

U\Wi + U2W2 U4W+UiW4 U4W2 + U2U¡4 U4W3 + U3W4 U4W4

32

Algoritmo 9 Algoritmo de actualización a reconstrucción euclidiana 1 : Se calculan las m matrices de proyección, PC = [R,T] para las m vistas.

Cada matriz de proyección establece una restricción lineal en Q, como Q =

donde u = [ui u2 U3 114] = 7r¿,u = ir2,w — 7 r 3 son las filas de las matriz de proyección IL. = \n\; -n\; 71 3 ] , respectivamente.

3: Se calcula el vector b de la siguiente manera: b = [-u\ + v\ - W 3 U 3 -U3W3 - U 3 I U 3 ] .

4: Se resuelve por mínimos cuadrados: Qs = donde x* e s I a pseudo-inversa de x-5- Se convierte el vector Qs a la matriz Q como se muestra en el primer paso. 6: Se forza el rango a 3 de la restricción Q calculando el SVD de Q =

í7Qdiag(CTi,cr2,c73,<T4)VQ, del cual se obtiene el valor de Q haciendo Q = t ^ d i a g ^ ! , <r2, a3,0)VQ.

7: Se calcula la longitud del foco despejando de la ecuación 2.34. 8: Se calcula los valores de K\ y H de las ecuaciones 2.40, 2.30, 2.41.

Page 51: MEJORAMIENTO META-HEURISTICO DE

Reconstrucción Euclidiana de múltiples vistas

Figura 2.12: Resultado de la reconstrucción Euclidiana

• Los puntos 3D de las imágenes, obtenidos del algoritmo de múltiples vistas.

L a Figura 2.12 presenta el resultado de la reconstrucción Euclidiana 3D de la secuencia de imágenes y de los refinamientos aplicados sobre ellos. Los puntos 3D generados son los puntos correspondientes que se encuentran presentes en todas las imágenes de la secuencia.

Uno de los problemas de la reconstrucción con múltiples vistas es que debido a fac-tores como oclusiones, sombras, etc . . . los puntos característicos comunes disminuyen entre las imágenes de la secuencia, de manera que después de sacar las correspondencias entre todas las imágenes se puede tener muy pocos puntos para realizar la reconstruc-ción.

2.6. Visualización Para poder visualizar la escena se requiere poder armar una superficie tridimen-

sional para luego aplicarle la textura. Para ello se requiere rectificar las imágenes con la finalidad de alinearlas en líneas epipolares y poder realizar una búsqueda de más puntos que permitan armar la superficie sobre ellos y poner como textura la primera imagen de la secuencia.

E l proceso de rectificación hace que cada par de líneas epipolares correspondientes queden alineadas horizontalmente de tal manera que la búsqueda de nuevos puntos correspondientes se convierte en una búsqueda unidimensional a lo largo de las líneas epipolares, lo cual simplifica el proceso de búsqueda.

33

Page 52: MEJORAMIENTO META-HEURISTICO DE

Las entradas del algoritmo son los puntos característicos del par de imágenes (la primera y l a última imagen.de la secuencia).

Algoritmo 10 Algoritmo de rectificación de imágenes 1: Calcular l a matriz fundamental para el par de. imágenes. 2: Calcular una reproyección de los puntos de las imágenes. 3: Mapear el epipolo de la última imagen e2, haciendo H2e2 = [1,0,0]T. 4: Calcular Gt = traslación del centro de la segunda imagen al origen. 5: Calcular Gr = rotar la segunda imagen con respecto al eje z para que el epipolo

quede sobre x. 6: Calcular G = transformación del epipolo de la segunda imagen desde x al infinito. 7: Calcular H2 = GGrGt. 8: Calcular la transformación de H2 con H\, haciendo H\ = H2H, donde H — T^F-b

T'vT y v es escogida de t a l forma que minimice la disparidad x2Hx\ = x^T^F + T'vT)x[ [12].

U n a vez con las imágenes rectificadas se hace una exploración de las correspon-dencias entre las líneas epipolares lo que convierte este problema en un problema de búsqueda lineal. E s t a búsqueda aunque ha sido disminuida de tamaño sigue siendo un problema difícil de resolver por la aparición de oclusiones. Para resolver el problema de correspondencias se minimiza una función de costo utilizando programación cuadrática.

C o n los puntos de las imágenes encontradas se realiza la reconstrucción 3D y sobre ella se le aplica como textura alguna imagen de la secuencia [25].

2.7. Recocido simulado

E l recocido simulado es una herramienta muy popular debido a su simpleza y los buenos resultados que proporciona en la resolución de numerosos tipos de problemas de optimización. Este método sigue un modelo de solución de búsqueda local el cual realiza movimientos para evitar quedar atrapado durante el proceso de optimización en un máximo local. E l recocido simulado no es una solución a los problemas, sino una estrategia para encontrar una solución. E l uso del recocido simulado es sencillo pero no siempre proporciona los resultados adecuados dado que estos dependen del diseño adecuado de la solución y a su correcta implementación sobre esta herramienta.

Los algoritmos de búsqueda local siguen como estrategia, partir de una solución inicial l a cual será mejorada al introducirle pequeños cambios de manera paulatina, como puede ser cambiar el valor de una de las variables; si el cambio realizado mejoró la solución se substituye la solución actual por la nueva solución. Este proceso se realiza de manera iterativa hasta que ya no es posible mejorar la solución actual. E l problema de esta estrategia es que la solución puede caer dentro de un máximo local, el cual no

34

Page 53: MEJORAMIENTO META-HEURISTICO DE

necesariamente es la mejor solución; y debido a que sólo acepta soluciones mejores no podría salir de él a encontrar la solución óptima. Para mejorar este esquema y poder salir del máximo local a encontrar la solución óptima se pude permitir de manera controlada la aparición de soluciones que no sean mejores a la actual.

E l recocido simulado esta basado en el trabajo de Metrópolis et al [17] en el campo de la termodinámica estadística [3]. E l recocido simulado sigue un proceso análogo al que se ut i l iza en la metalurgia para el recocido, el cual consiste en tomar un metal e irlo enfriando lentamente hasta que sus moléculas alcancen una configuración de mínima energía.

E l proceso empieza teniendo el metal fundido a altas temperaturas, en ese ins-tante las moléculas que lo conforman vibran y se desplazan caóticamente cambiando drásticamente la estructura del metal. Conforme la temperatura va disminuyendo se ralentiza el movimiento de las moléculas paulatinamente hasta alcanzar configuraciones con menor energía cada vez [15].

E n la termodinámica se dice que a una temperatura t el incremento energético de puede aproximarse por: P[de] = exp(—de/kt), donde k es la constante física denomina-da de Boltzmann. E n el algoritmo de metrópolis se realizan variaciones en los valores y se determinan los cambios de energía , si se da una caída de energía este cambio se acepta, sino el cambio se acepta con cierta probabilidad. Este proceso se realiza de manera iterativa hasta enfriar el material, es decir, hasta conseguir l a configuración con mínima energía.

E l recocido simulado para su funcionamiento uti l iza una serie de parámetros, los cuales son:

• Temperatura Inicial T0 - L a temperatura inicial debe ser un valor alto que permita la aceptación de una buena proporción de los movimientos al principio del proceso.

• Velocidad de enfriamiento L(T).- Es el número de iteraciones en que se usa la misma temperatura antes de disminuirla para otras L(T) iteraciones.

• Enfriamiento a - Es el grado de disminución de la temperatura, se recomienda a — • (0.8,0.99).

• Temperatura final T¡ - L a temperatura final es la temperatura a la cual se da por concluido el algoritmo de minimización. Idealmente esta temperatura debería ser 0 [14].

2.8. Algoritmos Genéticos

Los algoritmos genéticos son algoritmos de búsqueda inspirados en los mecanis-mos de selección natural de las especies y la combinación genética que se presenta en

35

Page 54: MEJORAMIENTO META-HEURISTICO DE

la reproducción de los individuos. Los algoritmos genéticos inicialmente generan alea-toriamente un conjunto de soluciones potenciales llamados población. A cada solución perteneciente a una población se le conoce con el nombre de individuo, el cuál es repre-sentado mediante una cadena de parámetros (cromosoma) descritos mediante símbolos de un alfabeto (el más común l s y Os) [30]. Los cromosomas son procesados por diferen-tes operadores de selección, cruce, mutación, y combinaciones de ellos de forma que la información importante sea preservada, durante una serie de iteraciones conocidas con el nombre de generaciones. S i el algoritmo genético ha sido bien diseñado, la población va a converger a la solución óptima del problema.

U n algoritmo genético es independiente del problema, lo que lo hace un algoritmo robusto, pudiendo ser útil para cualquier problema. Sin embargo, su falta de especiali-zación también representa una debilidad, su falta de eficiencia. Los algoritmos genéticos proceden de la siguiente manera:

Algoritmo 11 Algoritmo genético básico 1: Genera la población inicial 2: Calcu la la aptitud de cada individuo 3: repeat 4: for cada 2 individuos de la población do 5: Selecciona dos padres de la población anterior 6: C o n probabilidad pe recombina los padres y obtiene dos descendientes 7: Con probabilidad pm muta el nuevo descendiente 8: Calcula la aptitud de los descendientes 9: Inserta los descendientes en la nueva generación

10: end for 11: until población ha convergido.

2.8.1. Evaluación y Selección E n la evaluación de un individuo se decodifica su cromosoma de manera ta l que

los valores obtenidos, sirvan como parámetros del problema; se halla dicha solución y se le da una puntuación de acuerdo a que tan cerca está de la solución buscada del problema.

L a función de evaluación sirve igual para seleccionar que individuos pasarán a la siguiente generación, es decir se seleccionan los individuos que transmitirán los buenos rasgos de los mejores individuos. Se puede realizar este proceso mediante la selección varios métodos de selección que existen, contando con métodos de selección proporcio-nal y selección por torneo dentro de los más comunes. E n la selección por torneo se seleccionan aleatoriamente un número de individuos de la población, y el que tiene la

36

Page 55: MEJORAMIENTO META-HEURISTICO DE

evaluación mayor se selecciona para reproducción.

2.8.2. Cruce E l operador de cruce consiste en intercambiar información genética entre 2 cro-

mosomas. Este operador recombina aleatoriamente el material de dos de los individuos de la población seleccionados para reproducción. Este proceso puede llevarse de varias maneras como por ejemplo:

1. Cruce de n-puntos: los 2 cromosomas padre seleccionados se cortan en n-puntos escogidos al azar y el material genético entre dichos puntos se intercambia para formar a los descendientes. De este método los mas habituales son el cruce de 1 punto y el cruce de 2 puntos.

2. Cruce uniforme: Se crea un patrón aleatorio de ls y Os del tamaño del cromosoma y se intercambian los elementos de los cromosomas en las posiciones donde el patrón tuvo un uno desde uno de los padres, y donde tuvo un cero desde el otro.

2.8.3. Mutación E l proceso de mutación contribuye a mantener la diversidad en la población in-

cluyendo cambios aleatorios con muy baja probabilidad en los descendientes obtenidos mediante el proceso de recombinación. Para esto, a cada individuo que formará la nueva población se le examinan los valores que conforman su cromosoma y con cierta proba-bilidad se le cambia el valor [27]. E l tipo de cambio de valor depende principalmente del tipo de codificación seleccionada para el cromosoma.

37

Page 56: MEJORAMIENTO META-HEURISTICO DE

Capítulo 3

Modelo de solución

E l modelo de solución para la generación de modelos 3D a partir de secuencias de imágenes no calibradas consiste de una secuencia de pasos para realizar l a recons-trucción. Entre ellos se encuentran los pasos para la determinación de pares de corres-pondencias entre los puntos característicos de las imágenes, componente central de esta investigación por ser una de las partes más importantes del modelador.

E l modelo de solución realiza esta tarea en dos pasos: Primero selecciona corres-pondencias y luego elimina falsas correspondencias, también conocidas como outliers. E n la Figura 3.1 se establece la interacción de estas partes. Inicialmente se toman las imágenes y se definen los parámetros para la selección de puntos característicos, tales como el umbral para la medida de Harris y l a desviación estándar del filtro Gaussiano; con estos atributos varían la precisión y la cantidad de esquinas detectadas de los obje-tos que forman parte de las imágenes. A los puntos resultantes del algoritmo de Harris se les aplica el algoritmo para eliminar puntos no máximos, para evitar tener muchos puntos cercanos a las esquinas conservando sólo aquellos con valor máximo. U n a vez detectados los puntos característicos de las imágenes se aplica el algoritmo de selección de correspondencias y posteriormente se aplica el algoritmo de eliminación de outliers.

L a solución propuesta para la mejora de las correspondencias uti l iza algoritmos basados en ventanas de correlación con diferentes métricas para determinar los puntos en 2D que mejor corresponden a un mismo punto 3D. E n la Sección 3.1 se detalla el algoritmo de correspondencias y las diferentes medidas de correlación utilizadas para este trabajo. E n la selección de correspondencias, también se incluye una etapa de com-paración para determinar el punto de mayor correlación. E n el proceso de evaluación de las mejores correspondencias, se toman los pares de puntos generados por el algoritmo de seguimiento, los del algoritmo de correspondencias tradicional y los del algoritmo de mejora a las correspondencias. Luego se determina el error en la estimación de la matriz fundamental y se comparan con los resultados de los 3 algoritmos.

Para la eliminación de outliers se uti l iza el algoritmo R A N S A C , pero para mejorar el rendimiento se propone el uso de algoritmos de optimización (el algoritmo genético y el recocido simulado). Los experimentos se realizan bajo las mismas condiciones para cada algoritmo de eliminación de outliers con la finalidad de determinar cual tiene mejor

38

Page 57: MEJORAMIENTO META-HEURISTICO DE

Figura 3.1: Modelo de solución

desempeño. Otra característica importante en el proceso de evaluación del algoritmo de eliminación de outliers es establecer la condición de paro del algoritmo iterativo. Esta condición de paro tiene como objetivo terminar el proceso de optimización cuando se tenga una cantidad suficiente de correspondencias correctas de acuerdo con una función de probabilidad, y disminuyendo así la cantidad de evaluaciones que requiere el algoritmo de optimización.

L a selección de los parámetros de entrada, como el tamaño de la ventana de correlación de los algoritmos que forman parte de la experimentación será útil para establecer métricas entre ellos, para generar pruebas sobre diferentes pares de imágenes y para comparar los resultados entre el algoritmo R A N S A C y los algoritmos híbridos aplicados a la selección de subconjuntos. En general, se busca determinar el desempeño de cada algoritmo en los diferentes escenarios propuestos, al ser aplicado en diferentes pares de imágenes.

3.1. Algoritmo para mejorar correspondencias ba-sado en el algoritmo de correlación

Este proceso permite estimar a partir de un par de imágenes puntos característicos correspondientes, de manera que aumente la correlación entre los puntos correspondien-tes y se obtenga una matriz fundamental con mayor precisión en comparación con la obtenida al aplicar solamente el método de correlación tradicional. En esta sección del documento se explicarán brevemente las partes que conforman el modelo de solución,

39

Page 58: MEJORAMIENTO META-HEURISTICO DE

para posteriormente describir el algoritmo que integra dichas partes.

3.1.1. Algoritmo de selección de puntos característicos E l algoritmo de Harris es un método robusto para determinar las esquinas de los

elementos que conforman una imagen. Para calcular las esquinas se utiliza la siguiente matriz:

Y teniendo como medida de evaluación que utiliza Harris la función C = det(A) — fctrace2(A). Donde Ix e Iy son las derivadas parciales de las imágenes, w(u, v) es la ponderación Gaussiana y A: es una variable con valores entre 0.04 y 0.15 . Si el valor cumple con la condición C > 0 se considera como un máximo local, es decir, se toma el punto como una posible esquina. Para evitar que existan varios máximos locales alrededor de una sola esquina se utiliza un algoritmo de supresión de no-máximos, el cual elimina puntos muy cercanos a las esquinas que no sean los de mayor valor generado por la medida de evaluación; de esta manera, entre los puntos de máximo valor existirá una distancia de separación.

3.1.2. Algoritmo de Selección de Correspondencias E l algoritmo de correlación establece las correspondencias entre los puntos ca-

racterísticos de un par de imágenes. Este método aplica un filtro para compensar la diferencia de brillo entre ambas imágenes. Luego se obtiene la matriz de correlación de los puntos que caen dentro de una ventana de búsqueda y determina los puntos con más fuerte correlación en ambas direcciones.

Algoritmo 3.12 Algoritmo de correlación 1: Establecer una ventana de radio r en la imagen 2. 2: Determinar que puntos de la segunda vista caen en este radio establecido por la

imagen 1. 3: Determinar la correlación del punto de la primera imagen con cada punto de la se-

gunda que cayó dentro del radio de la ventana, mediante la ecuación de correlación. 4: Determinar cual de estos puntos tiene la mayor correlación, y se toma como ¡imito

correspondiente entre la primera imagen y la segunda.

Existen múltiples medidas de correlación. Entre las más usadas se encuentra la

(3.1)

10

Page 59: MEJORAMIENTO META-HEURISTICO DE

Donde a; es el punto sobre el que se desea determinar la correlación, d es el des-plazamiento tienen las coordenadas del punto x de la primera imagen para ubicarse en las coordenadas del punto correspondiente en la segunda imagen, I\ es la media de la ventana de correlación sobre la imagen 1, w(x) es la ventana de correlación alrededor del punto x de la imagen e Í2 es la media de la ventana de correlación sobre la imagen 2.

Otra medida de correlación es la M C , la cual está basada en la medida N C C con la diferencia de que la M C utiliza la mediana de la ventana de correlación en lugar de utilizar la media. Entonces se tiene que la medida de correlación para la M C es la

(3.3)

Donde M e l es la mediana de la ventana de correlación sobre la imagen 1 y M¿¡, es la mediana de la ventana de correlación sobre la imagen 2. También se puede calcular la correlación entre los puntos utilizando la medida propuesta por el Dr. Peter Kovesi [11], la cual es:

(3.4)

A pesar que estas medidas generan buenos resultados al momento de determi-nar las correspondencias su eficiencia se ve enmascarada por la aparición de oclusio-nes(puntos sin correspondencia en la otra imagen) y las falsas correspondencias(outliers).

Rectificación

L a rectificación de imágenes sigue la idea de crear 2 cámaras virtuales P„/ y Pnr a partir de las cámaras reales Pai y P^ con que se tomaron las imágenes, de tal manera, que al rotarlas en sus centros ópticos, los planos focales sean coplanares. E l proceso de la rectificación consiste en aplicar una serie de transformaciones sobre las imágenes, de modo que se generen nuevas imágenes con características similares a imágenes tomadas con cámaras con bases alineadas. Así la diferencia de los pixeles entre las imágenes resultantes está dada únicamente por una traslación sobre el eje A".

E l método de rectificación intenta conseguir la colinealización que haga que los puntos originales satisfagan la geometría epipolar del par de imágenes rectificadas. La matriz fundamental para un par de imágenes rectificadas tiene la siguiente forma:

41

N C C (Normal Cross Correlation) la cual tiene la siguiente forma:

(3.2)

siguiente:

Page 60: MEJORAMIENTO META-HEURISTICO DE

(3-5)

Una vez obtenida la matriz fundamental y los puntos correspondientes es posible estimar las transformaciones(H¡ y Hr) para rectificar las imágenes. Para explicar el procedimiento se tomaron las operaciones sobre la cámara derecha. L a matriz de 3x3 de transformación para la rectificación de las imágenes está dada por:

Hr = Pnrl:3Por\:3 (3-6)

Donde Pnr es la cámara virtual derecha, es la cámara real derecha y los subíndi-ces indican el rango de las columnas. L a matriz Hr es la colinealización inducida por el plano al infinito entre la cámara original y la cámara nueva, por lo tanto puede escribirse como:

Hr = K^RrK-J (3.7)

Donde KnT y son son los parámetros intrínsecos de la cámara vieja y la nueva respectivamente, Rr es la rotación que se le aplica a la nueva cámara con la finalidad de rectificarla y las matrices Hi y Hr son desconocidas pero deben cumplir con las restric-ciones de la geometría epipolar de las imágenes rectificadas (HrmT)T\ui\x(Hirn\) = 0, donde mr y m\ representan las j correspondencias del par de imágenes. Esta restric-ción debe cumplirse para cualquier par de correspondencias, de manera que es posible determinar un sistema de ecuaciones no lineales para la variable Hr y Hi. E l lado iz-quierdo de la ecuación 3.7 tiene un error algebraico, y por lo tanto, se usa en este caso la ecuación de Sampson.

L a matriz F = Hj[u\\xHi se considera como la matriz fundamental entre las imágenes originales. Se debe forzar a que la colinealización tenga la misma estructura que en el caso calibrado, y tener colinealizaciones inducidas por el plano al infinito. E n este caso de rectificación, el error de Sampson está definido como:

(3.8)

L a ecuación 3.8 tiene que u$ = (0,0,1). Está ecuación se utiliza para las j corres-pondencias, para obtener un sistema de ecuaciones no lineales con E3

S = 0 sobre las incógnitas Hr y H¡. Para resolver el problema se puede utilizar algún método como el algoritmo de Levenberg-Marquardt, pero la parametrización de H¡ y Hr es crucial.

Hr = KnrRrK^1, Ht = K^Rt-K^1 (3.9)

42

Page 61: MEJORAMIENTO META-HEURISTICO DE

Los antiguos parámetros intrínsecos (Kar y K 0 i ) y las matrices de rotación son desconocidas, mientras que los nuevos parámetros intrínsecos (Knr y K n ¡ ) pueden ser establecidos arbitrariamente, considerando que el largo focal vertical y la coordenada vertical del punto principal son los mismos. Cada colinealización depende en principio de 8 parámetros desconocidos, 5 son parámetros intrínsecos y 3 de la rotación de las cámaras. L a rotación de una de las cámaras puede ser eliminada (para este caso se eliminará la de la cámara izquierda). Se tiene que la matriz fundamental para este modelo es:

Considerando que son las mismas cámaras, se tiene :

Kor = Kai =

(3.10)

(3.11)

Donde a es l a longitud focal de las cámaras, w y h son el ancho y alto de las imágenes respectivamente. E n resumen las dos colinealizaciones son parametrizadas por 6 variables: 5 ángulos y l a variable de longitud focal. L a longitud focal se espera que varíe en el intervalo [ l /3(w + h), 3(w + h)), debido a esto, en su lugar se considera la variable o/ = log 3(cv/(w + h)). E l proceso de minimización uti l iza el método de Levengerg-Marquart, y se inicia poniendo todas las variables en cero para minimizar el error en la estimación usando la distancia Sampson [5]. L a función de costo uti l izada para minimizar el error se presenta en el Algoritmo 3.13.

Algoritmo 3.13 Función de costo para calcular los parámetros de la rectificación semi-euclidiana

1: Tomar los valores de la longitud focal y los 5 ángulos de las rotaciones como entradas para la función de costo.

2: Calcular a partir del valor de la longitud focal 3: Calcular R¡ = eulerRotation([0, angulo l , angulo2]) 4: Calcular Rr = eulerRotation([anguk>3, angulo4, angulo5]) 5: Calcular la matriz fundamental (F = Hj[u\\xHi) 6: Est imar el valor del error mediante la función de Sampson.

3.1.3. Mínimos cuadrados E n cuanto a las imágenes rectificadas, la característica de ser imágenes recons-

truidas de ta l manera que las cámaras virtuales sólo presentan una traslación de una con respecto a la otra, hace posible realizar la búsqueda del punto m\ de la imagen 1

43

Page 62: MEJORAMIENTO META-HEURISTICO DE

analizando un conjunto de puntos M2 en la imagen 2 que tengan la misma coordenada Y que el punto m i . E l algoritmo de mínimos cuadrados se aplica para encontrar las correspondencias como se muestra en el algoritmo 3.14.

Algoritmo 3.14 Algoritmo de rectificación semi-euclidiana 1: for cada punto en M2 do 2: Establecer una ventana m2 alrededor del punto en M2

3: Calcular la suma de las diferencias al cuadrado de cada pixel de m i con respecto m 2

4: Determinar el punto de M2 que tenga menor diferencia con respecto a m i y establecerlo como punto correspondiente de m i

5: end for

E l tamaño de la ventana puede variar dependiendo de las condiciones de las imáge-nes. Para aumentar la velocidad del algoritmo se pueden elegir ventanas pequeñas y establecer una región de búsqueda. L a región de búsqueda puede calcularse tomando como centro de la región la coordenada del punto a buscar en la imagen 1 y establecer una distancia máxima de búsqueda a partir de ese punto. Consideremos el siguiente ejemplo: sea m i un punto de la imagen 1 con coordenadas (100,20), donde el 100 es el valor de la coordenada X y 20 el valor de la coordenada Y. Tomando el supuesto que no se conocen las coordenadas de m2 (el cual se encuentra en las coordenadas (75,20)), se puede considerar que el punto tuvo un desplazamiento a lo más de 30 unidades, de esta manera la búsqueda consistiría en encontrar el punto con mejor correlación entre los puntos con coordenada X entre 70 y 130 con coordenada Y igual a 20.

3.1.4. Método de solución para encontrar mejores correspon-dencias

Para encontrar las mejores correspondencias se proponen 2 series de experimentos. Los primeros uti l izan los métodos presentados anteriormente en este capítulo (rectificación semi-euclidiana y correlación) y se construye el algoritmo 3.15 para obtener mejores co-rrespondencias y poder calcular la transformación de movimiento de una forma más precisa en comparación con la obtenida con el método de correlación.

Como parte de la solución se propone una segunda serie de experimentos que determinan la factibilidad del uso de un algoritmo genético para encontrar las mejores correspondencias. E l algoritmo genético explora la región de búsqueda para encontrar el punto de más alta correlación utilizando la medida de correlación N C C como función de evaluación.

E l modelo de solución propuesto para este problema se basa en encontrar el punto de mejor correlación, para ello se propone utilizar un cromosoma binario de longitud

44

Page 63: MEJORAMIENTO META-HEURISTICO DE

Algoritmo 3.15 Algoritmo de solución para mejorar correspondencias 1: Determinar los puntos característicos de la primera imagen I\ y de l a segunda

imagen I2. 2: Explorar toda l a región de búsqueda para encontrar el punto con mayor correlación

utilizando como medida de correlación N C C 3: Aplicar el algoritmo R A N S A C para eliminar outliers 4: Seleccionar las mejores correspondencias (a las que llamaremos BI), aquellas con

menor error que l a media del error de la matriz fundamental 5: Obtener las imágenes rectificadas del conjunto de puntos correspondientes BI. Es-

tas imágenes servirán para re-calcular las correspondencias. 6: for cada punto con error menor que la media del error de los puntos do 7: Realizar la búsqueda de la correspondencia en las imágenes rectificadas utilizando

mínimos cuadrados, la medida M C y la medida de Kovesi. Una vez obtenidos los puntos con estas medidas se calcula la media de sus coordenadas para tener una única correspondencia.

8 : end for 9: Unir los nuevos puntos obtenidos de la búsqueda en las imágenes rectificadas con

los puntos de BI. 1 0 : Del nuevo conjunto de correspondencias calcular la matriz fundamental. 1 1 : Calcular el error en la estimación de la matriz fundamental.

45

Page 64: MEJORAMIENTO META-HEURISTICO DE

variable, l a longitud depende de la cantidad de puntos que se desee explorar de modo que se representen todos los valores del espacio de búsqueda. L a Figura 3.2 muestra la forma que tiene el cromosoma.

Cromosoma

Figura 3.2: Cromosoma del algoritmo genético

Para calcular la longitud del cromosoma se uti l iza la siguiente ecuación:

largoCromosoma = longitud(dec2bin(valorMaximo)) (3.12)

Donde valorMaximo es un número que representa el tamaño del espacio de búsque-da, dec2bin es una función que convierte un entero a binario, longitud es una función que determina la cantidad de bits que tiene un número binario.

Los operadores empleados por el algoritmo genético se determinaron en base a una experimentación preliminar, estos operadores se describen a continuación.

• Población.- L a población del algoritmo genético está formada por un conjunto de individuos, los cuales tendrán que representar la coordenada del punto sobre el cual se obtiene la correlación.

• Selección.- E l operador de selección escoge dos individuos de la anterior generación para el cruce. E l modelo de selección para el modelo de solución propuesto es por torneo de tamaño 2, siendo este uno de los que mejores resultados proporciona y a la vez fácil implementar.

• Cruce.- E l operador de cruce de los genes es el cruce de dos puntos, se escogió este operador debido a que obtiene una mejora con respecto al de un punto sin aumen-tar demasiado la complejidad y costo computacional por su implementación [26]. L a Figura 3.3 muestra dos cromosomas que intercambian información genética para producir el cromosoma hijo.

• Mutación.-El operador de mutación se uti l iza en el algoritmo para no quedar atra-pado en un máximo local, en un punto de alta correlación pero no necesariamente la mejor. Esto se logra porque este operador introduce nueva información a algún individuo de la población. E l tipo de mutación que se uti l iza es de reemplazo aleatorio. L a Figura 3.4 muestra el cromosoma junto con una cadena binaria de valores aleatorios que sustituirá parte de su información genética.

46

Page 65: MEJORAMIENTO META-HEURISTICO DE

P a d r e 1

H i j o

P a d r e 2

P u n t o d e

C r u c e

Figura 3.3: Operador de cruce en el algoritmo genético

Figura 3.4: Operador de mutación en el algoritmo genético

47

Cromosoma

Gen Mutación

P u n t o d e

C r u c e

Page 66: MEJORAMIENTO META-HEURISTICO DE

Los valores de los parámetros se explican con más detalle en la sección 4.2,donde se presentan los experimentos.

3.2. Algoritmo para eliminación de falsas corres-pondencias en los puntos característicos.

Uno de los puntos más importantes y más difíciles a trabajar en el modelado 3D es determinar correctamente las correspondencias de un punto en el espacio en las imágenes 2D. Entre los problemas durante la selección correcta de correspondencias se encuentra la aparición de falsas correspondencias, conocidas como outliers, los cuales deben de ser detectados y removidos de manera correcta por algún método robusto. E l método busca un subconjunto de correspondencias que cumpla cierto criterio, es decir, se busca que el subconjunto sea consistente con la transformación proyectiva [12].

Los datos que caen dentro del modelo (puntos seleccionados en el consenso), se llaman inliers y los que son erróneos para el modelo se conocen como outliers. U n ejem-plo clásico es el ajuste a una recta real en 2D. E l algoritmo de mínimos cuadrados(LS) busca el mejor modelo que se ajuste a la recta, aún cuando este sesgada por los outliers [2]. LS construye una línea dentro de los datos, de manera que la suma de los residuos de los cuadrados (distancia de cada punto a la línea en dirección de Y ) es minimizada.

F i g u r a 3.5: Regresión sin outliers

La Figura 3.5 muestra con un ejemplo de un modelo de ciatos, que es posible aproximar dicho modelo utilizando una recta sobre un conjunto de puntos sin outliers.

48

Page 67: MEJORAMIENTO META-HEURISTICO DE

Figura 3.6: Regresión con outliers

Las cruces en la figura representan los datos correctos del conjunto. L a Figura 3.6 muestra cómo la recta se puede ver influenciada por los outliers (representados por rombos), de ta l manera que la tendencia que muestran los datos del conjunto cambie.

Para reducir el efecto causado por los outliers se han utilizado técnicas de re-gresión más robustas, como por ejemplo la mediana de los mínimos cuadrados, los estimadores-m, el estimador de los mínimos valores absolutos, entre otros. L a mediana de los mínimos cuadrados genera mejores resultados que el método de mínimos cuadra-dos, porqué para cada línea a consideración usa el punto correspondiente a l a mediana de las ordenadas de los residuos de los cuadrados.

Los métodos más exitosos han sido los que evalúan iterativamente modelos de solución, creados a partir del menor conjunto de datos posible, esto con la finalidad de encontrar el modelo que determine la mayor cantidad de datos que concuerden con este modelo.

L a dificultad radica en determinar que datos conformarán los subconjuntos, debido a esto es necesario evaluar todos los subconjuntos posibles a menos que se tenga un método para seleccionarlos adecuadamente. E l método R A N S A C se ha convertido en una referencia para resolver el problema de los outliers por los buenos resultados en la disminución del efecto que causan al modelo los outliers.

E l algoritmo R A N S A C aplicado al problema de selección de correspondencias puede verse en el marco teórico del presente documento. Actualmente han aparecido una serie de métodos que son variantes del algoritmo R A N S A C con la finalidad de mejorar la eficiencia de este algoritmo. Ke l ly Crawford propone utilizar algoritmos genéticos para determinar los subconjuntos y ut i l iza tres medidas de evaluación (mínimos cuadrados,

49

Page 68: MEJORAMIENTO META-HEURISTICO DE

Algoritmo 3.16 Algoritmo R A N S A C 1: for 1 a N do 2: Seleccionar aleatoriamente un subconjunto s de puntos del conjunto S (representa

el total de puntos) 3: Determinar el subconjunto de puntos 5¿ los cuales quedan dentro de un umbral

de distancia seleccionado. E l conjunto Si define el conjunto consenso, los inliers. 4: if el conjunto 5¿ es mayor que un umbral t then 5: se vuelve a estimar el subconjunto Si utilizando todos los puntos del conjunto

y se termina el algoritmo. 6: end if 7: if el conjunto Si es mayor que un umbral t then 8: se regresa al paso 1 9: end if

10: end for 11: Tomar el subconjunto S¿ con mayor consenso y se vuelve a estimar el subconjunto

SÍ utilizando todos los puntos del conjunto

la distancia de Cook, y la fórmula de Andrews y Pregibon para la detección de outliers multi-caso) [2].

E l trabajo de Matas y Chum [16] utiliza una estrategia estadística óptima para la evaluación aleatoria con la prueba S P R T (Sequential Probability Ratio Test). Otro trabajo relacionado es el de Volker Rodehorst et al [29], el cual utiliza un algoritmo genético para determinar los subconjuntos, para calcular la matriz fundamental utiliza el algoritmo de 7 puntos y utiliza como función de evaluación el método de la mediana de los mínimos cuadrados.

L a naturaleza combinatoria del problema de selección de subconjuntos hace ade-cuada la aplicación de algoritmos de inteligencia computacional, como el recocido si-mulado, algoritmos genéticos, etc. A l aplicar algoritmos genéticos para determinar los subconjuntos que utiliza el algoritmo R A N S A C el modelo de solución cambia, por lo que se cambiará de nombre substituyendo el prefijo R A N (de RANdoin) por el prefijo G A (Genetic Algorithm en ingles) y le llamaremos algoritmo G A S A C . A la aplicación de recocido simulado le llamaremos S A S A C (Simulated annealing) y para referirnos a los dos de manera general se les llamará por el nombre algoritmos híbridos. E l objetivo de este trabajo es diseñar un esquema para determinar los subconjuntos a evaluar de manera, que se puedan disminuir los efectos de los outliers y se encuentren los resultados en menor tiempo.

E l modelo de solución propuesto se puede ver en la Figura 3.7. las flechas indican el orden en la secuencia de los pasos a seguir con el objetivo de mejorar el rendimiento del algoritmo de eliminación de outliers. La imagen 3.8 ilustra las variantes del nio-

50

Page 69: MEJORAMIENTO META-HEURISTICO DE

Figura 3.7: Algoritmo para mejorar el rendimiento del algoritmo R A N S A C

Figura 3.8: Algoritmos para eliminación de outliers

51

Page 70: MEJORAMIENTO META-HEURISTICO DE

délo de solución que se consideraron para este trabajo. E l método utiliza al algoritmo genético para generar los subconjuntos aleatorios, posteriormente se calcula la matriz fundamental con el algoritmo de 8 puntos y finalmente se evalúa, dependiendo del ex-perimento, con las medidas de Sampson, mediana y estimadores-m, de igual manera se procede con el recocido simulado.

3.2.1. Algoritmo Genético E l algoritmo genético (AG) es un método de búsqueda inspirado en la evolución

biológica. Estos algoritmos hacen evolucionar un conjunto de posibles soluciones al problema, soluciones conocidas como población de individuos, la población es sometida a un conjunto de operadores genéticos (cruce y mutación), así como también a una selección de acuerdo con algún criterio, se establece una función que determina el valor de la aptitud de los individuos de la población de manera que el A G genere individuos mas aptos conforme vaya creando nuevas generaciones, de manera que se acerque cada vez a generar al mejor individuo posible para solucionar el problema. Los valores de los parámetros de los algoritmos presentan y explican como parte de la experimentación.

L a aplicación del algoritmo genético se da sobre un conjunto de correspondencias para encontrar el mejor modelo para este conjunto (aquel con la mayor cantidad de outliers o el menor error en la estimación de la matriz fundamental). Los puntos del conjunto de correspondencia se representan como i ¡ y i ¡ , donde x es un punto sobre la imagen izquierda, x' es un punto sobre la imagen derecha y i es el índice de alguno de los puntos del conjunto de correspondencias. E l algoritmo genético utiliza un con-junto de individuos, los cuales están representados por el cromosoma. E l cromosoma está formado por 8 genes. Cada gen representa el índice de un punto correspondiente diferente. L a Figura 3.9 presenta el cromosoma que utiliza el algoritmo genético. Se muestran un conjunto de variables AT¿, donde i = 1 , . . . , 8 que representan a los índices de 8 correspondencias diferentes.

Cromosoma

F i g u r a 3.9: Forma del cromosoma del Algoritmo Genético

52

Page 71: MEJORAMIENTO META-HEURISTICO DE

Población

L a población del algoritmo genético está formada por un conjunto de individuos, los cuales tendrán la forma de un vector con n celdas, donde n es el número mínimo de puntos que se utilizará para determinar la matriz fundamental, para este caso n = 8. Los puntos correspondientes están dentro de un vector, por lo que en cada gen del cromosoma se almacena el índice para accesar a un elemento específico del arreglo de correspondencias.

Selección

E l operador de selección escoge dos individuos de la anterior generación para el cruce. E l modelo de selección para el modelo de solución propuesto es selección por torneo, el cual permite controlar en forma efectiva la presión selectiva del algoritmo genético, siendo a la vez de fácil implementación.

Cruce

E l operador de cruce de los genes es el cruce de dos puntos, dado que produce una mejora substancial en comparación con el cruce de un punto [26]. Este operador debe cumplir con una serie de restricciones, las cuales son:

• No debe aparecer un gen con el mismo valor como parte de la primera mitad del cromosoma.

• A l introducir el nuevo valor al cromosoma se debe conservar al menos 8 puntos correspondientes diferentes, de modo que se pueda calcular adecuadamente la matriz fundamental.

Cabe señalar que en la herencia de los genes a los hijos sólo se realiza con los genes que no provocan que la información genética se duplique. L a Figura 3.10 muestra cómo se realiza el paso de esta información.

Mutación

E l operador de mutación permite introducir nueva información genética a la po-blación para que el A G no converja en un máximo local: se realiza un cambio en algunos de los genes del individuo, y por lo tanto se introducirá nueva información genética. La mutación cambia valores de algunos genes del algoritmo, de manera que el gen que mute represente a un índice que no se repita dentro del cromosoma. E l tipo de muta-ción que se utiliza es de reemplazo aleatorio. L a Figura 3.11 muestra un cromosoma el cual recibirá un cambio genético en algunos de sus valores. E l nuevo gen debe cumplir con las mismas restricciones que tiene el operador de cruce. Se utiliza una mutación de reemplazo aleatorio.

53

Page 72: MEJORAMIENTO META-HEURISTICO DE

Figura 3.10: Cruce de dos puntos.

F i g u r a 3.11: Mutación de reemplazo aleatorio

51

Page 73: MEJORAMIENTO META-HEURISTICO DE

3.2.2. Recocido Simulado E l recocido simulado (RS) es una estrategia que empieza con una solución inicial

y busca mejorarla mediante la utilización de un algoritmo que imita el proceso de en-friamiento metalúrgico. Los valores para la solución requerida por la función de perdida de energía se almacena en un vector, el cual no puede tener valores repetidos.

E n el análisis se explora de igual manera el comportamiento de la función expo-nencial y la condición de desigualdad para determinar el valor de la temperatura inicial. E l recocido simulado utiliza una función, la cual permite que se acepten nuevos estados que no tengan mayor energía que la producida por el estado actual para no quedarse atrapado en un máximo local. L a función tiene la siguiente forma:

rand() < exp(energiaNueva — energiaActualfcT) =

Donde energiaNueva es el resultado del estado generado por la función siguiente, la energiaActual es la energía que tiene en este momento el sistema, K es la constante de Boltzmann, T es la temperatura inicial, d representa la diferencia de energías y 6 representa el valor que tiene que evaluar la exponencial.

Para esta función se puede determinar:

• Si 6 es positivo el resultado de la función exponencial (exp(valor > 0)) será mayor que 1, lo que hace que se cumpla la condición de desigualdad; Este caso se da cuando d es mayor que 0, es decir, cuando el nuevo estado genera una energía mejor que el anterior se acepta(energiaNueva- energiaActual > 0). Cuando la energía resultante no mejora a la actual, la diferencia d será negativa, S será ne-gativa y la evaluación del exponencial ( exp(á < 0)) genera un valor en el rango de 0 a 1. De esta manera se aceptan estados no mejores con cierta probabilidad.

• Cuando la razón de d/(kT) tiende a 0 la exponencial tiende a 1, es decir, si la temperatura es alta con respecto a d entonces es probable que se acepte la nueva energía(sea o no mejor que la actual). Si la razón d/(kT) tiende a menos infinito el resultado de la evaluación tiende a 0. Por otro lado si la razón d/(kT) tiende a infinito el resultado de la exponencial tiende a infinito.

• Si T (Temperatura) tiende a infinito, el valor de 6 —• 0 y el valor obtenido de la exponencial tiende a 1. Si T tiende a 0 y el valor de d > 0, entonces 6 —> 0 tiende a infinito. Si el valor de T tiende a 0 y d < 0 se aceptaran los estados nuevos con una probabilidad muy baja. Por lo tanto, el valor seleccionado para la temperatura inicial es diferente para cada experimento. E l valor de T se toma dependiendo del decrcmento y el comportamiento de la función objetivo. Se selecciona de manera que la relación de T en conjunto con los valores de la función de energía hagan

55

(3.13)

Page 74: MEJORAMIENTO META-HEURISTICO DE

que al inicio de la corrida se acepten estados que permitan una alta cantidad de outliers y estos se vayan decrementando durante la corrida. E l valor de T tampoco debe ser tan alto, ya que esto provocaría que el algoritmo tenga un comportamiento aleatorio durante gran parte de la corrida.

Previamente a la aplicación del RS se toman los pares de correspondencias y se numeran (del 1 al número de correspondencias que se tienen). Los estados del recocido simulado están formados por 8 valores que representan los índices de 8 pares de puntos correspondientes diferentes. E n la imagen 3.12 se presenta la forma de los estados del recocido simulado. Se tiene un conjunto de X¿ que representan los i puntos correspon-dientes utilizados para generar los modelos a evaluar (donde i toma valores entre 1 y 8).

Estado

Figura 3.12: Forma de los estados del Recocido Simulado

E l estado inicial toma 8 valores diferentes seleccionados de manera aleatoria. L a función siguiente toma la solución actual y varía un valor de alguna de las 8 variables, la cual se selecciona de manera aleatoria. L a Figura 3.13 muestra un estado junto con la trasformación que sufre alguno de sus elementos al aplicar la función siguiente, cabe señalar que la aplicación de la función siguiente no debe de generar valores repetidos en las variables que conforman el estado.

F i g u r a 3.13: Aplicación de la función siguiente del Recocido Simulado

E l RS tiene 3 puntos importantes para realizar el proceso de eníriamiento los cuales son:

• L a temperatura inicial.- Para este modelo la temperatura inicial comienza con un valor que se irá decrcmentando eventualmente. E l valor de este parámetro

56

Page 75: MEJORAMIENTO META-HEURISTICO DE

se selecciona en base a un análisis realizado sobre los parámetros del RS, de tal manera que al inicio de cada corrida se permita un porcentaje alto de outliers, cercano al 100%.

• L a función de perdida de temperatura.- Se utilizan las funciones de Sampson, Mediana o Estimadores-M. Este paso requiere que se proporcione un estado del problema para poder utilizar alguna de las funciones de pérdida antes menciona-das.

• E l decremento que sufre la temperatura en cada cambio.- E l decremento para este modelo de solución es proporcional a la temperatura anterior. Por ejemplo T = 0.8T, donde T es la temperatura actual y 0.8 es la proporción de decremento de la temperatura.

3.2.3. Función de evaluación Se utiliza como medida para evaluar la distancia de Sampson, la Mediana y los

Estimadores-M. L a Mediana como función de evaluación tiene como ventaja la capaci-dad de encontrar un buen modelo aunque se tengan dentro del conjunto de datos hasta un 50% de outliers. E l método de mínimos cuadrados trata de minimizar el error r¿ entre el valor observado y el valor calculado, es decir, minimiza ̂ 2 ri i a c u a ' ^ sensible e inestable con la presencia de outliers. Los Estimadores-M son funciones que permiten reducir los efectos de los outliers sustituyen el residuo al cuadrado por otra función de la forma C = min p(r¿). Existen varios estimadores de los cuales se usará el siguiente:

E l estimador Huber se utiliza como alternativa al método de Sampson del algo-ritmo R A N S A C . L a función de Huber forma una parábola en la vecindad de cero. E l 95 % de su eficiencia asintótica en la distribución normal es obtenida teniendo el valor de constante k con valor de 1.345. Este estimador se recomienda usarlo en casi todas las situaciones, ya que muy raramente se ha encontrado que es inferior que los demás Estimadores-M.

E l espacio de búsqueda que se requiere explorar para determinar el mejor conjunto de datos que contenga la menor cantidad de outliers está dado por (JJJ, donde n es la cantidad de elementos del conjunto y rn es la cantidad de elementos que conforman el subconjunto. Para no explotar todas las posibles opciones del espacio de búsqueda se usa un criterio de terminación que indique si se han explorado una cantidad suficiente de subconjuntos, a este criterio le llamaremos condición de paro. Huang et al. eir [7]

(3.14)

57

Huber(x) =

Page 76: MEJORAMIENTO META-HEURISTICO DE

describen una función para estimar el número total de subconjuntos aleatorios selec-cionados JV que se requiere para alcanzar al menos un subconjunto que no contiene outliers está dado por:

(3.15)

N = (3.16)

Donde N es el número de puntos correspondientes, C la cantidad de inliers del conjunto de correspondencias, e es el porcentaje de outliers dentro del conjunto de datos, p es la probabilidad deseada de escoger al menos un ejemplo libre de outliers y q es el tamaño del subconjunto mínimo de datos utilizados para estimar el modelo con el algoritmo R A N S A C . E l valor de N se irá actualizando en cada iteración del algoritmo de modo que la cantidad de evaluaciones irá disminuyendo conforme se encuentren más inliers.

3.3. Proceso de validación E l proceso de validación implica la generación de múltiples pruebas que involucren

las siguientes dimensiones del problema: la sección de selección de correspondencias y la eliminación de outliers. E n estas pruebas se determina la eficiencia de los algoritmos utilizados.

Una forma de calcular el error en la estimación de las correspondencias es utilizar un método robusto y comparar los resultados obtenidos, esto puede realizarse para el caso de la secuencia de imágenes. Para un caso general se pueden determinar lo valores reales de un grupo de correspondencias y compararlos con los obtenidos.

Los resultados del algoritmo de inteligencia computacional será en base a la canti-dad de inliers que detecte el método y el error de la estimación de la matriz fundamental, es decir, tendrá mejor rendimiento el que más inliers encuentre y tenga menos error al estimar la matriz fundamental. Se comparará con los resultados obtenidos con el método R A N S A C para determinar cual fue la mejora al aplicar el algoritmo de in-teligencia computacional. Para realizar esto se tomarán secuencias de imágenes y se realizaran varias pruebas sobre las mismas de manera que garanticen que los resultados sean robustos, es decir, similares y con buenos resultados en todas las corridas.

3.4. Resumen Durante el desarrollo de este capítulo se describió de forma detallada el modelo de

solución propuesto. Primero se explicó el proceso general y posteriormente se definieron

58

Page 77: MEJORAMIENTO META-HEURISTICO DE

cada una de las etapas que forman el modelo de solución global y cada uno de los con-ceptos involucrados. E n el próximo capítulo se mencionan y explican los experimentos realizados como parte de esta investigación y se analizan los resultados obtenidos.

59

Page 78: MEJORAMIENTO META-HEURISTICO DE

Capítulo 4

Mejoramiento a las correspondencias

E n este capítulo se describen los experimentos realizados en esta investigación para mejorar la selección de puntos correspondientes, así como los objetivos de cada uno de ellos y los resultados obtenidos. Estos experimentos cubren la determinación de las técnicas principales y los parámetros del algoritmo propuesto para obtener mejores resultados en las correspondencias y obtener transformaciones de movimiento con mayor precisión en comparación con los resultados del método de correspondencias N C C . Para este capítulo se desarrollaron 2 grupos de experimentos:

• Experimentos para comparar los resultados obtenidos del método de correspon-dencias contra los resultados obtenidos de utilizar un algoritmo genético que ex-plore las esquinas de los puntos con mayor correlación. Estos experimentos se realizan con la finalidad de determinar la efectividad de los algoritmos evolutivos para encontrar las mejores correspondencias.

• Experimentos para determinar las mejoras obtenidas por el algoritmo de corres-pondencias en conjunto con el algoritmo de rectificación en comparación con los resultados obtenidos de sólo aplicar el algoritmo de correspondencias.

L a ejecución de cada experimento se especifica de manera detallada junto con el análi-sis de los resultados obtenidos. L a ejecución típica de cualquiera de ellos involucra la selección de las imágenes, la aplicación del algoritmo de selección de características, la selección de correspondencias y un post-procesamiento sobre los puntos correspon-dientes. Los resultados obtenidos por estos algoritmos se comparan con los resultados obtenidos con el algoritmo de seguimiento y el algoritmo de correspondencias tradicio-nal .

4.1. Impacto del algoritmo de selección de corres-pondencias

L a base de todo modelador para la reconstrucción de objetos en 3D es la informa-ción que usa como entrada; ya sea una secuencia de imágenes o una secuencia de video.

60

Page 79: MEJORAMIENTO META-HEURISTICO DE

E l proceso de reconstrucción relaciona las imágenes para poder determinar una serie de datos que sirven para construir el objeto 3D, esta parte del problema es compleja. Para ello es necesario determinar un conjunto de puntos de interés en cada imagen de manera que nos permitan obtener las relaciones geométricas entre las imágenes. Según sean las entradas (secuencia de imágenes o vídeo) podemos elegir algún método de correspondencias o de seguimiento de puntos. Estos procesos se presentan a detalle en las secciones 2.3.2 y 2.3.1, respectivamente. Ambos algoritmos son el pilar del modelo. L a F igura 4.1 presenta la estructura del modelador. Se muestra que los algoritmos de reconstrucción proyectiva y Euclidiana, de calibración de la cámara, de rectificación, de correspondencias densas y el de mapeo de textura dependen de que los puntos corres-pondientes sean correctos y las coordenadas de dichos puntos estimados sean lo más parecidos a los puntos correspondientes reales, para poder generar un modelo 3D que se parezca lo más posible al objeto real.

Figura 4.1: Estructura del modelador 3D

L a F igura 4.2 es una imagen de la secuencia de imágenes tomada a una casa antigua, en ella se observa que la construcción está conformada por 3 paredes, 2 mirando

61

Page 80: MEJORAMIENTO META-HEURISTICO DE

hacia la misma dirección (la que contiene la puerta y la que no contiene ventanas) y una pared que las une, de manera que si se vieran estas paredes desde una toma aérea, se observaría que la estructura tiene forma similar a la de una " Z " . L a Figura 4.3 presenta el resultado de la reconstrucción 3D del conjunto de imágenes obtenidas en la página de la publicación " A n invitation to 3D visión", en donde los ejes X, Y y Z representan los ejes de las coordenadas 3D del modelo resultante, los puntos representan los puntos 3D y los números indican el número de correlación que representa el punto 3D. L a Figura 4.4 nos muestra la reconstrucción vista desde arriba, el cual tiene la forma de "Z" mencionada anteriormente, y por lo tanto de manera visual se puede concluir que el resultado del modelador es correcto.

F i g u r a 4.2: Pr imera imagen de la secuencia de la casa antigua

L a precisión de las correspondencias afecta los resultados del modelador. L a Figura 4.5 muestra el resultado de aplicar ruido a los puntos originales utilizados para la recons-trucción 3D mostrada en la Figura 4.3). L a figura presenta variaciones en la ubicación de los puntos 3D con respecto a la posición de los puntos del objeto, sin embargo sigue teniendo una forma similar. L a figura 4.6 muestra que el objeto conserva la forma ade-cuada, pues sigue teniendo la forma de "Z" si se observa desde una toma aérea. E l ruido fue inyectado de la siguiente manera: imagen J V(a: ¿, y¿) = imagenA r(x¿, j / j )+random(l —3), donde X y Y son las coordenadas del punto y random(l-3) representa el desplazamiento de cada punto, el cual va de 1 a 3 pixeles (puede ser diferente para X y Y).

Las falsas correspondencias(outliers) influyen en el resultado de la reconstrucción afectando el modelo 3D resultante. L a Figura 4.7 muestra el modelo 3D resultante al aplicar ruido a los puntos utilizados para reconstruir el modelo que se presenta en la Figura 4.3, la cual muestra variaciones con respecto a la posición y aspecto del objeto;

62

Page 81: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 4 . 3 : Modelo resultante de la reconstrucción 3D observado desde la toma lateral

F i g u r a 4 .4 : Imagen del modelo 3D resultante observado desde la toma aérea

63

Page 82: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 4.5: Efecto de imprecisión de los puntos en las correspondencias en la recons-trucción 3D observado desde una toma lateral

F i g u r a 4.6: Efecto de imprecisión de los puntos en las correspondencias en la recons-trucción 3D observado desde una toma aérea.

64

Page 83: MEJORAMIENTO META-HEURISTICO DE

este objeto resultante difiere mucho de la forma del modelo obtenido con los puntos adecuados. L a Figura 4.8 muestra que el objeto resultante no conserva ni la forma, ni la escala y tampoco conserva su ubicación en la gráfica.

F i g u r a 4.7: Efecto de los outliers en la reconstrucción 3D observado desde una toma aérea.

E n este capítulo se presentan una serie de experimentos utilizando algoritmos genéticos con la finalidad de encontrar las coordenadas más precisas en las correspon-dencias. E n el capítulo 5 se presentan una serie de experimentos que muestran los resultados obtenidos del algoritmo utilizado para disminuir los efectos de los outliers y variaciones de dicho algoritmo con un enfoque evolutivo.

4.2. Experimentos para encontrar las mejores co-rrelaciones utilizando algoritmos genéticos.

E n el proceso de experimentación para determinar las mejores correspondencias se util iza la secuencia de imágenes que se encuentran en el proyecto " A n invitation 3-D Vis ion" . Esta base de datos contiene 180 imágenes pertenecientes a una secuencia tomada de una casa antigua. Las imágenes se encuentran en formato B M P y el nombre de las imágenes contiene un número que indica el orden de cada imagen en la secuencia. Para formar los pares estéreo se toma la primera imagen junto con otra imagen de la secuencia. E n total se realizaron 30 corridas por cada par de imágenes y de las 180 imágenes se tomaron 60. Como el algoritmo de correlación puede soportar transforma-ciones de movimiento mayores que el algoritmo de seguimiento no es necesario utilizar

65

Page 84: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 4 .8 : Efecto de los outliers en la reconstrucción 3D observado desde una toma lateral.

todas las imágenes de la secuencia para generar las correspondencias. Además, se toma un subconjunto imágenes de modo que exista una mayor rotación y traslación, que las que se tienen en la secuencia original, como si fuera una nueva secuencia de imágenes.

E n el algoritmo tradicional de correlación la precisión de las posiciones de los puntos es afectada por la precisión de los puntos estimados por el algoritmo de Harris, por el hecho de que no se estiman nuevamente los puntos sino únicamente se encuentran las correspondencias. Encontrar los puntos con mejor correlación puede mejorar la precisión en la ubicación de los puntos correspondientes. La búsqueda local a través de todos los puntos dentro de una ventana de búsqueda puede usarse para mejorar estas posiciones, sin embargo es muy costoso computacionalmente.

Los parámetros utilizados para la experimentación con el algoritmo genético son los siguientes:

1. Tamaño de la población.- Toma 2 valores. Un valor es 50, se selecciona este valor basado en el tamaño de la ventana de búsqueda y otro de 25.

2. Probabilidad de cruce.- La probabilidad de cruce es de 100%, esto debido a que se intenta explotar la capacidad de herencia de los esquemas para alcanzar una convergencia más rápida.

3. Probabilidad de mutación.- La probabilidad de mutación es de 30%. Este valor se eligió después de varias pruebas realizadas, que mostraron eme con este valor el A G encuentra mejores correspondencias.

66

Page 85: MEJORAMIENTO META-HEURISTICO DE

4. Número de generaciones - E l número de generaciones toma 2 valores dependiendo del tamaño de la población. Este parámetro toma el valor de 50 que es el tamaño de la ventana de búsqueda y el otro es de 25 que es la mitad del tamaño de la ventana de búsqueda.

Cuando el valor del tamaño de la población sea 50, el número de generaciones es 50, de está manera se tendrá la cantidad de 50 * 50 evaluaciones. Cuando el valor del tamaño de la población sea 25, el número de generaciones será 25, de está manera se tendrá la cantidad de 25 * 25 evaluaciones, la cual representa un cuarto del espacio de búsqueda(25 * 25 = 50/2*50/2 = 50/4). L a exploración de todo el espacio de búsqueda permite demostrar la factibilidad de implementar AG ' s en el problema de encontrar las mejores correlaciones, sin embargo utilizar este valor no justifica el uso de AG 's , por lo que se propone utilizar un cuarto del espacio de búsqueda. Este valor muestra que se reduce el costo computacional al disminuir la cantidad de evaluaciones.

L a Tabla 4.1 está formada por cuatro columnas que contienen la siguiente infor-mación:

1. L a primera columna indica el número de la imagen en la secuencia.

2. L a columna ph indica si se uso la heurística P H , la cual consiste en realizar una búsqueda entre los puntos con características similares a una esquina, es decir, aquellos que cumplan la condición de utilizada por el algoritmo de Harris para determinar si un punto es una esquina. Para esto se toman los puntos cuyo valor sea más alto que la media de los valores obtenidos por algoritmo de Harris en todos los puntos, es decir, los puntos que cumplan PH = median(Harris(imagen)), y ptoi > PH, donde pío¿ es el valor obtenido con la medida de Harris.

3. L a columna ventana/n cuando tiene el valor de 1 indica que se realiza una explo-ración entre todos los puntos del espacio de búsqueda; cuando tiene el valor de 2 indica que se realizó la búsqueda en la cuarta parte del espacio de búsqueda(el A G utilizó 1/2 del tamaño del espacio de búsqueda como valor del tamaño de la población y de la cantidad de evaluaciones).

4. L a columna Porcentaje mejores AG indica el porcentaje de puntos en los que el A G encontró un punto con mayor correlación que el método de correlación tradicional.

E l comportamiento del A G en los experimentos es muy inconstante, ya que no muestran una tendencia identiíicable. En la Figura 4.9 y en la Figura 4.10 los ejes A y Y representan las coordenadas en 2D de los puntos y la coordenada Z representa el valor de la correlación. E n la mayoría de los casos el A G no encontró mejores correspondencias en comparación con el algoritmo de correlación N C C . El problema es difícil para el A G ,

67

Page 86: MEJORAMIENTO META-HEURISTICO DE

debido a que hay muchos máximos locales que complican la búsqueda para encontrar un esquema que ayude a dirigirse hacía la mejor solución..

F i g u r a 4.9: Comportamiento de la correlación alrededor de la ventana de correlación.

T a b l a 4 .1 : Resultados obtenidos de la aplicación de A G s sobre las imágenes.

I m a g e n p h v e n t a n a / n P o r c e n t a j e me jores A G 10 Si 2 0.59 10 Si 1 0.76 10 No 1 0.87 10 No 2 0.40 20 No 2 0.39 20 No 1 0.81 20 Si 1 0.48 20 Si 2 0.31 30 Si 2 0.34 30 Si 1 0.43 30 No 1 0.45 30 No 2 0.33 40 No 2 0.37 40 Si 2 0.35 40 No 1 0.37

Continúa en la siguiente página

68

Page 87: MEJORAMIENTO META-HEURISTICO DE

Tabla 4.1 Continuación d e la página anterior Imagen ph ventana/n Porcentaje mejores A G 40 Si 1 0.40 50 No 1 0.71 50 Si 2 0.35 50 No 2 0.68 50 Si 1 0.51 60 No 2 0.70 60 Si 2 0.36 60 No 1 0.40 60 Si 1 0.4 70 No 2 0.59 70 Si 2 0.58 70 No 1 0.52 70 Si 1 0.44 80 No 2 0.64 80 Si 2 0.64 80 No 1 0.6 80 Si 1 0.48 90 No 2 0.30 90 Si 1 0.40 90 No 1 0.39 90 Si 2 0.5 110 No 2 0.34 110 Si 2 0.32 110 No 1 0.64 110 Si 1 0.48

E l resultado de esta experimentación mostró que encontrar la máxima correlación utilizando A G es un problema difícil y no produce buenos resultados en la mayoría de los casos. Los resultados del algoritmo son los siguientes:

1. Explorando todo el espacio de búsqueda de cada punto se encontraron mejores correspondencias en un 58 % de las veces mientras que explorando la cuarta parte se encontraron en un 4 7 % .

2. Usando la heurística P H , el algoritmo propuesto encontraron las mejores corres-pondencias en el 43 % de los casos en comparación con el algoritmo de correlación

69

Page 88: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 4.10: Comportamiento de la correlación alrededor de la ventana de correlación.

tradicional. A l realizar la búsqueda en la cuarta parte de los puntos que cumplen la heurística P H se encontró la mejor correlación en el 48 % de los casos.

3. E l algoritmo genético no genera mejores resultados que el algoritmo tradicional de correspondencias, pero puede servir de complemento para encontrar mejo-res correspondencias en algunos puntos donde la correlación es baja dado que computacionalmente requiere de menos evaluaciones si se explora sólo una parte del espacio de búsqueda.

L a aplicación de A G s produce resultados competitivos en la estimación de las correspondencias, en comparación con los resultados del algoritmo de correlación tra-dicional, y produce resultados similares a los que se obtienen de realizar una búsqueda local, pero con un costo computacional menor. Sin embargo, encontrar las mejores co-rrelaciones no garantiza que estos puntos sean las correspondencias adecuadas, por lo que es necesario seleccionar algún medio adicional para evaluar las correspondencias como puede ser la medida de evaluación de Harris.

4.3. Experimentos para mejorar las correlaciones. E n el proceso de experimentación para determinar las mejores correspondencias

se util iza la secuencia de imágenes que vienen como parte del proyecto " A n invitation 3-D Vis ion" . Para formar los pares estéreo se toma la primera imagen como la imagen izquierda y se toma otra imagen de la secuencia como imagen derecha. E n total se

70

Page 89: MEJORAMIENTO META-HEURISTICO DE

realizaron 10 corridas por cada par de imágenes y de las 180 imágenes se tomaron 20, esto con la finalidad de tener mayor rotación y traslación entre los puntos de las imágenes en comparación con tomar todas las imágenes. A continuación se presentan los resultados de algunos experimentos realizados.

Nombre de la imagen Alg . Seguimiento Alg . Correlación Alg. Mejora Correlación 6 0.0024 0.0429 0.0154 12 0.0016 0.2895 0.062 18 0.0079 0.0401 0.0129 24 0.0039 0.0293 0.0193 30 0.0013 0.0143 0.0018 36 0.0112 0.0521 0.0167 42 0.0015 0.2441 0.121 48 0.0043 0.1092 0.0113 54 0.0052 0.209 0.0174 60 0.0094 0.0976 0.0101 66 0.00061 0.1804 0.0036 72 0.0013 0.0367 0.0462

T a b l a 4.2: Resultados del error en la estimación de la matriz fundamental en los al-goritmos de seguimiento, correlación y mejora a la correlación.

L a Tabla 4.2 muestra el error entre las restricciones de los puntos y la matriz fun-damental. Dicha tabla contiene 4 columnas, la primera contiene el nombre de la imagen, la segunda lleva el error estimado del algoritmo de seguimiento, la tercera contiene el error del algoritmo de correlación tradicional y la cuarta presenta los resultados del post-procesamiento adicional al algoritmo de correspondencias, el cual se describe de manera más detallada en la sección 3.1. E n esta tabla se muestra que los algoritmos están próximos a cumplir la ecuación X^FXi^ = 0, donde X\¿ y X2¿ representan los i pares de puntos correspondientes del par de imágenes estéreo. E l algoritmo de correla-ción aproxima los resultados para que cumplan con la restricción epipolar de la matriz fundamental, pero tiene mayor error que el obtenido por el algoritmo de seguimiento. E l algoritmo de Mejora de correlación en general muestra un comportamiento intermedio entre el algoritmo de correlación y el de seguimiento, de manera que obtiene mejores resultados que el algoritmo de correlación pero no mejores que los del algoritmo de seguimiento.

Este conjunto de experimentos muestran que el algoritmo de seguimiento genera buenos resultados en cuanto a la precisión de la matriz fundamental y la precisión de las correspondencias. Sin embargo, este algoritmo no es aplicable a la mayoría de las

71

Page 90: MEJORAMIENTO META-HEURISTICO DE

secuencias imágenes porque las deformaciones entre la primera y la imagen actual son grandes de tal manera que no permiten aplicar el método diferencial de seguimiento descrito. Debido a la aparición de oclusiones los puntos característicos en la secuen-cia tienden a desaparecer. Mientras más y más puntos desaparezcan se aumenta el riesgo de que los puntos característicos caigan en un plano. Para evitar este hecho es recomendable aparecer nuevos puntos característicos y obtener las correspondencias nuevamente.

E l algoritmo de correlación genera buenos resultados al encontrar los puntos co-rrespondientes. Sin embargo el algoritmo de seguimiento genera puntos de manera más efectiva de modo que se puede estimar una matriz fundamental con menor error. Los ex-perimentos muestran que es posible mejorar los resultados del algoritmo de correlación si se selecciona de manera adecuada un subconjunto de correspondencias para rectificar las imágenes y posteriormente estimar de nuevo el conjunto inicial de correspondencias.

E l algoritmo de mejora a la correlación puede usarse para generar las correspon-dencias en situaciones donde el algoritmo de seguimiento no pueda aplicarse, y obtener una estimación más precisa de la matriz fundamental que la encontrada utilizando el algoritmo de correspondencias tradicional.

4.4. Resumen Los experimentos presentados en este capítulo muestran que los AGs no pueden

encontrar las mejores correspondencias dentro de la ventana de búsqueda en todos los casos y que el algoritmo de correlación N C C presenta mejores resultados que los AGs. Se mostró que a pesar que el algoritmo genético realice la misma cantidad de evaluaciones que la cantidad de elementos que forman parte del espacio de búsqueda no garantiza encontrar la mejor correlación, por lo que una búsqueda que explore todo el espacio de búsqueda puede ser factible en los casos donde el tiempo no sea crítico.

E n este capítulo se presentan experimentos que muestran la factibilidad en mejo-rar la precisión de las correspondencias realizando un post-procesamiento de las mis-mas. Este post-procesamiento consiste en seleccionar las mejores correspondencias para rectificar las imágenes y posteriormente realizar la búsqueda de correspondencias. Los resultados obtenidos entre las diferentes imágenes fueron concisos y coherentes, es decir, que el comportamiento fue similar en las diferentes corridas teniendo que el algoritmo que encontró los puntos con menor error fue el algoritmo de seguimiento, el que ge-neró el segundo mejor resultado fue el de mejora al algoritmo de correlación y por último el algoritmo correlación tradicional.

72

Page 91: MEJORAMIENTO META-HEURISTICO DE

Capítulo 5

Eliminación de outliers

E n este capítulo se describen los experimentos realizados en esta investigación para eliminar outliers, así como los objetivos de cada uno de ellos y los resultados obtenidos. Estos experimentos cubren la determinación de las técnicas principales y los parámetros de los algoritmos propuestos que garantizan mejoras en los resultados para determinar correctamente las correspondencias entre pares de imágenes.

E n el modelo de solución descrito en el Capítulo 3 se detallan dos procesos que se involucran en la selección adecuada de los puntos correspondientes: la determinación de correspondencias y la eliminación de outliers. Los experimentos presentados en este capítulo se centran en la disminuir los outliers mediante una variación a R A N S A C que involucra algoritmos de inteligencia computacional; de está manera se incluyen:

• Experimentos para comparar los resultados obtenidos por el algoritmo R A N S A C tradicional contra los obtenidos por el algoritmo S A S A C y el algoritmo de G A -S A C , bajo las mismas condiciones y con la misma función objetivo; esto con la finalidad de determinar la efectividad de dichos algoritmos para eliminar outliers.

• Experimentos para determinar la mejora producida en los resultados obtenidos por el algoritmo S A S A C y en el algoritmo G A S A C al utilizar otras medidas para determinar outliers (Medina de los mínimos cuadrados y un Estimados-M) con respecto a los resultados obtenidos por el algoritmo R A N S A C bajos las mismas condiciones.

Cada conjunto de experimentos fue desarrollado utilizando diferentes conjuntos de imágenes. L a ejecución típica de cualquiera de ellos involucra la selección de las imágenes, la aplicación de algún algoritmo de selección de características, la búsque-da de correspondencias y la posterior aplicación de los algoritmos propuestos para la eliminación de outliers.

73

Page 92: MEJORAMIENTO META-HEURISTICO DE

5.1. Impacto del algoritmo para eliminar las falsas correspondencias

E l algoritmo de eliminación de outliers explicado en la Sección , involucra dos partes principales: la selección de subconjuntos de datos, de manera aleatoria, que servirán para generar un modelo y la evaluación del modelo generado por los puntos correspondientes, de manera que se eliminen los outliers. Este algoritmo no sólo se utiliza para detectar outliers, sino también para estimar la mejor matriz fundamental, la mayor cantidad de puntos correspondientes correctos(inliers). Por ejemplo, considerar que se tiene un par de imágenes con 100 puntos característicos cada una, de los cuales 90 entran en correspondencia; al aplicar un algoritmo de eliminación de outliers la cantidad de correspondencias disminuye, ya que se eliminan aquellos puntos que menos se ajusten al modelo. Suponiendo que se tienen entre los puntos correspondientes 5 ouliers, el algoritmo R A N S A C podría dar como resultado que se tienen 9 outliers(cuando sólo 5 son outliers y los otros 4 puntos no se ajustaron al modelo según el criterio seleccionado), es decir, R A N S A C encuentra más outliers de los que hay, esto se debe a que no explora todas las posibles combinaciones de puntos para encontrar el mejor modelo sino que estima el modelo tomando algunos subconjunto de puntos de manera aleatoria. E n esta sección se busca identificar el impacto que tiene la aplicación de algoritmos de optimización en la eliminación de outliers.

Tabla 5.1: Resultados obtenidos de la aplicación de R A N S A C sobre las imágenes.

Imagen Correspondencias Inliers Intentos porcentaje de Inliers apple 889 726 21 81.6 arch 81 74 9 91.3 ball 117 109 7 93.1 baseball 1579 1414 9 89.5 birch 907 625 90 68.9 bl 4019 3634 8 90.4 booklr 201 190 5 94.5 book 246 221 9 89.8 books 343 277 25 80.7 cart-alt 169 110 142 65.1 cart 175 108 217 61.7 cdc l 31 25 28 80.6 charles 334 332 2 99.4 cone 1488 915 227 61.4

Continúa en la siguiente página

74

Page 93: MEJORAMIENTO META-HEURISTICO DE

Tabla 5.1 Continuación de la página anterior Imagen Correspondencias Inliers Intentos porcentaje de Inliers

cube 180 157 11 87.2 frisco quake 1019 546 679 53.5 fruit 812 611 43 75.2 herman 271 184 102 67.8 house 1 33 22 111 66.6 house2 28 17 260 60.7 houseof 1206 982 21 81.4 lab 315 289 7 91.7 luberon 1444 943 137 65.3 marsl 210 81 9.67E+03 38.5 marslr 241 129 699 53.5 parts 475 449 5 94.5 pentagon 1127 906 24 80.3 pepsi 827 765 8 92.5 plants 329 114 22580 34.6 r d l 450 306 99 68 rocks 1152 809 84 70.2 rubik 92 75 21 81.5 ruts 935 782 17 83.6 sand 524 286 640 54.5 sphere 296 185 197 62.5 telephone 116 81 89 69.8 telephone2 116 82 73 70.6 toys 54 27 1140 50 wdclr 303 226 45 74.5 wdc2r 269 176 141 65.4 whouse 471 229 1.54E+03 48.6 woodarea 284 204 62 71.8 woodcyl 12 12 1 100

5.1.1. Descripción de la experimentación E n el proceso de experimentación para eliminar outliers se utilizan las imágenes

estéreo contenidas en la base de datos del "Centro de Visión y Sistemas Autónomos de Carnegie Mellon" (VASC). Esta base de datos contiene 43 conjuntos de imágenes

75

Page 94: MEJORAMIENTO META-HEURISTICO DE

diferentes, las cuales por lo general vienen por parejas, con una pequeña descripción de las mismas. Los conjuntos de imágenes se encuentran en formato P N G , el nombre de las imágenes indica si es la imagen derecha o si es la imagen izquierda del par estéreo y en caso de haber más de dos el nombre indica en que canal del modelo R G B se encuentra. E n este repositorio para los conjuntos con más de 2 imágenes se seleccionó un par de imágenes al azar para realizar los experimentos. E n este capítulo se presenta el promedio de cada corrida del algoritmo, en total se hicieron 50 corridas por cada par de imágenes de las 21 imágenes seleccionadas.

E l algoritmo R A N S A C se aplicó sobre los 43 pares de imágenes para clasificarlas de acuerdo al porcentaje de inliers resultantes. L a Tabla 5.1 muestra los resultados del algoritmo R A N S A C sobre los conjuntos de imágenes de V A S C para la clasificación, se seleccionaron 20; de las cuales se tomaron 5 con porcentaje menor que 50 % de inliers, 5 con porcentaje entre 5 1 % y 70%, 5 con porcentaje entre 70% y 80% y 5 imágenes entre 8 1 % y 100%.

Para presentar en este documento una imagen representativa de cada grupo. Las imágenes son las siguientes:

• Imagen del grupo de imágenes con más del 80 % de inliers.- Pentagon

• Imagen del grupo de imágenes con entre 70 % y 80 % de inliers .- Telephone

• Imagen del grupo de imágenes con entre 50 % y 70 % de inliers.- Friscoquake

• Imagen del grupo de imágenes con menos del 50 % de inliers.- Plants

Adicionalmente se tomó el par de imágenes del laboratorio que vienen como parte del software proporcionado por el Dr. Peter Kovesi. E n este Capítulo se presentan los resultados de un grupo de imágenes de prueba y comportamiento en general.

Los parámetros utilizados para la experimentación con el algoritmo de G A S A C son los siguientes:

1. Tamaño de la población.- se seleccionó un valor de 10 individios, para poder tener un tamaño competitivo en el número de evaluaciones con el algoritmo de R A N S A C tradicional. Por ejemplo, algunas de las imágenes requieren menos de 100 evaluaciones para que el algoritmo R A N S A C encuentre una buena solución, si se fija el tamaño de la población con un valor mayor que 100 entonces el A G requiere al menos 100 evaluaciones para poder obtener una nueva generación de individuos y por lo tanto, al final tendría unas mayor cantidad de evaluaciones que las necesitadas por el algoritmo R A N S A C . Además en corridas preliminares se notó que es suficiente con está cantidad de individuos para generar resultados similares e incluso mejores que los generados por el algoritmo R A N S A C .

76

Page 95: MEJORAMIENTO META-HEURISTICO DE

2. Probabilidad de cruce.- L a probabilidad de cruce es de 100%, esto debido a que se intenta explotar al máximo la capacidad de herencia de los esquemas buscando alcanzar una convergencia más rápida.

3. Probabilidad de mutación - La probabilidad de mutación es de 20 %. Se toma este valor para estos experimentos después de haberse realizado una serie de pruebas que presentaron un comportamiento adecuado, de tal manera que no aumentaba el número de corridas para alcanzar el objetivo mientras se reducía la posibilidad de atorase en un máximo local.

4. Número de generaciones.- E l número de generaciones se eligió con un valor gran-de( 100,000), ya que se desea que sea la condición de paro, expresada en la ecuación 3.15, la que detenga al algoritmo.

Los parámetros utilizados para la experimentación con el algoritmo S A S A C son los siguientes:

1. L a temperatura inicial.- Inicialmente se dio un valor que permitiera el mayor por-centaje de outliers posible. A l principio de las corridas el RS acepta un porcentaje de outliers cercano al 100%;, conforme vaya disminuyendo la temperatura irá de-creciendo el porcentaje outliers permitidos hasta alcanzar la condición de paro, la cual se presenta en la ecuación 3.15.

2. Función de enfriamiento - Se establece una función de enfriamiento proporcional, cuya proporción es de 0.8, es decir, la temperatura en cada iteración se calcu-la como: T = 0.8T, donde T es la temperatura actual del modelo. Este valor generó buenos resultados en las imágenes trabajadas, permitiendo alcanzar resul-tados competitivos con respecto al algoritmo R A N S A C .

5.1.2. Algoritmos híbridos (GASAC y SASAC) A l realizar la experimentación se utilizaron algoritmos genéticos (AG) y recocido

simulado (RS), para generar los subconjuntos de datos que necesita el algoritmo R A N -S A C , dando como resultado nuevos algoritmos que ya no usan subconjuntos aleatorios, y por lo tanto, tienen los nombres de G A S A C (Genetic Algorithm SAmple Consensus) y SASAC(Simulate Anneling SAmple Consensus), respectivamente. Estos algoritmos junto con el método tradicional R A N S A C fueron probados en igualdad de condiciones, es decir, se utilizaron las mismas correspondencias de entrada para los tres casos. Se utilizó el algoritmo de Harris para seleccionar los puntos característicos en las imágenes y el algoritmo de Kovesi para selección de correspondencias, este algoritmo está basado en el uso de ventanas de correlación y utiliza la medida propuesta por él. Este grupo de experimentos utiliza como medida para detectar los outliers la distancia de Sampson

77

Page 96: MEJORAMIENTO META-HEURISTICO DE

y se pretende encontrar un modelo de manera que se maximice la cantidad de inliers encontrados.

5.1.3. Resultados de los algoritmos RANSAC, G A S A C y SA-SAC

Aplicando los elementos descritos previamente se llevaron a cabo pruebas con cada uno de los algoritmos de eliminación de outliers, utilizando la misma medida de evaluación (la distancia Sampson) y los mismos puntos correspondientes. Para medir los resultados obtenidos se comparan los resultados obtenidos del algoritmo R A N S A C con los resultados de los algoritmos G A S A C y S A S A C . Los algoritmos produjeron resultados similares en las diferentes corridas realizadas, por lo que a continuación se presentan los resultados obtenidos de las corridas.

Las tablas presentadas muestran los datos relevantes de experimentación.

• E l nombre del par de imágenes estéreo

• L a cantidad de puntos correspondientes que se generaron

• E l tamaño del espacio de búsqueda

• L a función de evaluación, la cual se presenta entre paréntesis a un lado del nombre del algoritmo, para el caso de R A N S A C siempre será la distancia Sampson por lo que se omitirá este dato.

• L a cantidad de inliers obtenidos

• L a cantidad de intentos que se requirieron para alcanzar ese resultado

• E l error en la estimación de la matriz fundamental, mediante la media, el mínimo y máximo del error de los puntos. E l error se calcula utilizando la ecuación epipolar: error = X^FXi, donde X\ y X2 son los puntos correspondientes de la imagen izquierda y derecha, respectivamente, y F es la matriz fundamental.

L a Tabla 5.2 muestra que la imagen del teléfono requirió pocas evaluaciones de los 3 algoritmos para poder llegar a la condición de paro. También se muestra que el algoritmo que obtuvo una mayor cantidad de inliers fue G A S A C con 94 de las 116 correspondencias originales, también fue el algoritmo que requirió la menor cantidad de evaluaciones, con un total de 71. Otro resultado positivo de la aplicación de es-te algoritmo fue que encontró el modelo con menor error con respecto a S A S A C y R A N S A C .

L a Tabla 5.3 muestra los experimentos realizados sobre imágenes de un laboratorio, la cual requirió alrededor de 120 iteraciones en promedio para llegar a la condición de

78

Page 97: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 5.1: Imagen del teléfono utilizada para experimentación

Nombre de la imagen telefono Puntos correspondientes 116 Espacio de búsqueda (l16) > 6 .35xlO u

Inliers Intentos Media del error Mín. error Max. error R A N S A C 88 78 0.0443 0.00032 0.2602 GASAC(Sampson) 94 71 0.0372 0.00014 0.0455 SASAC(Sampson) 87 82 0.0419 0.00029 0.0798

T a b l a 5.2: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del teléfono.

Nombre de la imagen laboratorio Puntos correspondientes 231 Espacio de búsqueda ( ¡ 3 1 ) > 1.77xl0 1 4

Inliers Intentos Media del error Mín. error Max. error R A N S A C 154 126 0.0561 0.00084 0.4382 G A S A C (Sampson) 157 105 0.0056 0.000074 0.0152 SASAC(Sampson) 156 125 0.0048 0.0009 0.0131

T a b l a 5.3: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del laboratorio.

79

Page 98: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 5.2: Imagen del laboratorio utilizada para experimentación

paro. También se muestra que el algoritmo que generó el modelo con la mayor cantidad de inliers fue G A S A C con 157 inliers de las 231 correspondencias iniciales; para alcanzar está cantidad de inliers se tuvieron que evaluar en promedio 105 subconjuntos. En este conjunto de experimentos S A S A C encontró el modelo con menor error en todos los aspectos (máximo y medio), también tuvo un rendimiento bueno de manera que los resultados que obtuvo fueron mejores que los obtenidos por el algoritmo R A N S A C .

Nombre de la imagen frisco quake Puntos correspondientes 1019 Espacio de búsqueda ( ¡ 0 1 9 ) > 2.8xl0 1 9

Inliers Intentos Media del error Mín. error Max. error R A N S A C 545 693 0.1037 0.00035 0.8785 GASAC(Sampson) 558 508 0.0282 0.000006 0.0347 S A S A C (Sampson) 557 632 0.0301 0.00016 0.0471

T a b l a 5.4: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes de frisco quake.

E n la Tabla 5.4, en la imagen de frisco quake, G A S A C mostró el mejor rendimiento ya que fue el que presentó el menor error, que encontró la mayor cantidad de inliers (558/1019) y requirió de la menor cantidad de intentos(508) para alcanzar esta cantidad de inliers. E n cuanto a la calidad del modelo S A S A C encontró el modelo con menos

80

Page 99: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 5.3: Imagen de frisco quake utilizada para experimentación

error en promedio. G A S A C y S A S A C encontraron un modelo con más inliers en menos intentos que el algoritmo R A N S A C .

Nombre de la imagen pentágono Puntos correspondientes 1127 Espacio de búsqueda (l127) > 6.29xl0 1 9

Inliers Intentos Media del error Mín. error Max. error R A N S A C 906 25 0.0323 0.00038 0.1749 G A S A C (Sampson) 902 30 0.0041 0.00016 0.0194 SASAC(Sampson) 904 28 0.0042 0000079 0.0127

T a b l a 5.5: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del pentágono.

E n la Tabla 5.5 que muestra los resultados para la imagen del pentágono se obtu-vieron mejores resultados en la aplicación del algoritmo R A N S A C teniendo 906 inliers en las 1127 correspondencias y requiriendo en promedio de 25 intentos. Sin embarho G A S A C y S A S A C lo superaron ampliamente en las medidas de error.

8J

Page 100: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 5.4: Imagen del pentágono utilizada para experimentación

F i g u r a 5.5: Imagen de las plantas utilizada para experimentación

82

Page 101: MEJORAMIENTO META-HEURISTICO DE

Nombre de la imagen plantas Puntos correspondientes 329 Espacio de búsqueda (l29) > 3 .1xl0 1 5

Inliers Intentos Media del error Mín. error Max. error R A N S A C 112 27116 0.1773 0.0005 1.9434 G A S A C (Sampson) 121 5246.7 0.0383 0.000028 0.0835 SASAC(Sampson) 125 6264.2 0.0447 0.00034 0.0749

T a b l a 5.6: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes de plantas.

E n la Tabla 5.6 se utiliza la imagen de plantas, la cual contiene muchos outliers, por lo que se requieren de muchos intentos para encontrar el mejor modelo con esos datos. E n este caso el algoritmo R A N S A C requirió más evaluaciones para alcanzar la condición de paro, requirió casi cinco veces más evaluaciones que el algoritmo genético y casi cuatro veces más que el recocido simulado. G A S A C y S A S A C encontraron un modelo con más inliers que el algoritmo R A N S A C , siendo S A S A C el que encontró el modelo con más inliers y G A S A C el que requirió menos evaluaciones.

F i g u r a 5.6: Resultado de una corrida sobre la imagen laboratorio donde se muestra como varía la cantidad de inliers identificados por R A N S A C

83

Page 102: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 5.7: Resultado de una corrida sobre la imagen laboratorio donde se muestra como varía la cantidad de inliers identificados por G A S A C

F i g u r a 5.8: Resultado de una corrida sobre la imagen laboratorio donde se muestra como varía la cantidad de inliers identificados por S A S A C

L a Figura 5.6 muestra el comportamiento de una corrida del algoritmo R A N S A C sobre la imagen del laboratorio: el eje horizontal representa las evaluaciones realizadas y el eje vertical representa la cantidad de inliers que se encontraron en cada evaluación. Se puede apreciar que la cantidad de inliers generados en cada evaluación es fluctúa ampliamente, es decir, no se ve una tendencia hacía algún valor en particular, debi-do a que los subconjuntos se generan de manera aleatoria. L a Figura 5.7 muestra el comportamiento de una corrida del algoritmo de G A S A C sobre la imagen del laborato-

84

Page 103: MEJORAMIENTO META-HEURISTICO DE

rio. Se puede apreciar que el comportamiento tiene una tendencia incremental conforme aunmenta el número de evaluaciones. De igual manera pasa con el S A S A C que va incre-mentando la cantidad de inliers conforme se realizan las evaluaciones, como se muestra en la imagen 5.8. E n estas imágenes se muestran los elementos tal y como los generan los algoritmos sin considerar que se van guardando los mejores modelos conforme van apareciendo durante la corrida.

L a Figura 5.9 muestra el comportamiento del algoritmo R A N S A C . Tomando en cuenta que se guarda el mejor modelo que se va encontrando. Las Figuras 5.11 y 5.10 muestran el resultado de una corrida de los algoritmos S A S A C y G A S A C respectiva-mente, considerando de igual forma que se va manteniendo el mejor encontrado.

85

Figura 5.9: Resultado de una corrida sobre la imagen laboratorio donde se muestran los mejores modelos encontrados por R A N S A C

Page 104: MEJORAMIENTO META-HEURISTICO DE

Figura 5.10: Resultado de una corrida sobre la imagen laboratorio donde se muestran los mejores modelos encontrados por G A S A C

Figura 5.11: Resultado de una corrida sobre la imagen laboratorio donde se muestra los mejores modelos encontrados por S A S A C

86

Page 105: MEJORAMIENTO META-HEURISTICO DE

Figura 5.12: Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio donde se muestra como se generan los modelos por el algoritmo R A N S A C

Figura 5.13: Resultado del promedio de 50 evaluaciones sobre la imagen laborato-rio donde se muestra como se generan los modelos por el algoritmo de G A S A C

87

Page 106: MEJORAMIENTO META-HEURISTICO DE

Figura 5.14: Resultado del promedio de 50 evaluaciones sobre la imagen laborato-rio donde se muestra como se generan los modelos por el algoritmo de S A S A C

L a Figura 5.12 muestra en el eje vertical el promedio de inliers encontrados para cada evaluación del algoritmo R A N S A C en las 50 corridas realizadas. L a Figura 5.13 y la Figura 5.14 muestran el promedio de inliers encontrados por G A S A C y S A S A C , respectivamente. Como se puede apreciar, los algoritmos de inteligencia computacional presentan un comportamiento promedio más regular en cada evaluación, ambos tienden a mejorar con cada evaluación, mientras que el algoritmo R A N S A C se comporta de una manera irregular en cada evaluación.

88

Page 107: MEJORAMIENTO META-HEURISTICO DE

Figura 5.15: Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio donde se muestra los mejores individuos encontrados por el algoritmo R A N S A C

Figura 5.16: Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio donde se muestra los mejores individuos encontrados por el algoritmo de G A S A C

89

Page 108: MEJORAMIENTO META-HEURISTICO DE

Figura 5.17: Resultado del promedio de 50 evaluaciones sobre la imagen laboratorio donde se muestra los mejores individuos encontrados por el algoritmo de S A S A C

L a Figura 5.15 muestra el comportamiento promedio de R A N S A C con respecto a los mejores modelos encontrados en las 50 corridas realizadas. Las Figuras 5.16 y 5.17 muestran lo mismo para G A S A C y S A S A C respectivamente.

A continuación se presenta una serie de experimentos donde se comparan los resul-tados obtenidos por el algoritmo R A N S A C tradicional (utilizando como medida la dis-tancia Sampson) contra los resultados obtenidos por los algoritmos G A S A C y S A S A C (utilizando como medida de evaluación la Mediana); estos algoritmos fueron aplicados sobre los mismos conjuntos de puntos correspondientes para poder ser comparados. A continuación se presentan algunos experimentos realizados con estos algoritmos.

Nombre de la imagen telefono Puntos correspondientes 116 Espacio de búsqueda (|16) > 6.35xlO H

Inliers Intentos Media del error Mín. error Max. error R A N S A C 88 78 0.0443 0.00032 0.2602 GASAC(Mediana) 88 49 0.0035 0.0000045 0.0095 SASAC(Mediana) 87 67 0.0023 0.0000020 0.0051

Tabla 5.7: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del teléfono.

90

Page 109: MEJORAMIENTO META-HEURISTICO DE

E n la Tabla 5.7, muestra los resultados obtenidos para la imagen del teléfono, en los tres métodos se encontraron casi la misma cantidad de inliers: 88 en promedio. E l al-goritmo S A S A C requirió 67 evaluaciones, G A S A C requirió 49 evaluaciones y R A N S A C requirió 78 evaluaciones. Con respecto al error, los algoritmos de inteligencia compu-tacional encontraron un modelo con menor error en la matriz fundamental estimada, siendo S A S A C el que encontró el modelo con menor error.

Nombre de la imagen laboratorio Puntos correspondientes 231 Espacio de búsqueda ( l 3 1 ) > 1.77xl0 1 4

Inliers Intentos Media del error Mín. error Max. error R A N S A C 154 126 0.0561 0.00084 0.4382 GASAC(Mediana) 153 196 0.0024 0.0000059 0.0084 SASAC(Mediana) 152 195 0.0039 0.0000016 0.0078

T a b l a 5.8: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del laboratorio.

E n la Tabla 5.8 para la imagen del laboratorio, G A S A C y S A S A C mostraron un comportamiento parecido en cuanto a la cantidad de inliers encontrados, aproximada-mente 154, pero requirieron más intentos para alcanzar esta cantidad de inliers que los requeridos por el algoritmo R A N S A C . E n cuanto a la calidad del modelo S A S A C y G A S A C encontraron modelos con menor error.

Nombre de la imagen frisco quake Puntos correspondientes 1019 Espacio de búsqueda (] 0 1 9) > 2.8xl0 1 9

Inliers Intentos Media del error Mín. error Max. error R A N S A C 545 693 0.1037 0.00035 0.8785 GASAC(Mediana) 553 909 0.0017 0.000039 0.0062 SASAC(Mediana) 541 791 0.0032 0.00069 0.0081

T a b l a 5.9: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes de frisco quake.

E n la Tabla 5.9, para la imagen de frisco quake el algoritmo G A S A C presentó me-jores resultados en cuanto a la cantidad de inliers(553) y el menor error, pero la cantidad de intentos que requirió fue la más alta, con un total de 909. E l algoritmo R A N S A C requirió la menor cantidad de evaluaciones con 693.

91

Page 110: MEJORAMIENTO META-HEURISTICO DE

Nombre de la imagen pentágono Puntos correspondientes 1127 Espacio de búsqueda (|127) > 6.29x1o19

Inliers Intentos Media del error Mín. error Max. error R A N S A C 906 25 0.0323 0.00038 0.1749 GASAC(Mediana) 895 31 0.0025 0.00015 0.0099 SASAC(Mediana) 891 39 0.0037 0.00012 0.0109

Tabla 5.10: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del pentágono.

L a Tabla 5.10, para la imagen del pentágono el algoritmo R A N S A C tuvo un mejor desempeño en cuanto a la cantidad de inliers encontrados (906) y en la menor cantidad de intentos requeridos (25). Sin embargo G A S A C y S A S A C encontraron los modelos con menor error con respecto a la matriz fundamental.

Nombre de la imagen plantas Puntos correspondientes 329 Espacio de búsqueda (|29) > 3.1xl0 1 5

Inliers Intentos Media del error Mín. error Max. error R A N S A C 112 27116 0.1773 0.0005 1.9434 GASAC(Mediana) 115 3433 0.0023 0.000091 0.0058 SASAC(Mediana) 101 9754 0.0010 0.00032 0.0031

Tabla 5.11: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes de plantas.

E n la Tabla 5.11, para la imagen de las plantas, G A S A C y S A S A C mostraron mejor rendimiento en cuanto al menor error en los modelos estimados y a la cantidad intentos requeridos para alcanzar la condición de paro (menos de los 27116 requeridos por R A N S A C ) . E l algoritmo que encontró la mayor cantidad de inliers fue G A S A C (115/329), y S A S A C fue el que encontró la menor cantidad inliers (101/329).

A continuación se presentan una serie de experimentos donde se comparan los resultados obtenidos por el algoritmo R A N S A C utilizando como medida la distancia Sampson contra los resultados obtenidos por los algoritmos G A S A C y S A S A C uti l i -zando como medida de evaluación el Estimador-M de Huber; estos algoritmos fueron aplicados sobre los mismos conjuntos de puntos correspondientes para poder ser com-parados.

92

Page 111: MEJORAMIENTO META-HEURISTICO DE

Nombre de la imagen telefono Puntos correspondientes 116 Espacio de búsqueda (|16) > 6.35x10 a

Inliers Intentos Media del error Mín. error Max. error R A N S A C 88 78 0.0443 0.00032 0.2602 GASAC(Huber) 85 79 0.0042 0.00012 0.0168 SASAC(Huber) 88 58 0.0028 0.00015 0.093

T a b l a 5.12: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del teléfono.

E n la Tabla 5.12, para la imagen de teléfono los algoritmos R A N S A C y S A S A C encontraron un promedio de 88 inliers en las 116 correspondencias, sin embargo, el algoritmo S A S A C requirió 20 intentos menos para alcanzar la condición de paro. Otro resultado positivo de la aplicación de estos algoritmos fue encontrar el modelo con menor error.

Nombre de la imagen laboratorio Puntos correspondientes 231 Espacio de búsqueda ( f 1 ) > 1.77xl0 1 4

Inliers Intentos Media del error Mín. error Max. error R A N S A C 154 126 0.0561 0.00084 0.4382 GASAC(Huber) 133 240 0.0039 0.000016 0.0104 SASAC(Huber) 119 147 0.0042 0.000038 0.0129

T a b l a 5.13: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del laboratorio.

L a Tabla 5.13, para la imagen del laboratorio, el algoritmo R A N S A C tuvo un mejor desempeño en cuanto a la cantidad de inliers encontrados con 154 de las 231 correspondencias, además de requerir la menor cantidad de intentos (126). Sin embargo G A S A C y S A S A C encontraron los modelos con menor error con respecto a la matriz fundamental.

E n la Tabla 5.14, para la imagen frisco quake, G A S A C mostró el mejor rendimiento en cuanto a la cantidad de inliers(547/1019), pero requirió más intentos que los otros algoritmos para alcanzar la condición de paro (1080 evaluaciones). Con respecto al error, el algoritmo S A S A C encontró el modelo con menor error en la matriz fundamental estimada.

L a Tabla 5.15, para la imagen del laboratorio, el algoritmo R A N S A C tuvo un

93

Page 112: MEJORAMIENTO META-HEURISTICO DE

Nombre de la imagen frisco quake Puntos correspondientes 1019 Espacio de búsqueda ( ¡ ° 1 9 ) > 2.8xl0 1 9

Inliers Intentos Media del error Mín. error Max. error R A N S A C 545 693 0.1037 0.00035 0.8785 G A S A C (Huber) 547 1080 0.0034 0.00085 0.0059 SASAC(Huber) 502 779 0.0023 0.000013 0.0046

T a b l a 5.14: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes de frisco quake.

Nombre de la imagen pentágono Puntos correspondientes 1127 Espacio de búsqueda ( 1 1 2 7) > 6.29xl0 1 9

Inliers Intentos Media del error Mín. error Max. error R A N S A C 906 25 0.0323 0.00038 0.1749 GASAC(Huber) 886 40 0.0035 0.00022 0.0115 SASAC(Huber) 865 29 0.0025 0.00032 0.0048

T a b l a 5.15: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes del pentágono.

94

Page 113: MEJORAMIENTO META-HEURISTICO DE

mejor desempeño en cuanto a la cantidad de inliers encontrados (906) en la menor cantidad de intentos requeridos (25). G A S A C encontró el menor error en promedio en la estimación.

Nombre de la imagen plantas Puntos correspondientes 329 Espacio de búsqueda ( l 2 9 ) > 3.1xl0 1 5

Inliers Intentos Media del error Mín. error Max. error R A N S A C 112 27116 0.1773 0.0005 1.9434 G A S A C (Huber) 102 3040 0.0030 0.000040 0.0074 SASAC(Huber) 98 10000 0.00407 0.000046 0.00099

T a b l a 5.16: Resultados obtenidos de la aplicación de los algoritmos sobre las imágenes de plantas.

E n la Tabla 5.16, para la imagen de las plantas, R A N S A C encontró la mayor canti-dad de inliers, con 112 inliers encontrados, pero requirió 27116 intentos para hacerlo. E l algoritmo G A S A C requirió aproximadamente un octavo de las evaluaciones y S A S A C requirió un 36 % de las evaluaciones del algoritmo R A N S A C para alcanzar la condición de paro. G A S A C y S A S A C encontraron modelos con el menor error.

Los experimentos realizados con la Mediana y con Huber como función objetivo muestran que los algoritmos evolutivos no necesariamente generan mejores resultados que el algoritmo R A N S A C , en cuanto a la cantidad de inliers y cantidad de inten-tos requeridos para encontrarlo sobre cualquier imagen; pero en situaciones donde el porcentaje de outliers es muy alta el algoritmo de G A S A C y S A S A C generan mejores resultados que R A N S A C . Además G A S A C y S A S A C encuentraron el modelo con el menor error en prácticamente todos los casos. L a condición de paro mostró permite encontrar la gran cantidad de inliers sin tener que evaluar todo el espacio de búsqueda y por lo tanto poder terminar las corridas de los algoritmos en una menor cantidad de evaluaciones.

L a medida de Sampson genera buenos resultados al momento de encontrar el modelo con la mayor cantidad de inliers. Para realizar una supervisión de los resultados de manera visual se dibujaron un subconjunto de las líneas epipolares de la imagen del laboratorio. L a Figura 5.18 presenta 2 imágenes: la primera es la imagen izquierda del laboratorio y la segunda imagen la derecha.

E n ambas se trazaron un conjunto de líneas epipolares de un conjunto de pun-tos correspondientes seleccionados al azar. Se muestra que dichas líneas coinciden en posición y orientación en ambas imágenes. Se dibujo un punto correspondiente en las imágenes representado por un círculo el cual muestra que las líneas epipolares corres-pondientes que deberían pasar por encima de él efectivamente así lo hacen.

95

Page 114: MEJORAMIENTO META-HEURISTICO DE

F i g u r a 5.18: Líneas epipolares de la imagen izquierda e izquierda del laboratorio

5.2. Resumen Los experimentos presentados en este capítulo muestran que el modelo de solu-

ción dónde se substituye la selección de subconjuntos aleatorios por selección mediante G A S A C y S A S A C genera resultados positivos, en el sentido de que aumenta la can-tidad de inliers encontrados y disminuye el error. E n particular, se ha mostrado que un post-procesamiento para la eliminación de outliers entre pares estéreo de imágenes mejora los resultados en la selección de correspondencias.

También se mostró la eficiencia de los algoritmos G A S A C y S A S C , de manera general por lo que pueden implementarse como parte de otros modeladores 3D . Los algoritmos de evolutivos que utilizan la generación subconjuntos en el algoritmo R A N -S A C se comportan bien y en ocasiones incluso mejor que los que utilizan elementos aleatorios.

Se muestra que los resultados de estos métodos son robustos, en el sentido de que los resultados obtenidos en múltiples corridas sobre el mismo par de imágenes son muy similares en cuanto a la cantidad de intentos requeridos para alcanzar la condición de paro y a la cantidad de inliers encontrados.

96

Page 115: MEJORAMIENTO META-HEURISTICO DE

Capítulo 6

Conclusiones

E n este capítulo se presentan las conclusiones y contribuciones derivadas de la in -vestigación realizada, así como también se presentan algunas sugerencias para extender el trabajo presentado en este documento.

6.1. Conclusiones L a investigación realizada en esta tesis se enfoca en proporcionar un mecanismo

competitivo para mejorar las correspondencias, mediante la búsqueda de las mejo-res correlaciones y en la eliminación de outliers con la aplicación de algoritmos híbri-dos (GASAC y S A S A C ) . Para ambas dimensiones del problema se utilizaron las imáge-nes obtenidas del repositorio de imágenes estéreo del Departamento de Visión y Sis-temas Autónomos de la Universidad Carnegie Mellon, la secuencia de imágenes que vienen como parte de los código proporcionado por la Universidad de California y el par de imágenes que vienen como parte del desarrollo del Dr. Peter Kovesi. Dichas imágenes nos dan una idea real del comportamiento de los algoritmos, dado que las imágenes no tienen una forma particular.

E l algoritmo que determina las mejores correspondencias utiliza como entrada los puntos característicos generados por el algoritmo de Harris, el cual se considera como un método robusto; posteriormente se utilizan tres técnicas para la estimación de las correspondencias: N N C , M C y la medida de Kovesi. También se implementa un algoritmo de rectificación para obtener mejores puntos correspondientes.

E n base a la experimentación realizada se observa que el algoritmo de correspon-dencias basado en ventanas de correlación no obtiene resultados tan precisos como el de seguimiento, lo cual afecta los resultados del modelador 3D, pero proporciona resulta-dos más robustos a mayores transformaciones de movimiento entre las imágenes. Otro aspecto que influye en las precisión de las correspondencias es el tamaño de la ventana de correlación, de manera que si se tiene una ventana muy grande los resultados serán más precisos, sin embargo no en todos los puntos es posible aplicar dicha ventana, co-mo es el caso de los puntos cuyas sus coordenadas sean menores que el tamaño de la

97

Page 116: MEJORAMIENTO META-HEURISTICO DE

ventana. Si se elige una ventana pequeña es posible poder buscar las correspondencias entre una mayor cantidad de puntos característicos, pero con mayor probabilidad de tener más outliers en el modelo. Utilizar una ventana grande puede aumentar el riesgo de que los puntos sobre los cuales se aplique pueden estar todos en un sólo plano del objeto y por lo tanto sea difícil lograr una reconstrucción correcta del objeto.

Los resultados de la experimentación muestran que es complejo encontrar los pun-tos de mayor correlación, incluso si se aplican meta-heurísticas. Un modo de mejorar las estimación de la matriz fundamental es utilizar los puntos de mayor correlación y en base a estos puntos encontrar correspondencias adicionales.

E l desarrollo del algoritmo híbrido de eliminación de outliers toma como base el algoritmo R A N S A C , el cual se usa para estimar la matriz fundamental con la mayor cantidad de puntos que cumplan las restricciones epipolares, de tal manera que los pun-tos que no se ajusten a estas restricciones se consideren como falsas correspondencias. Los outliers deben de eliminarse del conjunto de puntos correspondientes.

Los resultados muestran que los algoritmos híbridos(GASAC y SASAC) de elimi-nación de outliers son capaces de obtener buenos resultados, de modo que se minimizan o eliminan los efectos de los outliers en el modelo. Estos algoritmos se aplicaron a con-juntos de imágenes con diferentes características (diferentes tipos de objetos participan en las imágenes). Se considera una etapa de post-procesamiento de datos sin variar las condiciones del algoritmo de correspondencias. Sin embargo, es necesario reconocer que así como se presentan casos muy alentadores, también hay casos para los cuales el al-goritmo de eliminación de falsas correspondencias no tiene un desempeño mejor que el algoritmo R A N S A C tradicional, debido a características particulares de las imágenes y la cantidad de outliers que se encuentran en el modelo. Estos resultados no deben quitar-le mérito al modelo de solución propuesto, ya que la comparación se realiza contra casos específicos. E n general el algoritmo híbrido ha demostrado tener un comportamiento robusto a través de distintos conjuntos de imágenes. L a aplicación de meta-heurísti-cas genera resultados consistentes para el problema eliminación de outliers. Con los resultados obtenidos de la experimentación se concluye lo siguiente:

• Con la medida Sampson se obtienen un modelo con mayor cantidad de inliers que los otros métodos.

• Con la medida Huber y la mediana se obtiene un modelo con menor error en la estimación pero no garantiza encontrar más inliers que el algoritmo de Sampson.

• Cuando se presentan muchos outliers el algoritmo G A S A C genera mejores re-sultados que el algoritmo S A S A C . Cuando hay pocos outliers S A S A C obtiene mejores resultados.

98

Page 117: MEJORAMIENTO META-HEURISTICO DE

6.2. Contribuciones Esta investigación contribuye a enriquecer el conocimiento acerca de modelación

3D, presentando los principales componentes para reconstrucción 3D de un objeto con un enfoque no calibrado, enfocando el trabajo en las técnicas para la selección de correspondencias y para la eliminación de outliers. Ademas se presenta una comparación entre el desempeño de los algoritmos tradicionales y los algoritmos propuestos aplicados a pares de imágenes estéreo. De forma más específica las contribuciones de este trabajo son:

• Desarrollar los algoritmos del modelo base de reconstrucción 3D a partir de una secuencia de imágenes 2D no calibradas.

• Desarrollar un algoritmo de selección de puntos correspondientes entre pares de imágenes estéreo.

• Proporcionar un método híbrido de eliminación de outliers que explote las carac-terísticas de un método robusto como R A N S A C y la naturaleza combinatoria de los algoritmos genéticos y del recocido simulado.

• Comprobar la efectividad de la aplicación de los algoritmos de inteligencia compu-tacional en el problema de las correspondencias de puntos.

• Implementar los algoritmos propuestos y probarlos a través de diferentes medidas de correlación.

• Presentar información acerca de los resultados derivados del uso del algoritmo para encontrar las mejores correlaciones de los puntos y la mejora en la calidad de las correspondencias de los puntos en pares de imágenes.

Con base en los resultados obtenidos es posible concluir que el modelo seleccionado en conjunto con un algoritmo híbrido para la eliminación de outliers ofrecen una alternativa viable para disminuir el impacto de las falsas correspondencias.

6.3. Trabajo futuro A continuación se presentan algunas ideas sobre las cuales se podría extender el

trabajo realizado en esta investigación:

• Realizar una investigación de algoritmos alternativos a R A N S A C y determinar el impacto sobre ellos con la aplicación de algoritmos de inteligencia computacional.

• Buscar nuevas medidas de correlación para puntos correspondientes que sea una combinación o modificación de las medidas existentes.

99

Page 118: MEJORAMIENTO META-HEURISTICO DE

• Definir un esquema basado en redes neuronales para determinar las correspon-dencias entre pares de imágenes.

• Diseñar un esquema para verificar la calidad de la reconstrucción en 3D basado en comparar el modelo 3D creado con una imagen de la escena.

• Diseñar un algoritmo para seleccionar puntos correspondientes que sea un híbrido de diferentes métodos existentes.

100

Page 119: MEJORAMIENTO META-HEURISTICO DE

Bibliografia

[1] B. Chupeau. A multiscale approach to the joint computation of motion and dis-parity: Application to the synthesis of intermediate views. Proc. 4th European Workshop on Three-Dimensional Television, Rome Italy, pages 223-230, 1993.

[2] K . D.Crawford and R. L. Wainwright. Apply genetic algorithms to outlier detec-tion. Technical report, Amoco Corporation and the University of Tulsa, 1995.

[3] R. I. de Inteligencia Artificial. Inteligencia artificial. Revista Iberoamericana de Inteligencia Artificial, ISSN 1137-3601,No 19:93-102, 2003.

[4] J . S. Franco, C. Menier, E. Boyer, and B. Rafnn. A distributed approach for real time 3D modeling. In IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops (CVPRW04), 2004.

[5] A . Fusiello and L. Irsara. Quasi-euclidean uncalibrated epipolar rectification. In-ternational Conference on Pattern Recognition (ICPR), 2008.

[6] N . Grandon-Pasten, D. Aracena-Pizarro, and C. L. Tozzi. 3D object reconstruction with calibrated images. Ingeniare. Revista chilena de ingenieria, vol. 15 No 2:pp. 158-168, 2007.

[7] J . - F . Huang, S. -H. La i , and C . - M . Cheng. Robust fundamental matrix estimation with accurate outlier detection. Journal of information science and engineering, 23:1213-1225, 2007.

[8] V . S. Israel. Reconstruccion tridimensional de objetos mediante tecnicas evolutivas. P h D thesis, C I N V E S T A V , Unidad Zacatenco, 2008.

[9] L . Kitchen and A . Rosenfeld. Gray level corner detection, pages 95-102, 1982.

[10] J . Klippenstein and H. Zhang. Quantitative evaluation of feature extractors for visual slam.

[11] P. Kovesi. Image correlation from local frequency information. In Proceedings of The Australian Pattern Recognition Society Conference: DICTA 95, pp. 336-34-1. Brisbane, Australia, 1995.

101

Page 120: MEJORAMIENTO META-HEURISTICO DE

[12] Y . Ma . , S. Soatto, J . Kosecka, and S. S. Sastry. An invitation to 3-D vision from images to geometric models. Springer, December 2003.

[13] M . Maeda, K . Kumamarul, and K . Inoue. Detection of 3-D feature points by using multiresolution surface model. In SICE-ICASE, 2006.

[14] M . F . Mario L . Alemany and and S. A . V . C. V . X X V . aproximaci'on estadfstica a la colucion de sistemas vibrantes. Mecdnica Computacional, Vol XXV:731-744, 2006.

[15] Z. D. Martinez, J . F. Menendez, and P. M . Almodovar. Secuenciacion de tareas en el ambito de la produccion: una aplicacion del algoritmo del recocido simula-do. Technical report, Departamento de Organization de Empresas. Universidad Complutense de Madrid, XI I Jornadas de A S E P U M A .

[16] J . Matas and O. Chum. R-ransac with sprt. Proc. Int. Conf. on Computer Vision, page 6 p., 2005.

[17] R. N . and R. A . W . Equation of state calculation by fast computing machines. Journal of chemistry physics, 21:1087-1091, 1953.

[18] A . Noble. Descriptions of image surfaces. PhD thesis, Department of engineering science, Oxford University, 1989.

[19] Y . Ohta and T. Kanade. Stereo by intra and inter-scanline. IEEE Trans. Pattern Analysis and Machine Intelligence, 7:139-154, 1985.

[20] G . Olague. Evolutionary computer vision, survey on the state-of-the-art. G E C C O 2007 Tutorial, July 7-11 2007.

[21] Y . Park and M . Subbarao. Pose estimation and integration for complete 3D model reconstruction. Applications of Computer Vision, 2002. (WACV 2002). Procee-dings. Sixth IEEE Workshop on, pages 143 - 147, 2002.

[22] J . Peng and B. Bhanu. Closed-loop object recognition using reinforcement learning. IEEE transactions on pattern analysis and machine intelligence, Vol. 20, No. 2, 1998.

[23] P. L . P. Pinto. 3D scene reconstruction from uncalibrated images. PhD thesis, The middle east technical university, 2002.

[24] D. A . Pizarro, P. Campos, and C. L . Tozzi. Comparacion de tecnicas de calibration. Rev. Fac. Ing. - Univ. Tarapacd, vol 13 no l :pp. 57-67, 2005.

102

Page 121: MEJORAMIENTO META-HEURISTICO DE

[25] M . Polleyfeys. 3D modeling from images. Tutorial, 26 June 2000. In conjunction with E C C V 2000.

[26] M . G. Pose. Introducción a los algoritmos genéticos. Technical report, Depto. Tecnologías de la Información y las Comunicaciones, Universidade da Coruña.

[27] L . Pro, Z. Mamani, R. Calmet, and L. D. Pino. Algoritmos genéticos, sus pro-puestas de aplicación: aprendizaje corporativo. Facultad de ingeniería de siste-mas e informática Universidad Nacional Mayor de San Marcos, rev. investig. sist. inform:59-67, 2004.

[28] F . Remondino. 3-D reconstruction of static human body shape from image se-quence. Computer visión and image understanding, No 93:pp. 65-85, January 2004.

[29] V . Rodehorst and O. Hellwich. Genetic algorithm sample consensus (gasac) - a parallel strategy for robust parameter estimation. Berlín University of Technology, Computer Vision and Remote Sensing,.

[30] S. Russell and P. Norvig. Artificial Intelligence: A Modera Approach. Prentice Hal l , second edition, 2003.

[31] C. J . Taylor, P. E. Debevec, and J . Malik. Reconstructing polyhedral models of architectural scenes from photographs. Technical report, E E C S Department, U . C . Berkeley, 1996.

[32] C. Tomasi and T. Kanade. Shape and motion from image streams under ort-hography: A factorization approach. International Journal of Computer Vision, 1992.

[33] U . Topay. 3d scene reconstrucrion from uncalibrated images. Master's thesis, The middle east technical university, 2002.

[34] M . Trujillo and E. Izquierdo, a robust correlation measure for correspondence estimation. 2nd International Symposium on 3D Data Processing, Visualization, and Transmission, IEEE.

[35] L . Wei and H . Yuanjun. 3D model retrieval based on orthogonal projections. In Ninth International Conference on Computer Aided Design and Computer Grap-hics (CADCG 2005), 2005.

[36] Y . Wu and M . Dai. Matching feature points and discarding false matching pairs. In International Conference on Information Acquisition, 2005.

103

Page 122: MEJORAMIENTO META-HEURISTICO DE

[37] X . Z. Y u , M . G . Chen, and M . T. Hongmei. Analysis and comparison on image fea-ture detector. Technical report, School of Electronic and Information Engineering, Tianjin University, Tia j in China, 2002.

[38] K . - Y . Zhang, K . - O . Song, and D. Wang. A new approach to 3D objects feature points correspondence. Technical report, College of Computer Science &; Techno-logy, Harbin Engineering University, 2003.

[39] Z. Zhang. Determining the epipolar geometry and its uncertainty: a review. Te-chnical report, INRIA, July 1996.

104

Page 123: MEJORAMIENTO META-HEURISTICO DE