martes, 23 de abril de 2013

[Lab VC] Actividad 6: Detección de agujeros

La actividad de esta semana es complemento de la tarea de la clase, es un preprocesamiento para la detección de agujeros en un objeto.
Los requisitos de la tarea son:
  • Dibujen encima de casa imagen una recta para cada pico del histograma lateral; independientemente para horizontal y vertical.
  • Las intersecciones deberían coincidir con los agujeros.

Para lograr dibujar el histograma, se debieron normalizar los valores del histograma ya que éstos eran demasiado altos.

Es posible obtener el histograma de todas las imágenes, y se puede hacer un histograma por cada uno de los colores (RGB) o en escala de grises para calcular los niveles de iluminación.

Un agujero es una hendidura en algún objeto, por consiguiente, causa una variación en la iluminación general de la imagen, es posible detectar  un agujero midiendo estas variaciones utilizando histogramas laterales, uno para el largo de la imagen y otro para el ancho.

Éste es un ejemplo de los histogramas de una imágen genérica:




Actividad


Se utilizaron las siguientes imágenes :

Original
Escala de grises

Resultados:


Original
Histograma horizontal
Histograma vertical
Histograma horizontal sobrepuesto
Histograma vertical sobrepuesto
Intersecciones


Los histogramas sobrepuestos, es necesario ver la imagen con un 100% de zoom, después se podrá ver en las orillas derecha e inferior las formas de los histogramas.

Los resultados de la detección de los agujeros se muestran en esta entrada

Código


En el repositorio encuentran la implementación completa en código, la carpeta marcada como Tarea 7.



Como el código para detectar los agujeros permaneció igual, solo adjunto la rutina que dibuja todos los resultados del preprocesamiento.


Fin de a actividad.

1 comentario:

  1. idealmente sería una regla horizontal y una vertical por cada agujero; hay mucho ruido en tu detección. 9 pts. En las sobreposiciones, alguna clase de normalización pudiera haber otorgado resultados más informativos.

    ResponderEliminar