martes, 24 de mayo de 2016

Continuamos con la reconstrucción

Para mejorar y que funcione se han hecho varios cambios en el código que se irán detallando uno a uno a continuación.

 Para empezar, el cálculo de puntos característicos se ha sustituido por utilizar los bordes de la imagen, ya que también son puntos característicos. Los motivos principales del cambio es que no se obtienen puntos característicos suficientes y que los puntos característicos de la imagen derecha no coincidían con los de la izquierda, por lo que se obtendría error al hacer la reconstrucción.

Los bordes se han calculado con canny y lo que se obtiene se puede ver en la siguiente imagen.

Que son un total de 7mil puntos en la imagen derecha y 7 mil puntos en la imagen izquierda.

Antes, para buscar correspondencias se utilizaba la ssd, pero probando, se ha decidido utilizar la función norm de opencv. Se obtienen al rededor de 7 mil correspondencias.

También se ha mejorado la búsqueda en la línea epipolar, el problema residía en que progeo nombra de manera diferente a python las filas y columnas en puntos.

Habiendo corregido estos y otros pequeños fallos se procede a hacer la reconstrucción, obteniéndose el siguiente resultado:



Como se puede ver en la imagen, la reconstrucción me sale del revés y no consigo obtener la combinación de [x,y,z] que consiga dibujarlos bien. También hay que cambiar el umbral en el calculo de puntos característicos ya que se muestran muchos puntos que son ruido y por último se va a tratar de mostrar los puntos en color.

Además de esas futuras mejoras, se va a modificar el umbralizado de canny para obtener más puntos bordes para hacer una reconstrucción más densa.

Continuamos trabajado.

No hay comentarios:

Publicar un comentario