Você está na página 1de 51

Renato Ramos da Silva

RECONHECIMENTO DE IMAGENS DIGITAIS UTILIZANDO REDES


NEURAIS ARTIFICIAIS

Monografia de Graduao apresentada ao Departamento de Cincia da Computao da Universidade


Federal de Lavras como parte das exigncias do
curso de Cincia da Computao para obteno do
ttulo de Bacharel

Orientador
Prof. Mrio Luiz Rodrigues Oliveira

Lavras
Minas Gerais - Brasil
2005

Renato Ramos da Silva

RECONHECIMENTO DE IMAGENS DIGITAIS UTILIZANDO REDES


NEURAIS ARTIFICIAIS

Monografia de Graduao apresentada ao Departamento de Cincia da Computao da Universidade


Federal de Lavras como parte das exigncias do
curso de Cincia da Computao para obteno do
ttulo de Bacharel

Aprovada em 20/01/2005

Prof. Guilherme Bastos Alvarenga

Prof. Mrio Luiz Rodrigues Oliveira


(Orientador)

Lavras
Minas Gerais - Brasil

Dedico todo este trabalho a Deus e a santssima me Maria que sempre esto ao
meu lado

vi

Agradecimentos
Agradeo aos meus pais pela minha vida e estarem sempre ao meu
lado dando todo apoio para que isto pudesse ser realizado. Por todos
os professores que contribuiram na minha formao, de um modo
maior pela confiana dos professores Joaquim, Guilherme e Mario na
minha pessoa. Por todos os colegas de classe por esses anos
passados. Aos amigos da Crediesal e Devex, especialmente ao
Robson, Julio e Ulisses, por cada dia de convivncia. Finalmente,
agradeo de modo especial por cada irmo do Projeto Universidades
Renovadas que estiveram juntos nessa caminhada, e
permaneceremos .

vii

viii

Resumo
RECONHECIMENTO DE IMAGENS DIGITAIS
UTILIZANDO REDES NEURAIS ARTIFICIAIS
O presente projeto estudou as etapas do processamento digital de imagens, a saber: aquisio da imagem, pr-processamento, segmentao, representao e descrio, reconhecimento e interpretao. Foi
implementada uma rede neural artificial utilizando o algoritmo de treinamento backpropagation para realizao do reconhecimento de objetos em imagens digitais.

ix

RECOGNITION OF DIGITAL IMAGES USING ARTIFICIAL NEURAL


NETWORKS
The present project studied the stages of the digital image processing, to know:
image acquisition , preprocessing, segmentation, representation and description,
recognition and interpretation. The project implemented a artificial neural networks
using the training algorithm backpropagation to carry out of objects recognition in
digital images.

Sumrio
1

Introduo
1.1 Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Escopo do trabalho . . . . . . . . . . . . . . . . . . . . . . . . .

1
2
2
2

Imagem digital
2.1 Introduo . . . . . . . . . . . . .
2.2 Definio de Imagem Digital . . .
2.3 Processamento digital de imagens
2.3.1 Aquisio de imagem . . .
2.3.2 Pr-processamento . . . .
2.3.3 Segmentao . . . . . . .
2.3.4 Representao e descrio
2.3.5 Reconhecimento . . . . .
2.3.6 Interpretao . . . . . . .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

5
5
5
6
7
7
8
8
9
9

Mtodo Estatstico
3.1 Introduo . . . . . . . . . . . . . . . . . . . . .
3.2 Mtodo Estatstico no reconhecimento de padres
3.3 Classificao por mxima verossimilhana . . . .
3.4 Distncia Euclidiana . . . . . . . . . . . . . . .
3.5 Aproximao Bayesiana . . . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

11
11
11
12
12
12

Redes Neurais Artificiais


4.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Definio de Redes Neurais Artificiais . . . . . . . . . . . . . . .
4.3 Caractersticas de uma Rede Neural Artificial . . . . . . . . . . .

15
15
15
17

xi

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

4.4
5

Backpropagation . . . . . . . . . . . . . . . . . . . . . . . . . .

18

Metodologia
5.1 Introduo . . . . . . . .
5.2 Algoritmo implementado
5.3 Linguagem Utilizada . .
5.4 Teste dos Algoritmos . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

19
19
19
21
22

Resultados e Discusses
6.1 Introduo . . . . . . . .
6.2 Grupos de imagens . . .
6.3 Classificao por grupo .
6.4 Classificao nos Grupos
6.4.1 Grupo 1 . . . . .
6.4.2 Grupo 2 . . . . .
6.4.3 Grupo 3 . . . . .
6.5 Tratamento de imagens .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

23
23
23
24
25
25
25
26
26

Concluses

29

Trabalhos Futuros

31

xii

Lista de Figuras
2.1
2.2
4.1

5.1

Representao numrica de uma imagem ampliada de 10x10 pixels com 256 tons de cinza. . . . . . . . . . . . . . . . . . . . . .
Elementos do processo de anlise da imagem [Augusto (2002)] . .

6
7

Representao artificial de um neurnio natural. As entradas x1,


x2,..., xn, representam os sinais vindos de outros n neurnios. Os
pesos wk1, wk2,..., wkn representam os pesos sinpticos das conexes entre os neurnios da camada anterior e da camada k. O
Bias (bk) o limiar para a ativao do neurnio [Cordeiro (2002)].

