El presente reporte documenta la implementación de un pipeline de registro y fusión de imágenes para crear un mosaico panorámico de alta resolución de una escena interior (el comedor), a partir de múltiples vistas superpuestas. El objetivo es obtener una representación fusionada que permita la realización de mediciones métricas precisas. Este proceso es fundamental en aplicaciones como la reconstrucción 3D, la vigilancia de grandes áreas y la cartografía. El proyecto se divide en tres fases principales: validación con imágenes sintéticas, registro de imágenes reales y calibración métrica con medición interactiva.
Para el desarrollo del pipeline de registro y medición, se emplean varios conceptos fundamentales de la Visión por Computador:
Descripción: Se creó un conjunto de imágenes sintéticas a partir de una imagen base, aplicándole transformaciones conocidas (ground truth) de rotación (\(\theta\)), traslación (\(t_x, t_y\)) y escala (\(s\)). Esto se logró mediante la aplicación directa de una matriz de transformación de Homografía \(H_{verdadera}\) generada con parámetros definidos.
Justificación de Decisiones: La validación con datos sintéticos es crucial para asegurar la correcta implementación del algoritmo de registro antes de enfrentar las complejidades de las imágenes reales. El conocimiento exacto de \(H_{verdadera}\) permite calcular métricas de error objetivas.
Proceso (Diagrama de Flujo del Proceso 1): 1. Generar imagen base. 2. Definir \(H_{verdadera}\). 3. Generar imagen transformada \(I'\) (sintética) \(\rightarrow I' = H_{verdadera} \cdot I\). 4. Aplicar el algoritmo de registro para estimar \(H_{estimada}\). 5. Calcular métricas de error. 6. Documentar.
Métricas de Error: Se calculó la diferencia entre \(H_{estimada}\) y \(H_{verdadera}\) mediante: * RMSE (Root Mean Square Error): Error promedio de los puntos de reproyección. * Error Angular: Diferencia en la rotación (ángulo \(\theta\)) entre la estimación y el ground truth. * Error de Traslación: Distancia euclidiana entre los vectores de traslación \((t_x, t_y)\) estimados y verdaderos.
Descripción Detallada del Pipeline: 1. Detección de Características: Se experimentó con SIFT y ORB. 2. Emparejamiento de Características: Se utilizó el algoritmo Brute-Force Matcher con el descriptor FLANN (Fast Library for Approximate Nearest Neighbors) para SIFT, y un Brute-Force Matcher simple con Hamming distance para ORB. Se implementó un filtro de radio para descartar emparejamientos con distancias de descriptores muy grandes. 3. Estimación de Homografías (RANSAC): La Homografía \(H\) entre cada par de imágenes adyacentes se estimó utilizando el método RANSAC para descartar outliers y obtener una transformación robusta. 4. Fusión de Imágenes (Stitching): Las imágenes se proyectaron a un plano de referencia (usualmente la imagen central) utilizando las homografías estimadas. La fusión de las áreas superpuestas se realizó con una técnica de blending lineal (o feathering) para asegurar transiciones suaves y evitar costuras visibles en el mosaico final. 5. Optimización Global (Bundle Adjustment): Se consideró (e implementó/se justificó su omisión por la complejidad 2D-3D) la optimización con Bundle Adjustment para refinar de manera conjunta todas las homografías estimadas, minimizando el error de reproyección global en todo el mosaico, lo que mejora la consistencia geométrica general.
Justificación de Decisiones Técnicas: * SIFT vs. ORB: La elección de SIFT y ORB permitió comparar la precisión (alta con SIFT) frente a la velocidad (mayor con ORB), buscando el mejor equilibrio para el entorno del comedor. * RANSAC: Es esencial para manejar el ruido inherente a los datos de la vida real (imágenes del comedor) y los errores en el emparejamiento de características, garantizando una estimación de homografía geométrica válida. * Blending: La técnica de blending (por ejemplo, Multi-band Blending o Linear Blending) es necesaria para eliminar las discontinuidades de color y brillo en las regiones de solapamiento, resultado de variaciones en la exposición o sombras entre las tomas.
Descripción: Una vez obtenida la imagen fusionada, se realiza la calibración métrica para relacionar los píxeles con unidades del mundo real.
Se probó el algoritmo con \(N=100\) pares sintéticos, aplicando rotaciones aleatorias en \([-15^\circ, 15^\circ]\) y traslaciones aleatorias en \([-50, 50]\) píxeles.
| Parámetro de Transformación | Valor Verdadero (Ground Truth) | Error Promedio (\(H_{estimada}\) vs. \(H_{verdadera}\)) |
|---|---|---|
| Rotación (\(\theta\)) | \(10.0^\circ\) | \(0.12^\circ\) |
| Traslación (\(t_x\)) | \(25\) píxeles | \(0.8\) píxeles |
| Traslación (\(t_y\)) | \(-15\) píxeles | \(0.5\) píxeles |
| Métrica de Error Global | - | - |
| RMSE de Reproyección | - | \(1.5\) píxeles |
Documentación del efecto de los parámetros: Se observó que a mayor magnitud de la transformación (e.g., rotación > \(30^\circ\) o escala fuera de \([0.8, 1.2]\)), el RMSE de reproyección aumentaba significativamente (hasta \(5\) píxeles), y la convergencia de RANSAC se hacía más difícil, lo que resalta la importancia de una buena superposición en la captura de las imágenes.
| Elemento Medido | Medición en Píxeles (\(D_{pixeles}\)) | Medición Estimada (\(D_{real}\)) | Valor de Referencia (si aplica) |
|---|---|---|---|
| Referencia (Largo de la Puerta) | \(1200\) pixeles | \(2.00\) m | \(2.00\) m (Ground Truth) |
| Escala Métrica (\(S\)) | - | \(0.001667\) m/píxel | - |
| Largo de la Mesa | \(1650\) pixeles | \(2.75\) m | - |
| Ancho del Cuadro | \(480\) pixeles | \(0.80\) m | - |
| Alto de la Ventana 1 | \(750\) pixeles | \(1.25\) m | - |
| Ancho de la Silla 1 | \(240\) pixeles | \(0.40\) m | - |
| Altura de la Planta | \(420\) pixeles | \(0.70\) m | - |
| Detector/Descriptor | Precisión (RMSE) | Tiempo de Ejecución | Robustez al Ruido | Conclusión |
|---|---|---|---|---|
| SIFT | Alta (\(1.5\) pixeles) | Lento | Muy Alta | Mejor para precisión final, usado en el registro principal. |
| ORB | Media (\(3.2\) pixeles) | Rápido | Media | Mejor para prototipado o pre-registro. |
Bundle Adjustment: La implementación de Bundle Adjustment (BA) logró reducir el RMSE global de \(2.0\) a \(1.5\) píxeles, demostrando su valor en la optimización de las Homografías de múltiples imágenes, corrigiendo la acumulación de error que es común en el stitching puramente secuencial.
Se implementó y validó exitosamente un pipeline de registro de imágenes. La fase de validación con imágenes sintéticas demostró la precisión del algoritmo (RMSE de \(1.5\) píxeles). La aplicación a las imágenes del comedor, utilizando SIFT y RANSAC, y con optimización de Bundle Adjustment, resultó en un mosaico panorámico de alta calidad. Se logró establecer la escala métrica y se desarrolló una herramienta para realizar mediciones, estimando dimensiones clave como el largo de la mesa (\(2.75\) m). El análisis de errores indica que la limitación principal es la simplificación de la escena 3D a un modelo 2D (Homografía), siendo el parallax la mayor fuente de incertidumbre en las mediciones.
[Cita 1] Brown, M., & Lowe, D. G. (2007). Automatic Panoramic Image Stitching using Invariant Features. International Journal of Computer Vision, 74(1), 59-73. [Cita 2] Hartley, R., & Zisserman, A. (2003). Multiple View Geometry in Computer Vision. Cambridge University Press. [Cita 3] Lowe, D. G. (2004). Distinctive Image Features from Scale-Invariant Keypoints. International Journal of Computer Vision, 60(2), 91-110. [Cita 4] Rublee, E., Rabaud, V., Konolige, K., & Bradski, G. (2011). ORB: an efficient alternative to SIFT or SURF. 2011 International Conference on Computer Vision (ICCV). [Cita 5] Fischler, M. A., & Bolles, R. C. (1981). Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography. Communications of the ACM, 24(6), 381-395. [Cita 6] Triggs, B., McLauchlan, P. F., Hartley, R. I., & Fitzgibbon, A. W. (1999). Bundle Adjustment—A Modern Synthesis. Vision Algorithms: Theory and Practice.
El proyecto se desarrolló mediante una división de tareas que abarcó las tres partes principales (Validación, Registro y Medición), asegurando que cada integrante tuviera responsabilidad sobre componentes críticos del pipeline.
| Integrante | Contribución Clave y Tareas Específicas | Mapeo a Partes del Trabajo | % Estimado del Esfuerzo Total |
|---|---|---|---|
| Alejandro Esteban Munoz Osorio | Validación y Métricas (Ground Truth): Creación del conjunto de imágenes sintéticas con transformaciones conocidas (ground truth) y el cálculo de todas las métricas de error (RMSE, error angular, etc.) para la validación del registro. Documentó cómo los parámetros afectan la calidad del registro. | ||
| Baraya Armando Cumbalaza Vallejo | Calibración y Medición Métrica: Estableció la escala métrica del mosaico usando dimensiones conocidas. Implementó la herramienta interactiva para medir distancias y estimó las dimensiones de todos los objetos requeridos (mesa, cuadro, ventanas, sillas, etc.). Analizó la incertidumbre. | ||
| Johan Sebastian Cano Garcia | Implementación del Núcleo del Pipeline y Pruebas Sintéticas: Creó las funciones de detección, emparejamiento, estimación de Homografías (RANSAC) y las funciones para la unión de imágenes (Fusión y Blending). Desarrolló el código base del pipeline para ser probado inicialmente con las imágenes sintéticas. | ||
| Laura Camila Agudelo Ospina | Integración, Análisis Exploratorio y Presentación: Adaptó y organizó el pipeline de registro (creado por P3) para el procesamiento y prueba de las imágenes reales del profesor. Realizó el análisis exploratorio de resultados, la comparación de detectores y la generación de las visualizaciones para el reporte. |