miércoles, 24 de abril de 2013

Laboratorio de Visión computacional

En esta ocasión hablaremos de los diferentes histogramas que se realizaron en el anterior post.

Con ayuda de los histogramas podemos identificar agujeros en las imágenes  gracias a los cambios o picos que existen en la imagen.

Para poder realizar los histogramas, se uso el siguiente algoritmo.


  • Primero se transforma la imagen a escala de grises para que cada pixel tenga un valor único.
  • Se recorrió primero la imagen de izquierda a derecha, de arriba hacia abajo, sacando la suma de los pixeles de manera horizontal, para sacar  el histograma horizontal.
  • Para las líneas verticales se recorrió de arriba hacia abajo de izquierda a derecha, sumando de manera vertical los pixeles, para sacar el histograma vertical.


Gracias a esto se obtuvieron dos diferentes histogramas.

Aquí código de obtención de los histogramas

Aquí termina

Posteriormente se obtuvo las intersecciones de los picos de ambos histogramas, y donde se interceptaran seria clasificado como posible agujero o parte de agujero y se dibujaba en la imagen.

Código para dibujar y obtener las intersecciones

Aquí termina

Posteriormente se graficaron los diferentes histogramas para apreciar mejor los diferentes picos, para esto se guardo en un archivo, para cada uno de los histogramas y se utilizó la herramienta gnuplot para graficarlos

Aquí el código para guardar en archivo

Aquí termina


Aquí unas imágenes de pruebas :

Imagen original


Dibujando los picos de los histogramas vertical y horizontal


Aquí el histograma horizontal
Donde el eje x es el numero de filas

Aquí el histograma vertical


Donde el eje x es el numero de columnas

Otra imagen de prueba:



Aquí detecta el agujero pero también sombras, pero con filtrado se puede quitar.

Gráfica del histograma horizontal



Gráfica del histograma vertical:




1 comentario: