Segmentación de Imágenes

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 14

Segmentación de imágenes

Eduardo Huerta Flores, José Abel Bañuelos Terés


Universidad Politécnica de Puebla, Tercer Carril del Ejido, Serrano S/N, San Mateo Cuanalá,
Municipio Juan C. Bonilla, Puebla, México, C.P. 72640. Teléfonos. (22) 7746640 al 46

1. INTRODUCCIÓN
1.2 ¿Qué es segmentación?
La segmentación de imágenes divide la imagen en sus partes constituyentes hasta un nivel de
subdivisión en el que se aíslen las regiones u objetos de interés. Los algoritmos de segmentación se
basan en una de estas dos propiedades básicas de los valores del nivel de gris: discontinuidad o
similitud entre los niveles de gris de píxeles vecinos.
1.3 Filtro de Marr-Hildreth
Es un método para detectar bordes en imágenes digitales, es decir, curvas continuas donde hay
variaciones fuertes y rápidas en el brillo de la imagen. El método de detección de bordes de Marr-
Hildreth es simple y funciona mediante la convolución de la imagen con la función laplaciano de
Gauss o, como una aproximación rápida por diferencia de Gauss. Luego, se detectan cruces cero en
el resultado filtrado para obtener los bordes.
1.4 Filtro Canny
El algoritmo de Canny es usado para detectar todos los bordes existentes en una imagen. Este
algoritmo está considerado como uno de los mejores métodos de detección de contornos mediante el
empleo de máscaras de convolución y basado en la primera derivada. Los puntos de contorno son
como zonas de píxeles en las que existe un cambio brusco de nivel de gris. En el tratamiento de
imágenes, se trabaja con píxeles, y en un ambiente discreto, es así que en el algoritmo de Canny se
utiliza máscaras, las cuales representan aproximaciones en diferencias finitas.

2. FILTRO DE MARR-HILDRETH
2.2 Aplicación
se realiza una convolución a la imagen I con una matriz G que modeliza una función gaussiana
bidimensional.
Donde tenemos:

1 𝑥 2 +𝑦 2

𝐺 (𝑥, 𝑦) = 2
𝑒 2𝜎2 (1)
2𝜋𝜎
Los píxeles del borde son aquellos tal que el Laplaciano de dos de sus vecinos en posiciones opuestas
tienen distinto signo (píxeles de paso por cero). Normalmente se considera un valor umbral para el
valor absoluto de la diferencia numérica entre posiciones opuestas para considerar que un píxel es de
paso por cero.
2.3 Código
Las figuras 1 y 2 nos ilustran el código del filtro Marr-Hildreth

Figura 1. Código de filtro Marr-Hildreth

Figura 2. Código de Filtro Marr-Hildreth

2.4 Resultados.
Las figuras 3 y 4 nos muestran los resultados de la aplicación del filtro a diferentes valores de
sigma.
Figura 3. Filtro Marr-Hildreth a 0.5 sigma.

Figura 4. Filtro Marr-Hildreth a 0.1 sigma.