16

5.2
5.3

A esquerda contm o arquivo Valores.txt a direita o arquivo Image.txt


. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Exemplo do arquivo de configurao da rede neural . . . . . . . . 21
Arquivo de sada gerado pela rede neural . . . . . . . . . . . . . 21

6.1
6.2
6.3
6.4

Imagens do Grupo 1: Circulo e Avio . . . . .


Imagens do Grupo 2: Esfera e rvore . . . . .
Imagens do Grupo 3: rvore sombreada e Face
Imagens das Figuras aps pr-tratamento . . .

xiii

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

23
24
24
27

xiv

Lista de Tabelas
6.1
6.2
6.3
6.4

Resultados de Grupos de Imagens


Resultados do Grupo 1 . . . . . .
Resultados do Grupo 2 . . . . . .
Resultados do Grupo 3 . . . . . .

xv

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

25
25
26
26

xvi

Captulo 1

Introduo
A todo momento estamos fazendo reconhecimento de padres em nossas vidas.
Neste exato instante, ao ler este texto, voc reconhece estes traos pretos como
letras, reconhece um grupo de letras como uma palavra e reconhece o significado
de cada palavra. Enfim, reconhecer o rosto de uma pessoa, distinguir um cachorro
de um gato, compreender a fala, ler as mais diversas caligrafias e at mesmo interpretar um exame de eletrocardiografia, tudo isso reconhecimento de padres
[Henrique (2003)].
Reconhecimento de padres (RP) , por natureza, uma cincia inexata, e assim
admite muitas abordagens, algumas vezes complementares, outras competitivas,
para aproximar, indicar ou encontrar solues a um dado problema. Em problemas
complexos de RP, a abordagem comum utilizada dividir o problema em dois
mdulos subseqentes: a extrao de caractersticas e o mdulo de classificao.
Tanto para o primeiro como para o segundo mdulo j existem vrias tcnicas
desenvolvidas que vo desde tcnicas estatsticas e matemticas at tcnicas de
Inteligncia Artificial ([Artur (1999)],[Bishop (1995)]).
Um dos ramos da cincia da computao que se ocupa da automao do comportamento inteligente a inteligncia artificial, onde ns, estudantes e pesquisadores, buscamos entender e explorar os mecanismos da mente possibilitando o
pensamento e a ao inteligente.
E um desses mecanismo utiliza para realizar uma tarefa particular ou funo
de interesse, a maneira como o crebro realiza e conhecido como rede neural
artificial.
1

1.1

Motivao

H uma enorme quantidade de aplicaes para a classificao de objetos. Dentre


as diversas utilidades, pode-se destacar:
anlise de radiografias, diagnstico de doenas, identificao de clulas, simulao de funes cerebrais;
caracterizao de rochas, prospeco mineral, sensoriamento remoto;
deteco de alvos, classificao de sinais de radar;
efeitos especiais, animao;
viso computacional, controle de manipuladores, anlise de situaes;
simulao de processos qumicos, processamento de sinal, diagnstico de
falhas;
anlise de texturas e fases.

1.2

Objetivo

O trabalho visou atender aos seguintes objetivos:


Estudar todas as etapas do processamento digital de imagens;
estudar as tcnicas utilizadas no reconhecimento de imagens digitais;
estudar a utilizao das redes neurais artificiais no reconhecimento de imagens digitais.

1.3

Escopo do trabalho

A seguir apresentada uma breve descrio dos captulos deste trabalho. O capitulo dois apresenta uma descrio sobre imagens digitais e como realizado o
seu processamento. O captulo trs mostra a classificao atravs dos mtodos estatsticos. Em seguida, o captulo quatro apresenta as redes neurais sob o ponto
de vista do reconhecimento de imagens.O captulo cinco apresenta a metodologia
usada na constituio desta pesquisa. O captulo seis os resultados desta pesquisa.
2

O captulo sete apresenta as principais concluses referentes ao trabalho bem como


algumas propostas de trabalhos futuros e algumas contribuies. E para finalizar
as referncias bibliogrficas.

Captulo 2

Imagem digital
2.1

Introduo

O captulo apresenta uma definio sobre imagem e sua forma digital. Descreve
tambm todo o processamento de imagens digitais.

2.2

Definio de Imagem Digital

Segundo [Gonzales and Woods (1992)], uma imagem pode ser definida como uma
funo f(x, y), onde o valor nas coordenadas espaciais x e y corresponde ao brilho
(intensidade) da imagem nessa coordenada.
A nica forma de se representar uma imagem em um computador quando ela
est digitalizada tanto no domnio espacial como no das amplitudes.
Uma imagem digital a representao numrica e discreta de um objeto, ou
especificamente, uma funo quantificada e amostrada, de duas dimenses, geradas por meios pticos, disposta em um grade padro, retangular igualmente espaada, quantificada em iguais intervalos de amplitude. Assim, uma imagem digital um vetor retangular bidimensional de amostras de valores quantificados
([Cordeiro (2002)], [Castleman (1996)]).
A menor unidade de uma imagem digital denominada picture element (pixel).
Um pixel a representao numrica da luminosidade de um ponto da imagem.
5

