Вы находитесь на странице: 1из 107

Processamento de Imagens

Prof. Marcelo Portes de Albuquerque


Prof. Mrcio Portes de Albuquerque
Monitores: Fernanda Dutra Moraes (CBPF)
Pedro de Souza Asad (CBPF)

IX Escola do CBPF 2012


IX Escola do CBPF - Julho 2012

Organizao do Curso
Aulas 23 a 27 de Julho
Seg. Introduo a Anlise de Imagens
Ter . Segmentao e Morfologia Matemtica

Qua. Classificao e Reconhecimento


Qui. Laboratrio (ImageJ e OpenCV)
Sex. Laboratrio (ImageJ e OpenCV) Apresentao GPU/Cuda

Site Web:
Notas de Aula: http://mesonpi.cat.cbpf.br/e2012

IX Escola do CBPF - Julho 2012

Organizao do Curso

Site Web:
Notas de Aula: http://mesonpi.cat.cbpf.br/e2012

IX Escola do CBPF - Julho 2012

Informaes IX Escola CBPF

A Escola fornecer certificado de frequncia aos alunos


inscritos que tiverem assistido no mnimo 8 horas de aula de
um determinado curso de graduao, e no mnimo 12 horas,
no caso dos cursos de ps-graduao.

Alm disto, a Escola exige freqncia integral dos


estudantes que beneficiam de auxlio financeiro
(hospedagem e alimentao), em 2 cursos no caso dos
estudantes de graduao e em 3 cursos, dos estudantes de
ps-graduao.

Pelas duas razes acima, necessrio que os alunos


assinem as listas de presena a cada aula.
IX Escola do CBPF - Julho 2012

Sumrio Aula 03
I - Introduo ao Reconhecimento de Padres
1.

Definio de Padro e Classe

2.

Vetor de caractersticas

3.

Exemplo

4.

Projeto do classificador

5.

Abordagens tpicas

6.

Exemplos

II Introduo as Redes Neurais Artificiais


1.

Definio

2.

Modelo de um neurnio artificial

3.

Modelo de uma rede MLP

4.

Algoritmo Backpropagation

5.

Exerccios
5

Referncias Bibliogrficas
Pattern Classification (2nd Edition)
Richard O. Duda, Peter E. Hart,
David G. Stork

Redes Neurais: Princpios e Prtica


Simon Haykin
(Traduzido para o portugus)

PARTE I
Introduo ao
Reconhecimento de Padres

Fases de Anlise e Processamento


Aquisio

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

O que uma Classe?


Classe: um modelo matemtico descrito por vrias caractersticas que servem
para identificar um padro
A caracterstica qualquer aspecto, qualitativo ou quantitativo.
A caracterstica pode ser simblica (ex. cor) ou numrica (ex. altura)

A combinao de d caractersticas representada como um vetor de dimenso


d chamado de vetor de caractersticas feature vector,
O espao de d-dimenses formado pelo vetor de caracterstica chamado de
espao de caractersticas feature space
Os objetos so representados como pontos no espao de caractersticas.
Caracterstica 2
Classe 2

Classe 1

Classe 3
Caracterstica 1

10

O Que Reconhecimento de Padres ?


Atribuir a um objeto ou evento fsico, uma das diversas categorias prespecificadas" -- Duda & Cervo.
Problema de estimar funes da densidade em um espao de dimenso
elevada, dividindo o espao em regies de categorias ou das classes"
Fukunaga.
Dado alguns exemplos de sinais complexos e de decises corretas para eles,
fazer decises automaticamente para uma sequncia dos exemplos futuros"
Ripley.
Cincia que concerne a descrio ou a classificao das medidas" Schalkoff.
O processo de dar nomes w s observaes x Schrmann.
Reconhecimento de padres se dedica a fazer uma mquina responder
pergunta: o que isto?" Morse.
Reconhecimento de padres um sub-tpico da aprendizagem de mquina cujo
objetivo classificar informaes (padres) baseado ou em conhecimento a priori
ou em informaes estatsticas extradas dos padres. Wikipdia, 2012.
11

