Escolar Documentos
Profissional Documentos
Cultura Documentos
os-Graduac
ao em Ci
encia da Computac
ao
Vis
ao Computacional
o de
Tratamento, Extrac
a
Caractersticas e
o da Base de
Classificac
a
Dados LeafDB
11 de junho de 2015
Lista de Figuras
2.1
2.2
2.3
2.4
2.5
3.1
3.2
3.3
3.4
4.1
4.2
4.3
4.4
5.1
.
.
8
9
. 10
. 10
. 10
. 11
. 12
. 12
. 13
15
15
16
16
5.2
6.1
6.2
7.1
7.2
8.1
8.2
8.3
9.1
Sum
ario
1 Introduc
ao
1.1 Ferramentas utilizadas no trabalho . . . . . . . . . . . . . . .
6
7
.
.
8
8
9
17
6 Esqueletizac
ao: Medial Axis Transform
19
7 Reconstruc
ao de imagem utilizando Transformada do Eixo
Medial e Mapa Dist
ancia
21
8 Curvatura
24
8.1 CENSURE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.2 Curvatura Local . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4
9 Caractersticas
27
9.1 Seleccao das amostras . . . . . . . . . . . . . . . . . . . . . . 27
9.2 Seleccao das Caracteristicas . . . . . . . . . . . . . . . . . . . 27
10 Classificac
ao
10.1 Metodologia . . . . . . . .
10.1.1 Base de dados . . .
10.1.2 Classificador SVM
10.2 Experimentos . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
11 Conclus
oes
A Amostras selecionadas para a
A.1 Circinatum . . . . . . . . .
A.2 Garryana . . . . . . . . . .
A.3 Kelloggii . . . . . . . . . . .
29
29
29
30
30
32
base
. . .
. . .
. . .
de
. .
. .
. .
dados
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
33
33
33
33
Captulo 1
Introdu
c
ao
Durante o curso de visao computacional, aprendemos diversas tecnicas para
tratamento de imagens, extracao de formas e caractersticas e classificacao
de dados. Este trabalho visa sintetizar o conte
udo aprendido em um exemplo
pratico onde temos uma base de dados com imagens de folhas, e desejamos
reconhece-las e classifica-las fazendo uso das tecnicas aprendidas. Um pouco
mais detalhadamente, o objetivo desse trabalho e seguir os seguintes passos:
Leitura e filtragem de imagens por convolucao (com mascaras de filtros
passa baixas para borramento e passa altas para detectar bordas no
domnio do espaco)
Filtragem adaptativa de imagens (filtro de Wiener adaptativo para
remocao de rudo Gaussiano): adicionar rudo gaussiano na imagem
e depois filtrar
Geracao do histograma das imagens e binarizacao com o algoritmo de
Otsu
Extracao parametrica do contorno das imagens (capturar a forma dos
objetos)
Esqueletizacao (Medial Axis Transform) das formas (extrair esqueleto
das imagens)
Reconstrucao nao linear de objetos atraves da Transformada Distancia
e do esqueleto
Calculo da curvatura local para cada ponto do objeto (funcao que associa a cada ponto do contorno um valor de curvatura)
Calculo de descritores de formas: curvatura media (media da curvatura para todos os pontos), area, comprimento de arco, tamanho do
esqueleto, etc.
Classificacao dos padroes com uma tecnica supervisionada vista no
curso (MAP, KNN, NMC, SVM)
Avaliacao do desempenho atraves da matriz de confusao (taxa de acerto
ou erro)
1.1
Captulo 2
Leitura e filtragem de imagens
por convolu
c
ao
Esse captulo apresenta uma breve descricao do procedimento adotado para
leitura das imagens e a filtragem por convolucao, utilizando-se de mascaras
de filtros passa baixas para borramento e passa altas para detectar bordas
no domnio do espaco. O processo utilizado e apresentado a seguir:
2.1
Leitura e convers
ao para escala de cinza
Figura 2.1: Codigo utilizado para carregar imagens e converte-las para imagens em tons de cinza. Note que o procedimento e executado apenas para a
classe circinatum, e deve ser repetido para as demais classes.
2.2
Os filtros sao transformacoes aplicadas na imagem utilizados como um tratamento previo. Os filtros passa baixa borram a imagem, suavizando suas
bordas, a fim de que detalhes pequenos sejam mais suaves e menos sensveis.
Ja os filtros passa alta destacam os pontos onde o contraste e alto, evidenciando assim o contorno ou bordas das imagens.
2.2.1
2.2.2
(a)
(b)
(c)
(a)
(b)
(c)
Captulo 3
Rudo Gaussiano e o Filtro de
Wiener
Neste captulo sera apresentado o problema de rudo Gaussiano e sua remocao
atraves do filtro de Wiener. Para isso, iremos adicionar um rudo Gaussiano
em uma imagem e em seguida a trataremos com o filtro de Wiener.
3.1
Para adicionar ruido Gaussiano em uma imagem, utilizarem a funcao random noise, disponvel no Scikit-Image [1]:
11
(a)
(b)
3.2
Para restauracao da imagem, perturbada com um rudo Gaussiano, utilizaremos a deconvolucao Wiener-Hunt. Note que sao necessarios dois parametros:
PSF - Point Spread Function: Uma matriz quadrada onde todos os
valores sao iguais a 1 e representa o impulso de resposta.
Balance: parametro de regularizacao que mantem equilbrio entre restauracao e rudo.
(a)
(b)
(c)
Captulo 4
Histograma e Limiariza
c
ao de
Otsu
Neste captulo sera apresentado o conceito de histograma e um algoritmo de
segmentacao, ou binarizacao para o caso de duas classes, denominado Limiar
de Otsu.
4.1
Histograma
4.1.1
Binariza
c
ao pelo Limiar de Otsu
14
0.0
0.2
0.4
0.6
Intensidade do Pixel
(a)
0.8
1.0
0.0
0.2
0.4
0.6
Intensidade do Pixel
0.8
1.0
(b)
(a)
(b)
Captulo 5
Extra
c
ao param
etrica do
contorno: M archingSquares
Para a extracao parametrica do contorno, utilizaremos o metodo
M archingSquares. O script utilizado pode ser visto na Figura 5.1.
17
(a)
(b)
Captulo 6
Esqueletiza
c
ao: Medial Axis
Transform
Neste captulo, faremos a esqueletizacao da imagem, ou mais precisamente,
faremos a transformada do eixo medial.
O Eixo medial representa a hierarquia das partes que compoem a forma.
Define um conjunto dos pontos do objeto pelos centros dos circulos que sao
bitangentes ao contorno da forma e encontram-se totalmente dentro delas.
19
(a)
(b)
180
160
140
120
100
80
60
40
20
0
(c)
(d)
Captulo 7
Reconstru
c
ao de imagem
utilizando Transformada do
Eixo Medial e Mapa Dist
ancia
Neste captulo, utilizaremos a da Transformada do Eixo medial, vista no
captulo anterior, em conjunto com a Transformada Distancia para reconstruir a imagem.
A ideia e pegar a distancia, obtida atraves da Transformada Distancia,
em cada ponto do esqueleto e pintar um circulo em volta com raio igual a
essa distancia. O algoritmo para essa tarefa e apresentado na Figura 7.1:
No exemplo apresentado na Figura 7.2, podemos observar a importancia
do limiar nesse processo, quanto a preservacao de detalhes. Uma observacao
interessante e que, se aumentarmos gradativamente o limiar, e animarmos a
sequencia de imagens de sada, conseguimos um efeito de derretimento.
21
(a)
(b)
(c)
(d)
(e)
(f)
Figura 7.2: Nas imagens (a) e (b) podemos ver o esqueleto da imagem e
sua reconstrucao, respectivamente, sem filtrar qualquer detalhe (limiar = 0).
Similarmente, (b) e (e) mostram os resultados com um limiar = 10, e (c) e
(f) com limiar = 50.
Captulo 8
Curvatura
Abordaremos a seguir dois metodos utilizados para extracao de caractersticas da curvatura da imagem: CENSURE, que encontra os pontos de
curvatura mais representativos de cada imagem, e o calculo da curvatura
local, que calcula a curvatura em cada ponto da imagem.
8.1
CENSURE
(a)
(b)
(c)
Figura 8.2: Pontos chaves da curvatura para uma imagem da classe Circinatum, Garryana e Kelloggii em (a), (b) e (c), respectivamente.
8.2
Curvatura Local
2(c1 b2 c2 b1 )
(c21 + c22 )3/2
(8.1)
(8.2)
(8.3)
(8.4)
(8.5)
Captulo 9
Caractersticas
Neste captulo, abordaremos a selecao das amostras e de suas caractersticas,
para, no captulo seguinte, utilizarmos dessas caracteristicas quando abordarmos a etepa de classificacao.
9.1
Selecc
ao das amostras
Foram selecionadas as trinta primeiras amostras de tres das classes de imagens de folhas fornecidas, sendo elas Circinatum, Garryana e Kelloggii. A
Figura 9.1 apresenta um exemplar de cada uma delas.
9.2
Selecc
ao das Caracteristicas
27
(a)
(b)
(c)
Captulo 10
Classifica
c
ao
O captulo de Classificacao sera dividido em duas partes, sendo que na primeira trataremos da metodologia, e na segunda, dos experimentos.
10.1
Metodologia
10.1.1
Base de dados
10.1.2
Classificador SVM
10.2
Experimentos
Circinatum
Garryana
Kelloggii
9
0
1
0
10
2
1
0
7
5
0.872
0.832
0.792
3
0.752
0.712
0.672
0.632
0.592
0
0.552
Captulo 11
Conclus
oes
Neste trabalho foram apresentadas algumas das tecnicas aprendidas no curso
de visao computacional, as quais envolvem de precessamento de imagens,
extracao de caractersticas baseadas no formato do objeto, e a classificacao
dos dados. A partir delas pudemos extrair caracteristicas representativas
e classificar os dados com uma taxa de 86% de acertos, provando que as
tecnicas sao muito eficientes, e alem disso, demonstrando quais classes sao
mais parecidas, atraves de uma matriz de confusao.
32
Ap
endice A
Amostras selecionadas para a
base de dados
A.1
Circinatum
A.2
Garryana
A.3
Kelloggii
33
Refer
encias Bibliogr
aficas
[1] Scikit image developers. Scikit-Image User Guide. Available at http:
//scikit-image.org/docs/dev/user_guide.html.
[2] Scikitlearn developers. Scikit-Learn User Guide. Available at http://
scikit-learn.org/dev/user_guide.html.
[3] J. D. Hunter. Matplotlib: A 2d graphics environment. Computing In
Science & Engineering, 9(3):9095, 2007.
[4] JoAo
Paulo Papa, Celso Tetsuo Nagase Suzuki, and Alexandre Xavier Falc ao. LibOPF: A library for the design of optimum-path forest classifiers, 2014. Software version 2.1 available at http://www.ic.unicamp.
br/~afalcao/LibOPF.
37