Figura 2.1: Representao numrica de uma imagem ampliada de 10x10 pixels


com 256 tons de cinza.

2.3

Processamento digital de imagens

Segundo [Maria (2000)], entende-se por Processamento Digital de Imagens a manipulao de uma imagem por computador de modo que a entrada e a sada do
processo sejam imagens. O objetivo de se usar processamento digital de imagens
melhorar o aspecto visual de certas feies estruturais para o analista humano e
fornecer outros subsdios para a sua interpretao, inclusive gerando produtos que
possam ser posteriormente submetidos a outros processamentos.
As tcnicas em anlise de imagem podem ser divididas em trs reas bsicas:
(1) processamento de baixo nvel, com funes que podem ser vistas como reaes
automticas, ou seja, reaes que no requerem comportamento inteligente; (2)
processamento de nvel intermedirio, com processos de extrao e caracterizao
de componentes em uma imagem; e (3) processamento de alto nvel, que envolve
os processos de reconhecimento e interpretao. A Figura 2.2 mostra os processos
de cada uma dessas reas [Gonzales and Woods (1992)].
Nas sees de 2.3.1 a 2.3.6 sero apresentado os passos para o processamento
digital de imagens com enfoque no reconhecimento de imagens. So eles:
Aquisio de imagem;
Pr-processamento;
Segmentao;
Representao e descrio;
6

Figura 2.2: Elementos do processo de anlise da imagem [Augusto (2002)]


Reconhecimento;
Interpretao.

2.3.1

Aquisio de imagem

Segundo [Gonzales and Woods (1992)], o primeiro passo do processo requer apenas um sensor de imagens e a capacidade para digitalizar o sinal produzido pelo
sensor.
So necessrios dois elementos para a aquisio da imagem: um aparelho fsico que sensvel faixa espectral de energia eletromagntica na qual produza um
sinal eltrico de sada proporcional ao nvel de energia sentido. E um digitalizador,
que converte o sinal eltrico capturado na sua forma digital.

2.3.2

Pr-processamento

Aps a aquisio e digitalizao da imagem, o prximo passo o pr-processamento.


A funo chave do pr-processamento melhorar a imagem, com o objetivo de aumentar as chances de sucesso dos processos seguintes [Gonzales and Woods (1992)].
Nesta etapa, so utilizadas tcnicas para aumento de contraste, remoo de rudos, realce e normalizao, com o objetivo de converter os padres para uma
7

forma que possibilite uma simplificao do posterior processo de reconhecimento


[Augusto (2002)].

2.3.3

Segmentao

O prximo estgio o processo chamado de segmentao. De um modo geral, a


segmentao subdivide uma imagem de entrada em suas partes constituintes ou
objetos. Cada uma destas partes uniforme e homognea com respeito a algumas propriedades da imagem, como por exemplo, cor e textura. Algoritmos
de segmentao para imagens monocromticas so geralmente baseados em duas
propriedades bsicas de valores em escala de cinza: descontinuidade e similaridade. Na primeira categoria, o particionamento da imagem baseado no subconjunto de pontos de um objeto que o separa do restante da imagem. As tcnicas de segmentao nesta categoria buscam evidenciar os limites entre os objetos, atravs da deteco de pontos isolados e da deteco de linhas e bordas na
imagem. Na segunda categoria, a segmentao baseada nas tcnicas de limiarizao, crescimento por regies, unio e diviso de regies ([Augusto (2002)],
[Gonzales and Woods (1992)]).

2.3.4

Representao e descrio

Geralmente, a sada do estgio de segmentao so dados brutos de pixel. Neste


caso pode ser necessrio converter os dados para uma forma conveniente, possibilitando o processamento por computador. Dois tipos de representao podem ser
utilizados: representao limite ou representao regional. A representao limite
apropriada quando o foco est em caractersticas da forma, como por exemplo
em cantos. Representao regional apropriada quando o foco est em propriedades reflectivas, tais como textura ou cor. No entanto, em algumas aplicaes
estas representaes coexistem. Escolher a representao apenas parte da soluo para a transformao de dados brutos em uma forma conveniente para o
processamento computacional subseqente. Um mtodo para descrever os dados
tal que as caractersticas de interesse sejam realadas, tambm deve ser utilizado.
Descrio, tambm chamada de seleo de caracterstica, lida com a extrao de
caractersticas que resultam em algum diferenciar uma classe de objetos de outra
[Gonzales and Woods (1992)].
8

2.3.5

Reconhecimento

Aps feita separao de classe de objetos com caractersticas semelhantes passamos a uma fase na qual tem interesse identificar o que cada uma dessas classes
representa, e assim identific-las com um respectivo valor.
O reconhecimento de padres importante devido s ocorrncias na vida humana tomarem forma de padres. A formao da linguagem, o modo de falar, o
desenho das figuras, o entendimento das imagens, tudo envolve padres. Reconhecimento de Padres uma tarefa complexa, onde o homem busca, sempre, avaliar
as situaes em termos dos padres das circunstncias que as constituem, descobrir
relaes existentes no meio, para melhor entend-lo e adaptar-se [Artur (1999)].
Existem, hoje, muitas tcnicas de RP desenvolvidas no qual podemos dividir
em trs abordagens:
Estatstica - conjuntos de medidas de caractersticas (na forma de n-tupla ou
vetores) so extrados das imagens e mtodos estatsticos so utilizados para
separar as classes. Dentre os mtodos utilizados podemos citar classificadores bayesianos, mtodos probabilsticos e regras de deciso.
Estrutural - padres so representados em uma forma simblica (tais como
strings e rvores), e os mtodos de reconhecimento so baseados em casamento de smbolos ou em modelos que tratam padres de smbolos como
sentenas, a partir de uma linguagem artificial;
Neural - na abordagem neural, como o prprio nome diz, o reconhecimento
realizado utilizando-se Redes Neurais Artificiais. Alguns autores consideram o reconhecimento via Redes Neurais como sendo um tipo particular de
reconhecimento estatstico, j que as caractersticas tambm so na forma de
n-tuplas ou vetores e existe uma equivalncia entre alguns modelos de Redes
Neurais e tcnicas estatsticas fundamentais ([Augusto (2002)],[Bishop (1995)]).

2.3.6

Interpretao

Para [Gonzales and Woods (1992)], interpretao envolve a fixao de significado


a um grupo de objetos reconhecidos, em outras palavras, estamos interessados em
dar significados a imagem.
Interpretao de imagens computadorizadas um processo extremamente complexo. As dificuldades aparecem tanto pela quantidade de dados a serem processadas e tambm pela falta de ferramentas de processamento fundamental para receber o dados iniciais para gerar os resultados desejados (detalhamento do contedo
9

da imagem). Assim como no h ferramentas para realizar interpretao de imagens no estruturada, somos forados a considerar aproximaes que oferecem
razovel chance de sucesso. Essa limitao leva-nos a considerar duas restries:
limitar a generalidade do problema e a incorporao de conhecimento humano no
processo.
Os trs principais formalismos utilizados para a representao do conhecimento so baseados em:
lgica formal - onde o conhecimento pode ser expresso atravs de regras
lgicas;
redes semnticas - que atravs de grafos direcionados nos demonstra o relacionamento entre elementos de uma imagem;
sistema de produo ou regra base - que apesar de ser restrito a um determinado domnio, utilizado numa larga escala de aplicativo em processamento de imagem digital.

10

Captulo 3

Mtodo Estatstico
3.1

Introduo

No captulo contm um explicao sobre mtodos estatsticos e alguns mtodos


utilizados na classificao de objetos.

3.2

Mtodo Estatstico no reconhecimento de padres

[Schalkoff (1992)] diz que o reconhecimento de padres estatstico, como sugere


o prprio nome, assume uma base estatstica para os algoritmos de classificao.
Um conjunto de medidas, que denotam as caractersticas, extrado dos dados
de entrada e usado para associar cada vetor de caractersticas a uma dentre classes. Presume-se que as caractersticas so geradas por um estado da natureza, e,
portanto, existe um modelo subordinado a um estado com um conjunto de probabilidades e/ou funes de densidade de probabilidade correspondente, passvel de
ser usado para represent-lo.
A forma mais geral e natural de formular solues para o RP o Reconhecimento de Padres estatstico, atravs do qual reconhecida a natureza estatstica
tanto da informao que se quer representar quanto dos resultados que devem ser
expressos ([Bishop (1995)], [Artur (1999)]).
Existem vrios mtodos estatsticos que apresentam um bom resultado na rea
de reconhecimento de imagens. Dentre eles esto Classificao por mxima verossimilhana, distncia euclidiana [Maria (2000)], aproximao Bayesiana, curva
normal, parzen window e vizinhana mais prxima [Henrique (2003)].
11

Nas sees 3.1, 3.2 e 3.3 apresenta os mtodos mais utilizados para a classificao de objetos em imagens digitais.

3.3

Classificao por mxima verossimilhana

Segundo [Maria (2000)],Classificao por mxima verossimilhana o mtodo de


classificao pixel a pixel mais utilizado em dados de sensoriamento remoto.
Diferentes tipos de equaes podem ser utilizados para aproximar a densidade
de probabilidade das classes de um sistema de reconhecimento de padres. Para
cada classe devero ser encontrados diferentes parmetros para a equao de aproximao utilizada. O mtodo de aproximao por mxima verossimilhana uma
maneira de encontrar os parmetros que melhor aproximaro a densidade de probabilidade, com base em um conjunto de amostras. Por ser paramtrica, a densidade
de probabilidade fica representada por p(x|c, v), sendo v o vetor de parmetros.
Cada classe tratada independentemente uma da outra; ou seja, a densidade de
probabilidade de uma classe no influencia na outra; assim, suas amostras so variveis aleatrias independentes e identicamente distribudas [Henrique (2003)].

3.4

Distncia Euclidiana

Nesse mtodo, as amostras de treinamento so usadas para calcular a mdia de


cada classe. Cada pixel ser atribudo a classe cuja distncia entre o valor do pixel
e a mdia da classe seja menor. O pixel ser incorporado ao agrupamento que
apresenta a menor distncia Euclidiana. Este procedimento repetido at que toda
a imagem seja classificada [Maria (2000)].
O mtodo utilizado quando o nmero de amostras de treinamento por classe
limitado. O mtodo da distncia Euclidiana possui a vantagem de ser, computacionalmente, mais simples.

3.5

Aproximao Bayesiana

As solues pela aproximao bayesiana so quase sempre idnticas s do mtodo


de mxima verossimilhana, sendo a diferena mais conceitual do que prtica.
Enquanto no mtodo da mxima verossimilhana procura-se fixar o valor do vetor
de parmetros, na aproximao bayesiana o vetor de parmetros considerado
uma varivel aleatria [Henrique (2003)].
12

A anlise dos resultados da aproximao bayesiana normalmente mais complexa, comparada com a mxima verossimilhana. Isso porque, pela aproximao bayesiana, o resultado uma distribuio de probabilidades do vetor de parmetros, enquanto na mxima verossimilhana obtm-se um vetor de parmetros
[Henrique (2003)].

13

14

Captulo 4

Redes Neurais Artificiais


4.1

Introduo

O captulo defini rede neural artificial, o seu funcionamento e algumas aplicaes.

4.2

Definio de Redes Neurais Artificiais

Um dos ramos da inteligncia artificial que mais se desenvolveu ultimamente o


de redes neurais, tambm conhecido como conexista [Cordeiro (2002)]. Isso se
deve a capacidade de fazer suposies mais delicadas a respeito da distribuio
dos dados de entrada do que mtodos estatsticos tradicionais e a capacidade de
formar fronteiras de deciso altamente no-lineares no espao de caractersticas,
levou ao seu crescente uso [Artur (1999)].
Assim como na natureza, um neurnio artificial uma estrutura relativamente
simples, que responde a estmulos de outros neurnios conectados a ele. Essa
arquitetura d as redes neurais caractersticas marcantes de intenso paralelismo e
robustez [Cordeiro (2002)].
Na maioria das aplicaes de RP usando-se redes neurais, so estabelecidas
conexes entre os valores de todas as caractersticas que definem os padres com
camadas intermedirias de neurnios e a todas as classes objetivos que so consideradas como a camada de sada.Dentre as aplicaes que utilizam Redes Neurais,
[Augusto (2002)] cita: reconhecimento de objetos [Tu and Li (1999)], minerao
de dados [Craven and Shavlik (1997)], reconhecimento de fala [Yuk and Flanagan (1999)],
robtica [de A. Barreto et al. (2001)].
15

Figura 4.1: Representao artificial de um neurnio natural. As entradas x1, x2,...,


xn, representam os sinais vindos de outros n neurnios. Os pesos wk1, wk2,...,
wkn representam os pesos sinpticos das conexes entre os neurnios da camada
anterior e da camada k. O Bias (bk) o limiar para a ativao do neurnio
[Cordeiro (2002)].
O treinamento da rede realizado corrigindo os pesos nas conexes para estabelecerse as relaes entre as caractersticas e classes que promovam a melhor discriminao possvel entre os padres de classes diferentes. Assim, ao ser apresentado
rede um novo padro, esta indicar a classe que o representa melhor na camada de
sada [Artur (1999)].
O conhecimento pode ser representado na rede como padres de atividade
distribuda entre muitas unidades, e uma unidade pode tomar parte em diversos
padres diferentes. Em outras palavras, redes neurais artificiais combinam uma
arquitetura altamente paralela com uma forma distribuda de representao de conhecimento. So formas de se extrair informao difusa ou indeterminada, a partir
de um conjunto de dados previamente escolhido. So modelos indicados para tratar de sistemas abertos ou complexos, pouco conhecidos e que no podem ser adequadamente descritos por um conjunto de regras ou equaes. So indicadas para
aplicaes que requeiram tolerncia a falhas, deteco de padres, diagnstico,
abstrao ou generalizao, onde haja dados com rudo, incompletos ou distorcidos ([Carlos (1994)],[Widrow (1990)]).
O conhecimento numa rede neural artificial no est armazenado em locais
determinados. No possvel olhar num endereo de memria e verificar o contedo de uma varivel. O conhecimento est armazenado na topologia e nos pesos
[Carlos (1994)].
Uma rede neural artificial caracterizada por uma arquitetura, um mtodo de
16

aprendizado ou treinamento, uma funo de ativao e um bias.

4.3

Caractersticas de uma Rede Neural Artificial

A seo apresenta uma descrio das caractersticas bsicas das redes neurais artificiais.
Funo de Ativao
Funo usada para restringir a amplitude de sada de um neurnio. Tipicamente, o intervalo normalizado da amplitude de sada de um neurnio escrito
como o intervalo unitrio fechado[0,1] ou alternativamente[-1,1] [Haykin (2001)].
Aprendizagem
Aprendizagem um processo pelo qual os parmetros livres de uma rede neural artificial so adaptados atravs de um processo de estimulao pelo ambiente
no qual a rede est inserida. O tipo de aprendizagem determinado pela maneira
pela qual a modificao dos parmetros ocorre [Haykin (2001)].
Existe dois paradigmas de aprendizagem. O primeiro conhecido como aprendizagem supervisionada na qual existe um mentor, pessoa ou professor, capaz de
fornecer rede neural uma resposta desejada para um vetor de treinamento inicial. O segundo chamado de aprendizagem no-supervisionada, onde no h
um crtico para supervisionar o processo de aprendizagem, neste caso fornecido
condies para realizar uma medida independente da tarefa da qualidade da representao cuja rede deve aprender.
A seo 4.3 apresenta um dos algoritmos de aprendizagem supervisionada,
backpropagation, utilizado neste projeto. Os algoritmos Adaline, Cascade Correlation, Levenberg-Marquardt, Redes de Elman e Gradiente conjugado so exemplos
de aprendizagem supervisionadas. Mapas de Kohonen e Redes ART so exemplos
de algoritmos de aprendizagem no-supervisionada.
Arquitetura
A maneira pela qual os neurnios de uma rede neural esto estruturados, sendo
este intimamente ligado com o algoritmo de aprendizagem. Em geral, podemos identificar trs classes de arquiteturas de rede fundamentalmente diferentes
([Haykin (2001)]):
17

