Subido por Gerson Zaira Mendizabal

DETECCIÓN DE CONTORNO

Anuncio
DETECCIÓN DE CONTORNO
La detección de contorno es parte de un proceso de aislamiento (segmentación), que
consiste en la identificación de objetos dentro de una imagen.
Una de las más comunes y generales definiciones es el contorno de paso ideal, ilustrado
en la dimensión, el contorno es simplemente un cambio en el nivel de gris que ocurre en
una ubicación especifica. Cuanto mayor es el cambio de nivel, más fácil resulta detectar
el contorno, pero en el caso ideal cualquier cambio de nivel puede ser visto fácilmente.
La primera complicación ocurre debido a la digitalización. Es poco probable que una
imagen sea muestreada de manera tal que todos los contornos correspondan exactamente
con un pixel del borde. La posición actual del contorno se considera como el centro de la
rampa que conecta el nivel bajo de gris con el nivel alto. Esta es una rampa sólo en el
mundo matemático, dado que después de que la imagen ha sido digitalizada (muestreada),
la rampa tiene una apariencia escalonada.
La segunda complicación es el clásico problema del ruido. Debido a una gran cantidad de
factores como la intensidad de la luz, el tipo de cámaras y lentes, el movimiento, la
temperatura, efectos atmosféricos, polvo y otros; difícilmente dos pixeles que
correspondan precisamente al mismo nivel de gris en la escena tengan el mismo nivel en
la imagen.
El ruido es un efecto aleatorio, y es caracterizado sólo estadísticamente. El resultado del
ruido en una imagen es que produce variaciones aleatorias en el nivel de un pixel a otro,
y entonces las líneas suaves y rampas de los contornos ideales nunca son encontradas en
las imágenes reales.
MODELOS DE CONTORNO
Un contorno de paso nunca ocurre realmente en una imagen debido a:

Los objetos rara vez son de dicha forma de trazo.

Una escena nunca es muestreada de manera que los contornos ocurran
exactamente en las imágenes de un pixel.

Debido al ruido, como se mencionó anteriormente.
Si el efecto de un trazo borroso es extender el cambio de nivel de gris sobre varios pixeles,
entonces el de paso simple se convierte en una escalera. La rampa es un modelo de cómo
debía haber sido visto el contorno originalmente con motivo de producir una escalera, y
esto es una idealización; es una interpolación del dato actualmente encontrado.
EL RUIDO
El ruido no se puede predecir acertadamente debido a su naturaleza aleatoria, y tampoco
puede ser medido precisamente en una imagen con ruido, dado que la contribución del
ruido a los niveles de gris no es indistinguible de los pixeles de dato. Sin embargo, el
ruido puede ser caracterizado a veces por su efecto en la imagen, y es usualmente
expresado como una distribución de probabilidad con una media y desviación estándar
especifica.
Hay dos tipos de ruido que son de interés especifico en el análisis de imágenes. El ruido
independiente de la señal es un conjunto aleatorio de niveles de gris, estadísticamente
independiente de los datos de la imagen ; estos es, añadido a los pixeles en la imagen para
dar la imagen con ruido resultante.
El segundo tipo principal de ruido es llamado ruido dependiente de la señal. En este caso
el nivel del valor del ruido en cada punto de la imagen es una función del nivel de gris
ahí. El granulado visto en algunas fotos es un ejemplo de esta clase de ruido, y
generalmente de difícil tratar con el. Afortunadamente se encuentra menos
frecuentemente, y resulta manejable si la foto es muestreada correctamente.
Un contorno (basado en la discusión previa) esta definido por un borde de nivel de gris o
color. Si este borde se cruza, entonces el nivel cambia rápidamente; seguir el borde
conduce a más sutiles, posiblemente aleatorios, cambios de nivel. Los pixeles de ruido
también muestran un gran cambio en el nivel.
Hay esencialmente tres tipos comunes de operadores para localizar contornos. El primero
es el operador derivada diseñado para identificar lugares donde hay grandes cambios de
intensidad. El segundo se asemeja a un esquema de molde-encastre, donde el contorno es
moldeado por una pequeña imagen que muestra las propiedades abstractas de un contorno
perfecto. Finalmente, hay operadores que utilizan un modelo matemático del contorno,
los mejores usan también un modelo del ruido, y hacen un esfuerzo por tenerlo en cuenta.
En el presente proyecto se utilizan dos algoritmos pertenecientes al último tipo.
IMPLEMENTACIÓN DEL DETECTOR DE CONTORNO
EL DETECTOR DE CONTORNO CANNY
En 1986, John Canny definió un conjunto de objetivos para un detector de contorno y
describió un método óptimo para conseguirlo.
Tasa de error: el detector de contorno debe responder sólo a contornos, y debe
encontrarlos todos.
Ubicación: la distancia entre los pixeles del contorno encontrados por el detector y el
contorno real debe ser la menor posible.
El detector de contorno no debe identificar múltiples pixeles de contorno donde sólo
exista un único contorno.
Canny asume un contorno de paso sujeto a un ruido blanco Gaussiano. El detector es un
filtro de contorción f que suaviza el ruido y localiza el contorno. El problema es identificar
el filtro que optimize los tres criterios de detección de contornos.
Canny intenta encontrar el filtro f que maximize el producto SNR x Ubicación sujeto a la
restricción de respuestas múltiples, y mientras el resultado es demasiado complejo para
ser resuelto analíticamente, una aproximación logra ser (turns out) la primera derivada de
una función gaussiana.
La aproximación al filtro óptimo de Canny para la detección de contornos es G', y
entonces contorsionando la imagen de entrada con G' se obtiene E que tiene contornos
resaltados (enhanced), aún en presencia de ruido, el cual ha sido incorporado dentro del
modelo de la imagen de contorno.
Una contorción es claramente simple de implementar, pero es computacionalmente
costosa, especialmente una contorción de 2 dimensiones. Sin embargo, una contorción
con una gaussiana de 2D puede ser separada en dos contorciones con una gaussiana de
1D, y la diferenciación puede ser realizada en último lugar.
FUNCIONAMIENTO DEL PROGRAMA
El programa principal abre y lee el archivo de la imagen, y también lee los parámetros
(como tita). Luego llama a la función canny, la cual realiza la mayor parte del trabajo. La
primer cosa que realiza canny es calcular la máscara de filtro gaussiano (llamada gau en
el programa) y la derivada de la máscara de filtro gaussiano (llamada dgau). El tamaño
de la mascara a ser usado depende de tita; para un valor de tita pequeño la gaussiana será
rápidamente cero, resultando una máscara pequeña. El programa determina
automáticamente el tamaño necesario de la máscara.
UNA COMPARACIÓN ENTRE LOS DOS DETECTORES DE CONTORNOS
ÓPTIMOS
Para resumir, el algoritmo de Canny filtra la imagen con la derivada de una función
gausiana y luego elimina los puntos no máximos. El algoritmo de Shen-Castan filtra la
imagen usando el filtro exponencial simétrico infinito, computa el BLI o imagen binaria
de Laplace, suprime las raíces falsas y aplica el gradiente adaptativo. En ambos métodos,
así como en el de Marr-Hildreth los autores sugieren el uso de múltiples soluciones.
Ambos algoritmos ofrecen parámetros que pueden ser definidos por el usuario, lo cual
puede ser útil para adaptar el método para un tipo de imagen en particular.
BIBLIOGRAFÍA
J.R. Parker, Algorithms for Image Processing and Computer Vision. 1997. Wiley.
Darío Maravall Gómez-Allende, Reconocimiento de formas y visión artificial. 1993.
Addison Wesley.
Descargar