3. FILTRO DE CANNY
3.2 Aplicación
Uno de los métodos relacionados con la detección de bordes es el uso de la primera derivada, la que
es usada por que toma el valor de cero en todas las regiones donde no varía la intensidad y tiene un
valor constante en toda la transición de intensidad. Por tanto, un cambio de intensidad se manifiesta
como un cambio brusco en la primera derivada, característica que es usada para detectar un borde, y
en la que se basa el algoritmo de Canny.
3.3 obtención del filtro.
• Obtención del gradiente: en este paso se calcula la magnitud y orientación del vector
gradiente en cada píxel.
• Supresión no máxima: en este paso se logra el adelgazamiento del ancho de los bordes,
obtenidos con el gradiente, hasta lograr bordes de un píxel de ancho.
• Histéresis de umbral: en este paso se aplica una función de histéresis basada en dos umbrales;
con este proceso se pretende reducir la posibilidad de aparición de contornos falsos.
3.4 Obtención del Gradiente.
Para la obtención del gradiente, lo primero que se realiza es la aplicación de un filtro gaussiano a la
imagen original con el objetivo de suavizar la imagen y tratar de eliminar el posible ruido existente.
Sin embargo, se debe de tener cuidado de no realizar un suavizado excesivo, pues se podrían perder
detalles de la imagen y provocar un pésimo resultado final. Este suavizado se obtiene promediando
los valores de intensidad de los píxeles en el entorno de vecindad con una máscara de convolución de
media cero y desviación estándar.
3.5 Supresión
Las dos imágenes generadas en el paso anterior sirven de entrada para generar una imagen con los
bordes adelgazados. El procedimiento es el siguiente: se consideran cuatro direcciones identificadas
por las orientaciones de 0º, 45º, 90º y 135º con respecto al eje horizontal. Para cada píxel se encuentra
la dirección que mejor se aproxime a la dirección del ángulo de gradiente.
3.6 Histéresis
La imagen obtenida en el paso anterior suele contener máximos locales creados por el ruido. Una
solución para eliminar dicho ruido es la histéresis del umbral.
El proceso consiste en tomar la imagen obtenida del paso anterior, tomar la orientación de los puntos
de borde de la imagen y tomar dos umbrales, el primero más pequeño que el segundo. Para cada punto
de la imagen se debe localizar el siguiente punto de borde no explorado que sea mayor al segundo
umbral. A partir de dicho punto seguir las cadenas de máximos locales conectados en ambas
direcciones perpendiculares a la normal del borde siempre que sean mayo res al primer umbral. Así
se marcan todos los puntos explorados y se almacena la lista de todos los puntos en el contorno
conectado. Es así como en este paso se logra eliminar las uniones en forma de Y de los segmentos
que confluyan en un punto.

3.7 Código
Las figuras 5, 6, 7, 8 y 9 nos ilustran el código del filtro Canny.
Figura 5. Código de Filtro Canny.

Figura 6. Código de Filtro Canny.


Figura 7. Código de Filtro Canny.

Figura 8. Código de Filtro Canny.


Figura 9. Código de Filtro Canny.

3.8 Resultados.
Se obtuvieron diversos resultados, se les aplicó el filtro a dos imágenes obteniendo cada una 7
resultados.

• Resultados de primera imagen.


Figura 10. Imagen en escala de grises.

Figura 11. Filtro de mascara.


Figura 12. Filtro en el eje x.

Figura 13. Filtro en el eje y.


Figura 14. Ajuste de direcciones

Figura 15. Filtro canny.


• Resultados de segunda imagen

Figura 16. Imagen en escala de grises.

Figura 17. Imagen con filtro de mascara.


Figura 18. Filtro en el eje x.

Figura 19. Filtro en el eje y.


Figura 20. Ajuste de direcciones

Figura 21. Filtro Canny.


4. CONCLUSION
En esta práctica se recopilan los códigos y resultados obtenidos acerca de la segmentación de imágenes,
fue de mucha importancia comprender los pasos para poder programar los filtros de Marr-Hildreth y
Canny, el cual tiene como principal ventaja su gran adaptabilidad para poder ser aplicado a diversos tipos
de imágenes, además de no disminuir su performance ante la presencia de ruido en la imagen original. En
general se obtuvieron resultados satisfactorios, comprendimos de mejor forma el funcionamiento de estos
filtros y con que objetivo se aplican.

5. REFERENCIAS
[1] Steven, C., Raymond, P., “Métodos Numéricos para ingenieros”, Quinta edición,
McGRAW-HILL/INTERAMERICANA EDITORES, S.A. DE C.V. 2002. ISBN-13: 978-
970-10-6114-5

[2] Mañas, F., “Métodos Numéricos para el Análisis Matemático”, Primera edición en español,
2018, Ediciones UTMACH, ISBN: 978-9942-24-104-7

[3] O’Connor, J.L., “Ingeniería de los Algoritmos y Métodos Numéricos”, Segunda edición:
septiembre 2017, Editorial el círculo rojo.

También podría gustarte