1. Redes Alimentadas Adiante com Camada nica - rede neural artificial


acclica que possui uma camada de ns de entrada e uma camada de ns
computacionais de sada.
2. Redes Alimentadas Diretamente com Mltiplas Camadas - rede neural
artificial acclica que possui uma camada de ns de entrada, uma ou mais camadas de ns computacionais ocultos e uma camada de ns computacionais
de sada.
3. Redes Recorrentes - rede neural artificial que possui pelo menos um lao
de realimentao e pelo menos uma camada de ns.
Bias
O neurnio pode ainda apresentar um bias que tem o efeito de aumentar ou
diminuir a entrada lquida da funo de ativao, ou seja, o termo bias age como
um peso extra nas conexes das unidades cuja entrada sempre um.

4.4

Backpropagation

Algoritmo de retropropagao de erro que baseado na regra de aprendizagem por


correo de erro e constitudo pela rede alimentada diretamente com mltiplas
camadas.
Ele dividido basicamente em duas etapas: a propagao e a retropropagao. A propagao consiste na aquisio dos dados pela camada de entrada e sua
propagao por toda rede, produzindo um conjunto de sada. Esse conjunto comparado com valores desejados. Apartir dai comea o processo de retropropagao
que consiste no ajustes dos pesos segundo a diferena produzida, para fazer com
que a resposta da rede se aproxime do desejado.

18

Captulo 5

Metodologia
5.1

Introduo

Este captulo apresenta a metodologia utilizada no desenvolvimento deste trabalho.


Este projeto implementou uma rede neural treinada com o algoritmo Backpropagation para reconhecimento digital de imagens. Ele ser baseado unicamente na
classificao de pixel a pixel de determinados objetos escolhido pelo usurio.
A utilizao do aplicativo wxPID, desenvolvido por [Arley (2003)] em projeto
de concluso de curso, na qual foi implementado alguns dos algoritmos clssicos em processamento digital de imagens para a realizao do pr-processamento,
segmentao e representao sobre imagens.

5.2

Algoritmo implementado

Foram feitas duas adaptaes do software wxPID para a realizao deste trabalho:
Foi adicionado um evento no qual o usurio ao clicar sobre determinado objeto com o boto esquerdo do mouse, aparece uma janela na qual ele escolhe
uma determinada representao para aquele objeto.
Tambm foi adicionado um evento ao boto direito do mouse na qual o usurio salva cada pixel da imagem em um arquivo texto.
Para cada uma das alteraes feitas gerado um arquivo para a rede neural.
O evento associado ao boto esquerdo do mouse gera o arquivo Valores.txt que
19

constitudo por valores indicativos do pixel(red, blue, green) e uma string associada ao pixel indicando a representao do objeto na imagem . O evento associado
ao boto direito do mouse gera o arquivo Image.txt, fornecendo o nmero de pixel
constituinte da imagem e os valores respectivos de cada pixels(red, blue, green) da
imagem.

Figura 5.1: A esquerda contm o arquivo Valores.txt a direita o arquivo Image.txt


Para a configurao da arquitetura, definida como alimentada diretamente com
trs camadas, da rede neural o usurio dever criar um arquivo texto contendo os
valores indicados:
Os trs primeiros indicam o nmero de ns de cada camada (entrada, escondida e de sada).
O ltimo valor indica o nmero elementos passados a rede para treinamento.
Cada camada est armazenada em um vetor de neurnios, estrutura na qual
constituda por um valor e um vetor de pesos. Aps configurada as camadas,
ajustamos os valores de sada desejados de acordo com o nmero de classes. Ajustamos os bias e ento passado os valores iniciais para o treinamento da rede
neural.
Na etapa de propagao, um determinado n da camada oculta recebe de cada
ligao da camada de entrada um valor, que o valor inicial multiplicado pelo
peso. Esses valores so somados passando a ser o valor do n. Esse mesmo processo feito para o n de sada.
O resultado obtido comparado com o desejado e a diferena existente utilizada para o ajuste de pesos. Etapa essa conhecida como retropropagao e terminando aqui a etapa de treinamento.
20

Figura 5.2: Exemplo do arquivo de configurao da rede neural


Com a rede neural configurada fazemos os reconhecimentos de cada objeto
da figura, apartir da leitura do arquivo Image.txt. O resultado e passado para o
arquivo ResultadoBack.txt, Figura 5.3, que contm a posio e o valor do pixel,
e uma string associada, que indica a classificao feita pela rede neural.

