LA TRANSFORMADA HOUGH
Esta es una técnica de extracción de información utilizada en procesamiento digital de imágenes, computer visión y DSP, cuyo objetivo es encontrar ''imperfecciones'' con formas geométricas, que inicialmente comenzó como un detector de lineas, pero que ahora es usado para detectar círculos y elipses.
La transformada, surge a partir del problema de la detección de formas, para lo que se utiliza tradicionalmente detectores de bordes, los cuales presentan muchas fallas y recortan la información que se puede obtener de la imagen.
Por lo tanto y a partir de evitar la perdida de información, esta técnica selecciona por medio de un proceso de votación donde están los puntos comunes que determinan una forma geométrica luego de haberlos pasado a un espacio parametrizado donde los objetos se vuelven igualmente parametricos.
Un caso particular de la transformada es para a linea recta, cuya ecuacion es:
y=m+b
siendo los parametros que definen la recta m y b, los cuales para cuando la recta es vertical legan a aser infinitos, por lo que es necesario asignar nuevos parametros, los cuales son radio r y angulo teta, es decir pasar a trabajar la recta como coordenadas polares, definiendo la ecuacion de la recta asi:
y= (cos(teta)/sen(teta))*x + r/sen(teta).
ahora despejando r
r=x*cos(teta) + y*sen(teta)
donde, si es una recta debera existir un angulo y radio unicos que la definan. pero para puntos arbitrarios esta funcion toma la forma de una onda seno, lo que permite la deteccion de circulos y elipses.
Ahora, para la implementacion de la transformada Hough en un algoritmo, es necesario definir primero una matriz acumuladora, que es donde se guarda las coordenadas r y teta de cada pixel, correspondientes a una serie de lineas trazadas alrededor de punto, las cuales siempre tendran una linea adicional perpendicular al origen la cual da r y teta de cada linea que atraviesa el pixel, y esto se aplica a cada pixel de la imagen, para luego graficar los resultados r vs teta y verificar los cortes entre las diferentes lineas evaludas, en el punto donde las lineas se corten, el algoritmo detectara una linea con un r y teta especifico, la cual luego se graficara.
Fuentes:
No hay comentarios:
Publicar un comentario