Análise de Imagens (MO445/MC940) Prof. Alexandre Xavier Falcão 3 de setembro de 2008 1 Classificadores não-paramétricos Quanto maior for o número de caracterı́sticas em x = (x1 , x2 , . . . , xn ), maior é o número necessário de amostras para que o histograma normalizado possa ser usado como estimativa de densidade de probabilidade. R Seja p∗ = P (x ∈ R) = R ρ(u)du a probabilidade que uma amostra x esteja em uma certa região R do ℜn . Então, se temos N1 amostras em Z1 , a probabilidade pm que exatamente m dessas amostras caiam em R é dada por uma distribuição binomial N1 pm = (p∗ )m (1 − p∗ )N1 −m (1) m onde p∗ ≈ Nm1 . R Sendo x ∈ R e assumindo ρ(u) constante em R, temos que p∗ ≈ ρ(x) R du = ρ(x)VR , onde VR é o volume de R. Ou seja, ρ(x) ≈ m . N1 VR (2) O valor exato de ρ(x) é obtido no limite, quando N1 → +∞ e VR → 0. Seja mi o número de amostras em R que pertencem à classe wi, i = 1, 2, . . . , c, para um total m = m1 + m2 + . . . + mc de amostras de Z1 em R, e Mi o número de amostras da classe wi em Z1 . Então, ρ(x\wi ) ≈ mi Mi VR (3) Estes resultados são usados como ponto de partida nos classificadores não-paramétricos. Muito embora estes classificadores não assumam formas paramétricas para as densidades de probabilidade, eles possuem no mı́nimo a região R como parâmetro. 1 1.1 Classificador Multinomial A região R é fixa pela divisão do espaço de caracterı́sticas em hipercubos denominados bins. Neste caso o histograma acumula a frequência normalizada de ocorrências de amostras em cada bin, gerando um scatterogram ρ(x) = N1mVR (Figura 1a), para m amostras de Z1 em R. A mesma idéia se aplica quando estimamos ρ(x\wi ) = Mmi ViR , para mi amostras da classe wi em R entre as Mi amostras da classe wi em Z1 . ρ(x ) w 1 w2 imagem x x s 2 2 s t x ρ(s ) t x 1 (a) 1 (b) Figura 1: (a) Scatterogram para duas caracterı́sticas e duas classes linearmente separáveis. (b) Mapeamento de densidade do domı́nio de caracterı́sticas para o domı́nio da imagem. Se estimarmos P (wi) = Mi , N1 então a probabilidade P (wi\x) será dada por P (wi\x) = mi . m (4) A classe com maior probabilidade a posteriori segundo esta equação é o critério de decisão do classificador multinomial ou método do paralelepı́pedo, muito usado em sensoriamento remoto. Cada bin pode ser pré-rotulado a partir de Z1 e amostras de Z2 são classificadas apenas encontrando o bin em que elas caem (operação de look-up table). No entanto, o número de bins cresce exponencialmente com a dimensão do vetor de caracterı́sticas, gerando um problema de armazenamento, e a estimativa perde exatidão com a divisão do espaço em regiões fixas. 1.2 Classificador de Parzen A estimativa por janela de Parzen é mais exata, no sentido que estima a densidade de probabilidade localmente para qualquer ponto do ℜn . Para facilitar, vamos adotar ~v (s) = x ∈ ℜn , ρ(x) = ρ(s), e ρ(x\wi ) = ρ(s\wi ), mapeando em s as densidades de probabilidade calculadas no espaço ℜn (Figura 1b). Seja t ∈ Z1 uma amostra de treinamento e considere uma função kernel (janela de Parzen) aplicada a qualquer ponto ~v (s) ∈ ℜn , a qual tem pico na origem, é não negativa, e possui integral igual a 1 sobre ℜn . = 1, se ~v (t) estiver em um hipercubo de lado h > 0 em O modelo mais simples é K d(s,t) h torno de ~v (s) (região R), onde d(s, t) = k~v(t) − ~v(s)k (ou qualquer outra função de distância), 2 eK d(s,t) h = 0 no caso contrário. O volume VR = hn e as densidades de probabilidade ficam: m d(s, t) 1 X ρ(s) = K , = N1 VR N1 hn ∀t∈Z h 1 X 1 d(s, t) mi . = K ρ(s\wi ) = Mi VR Mi hn h (5) (6) ∀t∈Z1 |λ(t)=i Se adotarmos P (wi ) = discriminante. Mi , N1 a função gi (s) pode ser usada no lugar de P (wi\s) como função 1 gi (s) = m X ∀t∈Z1 |λ(t)=i K d(s, t) h (7) e o classificador de Parzen escolhe para s a classe wi com maior valor de gi (s). Um problema neste classificador é o cálculo de h, que é real e sensı́vel a diferentes concentrações de amostras por classe. Uma forma de contornar o problema é considerar uma relação de adjacência Ak (s) definida pelas k amostras t ∈ Z1 mais próximas de s no espaço de caracterı́sticas ℜn . Podemos adotar K como uma função Gaussiana (mais comum) com desvio padrão σ dado por: d(s, t) σ = max . (8) ∀s,t∈Z1 |t∈Ak (s) 3 Assim, todos os k-vizinhos serão levados em conta no cálculo de gi (s) para qualquer s ∈ Z1 . 2 X 1 d (s, t) gi (s) = exp − . (9) k 2σ 2 ∀t∈Z1 |λ(t)=i O problema é então reduzido ao cálculo de um inteiro k ∈ [1, kmax], o qual pode ser obtido por otimização. Podemos dividir Z1 em Z11 e Z12 , e encontrar o valor de k que minimiza os erros de classificação em Z12 , usando as amostras de Z11 para estimar gi (s). Conforme mencionado na primeira aula, este processo pode ser repetido diversas vezes, trocando amostras de Z11 por erros de classificação em Z12 , e recalculando k. A configuração (Z11 , k) com menor erro em Z12 é escolhida para teste em Z2 . 3