Objetivos do Reconhecimento de Padres


Identificar um padro como membro de um conjunto conhecido de classes classificao

Cor

Atribuir um padro a um conjunto de classes de padres clustering


(agrupamento)

Forma
12

Um bom Vetor de Caractersticas

Caracterstica 2

Caracterstica 2

Caracterstica 1

bom

Caracterstica 1

ruim

13

Outras Propriedades das Caractersticas


Caracterstica 2

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.

Ex. Imagens mdicas

Para automatizar completamente o processo


de tomada de deciso, sem necessidade de
interveno humana.

Ex. Identificao de placas de automveis.

16

Aplicaes de Reconhecimento de Padres


Processamento de documentos:
Reconhecimento de caracteres
impressos ou escritos
Mquinas de leitura para cegos
Leitores de cdigos de barras
Interpretao automticas de textos

Automao industrial: Inspeo e


montagem de objetos complexos
Inspeo de circuitos impressos
Inspeo de partes mecnicas
Viso por computador

17

Aplicaes de Reconhecimento de Padres


Deteco remota. Observao da terra
atravs de sensores em satlites e
avies
Planejamento de uso da terra
Monitoramento ambiental
Meteorologia
Explorao mineral
Mapas topogrficos

Fonte:
INPE, 2012

Medicina e biologia. Processamento de


sinais e imagens mdicas
Contagem de clulas no sangue
Deteco de tumores em imagens de Raios-X
Anlise de imagens de cromossomos
Interpretao de eletrocardiogramas
Diagnstico mdico

18

Aplicaes de Reconhecimento de Padres


Identificao de pessoas
Restrio de acesso em instalaes de segurana
Reconhecimento de voz
Identificao de impresses digitais
Reconhecimento de faces
Reconhecimento de placas de veculos

Aplicaes cientficas
Interpretao de ondas ssmicas
Anlise de imagens de microscpios
Anlise de imagens de telescpios (Hubble)

Fonte: Projeto DES


Dark Energy Survey
Colaborao do CBPF

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.

Adaptado de Duda, Hart and Stork, Pattern Cassification, 2da. Ed.

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..

Qualquer uma destas caractersticas, ou uma combinao delas pode ser


utilizada pelo classificador
Antes do Classificador

Usar uma operao de segmentao para isolar os objetos


(peixes) do fundo
Usar tcnicas de ps-processamento (morfologia), ainda na
imagem, para garantir a separao dos objetos
A informao correspondente a cada peixe enviada a um
extrator de caractersticas, cujo principal objetivo reduzir os
dados a um conjunto limitado de caractersticas
As caractersticas so enviadas a um classificador
22

Anlise do Problema - Caractersticas

Qtde.

Qtde.

salmo

corvina

comprimento

O comprimento no uma boa


caracterstica ...

corvina

salmo

Escala intensidade

A luminncia foi melhor !!!

Combinando as caractersticas
Comprimento

Fronteira de
deciso

X=[x1, x2];
x1 Luminncia
x2 Comprimento
corvina

salmo
luminancia

A combinao de caractersticas melhora a separao das classes


Melhora a taxa (erro) de classificao
24

Custo x Taxa de Classificao


A taxa (erro) de classificao a melhor funo objetivo deste problema?
Classificar o salmo como corvina far com que cliente final encontre
ocasionalmente um pedao de corvina quando comprar salmo. E dai?..
O custo de errar na classificao de corvina como salmo ter um cliente
insatisfeito quando encontrar um pedao de corvina no salmo!

Mover a fronteira de deciso para diminuir a funo de custo


Comprimento

corvina

Fronteira de
deciso

salmo
luminancia

Comprimento

corvina

Fronteira de
deciso

salmo
luminancia
25

Deciso tima?
Comprimento

corvina

Fronteira de
deciso

salmo
luminancia

timo!!! Integramos nosso sistema e desenvolvemos nossa aplicao na planta de


processamento ... Depois de um tempo ligam da gerncia que o erro de classificao de
26
25%!!! .... Que aconteceu?

Generalizao
O objetivo principal do classificador classificar corretamente novas
entradas poder de generalizao

