Академический Документы
Профессиональный Документы
Культура Документы
Organizao do Curso
Aulas 23 a 27 de Julho
Seg. Introduo a Anlise de Imagens
Ter . Segmentao e Morfologia Matemtica
Site Web:
Notas de Aula: http://mesonpi.cat.cbpf.br/e2012
Organizao do Curso
Site Web:
Notas de Aula: http://mesonpi.cat.cbpf.br/e2012
Sumrio Aula 03
I - Introduo ao Reconhecimento de Padres
1.
2.
Vetor de caractersticas
3.
Exemplo
4.
Projeto do classificador
5.
Abordagens tpicas
6.
Exemplos
Definio
2.
3.
4.
Algoritmo Backpropagation
5.
Exerccios
5
Referncias Bibliogrficas
Pattern Classification (2nd Edition)
Richard O. Duda, Peter E. Hart,
David G. Stork
PARTE I
Introduo ao
Reconhecimento de Padres
Pr-processamento
Segmentao
Extrao de Atributos
Reconhecimento e Interpretao
8
O que um Padro?
Entidade qual se pode dar um nome
Ex. Objeto, Rosto Humano, Sinal de voz
Um padro avaliado de forma fsica e subjetiva
Caracteres em Imagens
Peas em Imagens
ABCD
ABCD
ABCD
9
Classe 1
Classe 3
Caracterstica 1
10
Cor
Forma
12
Caracterstica 2
Caracterstica 2
Caracterstica 1
bom
Caracterstica 1
ruim
13
Caracterstica 2
Caracterstica 1
Caracterstica 1
Linearmente separvel
Caracterstica 2
No-linearmente separvel
Caracterstica 2
Caracterstica 1
Caractersticas altamente
correlacionadas
Caracterstica 1
Multi-modal
14
Caractersticas em Imagens
15
Motivao
Para que queremos um sistema de reconhecimento de padres?
Para de forma iterativa, restringir nossa ateno
a um conjunto de casos selecionado pelo
sistema.
16
17
Fonte:
INPE, 2012
18
Aplicaes cientficas
Interpretao de ondas ssmicas
Anlise de imagens de microscpios
Anlise de imagens de telescpios (Hubble)
19
Exemplo Simples
Reconhecimento das letras L, P, O, E, Q
Determinar um conjunto suficiente de caractersticas
Desenhar um classificador de estrutura em rvore
start
Caractersticas
Caracteres
Linhas
retas
verticais
(V)
Linhas
retas
horizontais
(H)
Linhas
retas
obliquas
(O)
Linhas
curvas
(C)
sim
no
V>0
sim
no
no
sim
C>0
O>0
Q
sim
H>1
O
no
20
Exemplo Prtico
Classificar os peixes em uma linha automatizada de um
transportador de acordo com a espcie a que pertence:
Salmo ou Corvina.
21
Anlise do Problema
Montar um sistema de aquisio de imagens digitais para extrair algumas
caractersticas:
Luminncia
Eixos das Elipses Largura e Comprimento
Formato da cauda
rea e permetro do Objeto
Etc..
Qtde.
Qtde.
salmo
corvina
comprimento
corvina
salmo
Escala intensidade
Combinando as caractersticas
Comprimento
Fronteira de
deciso
X=[x1, x2];
x1 Luminncia
x2 Comprimento
corvina
salmo
luminancia
corvina
Fronteira de
deciso
salmo
luminancia
Comprimento
corvina
Fronteira de
deciso
salmo
luminancia
25
Deciso tima?
Comprimento
corvina
Fronteira de
deciso
salmo
luminancia
Generalizao
O objetivo principal do classificador classificar corretamente novas
entradas poder de generalizao
Caracterstica 2
Caracterstica 1
Caracterstica 1
Caracterstica 2
Caracterstica 1
27
Seleo ou Extrao de
Caractersticas
Seleo: processo de escolha de um sub-conjunto das
caractersticas originais
x2
y1
Y2
x1
X1
Seleo de Caractersticas
Objetivo: Encontrar o melhor subconjunto de dimenso d das D
caractersticas existentes
A melhor soluo s pode ser encontrada atravs de uma procura exaustiva
em todos os conjuntos possveis de dimenso d
Pode ser computacionalmente impraticvel
Extrao de Caractersticas
Objetivo: Aplicar algum tipo de transformao sobre o conjunto
original de caractersticas, de forma a que as classes estejam mais
separadas no novo espao.
Vantagem adicional: O problema de seleo de caractersticas no novo
espao mais simples
31
Projeto do Classificador
Projetar um classificador equivalente a escolher as regies de
deciso, que por sua vez podem ser associadas a funes
discriminantes.
32
Funes Discriminantes
A classificao pode ser representada por um conjunto de funes de
discriminao
As funes discriminantes so uma sequncia de funes g1(.); ... ; gc(.)
associadas s regies de deciso S1;...;Sc, .
gi ( x) g j ( x), x Si , j i
w wk : k arg maxgi ( x), i 1;...; C
O conhecimento das funes discriminantes dispensa a numerao das
classes para cada ponto do espao de caractersticas.
No existe uma nica sequncia de funes discriminantes para um
dado classificador.
33
Avaliao
A qualidade de um classificador pode ser representada sinteticamente na
forma de uma matriz quadrada P, designada por matriz de confuso, e pela
probabilidade total do erro do classificador.
Matriz de Confuso
A matriz de confuso P uma matriz quadrada de CxC, em
que C o nmero de classes
p11 ...
P .
pC1 ...
pij p j | i
p1C
.
pCC
p ij 0; i, j 1,..., C
ij
Matriz de Confuso
O valor da matriz de confuso geralmente estimado experimentalmente
Necessrio dispor de um conjunto de observaes previamente classificadas,
testar esse conjunto no classificador, e comparar os resultados do
classificador com os valores j conhecidos.
Cada elemento pij da matriz de confuso pode ser estimado por
pij
nij
ni
35
Projeto de um Classificador
Coleo de dados
Escolha do modelo
Treino ou aprendizagem
Avaliao
Complexidade computacional
36
Projeto de um classificador
Coleo de dados. Conjunto de treinamento. Conjunto grande e representativo
de exemplos para treinar e testar o sistema.
Escolha das caractersticas. Propriedades estatsticas. Dependem do
problema. Simples a extrair, invariantes a transformaes e insensvel ao
rudo.
Escolha do modelo. Experimentar vrios modelos se o desempenho no for
satisfatrio.
37
Aprendizagem
Aprendizagem supervisionada
Conjunto de treino rotulado
Conhece-se a classificao correta de cada um dos padres
Forma de aprendizagem, pois apresentado ao classificador a sua
entrada(padro) e a sua sada (classe)
Aprendizagem no supervisionada
No se conhece a classificao dos padres de treino
O sistema forma clusters ou agrupamento naturais dos padres de
entrada
38
Abordagens Tpicas
Estatstica: assume um modelo de dados estatstico.
Supervisionado ou no.
Ex. Classificador de Bayes, k-means.
39
EXEMPLO 1
Sistema de Reconhecimento
de Padres
Anlise de Imagens e Viso Computacional
1. O Problema
Observao de microorganismos
Observao - 2 Classes distintas
Procura-se:
1. nmero de bactrias e
de clulas observadas
2. Orientao das
bactrias e clulas
3. Tamanho
Problemas:
1. Imagem com
iluminao irregular
2. Rudos diversos
Imagem til
Bactria
Classe 1
Clula
Classe 2
3. Identificacao dos
objetos e anlises
idependentes
Imagem analisada
Exemplo
Ocorrncias
Bactria
Classe 1
18,2%
Clula
Classe 2
18
81,8%
3. Orientao e Tamanho
Bactria
Classe 1
Clula
Classe 2
Bactria
Classe 1
Clula
Classe 2
0.5
a
0.85
1.0
1.
2.
a o ngulo de orientao
1.5
EXEMPLO 2
APLICAO DE TCNICAS DE
PROCESSAMENTO DIGITAL DE IMAGENS
PARA A DETECO DE MARFES NO JET
Mestrado em Instrumentao
APLICAO DE TCNICAS DE
PROCESSAMENTO DIGITAL DE IMAGENS PARA
A DETECO DE MARFES NO JET
Tpicos
1.
2.
3.
4.
5.
6.
Motivao
Fundamentos Tericos
a) Extrao de Atributos
b) Classificao e Reconhecimento
Fuso Nuclear
Processamento de Imagens para o JET
Desenvolvimento e Caracterizao
a) Em Matlab
b) Em C/C++
Concluses e Perspectivas
1 Motivao
2 Fundamentos Tericos
Processos de baixo nvel: envolvem
operaes
primitivas
de
pr
processamento .
Processos de mdio nvel: estes
processos envolvem tarefas de
segmentao de objetos.
Processos de alto nvel: estes
processos identificam e atribuem um
significado
aos
objetos
reconhecidos.
2 Fundamentos Tericos
Extrao de Atributos
2 Fundamentos Tericos
Momentos de Uma Imagem
2 Fundamentos Tericos
Momentos de Uma Imagem
2 Fundamentos Tericos
Momentos de Uma Imagem
2 Fundamentos Tericos
Extrao de Atributos por Momentos Hu
Descrever
formas em imagens
binrias.
Desenvolvimento de aplicaes para
reconhecimento de padres .
Reconhecimento automtico de
caracteres e de faces,
Na
rea
mdica
temos
aplicaes no reconhecimento
de anomalias fisiolgicas em
imagens
tomogrficas
ou
radiogrficas.
Aplicao
em imagens do
JET/EFDA
2 Fundamentos Tericos
Classificao e Reconhecimento
2 Fundamentos Tericos
Classificao e Reconhecimento
Support Vector Machines
Tcnica
de
aprendizado
supervisionado
amplamente
usada em reconhecimento de
padres.
O algoritmo de treinamento
recebe um conjunto de
exemplos na forma (xi,yi) , ao
trmino deste obtemos um
classificador
que
2 Fundamentos Tericos
Classificao e Reconhecimento
Support Vector Machines
2 Fundamentos Tericos
Classificao e Reconhecimento
Support Vector Machines
No caso de dados no
linearmente separveis
mapeamos os dados
num espao com mais
dimenses
que
o
espao original.
Uso de funes Kernel.
3 Fuso Nuclear
Um breve Histrico
3 Fuso Nuclear
Vantagem e Necessidade
Potncia
Segurana
Matria prima abundante.
Baixa toxicidade
3 Fuso Nuclear
Conceitos Bsicos
3 Fuso Nuclear
Reaes de Fuso
3 Fuso Nuclear
Tokamaks
O
Plasma
confinado
magneticamente.
Tipo de Reator onde as linhas
do campo magntico so
fechadas em si mesmas,
formando um toro.
Busca a tornar a reao auto
sustentada ( Condio de
Ignio )
O ganho Q definido como a
razo entre a energia liberada
e a energia consumida
3 Fuso Nuclear
O JET
A recuperao da informao
Extrao de informaes em
tempo real
Derivao da informao fsica
quantitativa
3300 imagens
4236 padres
JET Image
files
Code
Initialization
Background
Average
Subtraction
Open Image
Image
Binarization
Object
Properties
HU
Moments
SVM
Image Main-Loop
Display MARFE
Region
Time
Analysis
Time
Report
Performance
Report
Performance
Analyzer
5 Desenvolvimento e Caracterizao
Desenvolvimento em MATLAB
Pr Processamento
Base de Imagens JET (BIJET)
Modelo de Classificador
Treinamento
Parmetros de Treinamento
Tabela de Atributos JET (ATRJETBD)
Interface
Principal
Classificador
Modelo de Classificador
Tabela de Atributos Proc. Imagens (ATRPI)
Matriz de Confuso Expandida
Analisador
5 Desenvolvimento e Caracterizao
Desenvolvimento em MATLAB
PR PROCESSAMENTO
Entrada
Sada
Base de Imagens(BIJET)
Tabela ATRPI
Permite a variao do
threshold e do nmero
de imagens usadas para
o clculo da imagem de
fundo
5 Desenvolvimento e Caracterizao
Desenvolvimento em MATLAB
Treinamento
Entradas
A tabela de atributos
(ATRJETBD).
Os parmetros de
treinamento.
Sada
Modelo de
Classificador
5 Desenvolvimento e Caracterizao
Desenvolvimento em MATLAB
Classificador
Entradas
A tabela de
atributos (ATRPI).
O modelo de
Classificador SVM.
5 Desenvolvimento e Caracterizao
Desenvolvimento em MATLAB
ANALISADOR
Entradas
Tabela de atributos
do JET (ATRJETBD).
Tabela de atributos
do processamento
de imagens, aps a
classificao
(ATRCPI).
Sada
Matriz de Confuso
expandida
Anlise Temporal
Resultados Gerais
5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
OpenCV
LibSVM
Utiliza discos em memria com alta taxa de transferncia 1300 MB/s a 3200 MB/s
5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
Mdulo de Estimao da Imagem de Fundo
e Binarizao da Imagem
5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
Mdulo de Extrao de Caractersticas
5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
Mdulo de Extrao de Caractersticas
5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
Anlise de Desempenho
2 placas me, cada uma com 2 processadores Intel CPU Xeon E5430
HarperTownQuad-Core.
5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
Anlise de Desempenho Resultados
6 Concluses e Perspectivas
Sumrio Aula 03
I - Introduo ao Reconhecimento de Padres
1.
2.
Vetor de caractersticas
3.
Exemplo
4.
Projeto do classificador
5.
Abordagens tpicas
6.
Exemplos
Definio
2.
3.
4.
Algoritmo Backpropagation
5.
Exerccios
82
O Crebro Humano
O crebro humano processa as informaes de uma forma completamente
diferentes que o computador
O crebro um computador altamente complexo, no-linear e paralelo
Ele tem capacidade de organizar os neurnios de forma realizar certos
processamentos muito mais rapidamente que o ms rpido computador digital.
Ex:
Reconhecimento de uma bola por uma criana
Sonar de um morcego - distncia, velocidade relativa, tamanho, azimute, etc...
Neurnio Biolgico
PARTES
dendritos
corpo celular
axnio
sinapse
Rede Biolgica
APRESENTAO
formam malhas complexas
comunicao entre neurnios pelas sinapses
85
86
Modelo de um Neurnio
pesos
Somador
Funo de
ativao
Entrada
yk uk k wkj x j k
j 1
sada
bias (polarizao)
Funes de Ativao
1
0.5
-1
-2
LIMITE DURO
-2
SIGMOIDE
(u )
1
1 exp( au )
1
0
-1
-2
TANGENTE HIPERBLICA
(u) tanhau
88
89
90
No-Linearidade
Um neurnio artificial pode ser linear ou no-linear
Uma rede no-linear quando constituda por neurnios no lineares
Esta propriedade importante porque a natureza (dados de entrada)
principalmente no-linear
Caracterstica 2
Caracterstica 1
91
Mapeamento Entrada-Sada
Aprendizagem supervisionada. Aplicao de um conjunto de amostras de
treinamento rotuladas
Cada conjunto consiste de um sinal de entrada nico com a sada desejada
Apresenta-se para a rede um exemplo, e os pesos sinpticos da rede so
modificados para minimizar a diferencia entre a resposta desejada e a
resposta da rede, de acordo com um critrio estatstico apropriado
Sinal de entrada
Sada
Resposta desejada
Rede Neural
92
Adaptabilidade
Capacidade de adaptar os pesos sinpticos a modificaes
Pode ser facilmente retreinada para lidar com pequenas modificaes
nas condies operativas
Em ambientes no-estacionrios (onde as estatsticas mudam com o
tempo), uma rede pode ser projetada para modificar seu pesos em
tempo real.
93
entrada
sada
x1
x
x N
y1
y
y N
sinal
x1
x
x N
y1
y1
e1
~
~
y
y y e y ~
y N
eN
~
y N
erro
94
Fase de Propagao
Propagao:
Um vetor de entrada aplicado a
entrada da rede. Seu efeito se
propaga camada trs camada.
Os pesos sinpticos so todos fixos
Um conjunto de sada produzido
resposta real da rede
C 1
bic
v
c 1
j
v1c
v 2c
vic
wijc
Nc-1
Nc
N c1
c
v Nc
-1
j 1
95
Fase de Retro-propagao
Retro-propagao:
A resposta real da rede subtrada
de uma resposta desejada (alvo) para
produzir o sinal de erro
O sinal de erro propagado atravs
da rede contra a direo das
conexes sinpticas da o nome
Os pesos sinpticos so ajustados
para fazer que a resposta real da
rede se mova para mais perto da
resposta desejada (estaticamente)
C 1
c 1
j
v cj 1
v1c
v 2c
vic
wijc
cj
Nc-1
Nc
ic 1 1 v cj 1 wijc ic
2
Nc
c
v Nc
-1
j 1
ic 1 v cj e
2
96
Fase de Atualizao
Existem muitas mtodos de atualizao. Regra Delta
wijc 2av cj 1 ic
bic 2a ic
Conjunto de Dados
Geralmente so usados 3 conjuntos de dados
Treinamento. Conjunto usado para atualizar os pesos
Validao. Para validar como esta se comportando o
treinamento. Determinar a parada do algoritmo
Teste. Avaliao final do modelo
98
Treinamento iterativo
TREINAMENTO SUPERVISIONADO
conjunto de treinamento
A,B
A,B
A,B
Professor
erro,
ok,erro
erro
ok, ok
PADRES
A
B
1a ITERAO
REDE
NEURAL
D
X
R
X
2a ITERAO 3a ITERAO
A
P
X
A
B
99
Valor desejado
Valor obtido na sada da rede
~
Erro Y Y
2
ERRO
ITERAO
100
Minimizao do Erro
MTODO DO GRADIENTE DESCENDENTE
minimizao do erro
mesma direo e sentido oposto ao gradiente
y (n)
, 1
w
y(n)
2w
w(n)
w
5
w(n 1) w(n) w(n)
w(n)
7
6
w2
y
5
VALOR INICIAL
ERRO
w(n)
w(n)
-2
-1,2
1,8
-0,72
1,08
-0,43
0,65
-0,26
0
-6 -5 -4 -3 -2 -1 0 1 2 3
VALOR DAS SINAPSES
4
3
2
1a ITERAO
2a ITERAO
3a ITERAO
4a ITERAO
Rede Neural
A
102
Incorporando Invarincia
Invarincia por estrutura
Redes de estruturas mais complexas. As sinapses so criadas de forma que verses
transformadas da mesma entrada sejam foradas a produzir a mesma sada
103
Exerccio
N c1
u wijc v cj 1 bic
c
i
j 1
ic 1 v cj e
c 1
i
1 v
c 1 2
j
Nc
j 1
c c
ij i
wijc 2av cj 1 ic
bic 2a ic
104
EXEMPLO
FEEDFORWARD
U
.W
V3 .W
VVXXX
.W
VV2X
W
1 .a.W
511a
53
W
U 15432 11..W
W
W15432bias
.W
.X
W
.W
bb.52
1
bias
3b2
bV
bias
1 aW
a.W
4132a
a
2X
b.42
b 3 .W43
U
020
,,,0746
11..0
,1000,01,06
0,.06
,.10..,.100,01,,1250,070,00.46
7,..90.0,0,302,,210,74
,,06
U51432
0,,1
3,1
1
000
,05
,63
63..1,10,
10,715
0,097
'
UU
1
Y YV
bV
V' a1 tanh
tanh
U
5U
tanh
tanh
32
0,06
0,1
1
0,
0,46
0,46
-0,1
0,2
0,3
0,9
0,63
-0
,1
0,
2
0,097
5
0,
0,2
-0,1
2
0,
-0,1
,1
-0 0,3
0,1
0,06
342
0,614
0,63
1,1
105
EXEMPLO
BACKPROPAGATION
valores desejados: Ya=0,2 ; Yb=1
Retro-propagao do erro
0,13
0,03
0,103
0,24
E2 Yb Yb 1 0,614 0,386
'
0,152
106
Processamento de Imagens
Prof. Marcelo Portes de Albuquerque
Prof. Mrcio Portes de Albuquerque
Monitores: Fernanda Dutra Moraes (CBPF)
Pedro de Souza Asad (CBPF)
107