Distintas técnicas para la segmentación retinal
Álvaro Gala Guzmán
OBJETIVO: SEGMENTAR AUTOMÁTICAMENTE LA RETINA MEDIANTE
TRATAMIENTO DIGITAL
• Segmentar los vasos sanguíneos
• Segmentar el disco óptico
• Segmentar exudaciones
Utilidad:
Detección y prevención de transtornos en la visión
IMÁGENES UTILIZADAS: RETINOGRAFÍAS
Escala de grises con
vasos sanguíneos en
oscuro
Escala de grises con
vasos sanguíneos en
claro
Color
RGB
HLS
TÉCNICAS UTILIZADAS
• Operadores morfológicos (erosiones, dilataciones, aperturas, cierres, top-hats, gradientes…)
• Reconstrucciones geodésicas– Reconstrucción por dilatación
– Reconstrucción por erosión
j ( J ) = ( J B) IDilatación geodésica
Reconstrucción S(J) = j ( J ) Hasta estabilidad
j ( J ) = ( J ⊝ B) IErosión geodésica
Reconstrucción S(J) = j ( J ) Hasta estabilidad
TÉCNICAS UTILIZADAS
• Filtros espaciales
– Filtro LoG Laplacian (Gaussian =1.75,with=7 px (Img))
– Filtro ASF
ASF(Img)= nB(…(( (((Img))))...)
– Variación local de nivel gris
V(x)= [1/(N-1)]Wx (Imgimg(x)
TRANSFORMACIÓN WATERSHED
• Segmenta la imagen de manera “demasiado” efectivaIdea: Tomar la imagen como una superficie montañosa en la que el valor de gris de cada píxel denota la altitud en ese punto.
Imagen original
Detección de bordes (gradiente
morfológico:G(img)=(img b)
–(img b))
El gradiente es interpretado como
un relieve
TRANSFORMACIÓN WATERSHED
• Vicent y Soille (1991): Simular un proceso de inundación
- Inundar: empezando por los mínimos de más baja altitud, el agua irá rellenando las cuencas, convirtiéndolas en lagos.
- “Agujerear” mínimos
- En los puntos donde el agua viene de diferentes mínimos se construye una “presa”. (Regiones Watershed asociada a cada mínimo)
Problemas:
- Tiempo de ejecución alto
- No segmenta completamente
TRANSFORMACIÓN WATERSHED BASADA EN CÓDIGOS DE CADENA
• Simular un proceso de lluvia:
-Cuando cae una gota de lluvia, ésta fluye ladera abajo hacia su correspondiente mínimo, desplazándose a traves de
píxeles conexos mínimos, cumpliéndose: camino L =pl pl-1,…, p1 p0 , donde gris(pl)>=…>= gris(pi)>= gris(pi-1) >=…
>= gris(p0)- Todas las rutas Li que terminen en el mismo mínimo (sumidero) formarán la cuenca asociada a él.
TRANSFORMACIÓN WATERSHED BASADA EN CÓDIGOS DE CADENA
• Implementación:– Códigos point-out y
point-in
– Etiquetar point-out y point-in de los píxeles con vecinos más bajos– Propagar etiquetas a través de colas fifo por las mesetas
– Etiquetar regiones (cuencas) siguiendo los point-in desde cada sumidero
- Tiempo de ejecución muy bajo
- Segmenta completamente (en exceso)
4 regiones
SOLVENTAR LA SOBRESEGMENTACIÓN: MEZCLA DE
REGIONES
• Watershed demasiado eficiente
OriginalSobresegment
ación
regiones• Solución: Mezclar regiones hasta obtener
una segmentación aceptable
MEZCLA DE REGIONES• Crear grafo no dirigido RAG (Region Adyacency raph)
12 3
4 56
Mezclar regiones con proceso iterativo siguiendo el valor de desimilitud:
con:
a
e
b
dc dc
e
ab
• Mezclar en cada paso las dos regiones adyacentes con menor valor
Área de la región
Intensidad media de gris en la región
En cada paso:
- Encontrar los dos nodos con menor valor de
-Eliminamos dichos nodos
- Añadimos uno nuevo mezcla de los dos
-Recalculamos área, intensidad media, regiones adyacentes, nuevos
Posibles condiciones de parada:
- Alcanzar un valor umbral de
- Llegar a un número determinado de regiones
MEZCLA DE REGIONES
Imagen sobresegmentada por el Watershed
SEGMENTANDO VASOS SANGUÍNEOS
Preprocesamiento
Reducción de ruido
Evaluación de curvatura
Filtros lineales
Binarización o Watershed
SEGMENTANDO VASOS SANGUÍNEOS: PREPOCESAMIENTO
Invertir
Redimensionar a
512 píxeles de ancho
Extraer canal verde + Invertir
SEGMENTANDO VASOS SANGUÍNEOS: REDUCCIÓN DE RUIDO BLANCO
Máximo de las 12 aperturas con los elementos estructurales:
15º
15x1 píxeles
Maxi=1..12Li(Img)
SEGMENTANDO VASOS SANGUÍNEOS: REDUCCIÓN DE RUIDO BLANCO
Rec.Geodésica
del max. aperturas
Eliminamos ruido blanco, dejando intactos los vasos sanguíneos.
SEGMENTANDO VASOS SANGUÍNEOS: REDUCCIÓN DE RUIDO BLANCO
Sumatorio de top-hats
Reduce ruido blanco y mejora el contraste de las partes lineales.
En este momento, podríamos obtener una primera segmentación de los vasos realizando una binarización, pero continuaremos nuestro algoritmo realizando un estudio de la curvatura.
i=1..12 Imgant - Li(Img)
SEGMENTANDO VASOS SANGUÍNEOS: EVALUACIÓN DE CURVATURA Y
FILTROS LINEALES
Laplacian[Gaussian=1.75,with=7 px (Imgant)]
Gaussiano LaplacianoNueva recons. geodésica por
dilatación sobre el máx. de las 12
aperturas seguida de recons. geodésica por
erosión sobre el mínimo de los doce
cierres
EVALUACIÓN DE CURVATURA FILTROS LINEALES
SEGMENTANDO VASOS SANGUÍNEOS: BINARIZACIÓN O WATERSHED
Binarización Watershed
¿Qué elegir?
Dependerá de la imagen y de la información que nos sea más útil.
SEGMENTANDO EL DISCO ÓPTICO
Preprocesamiento y espacios de color
Localizar el disco
Encontrar los contornos usando
Watershed
SEGMENTANDO EL DISCO ÓPTICO: PREPROCESAMIENTO Y ESPACIOS DE
COLOR
Imagen original a color
redimensionada
Canal L (Luminan
cia en HLS)
Canal R (Red en RGB)
Localización
Detectar contorno
s
Disco zona muy
brillante
Contornos del disco
mejor contrastados
SEGMENTANDO EL DISCO ÓPTICO: LOCALIZAR EL DISCO
Canal L
Usaremos la Variación Local de gris para encontrar el disco.
¿ Es el disco la región con mayor variación de gris?
Si no existen exudaciones => SÍ
Solución:
“Difuminar” variaciones del fondo mediante shade-correction:
s-c=CanalL – ASF(CanalL) + K,
ASF(Img)= (nB)(…((2B)( ((B)((B)(Img))))...)
Shade-corrected
SEGMENTANDO EL DISCO ÓPTICO: LOCALIZAR EL DISCO
Ahora sí: Variación Local
Con N ~ 1/7 del tamaño de la imagen (Tamaño del disco
óptico)
Centroide
V(x)= [1/(N-1)] W(x) (Img() -
img(x))2
SEGMENTANDO EL DISCO ÓPTICO: ENCONTRAR CONTORNOS DEL DISCO
Canal R Cierre Apertura y Reconstrucción
geodésica
Eliminamos vasos
Eliminamos picos blancos y
reconstruimos
SEGMENTANDO EL DISCO ÓPTICO: ENCONTRAR CONTORNOS DEL DISCO
Aplicamos WATERSHED acotándolo con marcas para segmentar el contorno:
marca interna: centroide ; marca externa: circunferencia
Gradiente(Imgant) si x {centroide}U Circunferencia
Valor_max e.o.c.
M(x)=
Watershed [ Recons_erosión Gradiente(Imgant) (M) ]
Watershed sobre el gradiente
Watershed acotado con marcas
SEGMENTANDO EXUDACIONES
Preprocesamiento y espacios de color
Encontrar regiones candidatas
Encontrar los contornos
SEGMENTANDO EXUDACIONES: PREPROCESAMIENTO Y ESPACIO DE
COLOR• Exudaciones: Depósitos intrarrenales que aparecen
como formas brillantes. Están bien contrastadas con respecto al fondo que las rodea.
Redimensionar Canal verde (G, RGB)
Mejor contraste de las exudaciones.
Problemas: - El disco puede confundirse con una exudación
- Las regiones más claras entre vasos sanguíneos (oscuros) producen también un alto contraste local
SEGMENTANDO EXUDACIONES: ENCONTRAR REGIONES CANDIDATAS
Aplicamos cierre para
eliminar vasos
Variación local
N = 5
Binarización Dilatamos y rellenamos agujeros mediante
reconstrucción por erosión
V(x)= [1/(N-1)] W(x) (Img() - img(x))2
SEGMENTANDO EXUDACIONES: ENCONTRAR REGIONES CANDIDATAS
Borramos de la imagen una versión dilatada del disco
óptico
SEGMENTANDO EXUDACIONES: ENCONTRAR REGIONES CANDIDATAS
Canal verde Regiones candidatas a exudaciones
SEGMENTANDO EXUDACIONES: ENCONTRAR LOS CONTORNOS
- Img= Recons_dilatación Canal_verde (Imgant)
- Resultado= Binarización [ Canal_verde – Img ]
-Algoritmo de detección de componentes conexas
Contabilizar exudaciones y calcular sus áreas
Top Related