Relao entre dimensionalidade e conjuntos amostra


Caracterstica 2

Caracterstica 2

Caracterstica 1

Caracterstica 1

Caracterstica 2

Caracterstica 1

27

Quantas caractersticas devem ser


usadas no classificador?
Quantas mais melhor!! idia errada
Na pratica o desempenho comea por melhorar mas vai se
deteriorando medida que mais caractersticas so consideradas
Curse of Dimensionality

Os erros ocorrem devido ao uso no timo da informao adicional,


que supera a vantagem da informao extra. Esparcidade
necessrio limitar o nmero de caractersticas para uma dada
dimenso do conjunto de treino
28

Seleo ou Extrao de
Caractersticas
Seleo: processo de escolha de um sub-conjunto das
caractersticas originais

Extrao: definio de novas caractersticas que podem


ser funo das caractersticas originais
X2

x2

y1

Y2

x1

Seleo: escolhe-se x2 pois separa


facilmente as classes

X1

Extrao: aps rotao dos eixos de


coordenadas, evidente que apenas
necessria umas das caractersticas: y2
29

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

Escolher as d caractersticas que produzem individualmente melhores


resultados ERRADO
Tcnica de seleo sequencial: Suponhamos que selecionamos k
caractersticas. Ento, a (k+1)sima caracterstica aquela que, em
combinao com as k existentes, proporciona o melhor desempenho
Outras solues: Algoritmos genticos, Testes correlativos, etc.
30

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

Exemplos de tcnicas: PCA ou transformada de Karhunen-Loeve:


Usa os vetores prprios (auto-vetores) e valores prprios (auto-valores) da matriz
de covarincia de todos os dados de forma a reduzir a sua dimensionalidade.

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

No caso ideal P uma matriz unitria


34

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

nij o nmero de padres gerados pela classe wi e classificados como


pertencentes a wj . E ni o nmero total de padres pertencentes classe wi.

35

Projeto de um Classificador
Coleo de dados

Escolha das caractersticas

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.

Treino ou aprendizagem. Usar os dados para determinar classificador. Existem


muitos mtodos.
Avaliao. Critrio de desempenho. Medir a taxa de erro.
Complexidade computacional. Analisar relao entre a complexidade
computacional e o desempenho. Analisar a complexidade do algoritmo em
funo do nmero de caractersticas e padres.

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.

Estrutural ou sinttica: definido uma sequncia de elementos


bsicos (primitivas) que representem as formas dos objetos. criada
uma linguagem e uma gramatica

Neuronal: Imita o funcionamento do crebro humano.


Supervisionado ou no. Ex. Redes MLP, SOM, RBF

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

2. Nmero de bactrias e clulas


Imagem til

Imagem analisada

Exemplo
Ocorrncias
Bactria
Classe 1

18,2%

Clula
Classe 2

18

81,8%

Objetos que tocam a borda da imagem devem ser descartados

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

Classe 2 no tem ngulo de


orientao
1. Tamanho relativo

Obs: Estamos interessados em valores estatsticos mdia e desvio padro

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

Germano Teixeira Chacon

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

A produo comercial de energia eltrica a partir da fuso de


tomos leves, como uma fonte alternativa de energia de larga
escala.
Existem atualmente diversos desafios tecnolgicos para a
operacionalizao deste tipo de equipamento
No final de 2009 um acordo de cooperao foi assinado com a
Comunidade Europia da Energia Atmica (EURATOM), do qual o
Laboratrio JET um dos principais experimentos cientficos.
Neste trabalho estudamos, desenvolvemos e apresentamos
tcnicas e algoritmos de processamento de imagem para processar
vdeos do JET. O objetivo detectar um fenmeno conhecido por
MARFE (Multifaceted Asymmetric Radiation From The Edge).

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

O objetivo desta fase extrair informaes teis, normalmente na


imagem binria. Existem basicamente duas classes de medidas so
elas:
atributos da Imagem como um todo (Field Features), ex.:
nmero de objetos, rea total de objetos, etc;
atributos de regio (Region Features) que se referem aos
objetos independentes, ex.: rea, permetro, forma, etc.

2 Fundamentos Tericos
Momentos de Uma Imagem

A tcnica de momentos um dos vrios mtodos utilizados para


extrao de caractersticas de uma imagem.
Os momentos de imagem mais utilizados so os momentos
regulares definidos a partir da seguinte frmula:

os momentos regulares de ordem 0 e 1 so usados para o clculo


do baricentro ou centro de massa do objeto, atravs das seguinte
frmulas:

2 Fundamentos Tericos
Momentos de Uma Imagem

Com a informao obtida dos baricentros obtemos o que chamamos de


momentos centrais que so definidos para imagens digitais como

Finalmente existem os momentos centrais normalizados


representados por e definidos pela seguinte frmula:

2 Fundamentos Tericos
Momentos de Uma Imagem

Momentos Hu resolvem um grande problema no reconhecimento


de padres que a variao das caractersticas dos objetos.

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

A necessidade do Reconhecimento de Padres surge de problemas onde


precisamos separar dados de natureza diferente em categorias.
O objetivo do reconhecimento realizar, de forma automtica, a
identificao dos objetos segmentados na imagem.
Os parmetros provenientes da etapa de extrao de atributos so
utilizados para construir um espao de caractersticas N dimenses.
As formas so representadas por vetores contidos dentro do espao de
caractersticas.
Podemos utilizar algoritmos de Aprendizado de Mquina (AM) a fim de
obter um classificador capaz de prever a classe de novos eventos que
ocorram no mesmo espao de caractersticas.

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

representado por uma funo


f(x)=y

2 Fundamentos Tericos
Classificao e Reconhecimento
Support Vector Machines

Busca um Hiperplano timo


maximizando margem de
separao entre as classes
Minimizar a norma de W

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

As pesquisas na rea de fuso nuclear foram iniciadas em Los


