Buscar en este blog

lunes, 5 de noviembre de 2007

SIMULACIÓN 1

OBJETIVO: Determinar con qué método de los normalizados que encontramos en las librerías de OpenCV para realizar el Template Matching, obtenemos los mejores resultados para la correlación de imagenes.

PROCEDIMIENTO:

Una vez que se han capturado 700 imágenes de ambiente y 700 imágenes que simularán las de memoria, el procedimiento a efectuar consiste en encontrar la correlación entre estas imágenes.

Durante el proceso de Correlación, una sección de la imágen de ambiente (Ai) denominada Template_Ai, es extraida para posteriormente ser buscada en cada una de las imágenes de memoria (Mj) a través del proceso Template Matching. Como resultado de esta búsqueda se obtiene una sección de la imagen en memoria denominada Template_Mj.

Para determinar la imagen Mj con la que se obtuvo el mejor matching, se utiliza un procedimiento que calcula el error entre los templates de Ai y Mj. Entre mas pequeño sea el error obtenido, mejor será la correlación entre las imagenes.

Para el proceso de Template Matching se han utilizado solo los métodos normalizados que proporcionan las librerías de OpenCV: Suma de las Diferencias al Cuadrado, Correlación Cruzada y Producto Vectorial.

RESULTADOS:

Suma de las Diferencias al Cuadrado



Correlación Cruzada



Producto Vectorial



OBSERVACIONES:

Como se especificó con anterioridad, para esta simulación se ha realizado una comparación de "todas contra todas"; es decir, cada imagen Ai ha sido comparada con todas las Mj para encontrar la mejor correlación.

En las gráficas publicadas en este blog, la trayectoria de color azul indica la correlación exacta entre las imagenes; esto quiere decir que la imagen A1 encontró su mejor correlación con la imagen M1 o bien que se han creado los pares ordenados (A1,M1), (A2, M2), (A3, M3),..., (A700, M700).

Sin embargo, los resultados arrojados por cada uno de los tres métodos puestos a prueba y que estan representados por la trayectoria roja, nos muestran que no se logró una correspondencia exacta entre las imagenes; es decir, para cada método se obtuvieron resultados similares a los que se muestran en la tabla 1.



Por lo anterior fue necesario determinar el error de correspondencia calculando las diferencias absolutas entre cada par ordenado (tabla 2).



De esta manera, la trayectoria de color verde en las graficas anteriores es el error presente en cada método al estimar la correspondencia entre las imagenes.

Como se puede observar, los resultados han sido practicamente los mismos a pesar de que se han utilizado tres métodos diferentes; muestra de esto son las sumas de las diferencias absolutas (Error de Correspondencia) que se obtuvieron de cada método: 16743 en la Suma de las Diferencias al Cuadrado, 16741 para el Coeficiente de Correlación y 16749 para el Producto Vectorial. (ver resultados de la simulación)

CONCLUSIONES:

El error de correspondencia permite concretar qué método es el que arroja los mejores resultados en la correlación de imagenes; entonces, a menor error de correspondencia, mayor correlación entre las imagenes.

Sin embargo, para la simulación actual no es posible argumentar que el Coeficiente de Correlación que tiene el error de correspondencia menor (16741), es el método que proporciona los mejores resultados en el Templete Matching, ya que las secuencias de imagenes de ambiente y de memoria no fueron tomadas en la misma posición, ni con la misma orientación y por supuesto tampoco en el mismo tiempo (se menciona el tiempo porque con este cambian las condiciones de iluminación). Por lo anterior, los pares ordenados de imagenes (A1, M1), (A2, M2), (A700, M700) no son iguales.

De esta manera, los resultados de cada uno de los métodos son considerados como una aproximaxión a la coorrespondencia real, que no se sabe que tan cerca o lejos pueden estar de esa correspondencia porque como tal no existe, debido a que las dos secuencias de imagenes (de memoria y ambiente) no son iguales.

