Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Autores:
José Luis Alba - Universidad de Vigo
Jesús Cid - Universidad Carlos III de Madrid
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 2
Introducción
Esquema general del análisis de imágenes
SEGMENTACIÓN
PREPROCESADO EXTRACCIÓN DE
(MEJORA- CARACTERÍSTICAS
RESTAURACIÓN)
BASE DE
CONOCIMIENTO
RECONOCIMIENTO
imagen ADQUISICIÓN
CLASIFICACIÓN
DE LA IMAGEN
INTERPRETACIÓN
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 3
Elementos del reconocimiento de patrones
Patrones
Tras los procesos de segmentación, extracción de características y descripción, cada objeto
queda representado por una colección (posiblemente ordenada y estructurada) de
descriptores, denominada patrón.
En los problemas de reconocimiento, cada patrón se supone perteneciente a una categoría o
clase, ci
El sistema de reconocimiento debe asignar cada objeto (de interés) a su categoría.
Reconocimiento o clasificación: proceso por el que se asigna una “etiqueta”, que representa
una clase, a un patrón concreto.
Clase: conjunto de entidades que comparten alguna característica que las diferencia de otras.
Clase de rechazo: conjunto de entidades que no se pueden etiquetar como ninguna de las
clases del problema
Extractor de características: subsistema que extrae información relevante para la clasificación
a partir de las entidades cuantificables
Clasificador: subsistema que utiliza un vector de características de la entidad cuantificable y lo
asigna a una de M clases
Evaluación del error de clasificación: “error de clasificación”, “tasa de error empírica”, “tasa
de rechazo empírica”, “conjunto de datos independientes”.
Falso rechazo (falso negativo) y falsa aceptación (faso positivo): para problemas de 2
clases estas definiciones reflejan la importancia de una decisión contra la opuesta. El sistema de
clasificación se puede “sintonizar” para que trabaje ponderando un tipo de error sobre el otro
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 4
Patrones
Para el reconocimiento automático, es importante que
Patrones que describen objetos de una misma clase, presenten
características similares.
Patrones que describen objetos de diferentes clases presenten
características diferenciadas.
Tipos de patrones:
Vectores: x = (x1, x2,…, xn)T
Cadenas
Árboles Patrón
Extracción +
Descripción Reconocedor Clase 1
Patrón
Extracción +
Reconocedor Clase 2
Descripción
Segmentador Patrón
Extracción + Clase 2
Reconocedor
Descripción
Patrón
Extracción + Reconocedor Clase 1
Descripción
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 5
Patrones vectoriales
Ejemplo: Clasificación de tipos de Iris
(flores).
Tres categorías
Patrones bidimensionales
Longitud del pétalo
Anchura del pétalo
Los descriptores utilizados sirven para
discriminar iris setosa de las otras dos,
pero no para discriminar entre iris
virginica e iris versicolor
Iris Setosa Iris Versicolor Iris Virginica
http://www.et.ethz.ch/eTutorials/evim/dateien/u3/irisbilder.htm
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 6
Patrones estructurados
Codifican relaciones (espaciales o de otro tipo)
entre componentes del objeto o descriptores.
Ejemplo:
Reconocimiento de huellas dactilares
Los algoritmos de reconocimiento suelen basarse
en la detección de las minucias (minutiae), las
cadenas (ridges) que forman, y su relación entre
ellas
Ejemplo:
Imagen de satélite
Descripción en árbol
Cada rama codifica
una relación
“compuesto de”
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 8
Reconocimiento mediante
funciones discriminantes
Elementos:
Función discriminante, di(x):
Mide la relevancia de la clase ci
para el patrón x.
Región de decisión, Ri:
El conjunto de todos los puntos
del espacio que el reconocedor
asigna a la clase ci
Frontera de decisión:
Separa regiones de decisión.
Decisor:
Típicamente (aunque no
siempre), seleccionan la clase
de mayor (o menor) valor de la
función discriminante di(x).
Patrón di(x)
Análisis
x Decisor d
discriminante
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 9
Aprendizaje:
Conjunto de entrenamiento:
{x(k),c(k), k=1,…,K}
Conjunto de patrones
etiquetados (cuya clase es
conocida)
Algoritmo de entrenamiento:
Es un conjunto de reglas de
ajuste de los parámetros de las
funciones discriminantes
di(x,wi)
Conjunto de prueba (test)
Conjunto de patrones
etiquetados NO utilizados
durante el entrenamiento.
Sirven para evaluar el Patrón di(x)
rendimiento del clasificador.
Análisis
x Decisor d
Generalización: capacidad para discriminante
clasificar correctamente
patrones no utilizados durante
el entrenamiento.
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 10
Métodos (lista no exahustiva):
Adaptación (Pattern Matching)
Representan cada clase mediante un patrón prototipo.
Clasificador de mínima distancia
Adaptación por correlación
Clasificadores estadísticamente óptimos
Se fundamentan en la Teoría de la Decisión Estadística
Clasificador bayesiano para clases gausianas
Redes neuronales
Se fundamentan en la teoría del aprendizaje estadístico
Perceptrón para dos clases
Perceptrón multicapa
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 11
Reconocimiento mediante funciones discriminantes
Clasificador de mínima distancia
Se caracteriza por las funciones discriminantes d i (x ) = x − m i
2
Dado que d i (x ) = (x − m i ) (x − m i ) = xT x − 2m Ti x + m Ti m i
T
es decir, − 2(m j − m i ) x + m Ti m i − m Tj m j = 0
T
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 13
Ejemplo: Reconocimiento de caracteres.
Clases: Ck:{A,B,…,a,b,…0,1,2,…a,b,…a,b,…a,b,..a,b,…a,b,…}
Clase de rechazo: Cr:{!,”,$,%,&,/,(,),=,?,¿,~,×…}
Extractor de características:
z ≡ (20 × 18) ó (360 × 1) imagen o vector binario
⎧P =
∑
20
z (n, :) (proyección eje x → suma de las filas)
⎪ x n =1
⎨
∑
18
⎪ Py = z (:, n) (proyección eje y → suma de las columnas)
⎩ n =1
⎧S =
∑
20
| z (n, :) − z (n - 1, :) | (suma de saltos eje x)
⎪ x n=2
⎨
∑
18
⎪S y = | z (:, n) − z (n − 1, :) | (suma de saltos eje y )
⎩ n=2
⎧perímetro ⎫
⎪ ⎪
⎨nº de huecos (contornos cerrados)⎬ ≡ v (vector de dimensión 3)
⎪centro de masas ⎪
⎩ ⎭
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 14
El reconocedor de caracteres asigna el vector “v” a la clase
que más se “parece”.
Medidas de similitud:
distancia euclidea
distancia de Hamming,
distancia de Mahalanobis,
correlación cruzada, etc d(v, va)
a
d(v, vb)
b
Mínimo
d(v, vc) Clase Ck=“h”
Æv c
d(v, v9)
9
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 15
Ventajas del clasificador de mínima
distancia
Simplicidad
Facilidad de ajuste
Inconvenientes:
Sólo funciona cuando las clases forman
nubes poco dispersas y bien separadas
Ejemplo: fuente de caracteres E-13B
de la American Bankers Association,
especialmente diseñada para facilitar el
reconocimiento automático.
La signatura refleja la derivada de la
cantidad de negro en dirección vertical,
al mover un scanner de izquierda a
derecha
El muestreo en los puntos de la
cuadrícula proporciona información con
suficiente capacidad discriminante
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 16
Extensiones del clasificador de
mínima distancia:
Permiten obtener fronteras de
clasificación más complejas, y
modelar categorías que no quedan
adecuadamente representadas por su
media.
k-NN (Nearest Neighbour):
Cada clase, Ci, se caracteriza por una
colección de prototipos, mij
Cada patrón, x, se asigna a la clase
mayoritaria de los k prototipos más
próximos
Selección de prototipos:
Cada muestra de entrenamiento, un
prototipo.
Prototipos obtenidos mediante un
algoritmo de agrupamiento (como el
k-means –ver presentación de
Análisis de imágenes-). 1-NN, 2 prototipos por clase
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 17
Reconocimiento mediante funciones discriminantes
Adaptación por correlación
Los métodos de adaptación por correlación
también se basan en la comparación de la
imagen a clasificar con una o varias
imágenes patrón que caracterizan a cada
clase.
Es equivalente al de mínima distancia si los
patrones están normalizados:
d i (x ) = −2mTi x + mTi mi ⇒ d i′(x ) = mTi x
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 18
Coeficiente de correlación:
Proporciona una medida invariante frente a cambios en la
amplitud. ∑∑ ( f (s, t ) − f (s, t ))(w(x + s, y + t ) − w )
c ( x, y ) = s t
1/ 2 1/ 2
⎡ 2⎤ ⎡ 2⎤
⎢∑∑ ( f (s, t ) − f (s, t )) ⎥ ⎢∑∑ (w( x + s, y + t ) − w ) ⎥
⎣ s t ⎦ ⎣ s t ⎦
donde los promedios de w se calculan sobre todo el patrón
(habitualmente más pequeño que la imagen), mientras que los
de f se calculan sobre la región en torno al píxel del tamaño del
patrón.
Sistema
Proceso Extracción de Clasificador
Experimento sensorial de patrones
físico características
Clase generada:Ck Objeto vector de vector de clase asignada: C(x)
o suceso medidas: z características: x
C={C1 , C2 , ...Cn} “medible” P(C(x)=Ck | x=x)
P(Ck)
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 20
Reconocimiento mediante funciones discriminantes
Clasificadores estadísticamente óptimos
Caracterización estadística
La teoría de la decisión parte del supuesto de que los
patrones son realizaciones independientes de un modelo
probabilístico p (c,x)=P (c |x) p (x)
En general, en los problemas de reconocimiento de patrones
tenemos clases mutuamente exclusivas y colectivamente
exhaustivas, es decir: C
∑ P (c ) = 1
k =1
k
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 21
Clasificador de mínimo riesgo
Será aquél basado en las reglas de decisión
C
i = arg min rj (x ) = arg min ∑ Lkj P (ck | x )
j j
k =1
aplicando la regla de Bayes
P(ck ) px|c k (x | ck )
P(ck | x) =
p x ( x)
se obtiene la expresión alternativa
C
i = arg min ∑ Lkj p (x | ck )P (ck )
j
k =1
rj (x ) = ∑ P (ck | x ) − ∑ δ kj P (ck | x ) = 1 − P (c j | x )
C C
Î
k =1 k =1
(que es la probabilidad de error)
Pr(ca)
p(x|ca) x
h
Pr(cb)
Æx Clase ck=“h”
Máximo
p(x|cb) x
p(x|c9) x
Pr(c9)
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 23
Diseño del clasificador Bayesiano
En la mayoría de las aplicaciones prácticas, no se
conocen P(ck), p(x|ck) ni P(ck|x).
En tal caso, deben estimarse a partir de un conjunto
de entrenamiento.
Se presentan dos alternativas:
Estimar P(ck|x), o bien
Estimar P(ck) y p(x|ck)
P(ck): puede suponerse constante (categorías equiprobables)
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 24
Clasificador bayesiano para clases gausianas
Se caracteriza por
⎡ 1 ⎤
exp ⎢ − (x − mi ) Vi−1 (x − m i )⎥
1
p ( x | ci ) =
T
(2π ) N/2 Vi ⎣ 2 ⎦
1/ 2
mi
siendo
m i = E{x | ci } ≈
1
Ni
∑x (k )
d ( k ) = ci
{
Vi = E (x − m i )(x − m i ) | ci ≈
T
} 1
Ni
∑ (x (k )
)(
− mi x(k ) − mi )
T
d ( k ) = ci
p(x|c0)P(c0)L10 p(x|c1)P(c1)L01
x
Umbral de decisión
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 25
Función discriminante: suele utilizarse el logaritmo:
d i (x ) = ln ( p (x | ci )P (ci )) = − ln (2π ) − ln Vi − (x − mi ) Vi−1 (x − mi ) + ln (P (ci ))
N 1 1/ 2 1 T
2 2 2
≡ − ln Vi − (x − mi ) Vi−1 (x − mi ) + ln (P (ci ))
1 1/ 2 1 T
2 2
Æ Es una forma cuadrática para cada clase, con lo que la frontera de
decisión será una cuadrática también.
Ej: P(c1)=0.6; P(c2)=0.4;
V1 =[0.77 0;0 0.77]; V2 =[0.77 0;0 1.26]
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 26
Cuando las matrices de covarianzas de todas las clases coinciden
(Vi=V) , el discriminante se reduce a:
d i (x ) ≡ mTi V −1x − mTi V −1m i + ln (P (ci ))
1
2
y, por tanto, es una función discriminante lineal
Si, finalmente, las matrices son proporcionales a la identidad, resulta
d i (x ) ≡ mTi x − mTi m i
1
2
que coincide con la función discriminante del clasificador de mínima distancia.
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 27
Ejemplo: clasificación de terrenos en imágenes multiespectrales.
Las Imágenes
multiespectrales codifican
información en varias
bandas, sensibles a
diferentes longitudes de
onda del espectro
electromagnético.
Los clasificadores
bayesianos se han
mostrado efectivos para
clasificación de terrenos en
muchos tipos de imágenes
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 28
Inconvenientes del modelo gausiano:
Con frecuencia, no es realista (los datos no tienen una
distribución gausiana)
Ejemplo: Diagrama de dispersión de las bandas 1 (azul) y 5
(infrarrojo cercano) de un conjunto de datos pertenecientes a
una imagen Landsat (7 bandas) de las Ría de Vigo.
* → Roca
o → Frondosas
+ → Eucalipto
● → Terreno Agrícola
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 29
Clasificador bayesiano para mezclas de gausianas
Modelo más general: x ∈Ck se asume con fdp compuesta
por una mezcla de gausianas de medias μkl , covarianza Vkl
y factores de mezcla wl es decir:
p (x | ck ) = ∑l =1 wkl p (x | l , ck ) = ∑l =1 wkl
L L 1
(2π ) p / 2 | Vkl |1 / 2
[
exp − 1
2
( x − μ kl ) T
V
−1
kl ( x − μ kl ) ]
La estimación ML de los parámetros wl , μkl y Σkl para cada
clase se realiza de forma iterativa mediante un algoritmo
conocido como Esperanza-Maximización (EM).
El clasificador MAP responde a la expresión:
C ( x ) = arg max{P (Ck ) p ( x | Ck )}
k
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 30
Ejemplo:
Clasificación de piel/no piel en un espacio de color bi-dimensional (sin
información de luminancia), modelando cada clase como una mezcla de
gausianas y estimando parámetros con el algoritmo EM:
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 31
Reconocimiento mediante funciones discriminantes
Métodos basados en Teoría de la Decisión
Redes Neuronales Artificiales
Background
Perceptrón para dos clases
Algoritmos de entrenamiento
Clases separables linealmente
Clases no separables linealmente
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 32
Motivación:
El análisis previo pone de manifiesto que, para
diseñar un clasificador estadísticamente óptimo a
partir de un conjunto de datos de entrenamiento,
pueden adoptarse tres estrategias:
Estimar P(ck|x)
Estimar P(x|ck) y P(ck)
Determinar una función discriminante que proporcione la
frontera de decisión óptima.
El término “redes neuronales” engloba a un
conjunto de técnicas que proporcionan soluciones
flexibles (adaptables a cada problema) para cada
una de estas estrategias.
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 33
Perceptron para dos clases
w0
Implementa la función discriminante lineal:
n 1
z = d ( x ) = w0 + wi xi = w e x e
∑ T
x1
w1
i =1 w2 z
x2 o
...
wN
xN
Para un conjunto finito de muestras podemos hallar un vector de pesos
apropiado buscando una solución de estas inecuaciones (para dos clases):
+ w e x1 j > 0 , 1 ≤ j ≤ M 1
t
− w e x2 j > 0 , 1 ≤ j ≤ M 2
t
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 34
Algoritmos de entrenamiento
Clases separables linealmente
Regla del Perceptrón:
Perceptrón
α
w (k +1) = w ( k ) +
2
[d (k )
]
− o( k ) x ( k ) (0 < α < 1); con d ( k ) , o ( k ) = {−1;1}
Si hay error, w
(k+1)T x(k) cambia
en el sentido de corregir el
error. x x
t=0
Teorema de entrenamiento del x xx
xx x xx x
perceptrón: x
xx x x
t=1
x t=2
Si las clases son linealmente t=4
separables, la regla del t=10
perceptrón converge a una
solución de cero errores en un
número finito de pasos.
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 35
Clases no separables linealmente x x
x xx
En este caso, la regla del perceptrón no se detiene. xx x
Soluciones: xx
Discriminantes no lineales, pero lineales en los
parámetros: xx
n n
x
z = d ( x ) = w0 + ∑ wi xi + ∑ wi xi2 x xx
i =1 i =1 x
permiten obtener fronteras no lineales que obtengan
soluciones de cero errores Æ perceptrón multicapa
Variantes heurísticas, como el algoritmo del
Bolsillo, que conserva en una memoria aparte
(bolsillo) los pesos que han dado lugar a la secuencia
de pasos de entrenamiento libre de errores más larga
Inconvenientes de la Regla del Perceptrón:
o
×
o
Mala generalización:
× ×
o
×
×
aunque el problema sea intrínsecamente separable
o
×
×
(para el clasificador usado), el algoritmo puede
o
×
colocar la frontera en una posición inadecuada
José Luis Alba - Universidad de Vigo; Jesús Cid - Universidad Carlos III 36
El ADALINE (“ADAptive LInear NEuron”)
Tiene la misma arquitectura del Perceptrón, pero se entrena
mediante un algoritmo de gradiente:
w (ek +1) = w (ek ) − α∇ w J (w (ek ) )