Figura 5.3: Arquivo de sada gerado pela rede neural

5.3

Linguagem Utilizada

A linguagem escolhida para execuo do projeto foi C++. Dentre as principais caractersticas que motivaram tal escolha esto: cdigo multiplataforma, paradigma
de orientao objeto, poder de processamento e manter um padro com o projeto
21

j realizado por [Arley (2003)].

5.4

Teste dos Algoritmos

A avaliao do algoritmo implementado ser feita a partir da anlise do arquivo


ResultadoBack.txt, observando se na posio indicada pela imagem o pixel
classificado corretamente. As imagens foram divididas em trs grupos, cada grupo
contendo duas imagens e a separao em grupos de acordo com complexidade da
figura. Assim podemos verificar a ao da rede neural artificial entre os grupos de
imagens e sobre as imagens contidas nos grupos.

22

Captulo 6

Resultados e Discusses
6.1

Introduo

Este captulo apresenta os resultados obtidos e as discusses relativos ao projeto.

6.2

Grupos de imagens

A seo tem por objetivo demonstrar as imagens escolhidas para a realizao dos
testes e um explicao deste agrupamento.
No grupo 1 foram separadas as imagens em preto e branco. Todas elas com
um objeto apenas.

Figura 6.1: Imagens do Grupo 1: Circulo e Avio


No grupo 2 esto as imagens que possuem uma pequena variao de tom de
23

cinza entre o objeto e a figura e outra que possui uma variao de tons de cinza no
objeto muito grande.

Figura 6.2: Imagens do Grupo 2: Esfera e rvore


No grupo 3 esto contidas as imagens com mais de um objeto a serem classificados.

Figura 6.3: Imagens do Grupo 3: rvore sombreada e Face

6.3

Classificao por grupo

Analisando-se cada pixel de resposta da rede neural artificial construiu-se uma


tabela. A tabela composta pelo grupo de imagens, nmero de pixels reconhecidos corretamente(NPRC), nmero de pixels reconhecidos incorretamente(NPRI)
e a porcentagem de pixels reconhecidos corretamente em cada grupo(PPRCG).A
tabela abaixo mostra claramente o comportamento da rede neural frente a cada
grupo. E apartir desta tabela que iremos fazer a analise da rede neural.
Como pode ser visto pela tabela as imagens do grupo 1 e 2 obtiveram um bom
resultado, e o principal fator no excelente resultado a imagem no possui objetos
24

Grupo
1
2
3

NPRC
44638
75542
74550

NPRI
288
946
34440

PPRCG
99,35
98,76
68,40

Tabela 6.1: Resultados de Grupos de Imagens


similares, em contraposio ao ocorrido no grupo 3, na qual possui mais de um
objeto similar a ser classificado.

6.4

Classificao nos Grupos

Apresenta-se nesta seo um comparao dos resultados obtidos em cada grupo.


Em cada grupo a analise tambm ser feita apartir de uma tabela. A tabela composta pela imagem classificada, nmero de pixels reconhecidos corretamente(NPRC),
nmero de pixels reconhecidos incorretamente(NPRI) e a porcentagem de pixels
reconhecidos corretamente em cada imagem(PPRCI).

6.4.1

Grupo 1

A diferena nos resultado encontrado no grupo causado pelo contorno do objeto.


Como pode se ver a figura que cujo contedo um avio possui uma superfcie de
contato maior com o fundo do que a figura do que contm um circulo.
Figura
Circulo
Avio

NPRC
42204
2434

NPRI
230
58

PPRCI
99,45
98,86

Tabela 6.2: Resultados do Grupo 1

6.4.2

Grupo 2

O resultado encontrado na classificao do objeto nas duas imagens demonstra que


a variao dos tons de cinza de um objeto(esfera) em uma figura e a proximidade
do valor do pixel de um objeto com o fundo da imagem tem pouca influncia na
classificao.
25

Figura
Esfera
rvore

NPRC
21246
54296

NPRI
362
584

PPRCI
98,32
98,93

Tabela 6.3: Resultados do Grupo 2

6.4.3

Grupo 3

A diferena encontrada na avaliao das imagens do grupo 3 pode ser explicada


pelo nmero de pixel que define determinado objeto. No caso da figura com o
objeto da rvore sombreada existia apenas um pixel definindo determinado objeto
o que no ocorre com os objetos da outra imagem.
Figura
rvore sombreada
Face

NPRC
54382
20168

NPRI
20858
13582

PPRCI
72,28
59,76

Tabela 6.4: Resultados do Grupo 3

6.5

Tratamento de imagens

Toda a anlise feita at o momento relativo a classificao de imagens sem a


nenhuma etapa previa, ou seja, foi feito somente o reconhecimento das imagens.
Esta seo tem por objetivo a analise do tratamento de imagens frente a classificao de objetos. Para isso a Figura nos mostra como fica duas de nossas imagens
aps o tratamento.
Ao realizar o tratamento os objetos passam a ser reconhecidos apenas pelo
seu contorno. Para imagens do grupo 1 e 2 houve uma melhora pois os erros
aconteciam na borda dos objetos. No entanto o grupo 3 com apenas um contorno,
atribuindo determinado objeto, se tornou difcil a classificao.

26

