jueves, 21 de febrero de 2013

[VISIÓN COMPUTACIONAL] Lab 3: Convex hull y engordando pixeles

Para esta semana en el laboratorio de visión computacional, de la mano de la tarea de clase que fue búsqueda de formas, tenemos que hacer una covertura a esas mismas. Para ello se realizó una pequeña rutina que hace convex hull usando el algoritmo "Gift Wrapping" tambien llamado "Jarvis March".

El algoritmo consiste en tomar un punto en la izquierda de la forma ya detectada (no necesariamente, pero recomendable), este será el primer punto de la envoltura, despues se hace girar la envoltura para buscar al siguiente punto.

Para terminar los giros se completan los 360 grados, de esta manera quedará comletamente envuelta.

Código:
Las siguientes imagenes muestran el proceso:
Imagen original

Binarización

Convex hull

Una imagen más:

Imagen original

Binarización

Normalización

Convex Hull

Se puede apreciar que esta imagen no tenía los bordes definidos, así que apliqué la normalización, sin embargo los bordes quedan no muy bien marcados, así que apliqué anchura a los pixeles del borde.

El proceso es facil, solo se recorre la imagen y se busca los bordes de un color, al pixel que tenga el color deseado, tomaremos sus vecinos diagonales y los pintaremos del mismo color. El resultado es una imagen con mejor definición de bordes.

De esta manera, antes la imagen de las figuras estaba así:
Original

Sin bordes definidos, se pierden con los filtros

Ahora está así:

Código:
Liga al proyecto:
https://github.com/victoralex911/vision-computacional

1 comentario: