Upload
phungliem
View
237
Download
3
Embed Size (px)
Citation preview
Procesamiento de imágenes mediante Reconocimiento de
Patrones
Diego Sebastián Comas
Facultad de Ingeniería, Universidad Nacional de Mar del Plata
Introducción al Procesamiento Digital de Imágenes - 2017
SEGMENTACIÓN DE IMÁGENES - PROCESAMIENTO DIGITAL DE IMÁGENES
Enfoques del PDI
SEGMENTACIÓN DE IMÁGENES - PROCESAMIENTO DIGITAL DE IMÁGENES
Etapas del PDI
Separar una imagen en sus diferentes componentes estructurales.
SEGMENTACIÓN DE IMAGENESSEGMENTACIÓN DE IMÁGENES - PROCESAMIENTO DIGITAL DE IMÁGENES
❖ Divide una imagen en sus diferentes componentes estructurales considerando:✓ Sus características de textura;✓ Su intensidad;✓ Su posición espacial;✓ Su color;✓ Su granularidad, etc.
❖ Permite extraer contornos, texturas y regiones.
❖ Facilita la representación e interpretación de la información contenida.
Tipos de segmentaciónSEGMENTACIÓN DE IMÁGENES - SEGMENTACIÓN DE IMAGENES
BASADA EN PROCESAMIENTO DE IMÁGENESSEGMENTACIÓN DE IMÁGENES
SEGMENTACIÓN BASADA EN PROCESAMIENTO DE IMÁGENES
Detección de discontinuidades
Análisis de similaridad
✓Puntos aislados;✓Bordes;✓Líneas o contornos.
se analizan los píxeles que tengan alguna propiedad en
común
se detectan variaciones de intensidad de un píxel en
relación a los píxeles próximos
Vista frontal Vista rotada
Excesivo brillo Oclusión
Reconocimiento de rostrosRECONOCIMIENTO DE PATRONES
Reconocimiento de rostros – FeaturesRECONOCIMIENTO DE PATRONES
… simples de reconocer por humanosy complejas de reconocer computacionalmente.
Rostros, texturas
… factibles de reconocerse computacionalmentey complejas para procesamiento humano.
Imágenes satelitales, Ecografías
IMÁGENES O REGIONES…
Patrones en imágenesRECONOCIMIENTO DE PATRONES
Constancia de intensidad
Proximidad(objetos pequeños se agrupan)
Similitud de forma Similitud de textura Interior/exterior de un contorno cerrado
Leyes de agrupamiento (Gestalt)RECONOCIMIENTO DE PATRONES
Forma
Patrones visuales sencillos para humanosRECONOCIMIENTO DE PATRONES
Textura
Curvatura y caminosIntensidad
2 31
3 22
4 13
54
, ,
N
N
N
N
t tt
t ttX
t tt
t tt
Datos Temporales
Datos Espaciales
1
2
3
4
64
0
0
1
0
0
p
p
pX
p
p
Algunos tipos de datosRECONOCIMIENTO DE PATRONES
Patrones en imágenesRECONOCIMIENTO DE PATRONES
#
longitud
ancho
X brillo
aletas
Detección de objetosCaracterísticas Visuales y Geométricas
Características de cada región de la imagen
Gris promedio
Contraste
X Máximo
Potencia espectral
objeto
Procedimiento general de ReconocimientoRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
CLASIFI-CACIÓN
SENSADO Y MEDICIÓN DE CARACTERÍSTICAS
CLASE 1
CLASE 2
OBJETOS A CLASIFICAR
Dato – Feature – DataSetRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
Altura [mm]superposición
MANZANAS PERAS
Brillo [%]
MANZANASPERAS
Altura [mm]
Brillo [%]UN dato
Problemas de diseñoRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
CÁLCULO O MEDICIÓN de las características.
Pre-procesamiento o SELECCIÓN DE CARACTERÍSTICAS.
Identificación y CLASIFICACIÓN o AGRUPAMIENTO.
APRENDIZAJE SUPERVISADO APRENDIZAJE NO SUPERVISADO
Modelo de ClasificaciónRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
CLASIFICADOR
Datos Clasede cada dato
Datos: Características de pacientes que han sido sometidos a la cirugía X con éxito y pacientes a los que no les ha sido recomendada la cirugía X.
Clase: Intervenidos con la cirugía X con éxito o cirugía no recomendada.
Objetivo: recomendar o no la cirugía X a nuevos pacientes.
Modelo de Agrupamiento (Clustering)RECONOCIMIENTO DE PATRONES - FUNDAMENTOS
GRUPOS DE DATOS
Datos Datos: Características de pacientes usuarios de la prestataria de medicina prepaga X.
Objetivo: determinar diferentes perfiles de pacientes para ofrecer servicios diferentes adecuados a cada uno.
ResumenRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
❖ Técnicas supervisadas: Los parámetros internos delalgoritmo son ajustados de acuerdo a un conjunto dedatos previamente clasificado.
❖ Técnicas no supervisadas: El problema consiste enagrupar un conjunto de datos en grupos significativos, sinutilizar información previa sobre el agrupamientoesperado.
Objetivo: agrupar o clasificar un conjunto de datos mediante un mecanismo de decisión.
Etapas (Jain et al., 1999)RECONOCIMIENTO DE PATRONES
Dato – Feature – DataSetRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
X1 X2 X3 … XD CLASE
1 0.5 4.25 … 6.2 A
24 0.2 2.65 … 3.9 A
63 0.1 2.22 … 2.1 B
2 0.4 8.21 … 2.9 A
32 0.8 1.59 … 9.5 B
3 0.7 2.58 … 0.4 C
55 0.7 4.65 … 0.9 C
24 0.5 6.99 … 4.5 A
3 0.6 0.45 … 2.8 A
… … … … … …
43 0.2 8.45 … 3.8 B
n datos
d características – features
Data Mining Predictiva: Aprendizaje SupervisadoRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
MODELODE
APROXIMACIÓN
YX1
X1 X2 X3 Y
1 0.5 4.25 5.65
24 0.2 2.65 2.36
63 0.1 2.22 2.98
2 0.4 8.21 9.25
32 0.8 1.59 6.5
43 0.54 3.65 ¿?
X2
X3
Datos:“entrenan” al modelo
Consulta:Generalización del modelo
Características (features) Target
Data Mining Predictiva: ClasificaciónRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
MODELODE
CLASIFICACIÓN
CLASEX1
X1 X2 X3 CLASE
1 0.5 4.25 A
24 0.2 2.65 A
63 0.1 2.22 B
2 0.4 8.21 A
32 0.8 1.59 B
43 0.54 3.65 ¿?
X2
X3
Datos:“entrenan” al modelo
Consulta:Generalización del modelo
Características (features)
Data Mining Predictiva: ClusteringRECONOCIMIENTO DE PATRONES - FUNDAMENTOS
Modelo: descubre“centros de cluster”
x1
Datos: “entrenan” al modelo
Consulta:Nuevo dato que no estabaen los datos del algoritmo:Se asocia a un cluster.
MODELOCentros de Cluster GRUPOX
x2
?
Proceso genérico de segmentaciónSEGMENTACIÓN MEDIANTE RECONOCIMIENTO DE PATRONES
PÍXELES OREGIONES • Texturas
• Intensidades• Colores• Multi-resolución
RECONOCIMIENTO DE PATRONES
SEGMENTACIÓN
IMAGEN
Extracción decaracterísticas
DATOS
Vectores de características
Segmentación: Separar una imagen en sus diferentes componentes estructurales.
Pasando de una imagen a un datasetSEGMENTACIÓN MEDIANTE RECONOCIMIENTO DE PATRONES
Recorrido de la imagen para calcular características por regiones.
Barrido por regiones (ventanas) superpuestas o adyacentes.
De cada ventana calculamos las estadísticas de sus niveles de gris:
✓ Valores del histograma;
✓ Valor medio y desviación estándar;
✓ % de píxeles con intensidades superior a G1;
✓ % de píxeles con intensidades por debajo de G2.
Pasando de una imagen a un datasetSEGMENTACIÓN MEDIANTE RECONOCIMIENTO DE PATRONES
✓ Matriz de datos a ingresar en el algoritmo:
[f11 f12 f13 … f1D
f11 f12 f13 … f1D
f11 f12 f13 … f1D
f11 f12 f13 … f1D
… … … … …
fN1 fN2 fN3 … fND]
Concepto de TexturaEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA
Las imágenes de objetos reales a menudo exhiben regiones de intensidad no uniforme.
Concepto de TexturaEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA
Conjuntos de píxeles que se repiten
Textura: “Disposición de puntos siguiendo undeterminado patrón en forma regular yrepetitiva a lo largo de los píxeles queconforman el objeto”.
Técnicas de análisis de texturas
Objetivo: Obtener números (características) que describan de alguna manera la presencia de ciertas agrupaciones repetitivas de píxeles en la imagen.
MetodologíasEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA
MÉTODOS DE MORFOLOGÍA MATEMÁTICAGranulometría
Caracterización
de Texturas
MÉTODOS BASADOS EN MODELOSCampos aleatorios Markovianos, Fractales
MÉTODOS ESTADÍSTICOSMatrices de Co-ocurrencia
MÉTODOS DEPROCESAMIENTO DE SEÑALES
Momentos, Transformada de Fourier,Modelos de Gabor, Wavelets
Matriz de coocurrenciaEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA - METODOLOGÍAS
Frecuencias relativas Pij en la que dos píxeles vecinos separados por una distancia d en una dirección determinada están
presentes en la imagen, uno con nivel de gris i y el otro con nivel de gris j.
Imagen con3 niveles de gris
Matriz de Co-ocurrenciade [3x3]
Matriz de coocurrenciaEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA - METODOLOGÍAS
cnth
cntv
cntd
engh
engv
engd
eph
epv
epd
maxh
maxv
maxd
med
logij ij
ij
P P
2( )ij
ij
i j P
max ijij
P
Contraste
Energía
Entropía
Probabilidad Máxima
Valor medio de Intensidad de Gris
2( )ij
ij
P
V =
Granulometría MorfológicaEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA - METODOLOGÍAS
❖ Utiliza el Criterio de Tamaños con aperturas sucesivas.
❖ Elemento estructurante (EE) plano.
❖ Método:1. Apertura morfológica con el EE;2. Obtener el volumen (suma de los niveles de gris) de la imagen obtenida en el punto 1., para una vecindad definida;3. Dilatar el EE consigo mismo y volver al paso 1.
El volumen disminuirá en cada iteración; por la eliminación que hace la apertura de estructuras cada vez más grandes de la imagen.
Distribución Granulométrica de Tamaños
Momentos estadísticos como descriptores de la textura
Transformada de FourierEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA - METODOLOGÍAS
Transformadade Fourier
VECTOR DE CARACTERÍSTICASFRECUENCIALES
Imagen Original
✓ Propiedades como rugosidad o suavidad de una textura son proporcionales al períodoespacial.
✓ Textura gruesa (suave): energía concentrada en las bajas frecuencias.
✓ Textura fina (rugosa): energía concentrada en las altas frecuencias.
✓ Imagen espacialmente periódica: su espectro tiende a presentar picos en determinadaszonas.
✓ Concentración de valores en una cierta dirección: indican direccionalidad de la textura.
GUIEXTRACCIÓN DE CARACTERÍSTICAS DE TEXTURA
Selección de imagen o imágenes a procesar
Selección de técnicas
y sus parámetros
Visualización de imágenes
cargadas
Descubrimiento de conocimiento en bases de datosRECONOCIMIENTO DE PATRONES EN IMÁGENES
DATOS
Patrones/Modelos
CONOCIMIENTO
Selección
Datos Objetivo
Preprocesamiento
Transformación
Datos Transformados
RECONOCIMIENTO DE PATRONES
Interpretación
Datos Procesados
“Proceso no trivial de identificar patrones válidos, novedosos, potencialmente útiles y en última instancia comprensibles a partir de los datos.” (Fayyad et al. 1996)
Aplicación: Imágenes de resonancia magnéticaRECONOCIMIENTO DE PATRONES EN IMÁGENES
SECUENCIAS DEEXCITACIÓN DE RF
IMÁGENES PESADAS EN T1, T2, PD
ÁTOMOS DE HIDRÓGENOEN EQUILIBRIO
DENTRO DE UN CAMPO MAGNÉTICO
Aplicación: Imágenes de resonancia magnéticaRECONOCIMIENTO DE PATRONES EN IMÁGENES
VECTOR DE CARACTERÍSTICAS
92 45 112
Modelos de colorRECONOCIMIENTO DE PATRONES EN IMÁGENES
VECTOR DE CARACTERÍSTICAS
112 21 225
RED GREEN BLUE
Algoritmo K-meansRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLUSTERING
Objetivo: asignar cada punto en el espaciode las características a un cluster.
1. Se asignan inicialmente k-centros de cluster.Se debe conocer la cantidad de clusters a priori.
2. Cada punto es asignado al cluster más cercano(debe definirse una función distancia).
3. Se recalcula un nuevo centro de clustertomando los valores medios de los puntos asignados al mismo.
4. Se analiza el criterio de detención,si no es válido se itera desde el paso 2.
Algoritmo K-meansRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLUSTERING
En este algoritmo,los clusters:
❖ Abarcan todo el Universo❖ No se solapan
Distribuciónde Datos
Centros Iniciales Iteración 1Centros recalculados
Iteración 2FINAL
Algoritmo K-means - EjemplosRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLUSTERING
K=4
K=2
K=3
Otros algoritmos de clusteringRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLUSTERING
Los clusters pueden solaparse.
Fuzzy C Means
La cantidad de clusters puede ser determinada por el propio algoritmo, según parámetros.
Clustering substractivo
Los clusters pueden determinarse por agrupamiento espontáneo entre los patrones.
Mapas auto-organizados
Funciones discriminantes linealesRECONOCIMIENTO DE PATRONES - PARADIGMAS - MODELOS
g24
H4
H2
H1H3
g23
g13
g12
g14
g34
R2
• Hay n clases y cada dos clases hay una función de decisión distinta. [Hay n (n-1) / 2 funciones]
Cada clase es separable de cada una de las otras por una función
discriminante distinta.
Múltiples clases – Caso de ejemplo: Una función discriminante cada dos clases.
Funciones discriminantes generalizadasRECONOCIMIENTO DE PATRONES - PARADIGMAS - MODELOS
Las fronteras son cuádricas en vez de rectas.
Separación entre clases más complejas.
Múltiples clases – Ejemplo: funciones discriminantes cuádraticas.
Algoritmo K-vecinos más próximos (KNN)RECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Objetivo: asignar cada dato a la clase que más ocurre dentro de los Kdatos previamente etiquetados más próximos.
1. Se definen datos prototipo, previamente etiquetados.
2. Para cada dato a clasificar se obtienen los Kvecinos más próximos dentro del conjunto de prototipos.
3. La clase del dato es asignada a la que más ocurra entre los vecinos más próximos obtenidos en el paso 2).
X1 X2 X3 … XD CLASE
1 0.5 4.25 … 6.2 A
24 0.2 2.65 … 3.9 A
63 0.1 2.22 … 2.1 B
2 0.4 8.21 … 2.9 A
32 0.8 1.59 … 9.5 B
3 0.7 2.58 … 0.4 C
55 0.7 4.65 … 0.9 C
24 0.5 6.99 … 4.5 A
3 0.6 0.45 … 2.8 A
… … … … … …
43 0.2 8.45 … 3.8 B
Ejemplos previamente etiquetados
Redes neuronalesRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Modelan funciones complejas a partir de datos.
Aplicaciones relevantes:
• Clasificación / Agrupamiento de datos.
• Predicción de series temporales.
• Aproximación de funciones.
Warren McCulloch(1943)
Son capaces de generalizar lo aprendido durante la etapa de entrenamiento.
Walter Pitts(1943)
Redes neuronales supervisadas - Perceptrón simpleRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Una sola neurona Separa con hiperplanos
x1Clase C2
Clase C1
x2
RECTA DE DISCRIMINACIÓN DE LAS CLASES
5.5
( ) 4
1
W final
1 1 2 2
1 2
0
5.5 4 1 0
w x w x b
x x
Redes neuronales supervisadas – Redes MulticapaRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Es un arreglo de procesadores elementales,que se simulan ser neuronas.
Para que reconozcan patrones, es necesario entrenarlas con datos conocidos.
SISTEMA SUPERVISADO
Redes neuronales supervisadas – Redes MulticapaRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Varias capas de neuronas.
Superficie de separación más compleja.
Redes neuronales supervisadas – Redes MulticapaRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Redes neuronales supervisadasRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Vector de características Capa de salida:
1 neurona por clase
Red feed-forwardRed probabilística
Clasificación con Redes NeuronalesRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
CARACTERÍSTICAS DE TEXTURAS
Ejemplos de cada tipo de tejido(seleccionados por un experto)
Conjunto de datosde entrenamiento
ENTRENAMIENTO de una red neuronal (supervisada)
Objetivo: reconocer tres tipos de tejidos.
Clasificación con Redes NeuronalesRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Recorrido de la imagen con las mismas características.
CONSULTA al sistema entrenado previamente.
Construcción de una nueva imagen para la clasificación.
Según lo aprendido el sistema debe responder:¿Esta región corresponde al tejido 1, 2 o 3?
Clasificación con Redes NeuronalesRECONOCIMIENTO DE PATRONES - TÉCNICAS DE CLASIFICACIÓN
Imagen original Detección obtenida
Segmentación de resonancias magnéticas de cerebroRECONOCIMIENTO DE PATRONES EN IMÁGENES
Líquido Cefalorraquídeo
(LCR)
MateriaGris (MG)
MateriaBlanca (MB)
, 1, 2grisPD grisT grisTx
Segmentación de resonancias magnéticas de cerebroRECONOCIMIENTO DE PATRONES EN IMÁGENES
CO
RTE
30
CO
RTE
50
CO
RTE
70
GOLD STANDARD OBTENIDO
Segmentación de resonancias magnéticas de cerebroRECONOCIMIENTO DE PATRONES EN IMÁGENES
LÍQUIDOCEFALORRAQUÍDEO (LCR)
MATERIA GRIS (MG)
MATERIABLANCA (MB)
Estimar la performance de la segmentación permite cuantificar el error del algoritmo e identificar particularidades de
determinadas clases identificadas.
Medidas de similitud
Métodos de evaluación de modelos
EVALUACIÓN DE LA SEGMENTACIÓN RECONOCIMIENTO DE PATRONES EN IMÁGENES
X Y
X Y
Segmentaciónde Referencia
Segmentaciónobtenida
Coincidencias
• Se partiendo de imágenes binarias de la segmentación obtenida y la segmentaciónde referencia.
• Las cantidades de píxeles que contienen cada una se utilizan en las diferentesmedidas de similitud.
CONSIDERACIONESRECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
MATRIZ DE CONFUSIÓN
Matriz de confusión.Se indican cuántos píxeles de cada clase han sido reconocidos como correspondientesa cada una de ellas. Se espera que todos los píxeles se encuentren en la diagonalprincipal.
… que han sido clasificados como…
…tejido A …tejido B …tejido C
Píxelescorrespondientes
al…
…tejido A 31540 254 23
…tejido B 320 19804 376
…tejido C 34 30 52300
RECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
COEFICIENTE DE TANIMOTO
# , 1,...,#
i i
i
i i
A BTC i k
A B
Coeficientesde Tanimoto
0.01
0.29
0.53
1.00
ImagenGold Standard
Imagen Resultado i iA B
i iA B
RECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
COEFICIENTE DE EXACTITUD
# , 1,...,
#
i i
i
i
A BACC i k
B
ImagenGold Standard
Imagen Resultado
1
1
#
100%
#
k
i i
i
k
j
j
A B
Accuracy
B
1
160,66
24ACC 2
401,00
40ACC
16 40 56100% 100% 87,5%
24 40 64Accuracy
RECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
ÍNDICE DUNN
❖ Proporciona una medida para evaluar la performance de un algoritmo de clustering.
❖ No requiere datos etiquetados.
1,..,1,..., ,
1,..,#1,...,
min ,
max ,i i
i kh ih k h i
iA j j Ai k
g Z Z
Dunn
g X Z
: dg es una función distancia
1,..,i i k
Z
es el conjunto de centroides finales del algoritmo de clustering
iA j es el elemento del conjunto jiA
RECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
ERROR de ENTRENAMIENTO (RESUSTITUCIÓN)
PRIMERA APROXIMACIÓN: utilizar la evidencia completa (todos los datos) para el aprendizaje y usar la
misma evidencia para calcular el error.
DATOS ORIGINALES
DISEÑO DEL
MODELO
EVALUACIÓN DEL
MODELO
ERROR
DE ENTRENAMIENTO
RECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
No permite estimar el error de generalización de un clasificador
No debe utilizarse para estimar performance de clasificadores!!!
VALIDACIÓN CRUZADA – HOLD-OUT
PRIMERA MEJORA: separar el conjunto de datos en dos subconjuntos.
DATOS
ORIGINALES
DISEÑO DEL
MODELO
EVALUACIÓN DEL
MODELO
ERROR
DE TEST
DATOS DE
ENTRENAMIENTO
DATOS DE
TEST
¿qué porcentaje de datos utilizar en cada subconjunto de
esta partición? …
PROBLEMA: EL VALOR DE ERROR OBTENIDO DEPENDE FUERTEMENTE DE LA PARTICIÓN.
RECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
VALIDACIÓN CRUZADA – K-FOLDRECONOCIMIENTO DE PATRONES EN IMÁGENES - EVALUACIÓN DE LA SEGMENTACIÓN
VALIDACIÓN CRUZADA – LEAVE-ONE-OUTEVALUACIÓN DE MODELOS - VALIDACIÓN CRUZADA - ESTIMACIÓN DEL ERROR
Es como K-Fold con K=N.
Diego Sebastián [email protected]