Para esta parte de la práctica, se necesita realizar un filtro de bordes y para ello se utiliza Canny, eso sí, pasando las imágenes a escala de grises.
Cada punto marcado como borde será un punto de interés y se utilizarán sus coordenadas para la creación del punto 3D.
Para la creación de esta práctica se han seguido los siguientes pasos:
- Se pasan las imágenes a escala de grises para después aplicar el filtrado de Canny.
- Se carga la calibración de las cámaras.
- Por cada punto borde se obtienen sus coordenadas.
- Se pasa de coordenadas gráficas a ópticas el punto seleccionado.
- Se calcula la ecuación de la recta que pasa por el foco y el punto 3D calculado mediante backproject.
- De esta recta se obtienen dos puntos que serán los proyectados en la imagen derecha mediante project.
- Se calculan las coordenadas gráficas de dichos puntos.
- Se dibuja la franja epipolar (lineas azules del video).
- Se dibuja el patch del punto seleccionado (amarillo)
- Se buscan correspondencias entre el patch original y los seleccionados al recorrer la imagen derecha hasta elegir el óptimo (verde).
- El punto 2D se pasa a coordenadas ópticas y se utiliza backproject para obtener su punto 3D.
- Se realiza la búsqueda del punto 3D final calculando la otra recta de retroproyección y buscando los puntos con menos distancia entre ellos puesto que pueden no cortarse.
- Tras encontrar los óptimos, se elige el punto medio de los dos como punto 3D final.
- Se introduce en un vector limitado a 10000 puntos para su posterior representación.
A continuación se presenta una primera estimación de la reconstrucción 3D sin añadir iluminación y representando los puntos en color negro.
No hay comentarios:
Publicar un comentario