Figura 6.4: Imagens das Figuras aps pr-tratamento

27

28

Captulo 7

Concluses
O presente projeto verificou a eficincia da utilizao das redes neurais no reconhecimento de imagens pixel a pixel, principalmente quando a imagem no possui
objetos similares.
Dentre os fatores na qual influenciaram no reconhecimento dos objeto podemos verificar para os grupos 1 e 2, onde esto as imagens mais simples, a superfcie
de contato com o fundo como um fator relevante e no grupo 3 o nmero de objetos
a ser classificado.
Nota-se tambm que o treinamento supervisionado se mostrou adequado para
a realizao do reconhecimento, esperando que o no-supervisionado mantenha a
qualidade de classificao.

29

30

Captulo 8

Trabalhos Futuros
Agora ser passada algumas sugestes de trabalhos futuros para continuao do
projeto:
Mtodos de classificao utilizando modelos estatsticos ou estrutural;
Implementar uma rede neural no supervisionada;
Classificao utilizando bordas;
Desenvolver mtodo de Interpretao;

31

32

Referncias Bibliogrficas
[Augusto (2002)] Augusto, F. R. Localizao e Reconhecimento de Placas de
Sinalizao Utilizando um Mecanismo de Ateno Visual e Redes
Neurais Artificiais. Universidade Federal de Campina Grande, 2002.
[Arley (2003)] Arley, A. C. Estudo e Implementao de Algoritmos Clssicos
para Processamento Digital de Imagens, Lavras, 2003
[Artur (1999)] Artur, J. S. Reconhecimento de Padres Usando Indexao Recursiva. Universidade Federais de Santa Catarina, 1999.
[Bezdek e Pal (1992)] BEZDEK, J. C. and PAL, S. K. (Editores) Fuzzy Models
Pattern Recognition: Methods That Search for Structures in Data,
IEEE, 1992.
[Bishop (1995)] Bishop, C. M. Neural Networks for Pattern Recognition. Clarendon Press. Oxford, 1995.
[Carlos (1994)] Carlos, J. F. P. Aplicao de Redes Neuronais no Processamento
Digital de Imagens. Universidade Federal de Minas Gerais, 1994.
[Castleman (1996)] Castleman, Kenneth R. Digital Image Processing. Upper Saddler River: Prentice Hall, Inc. 1996
[Cordeiro (2002)] Cordeiro, F. M. Reconhecimento e Classificao de Padres de
Imagens de Ncleos Linfcitos do Sangue Perifrico Humano com
a Utilizao de Redes Neurais Artificiais. Universidade Federal de
Santa Catarina, 2002.
[Craven and Shavlik (1997)] Craven, M. W. and Shavlik, J. W. Using neural netorks for data mining. Future Generation Computer Systems, 1997.
33

[de A. Barreto et al. (2001)] de A. Barreto, G., Arajo, A. F. R., Dcker, C., and
Ritter, H. Implementation of a distributed robotic control system
based on a temporal selforganizing neural network. In Proceedings
of the IEEE International Conference on System, Man and Cybern
(SMC?01), pages 335?340. Tucson, Arizona, 2001.
[Duda e Hart (1973)] DUDA, O., HART, P. E. Pattern classification and scene
analysis. John Wiley Sons,Inc., 1973.
[Faussett (1994)] Fausett, L. V. Fundamentals of Neural networks: architectures,
algotithms, and aplications. Florida Institute of Tecnology, 1994.
[Gonzales and Woods (1992)] GONZALES, R. C. WOODS, R. E. Digital Image
Processing. University of Tennessee Perceptics Corporation, 1992.
[Haykin (2001)] Haykin, S. Redes Neurais: Princpios e prtica. McMaster University, Hamilton, Ontrio, Canad, 2001.
[Henrique (2003)] Henrique, J. B. R. Desenvolvimento de uma tcnica de reconhecimento de padres baseada em distncia. Universidade Federal
de Santa Catarina, 2003.
[Luger (2004)] Luger, G. F. Inteligncia Artificial: estruturas e estratgias para
a resoluo de problemas complexos. University of New Mexico at
Albuquerque, 2004.
[Maria (2000)] MARIA, L. G. F. Processamento Digital de Imagens. INPE, Junho
de 2000.
[Pao (1989)] PAO, Y. Adaptive Pattern recognition and neural networks. AddisonWesley, 1989.
[Schalkoff (1992)] SCHALKOFF, Robert J. Pattern Recognition: Statistical,Structural and Neural Approaches. John Wiley Sons, Inc., 1992.
[Tu and Li (1999)] Tu, Z. and Li, R. (1999). A multilayer hopfield neural network
for 3-d object recognition. In Proceedings of International Mobile
Mapping Workshop, pages 7A.3.1?6. Bangkok, Thailand, 1999.
[Widrow (1990)] Widrow, B. and Lehr, M. A. 30 Years of adaptive neural
network: Perceptron, Madaline and Backpropagation. Proceedings
of IEEE, v. 78, n. 9, Sep. 1990.
34

[Yuk and Flanagan (1999)] Yuk, D. and Flanagan, J. Telephone speech recognition using neurl network. In Proceedings of the IEEE International
Conference on Acoustics and Signal Processing, volume 1, pages
157?160, 1999.

35

Você também pode gostar