Alamos (EUA), com claras motivaes militares para produzir uma
bomba de fuso.
Em 1951 Andrei Sakharov e Igor Tamm conceberam o Tokamak.
Todos os trabalhos de investigao se mantiveram secretos at
Conferncia "tomos para a Paz" que decorreu em Genebra, em
1958.
Em 1978, a Comunidade Europeia (mais a Sucia e a Suia)
empreenderam a construo do projeto JET ("Joint European
Torus")
O projeto ITER (International Thermonuclear Experimental Reactor)
iniciado em 1992.

3 Fuso Nuclear
Vantagem e Necessidade

Potncia
Segurana
Matria prima abundante.
Baixa toxicidade

3 Fuso Nuclear
Conceitos Bsicos

A fuso nuclear o processo


de construir ncleos mais
pesados a partir de ncleos
mais leves.
A energia nuclear pode ser
obtida a partir da ligao entre
dois nucldeos leves (fuso) ou
da ciso de ncleos pesados
(fisso)
A energia disponvel por
ncleo dada pela frao de
empacotamento definida como
P=(M-A)/A

3 Fuso Nuclear
Reaes de Fuso

As reaes mais importantes


envolvem deutrio (D2) e trtio
(T3) na forma de um plasma
dentro do reator.
Requerem temperaturas muito
elevadas.
Utilizam uma mistura de
reagentes pouco densa.
Submeter este plasma a ao
de uma fora externa de forma
a mant-lo confinado.

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

4 Processamento de Imagens para o


JET

A recuperao da informao
Extrao de informaes em
tempo real
Derivao da informao fsica
quantitativa

4 Processamento de Imagens para o JET


As Cmeras

Taxa de aquisio de 30.000


quadros por segundo
Resoluo de 256 x 256 pixels.
A cmera possui uma sada de
imagens no formato PNG.
Montadas em um endoscpio

4 Processamento de Imagens para o JET


Os MARFEs

Abreviao para o fenmeno Multifaceted Asymmetric Radiation


From the Edge
O MARFE caracterizado como um anel brilhante concntrico de
radiao.

4 Processamento de Imagens para o JET


A Base de Dados

22 vdeos da cmera APX-RS

3300 imagens

4236 padres

Classificados em MARFE, No-MARFE ou Outros

4 Processamento de Imagens para o JET


O Sistema de Classificao
JET Classification
Database

JET Image
files

Feature Extraction Module


Barycenter

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

4 Processamento de Imagens para o JET


Avaliao de Desempenho

A preciso do sistema como


um todo foi determinada
utilizando o mtodo de Matriz
de Confuso
O objetivo final do mdulo de
Anlise de Desempenho
(Performance Analyzer) a
construo da matriz de
confuso para vrios
algoritmos de processamento
de imagem.

5 Desenvolvimento e Caracterizao
Desenvolvimento em MATLAB

Servir como plataforma de teste e avaliao das tcnicas para a


classificao de MARFEs
Ferramenta de Software - LibSVM (Biblioteca em C/C++)
Tabela de Atributos Proc. Imagens (ATRPI)

Pr Processamento
Base de Imagens JET (BIJET)

Modelo de Classificador

Treinamento

Parmetros de Treinamento
Tabela de Atributos JET (ATRJETBD)

Interface
Principal

Tabela de Atributos + Classes (ATRCPI)

Classificador

Modelo de Classificador
Tabela de Atributos Proc. Imagens (ATRPI)
Matriz de Confuso Expandida

Analisador

Tabela de Atributos JET (ATRJET)


Tabela de Atributos + Classes (ATRCPI)

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

25% da base para


teste do classificador
e 75% para o
treinamento

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++

O cdigo foi testado em uma plataforma de computao Linux Intel 64 bits.


A implementao buscou ao mesmo tempo, alta preciso e desempenho
em tempo de execuo.
A verso final apresenta uma taxa de deteco correta de 93,3% e uma
taxa mdia de processamento de imagem de 650 frames por segundo.
Ferramentas de Software Utilizadas

OpenCV
LibSVM

Mdulo de Abertura da Imagem

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

Este mdulo tem como objetivo a extrao de caractersticas das


regies de pixels contguos nas imagens binrias.
Usamos a biblioteca OpenCV: cvBlobsLib. Esta biblioteca rotula e
segmenta imagens binrias
No a verso do algoritmo em C/C++ os momentos Hus foram
calculados porem no foram utilizados

5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
Mdulo de Extrao de Caractersticas

O objetivo principal do mdulo


de classificao determinar a
qual classe pertence a forma
encontrada
60% da base para Treino e
40% para Testes
11018 Modelos SVM foram
testados
o melhor resultado foi obtido
por um modelo SVM baseado
em um kernel polinomial de
grau 10

5 Desenvolvimento e Caracterizao
Desenvolvimento em C/C++
Anlise de Desempenho

Duas abordagens Distintas

Maior taxa de acertos


Menor Tempo de Processamento

As medidas de tempo se referem ao mtodo walltime, que uma


estimativa do tempo total consumido por todo o sistema
A plataforma computacional de teste foi um n Linux do Cluster
computacional do CBPF

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

Neste trabalho, apresentamos apenas o desempenho da classificao


geral do sistema de processamento dedicados ao reconhecimento de
MARFEs. O algoritmo de processamento de imagens processou 1.409
regies

6 Concluses e Perspectivas

Neste trabalho apresentamos um conjunto de tcnicas de processamento de imagens


para reconhecimento e deteco de MARFEs em imagens do Laboratrio JET
A caracterizao dos algoritmos abordou duas direes:
Em termos das diversas tcnicas para o processamento da informao com um
enfoque principal na anlise padres por momentos invariantes e na preciso do
sistema de classificao
Em termos de sua velocidade total de processamento
O trabalho se consolidou como uma efetiva contribuio as necessidades de
caracterizao de MARFE dentro da colaborao.
Est em discusso neste momento, um novo sistema de aquisio tendo como base
uma placa de aquisio que receba as imagens diretamente da cmera KL8.
Um dos objetivos futuros que parte dos algoritmos desenvolvidos possam ser
migrados para dispositivos eletrnicos de programao em hardware, como as FPGAs.
Avaliao de outras tcnicas como RNA e PCA no linear.
Avaliao dos algoritmos de execuo paralela em ambientes multiprocessados
Usar outros atributos para caracterizar os Marfes.
Usar processamento via GPU.

Sumrio Aula 03
I - Introduo ao Reconhecimento de Padres
1.

Definio de Padro e Classe

2.

Vetor de caractersticas

3.

Exemplo

4.

Projeto do classificador

5.

Abordagens tpicas

6.

Exemplos

II Introduo as Redes Neurais Artificiais


1.

Definio

2.

Modelo de um neurnio artificial

3.

Modelo de uma rede MLP

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...

Como o crebro humano e o morcego fazem isso?


O crebro tem uma grande estrutura e habilidade de desenvolver suas
prprias regras atravs do que chamamos de experincia
Us neurnios que formam o crebro tem a caracterstica de plasticidade,
permitindo que o sistema nervoso se adapte ao meio ambiente
83

Neurnio Biolgico
PARTES
dendritos
corpo celular
axnio
sinapse

Idia de entrada, processamento e sada


84

Rede Biolgica
APRESENTAO
formam malhas complexas
comunicao entre neurnios pelas sinapses

Como reproduzir tal complexidade?

85

O que uma Rede Neuronal?


um processador maciamente paralelo, constitudo por
unidades de processamento simples (neurnios), que tem
propenso natural para armazenar conhecimentos experimental e
torn-lo disponvel para seu uso.
Ela se assemelha ao crebro em dois aspectos:
O conhecimento adquirido atravs da aprendizagem
Foras de conexo entre neurnios os pesos sinpticos-, so utilizadas
para armazenar o conhecimento adquirido...
Simon Haukin

86

Modelo de um Neurnio
pesos

Somador

Funo de
ativao

Entrada

yk uk k wkj x j k
j 1

sada

bias (polarizao)

Semelhana entre os modelos


87

Funes de Ativao
1

0.5

-1
-2

LIMITE DURO

-2

SIGMOIDE

(u) sig (u)

(u )

1
1 exp( au )

1
0
-1
-2

TANGENTE HIPERBLICA

(u) tanhau

88

Modelo de uma Rede


Disposio em camadas. Camadas ocultas
Comunicao entre neurnios entre camadas

89

Benefcios das Redes Neurais


No linearidade
Mapeamento Entrada-Sada
Adaptabilidade
Resposta a evidncias
Tolerncias a falhas
Implementao VLSI

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

O treinamento repetido para muitos exemplos at que a rede alcance


estabilidade

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

Perceptrons de Mltiplas Camadas


Treinamento supervisionado
Algoritmo de retro-propagao do erro
(error backpropagation)
Dois passos :

entrada

sada

x1
x
x N

y1
y
y N

propagao (para frente - Feedforward )


retro-propagao (para a trs - backpropagation)

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

uic wijc v cj 1 bic

c
v Nc

-1

j 1

vic tgh uic

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

taxa de aprendizado. Quanto menor seja , menor


sero as variaes dos pesos sinpticos

wijc 2av cj 1 ic
bic 2a ic

w(n 1) w(n) w(n)


b(n 1) b(n) b(n)
97

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

Os conjuntos de treinamento e validao


participam na criao 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

O erro diminui !!!


~
Y

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

Como incorporar invarincias no


projeto de RP
A prpria imagem pode ser o vetor de
caractersticas

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

Invarincia por treinamento


Muito usado. A rede treinada apresentando-se um nmero de exemplos diferentes
correspondente a diferentes transformaes.

Espao de caractersticas invariantes


Extrair caractersticas que caracterizem o contedo essencial da informao e que
sejam invariantes a transformaes das entradas

103

IX Escola do CBPF 2012

Exerccio
N c1

u wijc v cj 1 bic
c
i

j 1

vic tgh uic

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

w(n 1) w(n) w(n)


b(n 1) b(n) b(n)

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

E1 Ya Ya 0,2 0,097 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)

IX Escola do CBPF 2012


IX Escola do CBPF - Julho 2012

107

Вам также может понравиться