Por lo tanto, si las secuencias de imagenes de ambiente y memoria fueran iguales, se tendría conocimiento de la correspondencia real, y entonces el error de correspondencia indicaría con certeza que método proporciona los mejores resultados.

Adicionalmente, debido a que el tiempo consumido por esta simulación fue de por lo menos ocho horas por cada método, ha sido necesario no continuar con la comparación "todas contra todas".

jueves, 12 de julio de 2007

Calibración de Cámara

En aplicaciones con visión computacional un aspecto importante a considerar es el proceso denominado calibración de cámara, el cual consiste en determinar los parámetros internos de la cámara, tales como distancia focal, factores de distorsión y puntos centrales del plano imagen.

El proceso de calibración de cámaras, es necesario para poder extraer información métrica a partir de imágenes 2D del mundo 3D.

En esencia el proceso de calibración de cámara consiste en determinar la geometría y características internas de la cámara, parámetros intrínsecos (tamaño horizontal (1 / s u) y vertical (1 / s v ) de los píxeles o aspecto proporcional, coordenadas de proyección O'(r , c 0 0) del centro óptico, largo focal), y los parámetros extrínsecos (rotación y translación), que representan la localización y orientación (pose) de la cámara relativa a una imagen en un sistema de Coordenadas.

Para ubicar objetos en el mundo real, establecemos un marco de referencia, que en el contexto de visión computacional es llamado marco de referencia del mundo. Un objeto en una imagen es medido en términos de coordenadas de píxeles, los cuales están en el marco de referencia de la imagen. El sólo conocer la distancia en píxeles entre puntos en una imagen, no nos permite determinar la distancia correspondiente a los mismos puntos en el mundo real. Por lo tanto, es necesario establecer las ecuaciones que unan el marco de referencia del mundo con el marco de referencia de la imagen, de manera de establecer la relación entre los puntos en coordenadas en el espacio 3D y los puntos en coordenadas de imagen 2D. Desafortunadamente, no se puede establecer esta relación directamente, haciéndose necesario establecer un marco de referencia intermedia, llamado marco de referencia de la cámara. Por lo tanto, se deben encontrar las ecuaciones que unan el marco de referencia de la cámara con el marco de referencia de la imagen, y las ecuaciones que unan el marco de referencia del mundo con el marco de referencia de la cámara.

Existen diversas técnicas de calibración de cámara. Estas pueden ser clasificadas en dos grandes categorías: Calibración fotogramétrica y autocalibración [20]:
• Calibración fotogramétrica. Se realiza mediante la observación de patrones cuya geometría en el espacio 3D es conocida con un buen nivel de precisión. Los patrones de calibración normalmente están posicionados en dos o tres planos ortogonales entre ellos. En algunos casos, basta con un único plano, cuya traslación es perfectamente conocida [14] y [20]. Este tipo de calibración requiere una configuración elaborada, pero sus resultados son eficientes.
• Autocalibración. Este método se basa en el movimiento de la cámara observando una escena
estática, a partir de sus desplazamientos y usando únicamente la información de la imagen. La rigidez de la escena impone en general restricciones sobre los parámetros de cámara. Tres imágenes tomadas por una misma cámara con parámetros intrínsecos fijos son suficientes para obtener tanto los parámetros extrínsecos como intrínsecos. Aunque esta técnica es muy flexible, aun no se encuentra madura [5]. [mas…]

Distancia focal

La distancia focal o longitud focal de una lente es la distancia entre el centro óptico de la lente y el foco (o punto focal). La inversa de la distancia focal de una lente es la potencia.

Para una lente positiva (convergente), la distancia focal es positiva. Se define como la distancia desde el eje central de la lente hasta donde un haz de luz colimado (se denomina luz colimada a la luz cuyos rayos son paralelos entre sí) que atraviesa la lente se enfoca en un único punto. Para una lente negativa (divergente), la distancia focal es negativa. Se define como la distancia que hay desde el eje central de la lente a un punto imaginario del cual parece emerger el haz de luz colimado que pasa a través de la lente.

Para un espejo con curvatura esférica, la distancia focal es igual a la mitad del radio de curvatura del espejo. La distancia focal es positiva para un espejo cóncavo, y negativa para un espejo convexo. [extraido de…]



El foco F y la distancia focal f de una lente positiva, una lente negativa, un espejo cóncavo, y un espejo convexo.
Cuanto mayor es la distancia focal, más grandes son las dimensiones de la imagen que se forma en el foco.

miércoles, 27 de junio de 2007

TEMPLATE MATCHING - PRUEBA 8

PRUEBA 8: Obteniendo el Template exactamente del centro de la imagen 24, se usa la imagen 25 para la búsqueda del template. El template está definido por las coordenadas x1=280, x2=360, y1=40, y2=440 y se obtienen los siguientes resultados.

MÉTODO RESULTADO

SQDIFF POS(380,36)
SQDIFF_NORMED POS(380,36)
CCORR POS(399,0)
CCORR_NORMED POS(380,36)
CCOEFF POS(366,39)
CCOEFF_NORMED POS(376,40)

Los resultados anteriores se pueden observar graficamente en las siguientes imagenes:



RESULTADOS

SQDIFF





SQDIFF_NORMED





CCORR





CCORR_NORMED





CCOEFF





CCOEFF_NORMED



martes, 26 de junio de 2007

TEMPLATE MATCHING - PRUEBA 7

PRUEBA 7: En esta prueba el Template aumenta su tamaño considerablemente. Se utilizan las imagenes 27 y 28. El template está definido por las coordenadas x1=170, x2=330, y1=40, y2=440 y se obtienen los siguientes resultados.

MÉTODO RESULTADO

SQDIFF POS(231,38)
SQDIFF_NORMED POS(231,30)
CCORR POS(396,80)
CCORR_NORMED POS(231,38)
CCOEFF POS(231,37)
CCOEFF_NORMED POS(231,38)

Los resultados anteriores se pueden observar graficamente en las siguientes imagenes:



RESULTADOS

SQDIFF





SQDIFF_NORMED





CCORR





CCORR_NORMED





CCOEFF





CCOEFF_NORMED



TEMPLATE MATCHING - PRUEBA 6

PRUEBA 6: El Template es tomado de la imagen 1 y será buscado en la imagen 2. El template está definido por las coordenadas x1=320, x2=380, y1=190, y2=260 y se obtienen los siguientes resultados.

MÉTODO RESULTADO

SQDIFF POS(351,200)
SQDIFF_NORMED POS(351,200)
CCORR POS(331,0)
CCORR_NORMED POS(351,200)
CCOEFF POS(197,83)
CCOEFF_NORMED POS(351,200)

Los resultados anteriores se pueden observar graficamente en las siguientes imagenes:



RESULTADOS

SQDIFF





SQDIFF_NORMED





CCORR





CCORR_NORMED





CCOEFF





CCOEFF_NORMED



TEMPLATE MATCHING - PRUEBA 5

PRUEBA 5: El Template es tomado de la imagen 10 y será buscado en la imagen 11. El template está definido por las coordenadas x1=320, x2=470, y1=180, y2=330 y se obtienen los siguientes resultados.

MÉTODO RESULTADO

SQDIFF POS(327,180)
SQDIFF_NORMED POS(327,180)
CCORR POS(269,0)
CCORR_NORMED POS(327,180)
CCOEFF POS(111,70)
CCOEFF_NORMED POS(327,180)

Los resultados anteriores se pueden observar graficamente en las siguientes imagenes:



RESULTADOS

SQDIFF





SQDIFF_NORMED





CCORR





CCORR_NORMED





CCOEFF





CCOEFF_NORMED





El desplazamiento de la coordenada en X es de 7 pixeles, casi imperceptibles a simple vista.