2. Logros de aprendizaje
1. Conocer en que consiste la segmentación de imágenes.
2. Revisar el objetivo y uso de la segmentación.
3. Analizar la segmentación basada en características .
4. Comprender la segmentación basada en transiciones.
5. Comprender la segmentación basada en modelos.
6. Implementar los algoritmos mediante funciones para
operar la segmentación de las imágenes digitales.
7. Conocer los métodos de MatLab para la segmentación
aplicados a las imágenes digitales.
2
3. 3
Contenido
Segmentación de imágenes:
Introducción.
Objetivo y uso de la segmentación.
Proceso de la segmentación.
Aplicaciones de la segmentación.
Algoritmos de segmentación.
Segmentación basada en características.
Segmentación basada en transiciones.
Segmentación basada en modelos: La
transformada de Hough.
Aplicaciones de la TH.
4. Introducción a la segmentación
Esquema general del análisis de imágenes
4
5. Introducción a la segmentación
La segmentación en el campo de la visión artificial es el
proceso de dividir una imagen digital en varias partes (grupos
de píxeles) u objetos.
La segmentación de la imagen es el proceso de asignación de
una etiqueta a cada píxel de la imagen de forma que los píxeles
que compartan la misma etiqueta también tendrán ciertas
características visuales similares.
El resultado de la segmentación de una imagen es un conjunto
de segmentos que cubren en conjunto a toda la imagen, o un
conjunto de las curvas de nivel extraídas de la imagen
(detección de bordes). Cada uno de los píxeles de una región
son similares en alguna característica, como el color, la
intensidad o la textura. Regiones adyacentes son
significativamente diferentes con respecto a la(s) misma(s)
característica(s).
5
6. Objetivo y uso de la segmentación
El objetivo de la segmentación es simplificar y/o cambiar la
representación de una imagen en otra más significativa y más
fácil de analizar.
La segmentación se usa tanto para localizar objetos como para
encontrar los límites de estos dentro de una imagen.
Las técnicas de segmentación son muy dependientes del
propósito de la aplicación y del tipo de imágenes a analizar.
Se han desarrollado varios algoritmos y técnicas de propósito
general para la segmentación de imágenes y dado que no
existe una solución general para el problema de la
segmentación, a menudo se tienen que combinar varias
técnicas para resolverlo eficazmente.
6
7. Proceso de la segmentación
Antes de segmentar es preciso definir qué objetos interesa
determinar
Tras la segmentación es posible realizar operaciones de filtrado
(a nivel de objetos), así como determinar características que
permitan clasificar los objetos.
Una buena segmentación es difícil de evaluar.
Fundamentalmente, lo que se busca es que diferentes objetos
tengan valores claramente diferentes de la(s) característica(s)
discriminante(s).
7
8. Aplicaciones de la segmentación
1. Visión artificial
2. Teledetección
3. Compresión
4. Inspección industrial
5. Análisis de imágenes médicas
6. Gestión de información multimedia
8
9. Aplicaciones de la segmentación
1. Pruebas médicas
• Localización de tumores y otras patologías
• Medida de volúmenes de tejido
• Cirugía guiada por ordenador
• Diagnóstico
• Planificación del tratamiento
• Estudio de la estructura anatómica
2. Localización de objetos en imágenes de satélite
(teledetección).
3. Sensor de huella digital
4. Reconocimiento de caras
5. Reconocimiento de iris
6. Sistemas de control de tráfico
7. Visión por computador
9
10. Aplicaciones de la segmentación
Frecuentemente estamos interesados en detectar líneas en una
determinada dirección. Los píxeles que forman parte de una línea
horizontal, vertical o diagonal, tendrán respuestas extremas ante
alguna de las máscaras siguientes:
10
Aplicar cada una de estas mascaras a la imagen
procesador.bmp.
11. Algoritmos de segmentación
Los algoritmos de segmentación se basan en los siguientes
principios:
1. Discontinuidades del nivel de gris.
Consisten en segmentar la imagen a partir de los cambios
grandes en los niveles de gris entre los píxeles.
Las técnicas que utilizan las discontinuidades como base son la
detección de líneas, de bordes, de puntos aislados,…
2. Similitud de niveles de gris.
Es lo contrario al método anterior, las divisiones de la imagen
se hacen agrupando los píxeles que tienen unas características
similares.
Algunas técnicas que usan esto son la umbralización, el
crecimiento de regiones, etc.
11
12. Algoritmos de segmentación
1. Métodos de agrupamiento (Clustering)
2. Métodos basados en el histograma
3. Detección de bordes
4. Métodos de crecimiento de regiones
5. Método del conjunto de nivel
6. Métodos de particionamiento gráfico
7. Transformación divisoria (watershed)
8. Método del valor umbral (umbralización)
9. Segmentación basada en modelos
10. Segmentación multi-escala
• Segmentación jerárquica de señales unidimensionales
• Segmentación de imágenes y el boceto original
11. Segmentación Semi-automática
12. Redes neuronales de segmentación
12
13. Algoritmos de segmentación
1. Segmentación basada en características
• Segmentación por niveles de gris
• Segmentación de imágenes en color
• Segmentación por texturas
2. Segmentación basada en transiciones
• Detección de bordes
3. Segmentación basada en modelos
• Transformada de Hough
4. Segmentación basada en homogeneidad
• Fusión de regiones
• Zonas planas
• Propagación de Marcadores
5. Segmentación basada en Morfológica Matemática
13
14. Algoritmos de segmentación
1. Segmentación basada en características
• Segmentación por niveles de gris
• Segmentación de imágenes en color
• Segmentación por texturas
14
Se asigna cada píxel a una región en función de
características locales de la imagen en el píxel y
(posiblemente) en su vecindad.
15. Segmentación basada en características
15
Segmentación por niveles de gris
• Utiliza como característica solamente la luminancia de cada
píxel.
• Útil si distintos objetos se corresponden con niveles de gris
diferentes.
• El nivel de gris determina alguna propiedad física en una imagen
específica de una aplicación (Rayos X, RMN, bandas en satélite,
etc.)
• Técnicas de operaciones puntuales (ej: doble umbralización)
• Técnicas de clasificación basada en amplitud => imagen
binaria
Matlab:
J=roicolor(I,low, high); ‘J’ es una imagen binaria
K=roifilt2(h,I,J); se filtra ‘I’ por ‘h’ en los puntos ‘J’==1
16. Segmentación basada en características
16
En el caso ideal en que el objeto posea un rango
estrecho de niveles de gris frente a un fondo uniforme,
podemos establecer un nivel de gris intermedio (umbral)
para separar objeto y fondo.
Para separar por umbral, es útil recurrir al histograma.
Segmentación por niveles de gris
17. Segmentación basada en características
17
Segmentación por Histograma:
• Picos: a menudo indican la presencia de zonas
homogéneas.
• Valles: establecen los umbrales de separación.
Problemas:
• Objetos con un amplio rango de niveles de gris:
• Fondo no uniforme, …
• Imagen con ruido
Segmentación por niveles de gris
18. Segmentación basada en características
18
• Al aplicar un umbral, u, se genera
una partición de la imagen
mediante
• Esto equivale a definir el conjunto
(en este ejemplo, de nivel inferior):
• Este conjunto produce una división
del espacio. La cantidad de
componentes conexas de Lu
determinan el número de regiones.
Segmentación por niveles de gris
19. Segmentación basada en características
19
Método automático para separar objeto del fondo: Otsu
• Cálculo del histograma de gris
• Cálculo iterativo de media y varianza
• Hipótesis de umbral U => divide el histograma en dos partes y
se calcula media y varianza para cada parte iterativamente
cambiando U.
• Medimos la varianza conjunta:
Segmentación por niveles de gris. Umbralización:
20. Segmentación basada en características
20
Segmentación por niveles de gris. Umbralización:
Matlab:
level= graythresh(I); %utiliza el método de Otsu.
BW=im2bw(I,level)
21. Segmentación basada en características
21
Segmentación por niveles de gris. Umbralización:
• La determinación del umbral óptimo para una imagen
dada es un factor crítico de la segmentación.
• Conociendo las distribuciones de luminancia propias
de cada objeto en la imagen, el umbral óptimo puede
estimarse mediante consideraciones estadísticas.
• Sin embargo, puede haber limitaciones: si las
distribuciones están solapadas, ningún umbral
aplicado directamente sobre la luminancia de la
imagen puede obtener una segmentación libre de
errores.
22. Segmentación basada en características
22
Segmentación por niveles de gris. Umbralización:
Puede mejorarse la segmentación realizando un preprocesado previo de la
imagen.
27. Algoritmos de segmentación
3. Segmentación basada en modelos
• Las técnicas de segmentación basada en
modelos presuponen conocidas algunas
características de los objetos o regiones en la
imagen: rectas, objetos circulares, etc.
• La transformada de Hough es una de las más
utilizadas.
27
29. Algoritmos de segmentación
3. Segmentación basada en modelos
• Transformada de Hough (TH)
29
• Transformación de dominio para encontrar curvas paramétricas en
una imagen (binaria o de grises).
El nuevo espacio transformado se denomina espacio de Hough.
Para ajustar distintos tipos de formas se usan distintos espacios
de Hough.
• Objetivo de la TH:
Transformar un problema de detección de patrones en un
problema de detección de máximos en el espacio de Hough.
• Ventaja principal de la TH:
Está poco afectada por ruido o huecos en las curvas.
Identificando las curvas que interesan en el espacio de Hough,
es posible aislar regiones en la imagen original (filtrado).
42. Tarea de la Sesión
1. Realizar mapas conceptuales (CMapTools) de la presentación
y videos de ésta Sesión de Aprendizaje.
2. Mediante MatLab implementar funciones para cada uno de los
operadores de detección de bordes. Alpicarlos sobre su
fotografía (foto.jpg) y la imagen (lena.jpg) colocada en la
Carpeta Sesiones de Aprendizaje del curso en el Dropbox.
3. Comparar los resultados con los resultados obtenidos de
utilizar la función edge del MatLab.
4. Detectar los bordes de la imagen “bridge.gif”. Detectar primero
los bordes horizontales, luego los verticales y componer en
último lugar la imagen formada de bordes horizontales y
verticales, utilizar para esto el filtro de sobel.
5. Hallar la imagen de bordes binaria de la imagen “lena.jpg”,
aplicando todos los filtros posibles que admite la función edge.
Realizar lo mismo pero en este caso no se empleará la función
edge. 42
43. Tarea de la Sesión
5. Colocar dentro de su Carpeta Personal del Dropbox, en una
carpeta de nombre “PDI_PaternoM_S11_tareas”:
Los mapas conceptuales
Los códigos (*.m)
Su foto.
Las imágenes resultantes.
43