Você está na página 1de 88

Felipe Young da Silva Kleber Roberto Cancian Samuel Faria Rosa de Souza Miranda

Identicao de Placas de Ve ca culos Automotivos para Acionamento de Cancelas

Itajub - MG a 27 de outubro de 2008

Felipe Young da Silva Kleber Roberto Cancian Samuel Faria Rosa de Souza Miranda

Identicao de Placas de Ve ca culos Automotivos para Acionamento de Cancelas

Reconhecimento de Imagens utilizando tcnica PCA. e

Orientador:

Carlos Henrique Valrio Moraes e

Universidade Federal de Itajuba - UNIFEI Engenharia da Computa ao c

Itajub - MG a 27 de outubro de 2008

Agradecimentos
Agradeemos ao corpo docente da UNIFEI - Universidade Federal de Itajub, c a pelo curso que nos foi oferecido e pelo Governo Federal por gerenciar uma Universidade gratuita de excelente qualidade. Agradeemos em especial ao Professor c Carlos Henrique Valrio Moraes por ter nos orientado neste trabalho. e

Resumo
Atualmente, existem inmeros problemas relacionados a engenharia de trfego u ` a e segurana pblica no que se refere ` demora no processo de obtenao de dac u a c dos corretos sobre automveis. A grande demanda por sistemas computacionais o complexos cresce em ritmo acelerado, possibilitando empresas automatizarem suas fbricas e diminu a rem mo-de-obra. Nesse contexto, o reconhecimento automatia zado de placas de automveis surge para aumentar a ecincia e o controle do o e trfego, proporcionando agilidade aos processos hoje existentes. a Fatores como a qualidade da imagem, distncia da imagem em relao ao ponto a ca de onde a foto capturada e diferenas de luminosidade so caracter e c a sticas que interferem no reconhecimento da imagem e devem ser considerados no processo computacional. Baseando-se nisto, utilizar-se- a tcnica de PCA (Principal Components a e Analysis) para a identicao de caracteres a m de mostrar sua ecincia no ca e reconhecimento de padres de letras e nmeros. A tcnica PCA muito utilizada o u e e no reconhecimento de padres, mas no se tem nenhum relato de sua utilizaao o a c para reconhecimento de caracteres. Alm disto, para simular um ambiente real, sero desenvolvidos mdulos de e a o um sistema de controle de acesso a locais restritos para simular o funcionamento do PCA como parte de uma aplicao. Dividiu-se o sistema inicial em mdulos a ca o m de extrair de cada mdulo um melhor rendimento, isolando os problemas em o cada etapa do processo. Neste ambito criar-se- um mdulo para simular o sistema a o de captura da imagem e identicao da placa, um mdulo para a segmentaao ca o c dos caracteres e um mdulo nal responsvel pelo reconhecimento dos caracteres o a atravs da tcnica PCA. e e Palavras chave: Processamento de Imagens; Reconhecimento de Padres; PCA - Principal Component Analysis o

Justicativa
Atualmente o desenvolvimento tecnolgico aliado ao relativo baixo custo das o cmeras de vigilncia tornam viveis utilizaes de reconhecimento por imagens a a a co aplicadas ` problemas do cotidiano como o reconhecimento de placas de ve a culos. H os sistemas de controle eletrnico de estacionamento, sendo que o comprovante a o e emitido automaticamente, mas sem nenhuma identicao da placa do carro. Esse ca um outro exemplo de aplicaao imediata do trabalho que aqui apresentado. e c e Os projetos existentes de restrio de ve ca culos a certos locais ou controlados exigem um grande recurso nanceiro proveniente de equipamentos eletrnicos como o sensores e crachs. Existem, ainda, outros sistemas de identicaao que utilizam a c RFID - Radio Frequency Identication (Identicao por Freqncia de Rdio). ca ue a Porm, os RFID exigem gastos muito superiores aos despendidos para este projeto. e A maioria dos sistemas de reconhecimento de placas de ve culos automotivos utilizam Redes Neurais Articiais para reconhecer os caracteres, conseguindo uma preciso de aproximadamente 90% na maioria dos casos. a Este trabalho mostrar a utilizaao de uma tcnica estat a c e stica muito utilizada em reconhecimento de padres, destacando-se reconhecimento facial. Esta tcnica o e o PCA (Principal Components Analysis), e atravs dela tentar-se- reconhecer e e a os caracteres com uma preciso e rapidez superiores aos sistemas atuais. a Partindo desta idia ser elaborado um sistema que no necessita de tantos e a a equipamentos eletrnicos e ainda no exige nenhum tipo de identicaao extra por o a c parte do motorista, que ser identicado apenas pela placa do seu ve a culo automotor. Este sistema poder ser utilizado em empresas ou grupos que desejam o a controle de um uxo dos ve culos qualquer, como os que circulam por estacionamentos, ruas ou pedgios. a

Sumrio
Lista de Figuras Lista de Tabelas 1 Introduo
1.1 1.2 1.3 1.4 p. 14

Processamento Digital de Imagens . . . . . . . . . . . . . . . . . . p. 14 Trabalhos Correlatos . . . . . . . . . . . . . . . . . . . . . . . . . p. 15 PCA - Principal Component Analysis . . . . . . . . . . . . . . . . p. 16 Redes Neurais Articiais . . . . . . . . . . . . . . . . . . . . . . . p. 17 p. 18 p. 21

2 Legislao Brasileira 3 Processamento Digital de Imagens


3.1

Requisitos Tericos . . . . . . . . . . . . . . . . . . . . . . . . . . p. 21 o 3.1.1 3.1.2 Aquisiao . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 21 c Armazenamento . . . . . . . . . . . . . . . . . . . . . . . . p. 21

3.2

Processamento de Imagens aplicado ao Reconhecimento Automtico a de Placas de Automveis . . . . . . . . . . . . . . . . . . . . . . . p. 24 o 3.2.1 3.2.2 Aquisiao da Imagem . . . . . . . . . . . . . . . . . . . . . p. 24 c Realce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 24

3.2.3 3.2.4 3.2.5 3.2.6 3.3

Remoao de ru c dos . . . . . . . . . . . . . . . . . . . . . . p. 25 Binarizaao . . . . . . . . . . . . . . . . . . . . . . . . . . p. 25 c Projeo das letras . . . . . . . . . . . . . . . . . . . . . . p. 26 ca Segmentaao . . . . . . . . . . . . . . . . . . . . . . . . . p. 26 c

O Problema da Localizao da Placa na Imagem Capturada . . . p. 27 ca p. 30

4 Utilizando PCA para Identicar os Caracteres da Placa


4.1

Requisitos Tericos . . . . . . . . . . . . . . . . . . . . . . . . . . p. 30 o 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 Mdia Aritmtica . . . . . . . . . . . . . . . . . . . . . . . p. 30 e e Desvio Padro . . . . . . . . . . . . . . . . . . . . . . . . . p. 31 a Varincia . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 31 a Covarincia . . . . . . . . . . . . . . . . . . . . . . . . . . p. 32 a A Matriz Covarincia . . . . . . . . . . . . . . . . . . . . . p. 32 a Autovalores e Autovetores . . . . . . . . . . . . . . . . . . p. 33

4.2

Anlise em Componentes Principais . . . . . . . . . . . . . . . . . p. 34 a 4.2.1 4.2.2 4.2.3 4.2.4 Conjunto de Dados . . . . . . . . . . . . . . . . . . . . . . p. 35 Subtraindo da mdia . . . . . . . . . . . . . . . . . . . . . p. 35 e Calculando a Matriz Covarincia . . . . . . . . . . . . . . p. 36 a Calculando os Autovetores e o Autovalores da Matriz Covarincia . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 37 a 4.2.5 Escolhendo as componentes e formando um vetor de caracter sticas . . . . . . . . . . . . . . . . . . . . . . . . . . p. 38 4.2.6 Formando o Novo Conjunto de Dados . . . . . . . . . . . . p. 39

4.2.7 4.3 4.4

Recompondo os dados originais . . . . . . . . . . . . . . . p. 40

Exemplo do uso de PCA para Reconhecer Faces . . . . . . . . . . p. 40 A funao da Anlise de Componentes Principais neste trabalho . . p. 42 c a p. 43

5 O Funcionamento e Arquitetura do Sistema


5.1 5.2

Introduao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 43 c Processamento Digital da Imagem - Seleo da Placa . . . . . . . p. 45 ca 5.2.1 5.2.2 O RoboRealm . . . . . . . . . . . . . . . . . . . . . . . . . p. 45 A Interface com o RoboRealm . . . . . . . . . . . . . . . . p. 47 5.2.2.1 5.2.2.2 Algoritmo de extrao da placa na imagem . . . p. 47 ca Algoritmo de redimensionamento da imagem do caractere . . . . . . . . . . . . . . . . . . . . . . p. 50 5.2.3 5.2.4 Diculdades na identicaao da placa . . . . . . . . . . . . p. 51 c Resultados obtidos para a extrao das placas . . . . . . . p. 52 ca

5.3

Segmentaao dos Caracteres . . . . . . . . . . . . . . . . . . . . . p. 52 c 5.3.1 5.3.2 5.3.3 O Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . p. 52 Diculdades . . . . . . . . . . . . . . . . . . . . . . . . . . p. 54 Resultados obtidos . . . . . . . . . . . . . . . . . . . . . . p. 54

5.4

Aplicao da Tcnica PCA . . . . . . . . . . . . . . . . . . . . . . p. 56 ca e 5.4.1 Clculo dos Autovalores . . . . . . . . . . . . . . . . . . . p. 57 a p. 61

6 Anlise dos Resultados Finais


6.1

Analisando os Testes . . . . . . . . . . . . . . . . . . . . . . . . . p. 61 6.1.1 Anlise dos resultados para os Nmeros . . . . . . . . . . . p. 67 a u

6.1.2 6.2

Anlise dos resultados para as Letras . . . . . . . . . . . . p. 68 a

Problemas Ocorridos . . . . . . . . . . . . . . . . . . . . . . . . . p. 70 p. 74 p. 76 p. 78 p. 82

7 Futuras Melhorias e Implementaes 8 Concluso 9 Anexos Referncias

Lista de Figuras
1 2 Placa em Detalhes. Fonte: (BRASILIENSE, 24 de outubro de 2004) p. 19 Categorias das Placas Brasileiras. Fonte: (BRASILIENSE, 24 de outubro de 2004) . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 20 3 4 Processo de aquisiao de uma imagem. Fonte: (MELLO, ANO) . . p. 23 c Matriz M xN como representao de uma imagem. Fonte: (MELLO, ca ANO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 23 5 Qualidade da Imagem. Fonte: (SITE5, Retirado em 05 de junho de 2008; SITE6, Retirado em 10 de junho de 2008) . . . . . . . . . p. 24 6 7 Realce da Imagem. Fonte: (PASTORE F. M.; OLIVEIRA, ANO) . . . p. 25 Binarizaao da Imagem. Fonte: (SITE7, Retirado em 15 de junho c de 2008) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 25 8 9 Projeoes Horizontal e Vertical. Fonte: (BELVISI R.; FREITAS, ANO) p. 26 c Segmentao dos Caracteres. Fonte: (SITE8, Retirado em 15 de ca junho de 2008) . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 27 10 Problemas com as placas. Fonte: (SITE1, Retirado em 10 de junho de 2008; SITE2, Retirado em 10 de junho de 2008; SITE3, Retirado em 10 de junho de 2008; SITE4, Retirado em 10 de junho de 2008) p. 28 11 12 Distribuio do Conjunto de Dados (D). Fonte: (SMITH, 2002) . . p. 36 ca Autovetores plotados sobre o Conjunto de Dados D. Fonte: (SMITH, 2002) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 38

13

Matriz de Pixels para Vetor de Pixels. Fonte: (MELO G.; SOUTO, 2004) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 40

14 15 16

Matriz de Faces. Fonte: (KITANI E. C.; THOMAZ, 2005) . . . . . . p. 41 Mdia Aritmtica das Faces. Fonte: (KITANI E. C.; THOMAZ, 2005) p. 41 e e Arquitetura do Sistema de detecao de placas atravs da tcnica c e e PCA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 44

17 18

A interface do software Roborealm. . . . . . . . . . . . . . . . . . p. 46 Fluxograma do Algoritmo de Seleo da Placa na Imagem Capca turada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 47

19 20

RoboRealm aplicando alguns ltros a Imagem Original do Ve culo. p. 48 Visual Basic .Net interagindo com o RoboRealm - Passo 1 do Algoritmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 49

21

Visual Basic .Net interagindo com o RoboRealm - Passo 2 do Algoritmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 49

22

Visual Basic .Net interagindo com o RoboRealm - Passo 3 do Algoritmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 50

23

Fluxograma do Algoritmo de Redimensionamento dos Caracteres que compem a Placa. . . . . . . . . . . . . . . . . . . . . . . . . p. 51 o

24 25

Processo de Segmentao dos Caracteres que compem a Placa. . p. 53 ca o Fluxograma do Algoritmo de Segmentao dos Caracteres que ca compem a Placa. . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 53 o

26 27 28

Exemplo 1 - Segmentaao dos Caracteres. . . . . . . . . . . . . . p. 55 c Exemplo 2 - Segmentaao dos Caracteres. . . . . . . . . . . . . . p. 55 c Exemplo 3 - Segmentaao dos Caracteres. . . . . . . . . . . . . . p. 55 c

29

Caractere A, projeao vertical e projeao horizontal respectivac c mente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 56

30 31 32 33 34 35 36 37 38 39 40

Algoritmo dos pesos . . . . . . . . . . . . . . . . . . . . . . . . . p. 60 Nmero 5 da Referncia Padro Antigo. . . . . . . . . . . . . . . p. 62 u e a Nmero 5 da Placa 1 dos testes. . . . . . . . . . . . . . . . . . . . p. 63 u Nmero 3 na fonte Mandatory (Padro atual da placa) e sua rotao. p. 63 u a ca Caractere J e L e suas respectivas projees Vertical e Horizontal. p. 70 co Caractere O e Q e suas respectivas projeoes Vertical e Horizontal. p. 70 c Caractere V e Y e suas respectivas projees Vertical e Horizontal. p. 70 co Imagem Y e suas projees de uma placa coletada para testes. . p. 71 co Nmeros 6 e 9 no padro antigo. u a . . . . . . . . . . . . . . . . . . p. 72

Nmeros 6, 8 e 9 no padro novo. . . . . . . . . . . . . . . . . . . p. 72 u a Nmeros 6 e 9 normais, projees Verticais e Projees Horizonu co co tais respectivamente. . . . . . . . . . . . . . . . . . . . . . . . . . p. 73

41 42 43 44 45 46 47 48 49

Diferena entre os 2 padres existentes. . . . . . . . . . . . . . . . p. 78 c o Exemplo 1 - Aplicaao do algoritmo de seleao da placa na imagem. p. 79 c c Exemplo 1 - Placa Selecionada. . . . . . . . . . . . . . . . . . . . p. 79 Exemplo 2 - Aplicaao do algoritmo de seleao da placa na imagem. p. 79 c c Exemplo 2 - Placa Selecionada. . . . . . . . . . . . . . . . . . . . p. 79 Exemplo 3 - Aplicaao do algoritmo de seleao da placa na imagem. p. 80 c c Exemplo 3 - Placa Selecionada. . . . . . . . . . . . . . . . . . . . p. 80 Exemplo 4 - Aplicaao do algoritmo de seleao da placa na imagem. p. 80 c c Exemplo 4 - Placa Selecionada. . . . . . . . . . . . . . . . . . . . p. 80

50 51 52 53

Exemplo 5 - Aplicaao do algoritmo de seleao da placa na imagem. p. 81 c c Exemplo 5 - Placa Selecionada. . . . . . . . . . . . . . . . . . . . p. 81 Exemplo 6 - Aplicaao do algoritmo de seleao da placa na imagem. p. 81 c c Exemplo 6 - Placa Selecionada. . . . . . . . . . . . . . . . . . . . p. 81

Lista de Tabelas
1 2 3 Conjunto de Dados Original (D) . . . . . . . . . . . . . . . . . . . p. 35 Novo Conjunto de Dados (D) . . . . . . . . . . . . . . . . . . . . p. 36 Resultado da Aplicao do algoritmo de Reconhecimento sobre os ca Nmeros. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 67 u 4 5 Resultado Geral para os Nmeros . . . . . . . . . . . . . . . . . . p. 67 u Resultado da Aplicao do algoritmo de Reconhecimento sobre as ca Letras. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 69 6 Resultado Geral para as Letras . . . . . . . . . . . . . . . . . . . p. 69

14

Introduo

1.1 Processamento Digital de Imagens


Processamento digital de imagens pode ser denido como a execuo de tarefas ca em um sistema digital onde a entrada correspondente a uma imagem produz uma outra imagem (GOMES J.; VELHO, 2002). Um exemplo claro a utilizao de e ca recursos computacionais para realar detalhes de uma imagem, ou mesmo separar c objetos distintos de uma imagem. Na literatura, so listados os principais mdulos a o de um ambiente que trabalhe com imagens digitais (HUGO V.N. E FILHO, 1999): aquisiao, armazenamento e exibiao. A partir delas quaisquer outras atividades c c envolvendo processamento digital de imagens so poss a veis de serem realizadas. Os interesses no processamento de imagens digitais esto divididos em duas a principais aplicaes: co aprimoramento das informaes existentes para interpretaao humana; co c processamento das imagens para armazenamento, transmisso e represena tao, e tambm muito utilizado para percepao autnoma de mquinas ca e c o a (GONZALEZ R.C.; WOODS, 2003). O primeiro interesse est relacionado com o melhoramento das imagens digitais a em variados usos, como processamento de imagens de documentos. O segundo interesse diz respeito a utilizao da mquina como forma de emular o comportamento ` ca a humano com estudos presentes na rea de Inteligncia Articial, na construao de a e c

15

componentes inteligentes. Dentro deste segundo assunto pode-se classicar a localizaao da placa do automvel em uma imagem real, e, o posterior reconhecimento c o dos caracteres que compem a mesma. o A localizaao da placa do automvel talvez a principal limitadora no reconhec o e cimento de placas, j que a no deteco da placa ou de seus caracteres inviabiliza a a ca todo o processamento posterior.

1.2 Trabalhos Correlatos


Inmeros trabalhos vm sendo realizados na tentativa de identicao de padres u e ca o
(QIU B.; PRINET, 2003; POLIDORIO A. M.; BORGES, 1996; PEREIRA D. S. A.; REZENDE,

2007), utilizando Redes Neurais Articiais (SONG W.; SHAOWEI, 1997; SILVA L. S.
P.; GRACIOSO,

2006; BOTELHO, 2004) e tcnica PCA (KITANI E. C.; THOMAZ, 2005; e 2003; CHENGJUN, 2004) na tentativa de melhorar o desempenho

QIU B.; PRINET,

computacional deste tipo de processamento. O reconhecimento de imagens uma area que vem sendo amplamente estudada. e Existem mtodos que so considerados ecazes para identicar padres, como a e a o tcnica PCA (LEITE L.; SILVA, 2004; CUENCA W. M.; SEIXAS, 2000; HEINEN M. e
R.; OSORIO,

2006; GUIDINI M. P.; RIBEIRO, 2006; SMITH, 2002; HAYKIN, 2001) e

Redes Neurais Articiais (SILVA L. S. P.; GRACIOSO, 2006). Os caracteres, como os conhecemos, possuem caracter sticas prprias, podendo assim serem diferenciados o dos demais por um determinado padro. Inmeros trabalhos foram feitos acerca a u
deste assunto, ` destacar (THOME A. C. G.; GUINGO, 2002), que utilizou redes a

neurais articiais para o tratamento de imagens visando identicar a placa de ve culos automotores, com uma margem de preciso de 76%. Alm disto, houve a e um tratamento da placa separando os caracteres um a um. Com a tcnica de PCA e buscar-se-, primeiramente, identicar os caracteres da placa um a um, realizando a o reconhecimento da placa junto ao banco de dados.

16
(POLIDORIO A. M.; BORGES, 1996) utilizaram um tratamento inicial da imagem

para, posteriormente, identicar os caracteres das placas de ve culos automotores. Este tratamento consiste em transformar a imagem em tons de cinza e aumentar o contraste da imagem, para assim aumentar os traos dos caracteres e permitir c sua identicaao. c (NAKASHIMA, 2004) realizou um estudo utilizando diversos mtodos para a e identicaao dos caracteres das placas de ve c culos automotores, dentre eles a rede neural articial atravs do treinamento supervisionado. Os resultados tiveram uma e preciso pouco abaixo de 90%. a Em (TALEB-AHMED A.; HAMAD, 2003) apresentado um sistema de anlise da e a imagem de um carro utilizando uma cmera. A soluo permite o rastreamento da a ca placa do carro na imagem e sua posterior identicao em um banco de registos. ca So apresentadas tambm aplicaoes prticas do sistema. a e c a Em (DRAGHICI, 1997) utiliza-se da transformada de Hough e o mtodo de e Voted Block Matching para a extraao e rastreamento da placa na imagem, resc pectivamente. A principal vantagem dos mtodos utilizados a possibilidade de e e reconhecimento da placa mesmo em algumas situaoes de ocluso. c a Em (LEE M.; WONG, 1999), um sistema com uma Rede Neural Articial (RNA) supervisionada utilizado para a detecao de placas de automveis. O sistema e c o reconhece tanto placas de ve culos parados quanto em movimento. O sistema e testado nas ruas e apresenta um percentual de acerto de mais de 90% das placas.

1.3 PCA - Principal Component Analysis


A Anlise de Componentes Principais (ACP) ou PCA, ou ainda Transformada a de Karhunen-Loeve uma tcnica estat e e stica j consagrada pela sua utilizao em a ca diversos trabalhos (LEITE L.; SILVA, 2004; CUENCA W. M.; SEIXAS, 2000; HEINEN
M. R.; OSORIO,

2006; GUIDINI M. P.; RIBEIRO, 2006). Esta tcnica amplamente e e

utilizada para o reconhecimento de padres, compactaao de dados e extrao de o c ca caracter sticas (SMITH, 2002; HAYKIN, 2001).

17

A aplicaao da tcnica PCA obtm um dos mais valiosos resultados obtidos c e e pela aplicaao dos conceitos da algebra linear (SHLENS, 2005), a reduao da dic c menso dos dados, transformando uma matriz de dados de dimenso m para uma a a nova matriz de dados de dimenso n, sendo n < m. E esta reduo de dimensioa ca nalidade no retira as caracter a sticas importantes contidas no conjunto de dados (MARQUES, 2006). Aps a aplicao do algoritmo, o que ocorre a projeao dos o ca e c dados em uma nova forma de orientao, em outro eixo, a m de encontrar as n ca direoes de maior varincia, ou seja, as componentes principais (MARQUES, 2006). c a Para a aplicao em imagens, esta tcnica traz muitos benef ca e cios, tais como reduao da quantidade de informao a ser armazenada, ou seja, compactaao da c ca c imagem sem perda signicativa de informaao; extrao de padres nas imagens, c ca o tais como reconhecimento facial, reconhecimento de terrenos e reconhecimento de doenas cancer c genas (LEITE L.; SILVA, 2004; CUENCA W. M.; SEIXAS, 2000; HEINEN
M. R.; OSORIO,

2006; GUIDINI M. P.; RIBEIRO, 2006; SMITH, 2002; HAYKIN, 2001).

O reconhecimento de padres realizado com mais um recurso estat o e stico em complemento a tcnica PCA, o clculo da mtrica, ou a distncia calculada entre e a e a dois vetores.

1.4 Redes Neurais Articiais


As Redes Neurais Articiais (RNAs) so compostas por inmeros elementos a u computacionais relativamente simples, que processam e executam uma funao simc ples, porm a RNA como um todo tem a capacidade computacional para a resoe luao de problemas complexos (BRAGA A. P.; CARVALHO, 2000). c Uma das caracter sticas, talvez a maior vantagem do uso das RNAs, que elas e no requerem, a priori, um entendimento do comportamento f a sico do processo no qual esto inseridas, ou seja, o modelamento matemtico uma caixa preta para a a e o usurio. Elas utilizam um procedimento sistemtico para relacionar dados de a a entrada e de sa da, substituindo modelos exigentes em termos computacionais (JR
S. S.; SANTOS,

2001). Alm disso, as RNAs tm uma grande capacidade de genee e

ralizao e aprendizagem e por isso so to usadas nos dias atuais, por inmeros ca a a u autores.

18

Legislao Brasileira

Uma placa de identicaao de ve c culos no Brasil uma chapa de metal ou e plstico, axada a um ve a culo, com a nalidade de sua identicaao ocial. As c placas de ve culos automotores so padronizadas e seguem normas espec a cas sobre puniao por lei para quem no utiliz-las ou no seguir o regulamento. c a a a Em sua maioria, as placas so compostas por uma cor de fundo, que determina a a sua categoria e, so sinalizadas por trs letras seguidas de quatro nmeros. Alm a e u e disso, existe uma identicaao superior com o nome do estado e a cidade ao qual c o ve culo pertence. Apenas dois tipos de placas no seguem este padro no Brasil: a a a placa de representaao do Governo e a placa utilizada em motocicletas. c As dimenses da placa tambm obedecem ` padres, com limite de tamanho o e a o e altura. Somente a placa de motocicletas no segue o padro geral de tamanho, a a porm, tambm possui sua regulamentao em lei. Cada ve e e ca culo tem um cdigo o unico que o identica e, mesmo que um carro mude de estado, o nmero continuar u a sendo o mesmo. Sendo modicados apenas o estado e a cidade ao qual o ve culo est vinculado (Artigo 115 da Lei 9.503/97 - Cdigo de Trnsito Brasileiro). A a o a Figura 1 mostra esta placa em detalhes. Existe uma margem de erro com relaao as dimenses da placa, que podem c o ser de no mximo 10% do tamanho. A legislao ainda determina que os caraca ca teres sejam gravados em auto relevo e a fonte dos caracteres seja a Mandatory (CONTRAN, Retirado em 05 de junho de 2008).

19

Figura 1: Placa em Detalhes. Fonte: (BRASILIENSE, 24 de outubro de 2004)

No Brasil, as cores de fundo determinam a categoria do ve culo, as vezes asso` ciada ainda a algum detalhe extra na placa. A Figura 2 mostra as categorias com suas caracter sticas. Considerando que a grande maioria dos carros obedece ` regra geral, ou seja, a sete caracteres, cor de fundo cinza e tamanho denido, o trabalho em questo a ser focado nestas placas mais comuns, buscando-se o padro, e considerando-se a a a legislaao vigente atual. c

20

Figura 2: Categorias das Placas Brasileiras. Fonte: (BRASILIENSE, 24 de outubro de 2004)

21

Processamento Digital de Imagens

3.1 Requisitos Tericos


3.1.1 Aquisio
Aquisiao corresponde ` obtenao de informaes a partir do ambiente. O meio c a c co mais eciente e que transmite mais informaoes a viso humana. A capacidade c e a humana para processar e interpretar imensas quantidades de dados de natureza visual motiva o desenvolvimento de tcnicas e dispositivos, de modo a estender e ainda mais a capacidade e sensibilidade. A aquisiao das imagens, de forma geral, c realizada com a utilizaao de sensores, pela combinao da iluminaao do objeto e c ca c fonte de estudo e a reexo ou absoro da energia proveniente do objeto e dos a ca elementos que constituem a cena (contexto em que o objeto est incluso) (GONZAa
LEZ R.C.; WOODS,

2003). O escaneamento de uma imagem , em processamento e

grco, realizada principalmente por cmeras de varredura de linha, produzindo a a uma linha por vez. A movimentaao da cmera ao longo do objeto produz imagens c a bidimensionais.

3.1.2 Armazenamento
O armazenamento poss e vel atravs da converso de sinais analgicos em e a o digitais. Aps o sensoriamento, so obtidos sinais cont o a nuos, no sendo poss a vel armazen-los em computadores, pois esses possuem a base de informaes estrutua co rada em bits (STALINGS, 2002). A converso realizada envolvendo principalmente a e trs processos: e

22

amostragem: trata da digitalizaao dos valores das coordenadas (x, y) tornando c discreto o dom nio da funo cont ca nua; quantizao das informaes: digitaliza os valores da amplitude, tornando disca co creto o contradom nio da funao cont c nua; codicao: responsvel pela obtenao de uma representao nita a partir da ca a c ca representaao discreta, ou seja, requer uma discretizaao tanto no dom c c nio como no contradom da funo cont nio ca nua. O resultado da codicaao pode c ser descrito por um conjunto nito de s mbolos organizados de acordo com uma estrutura de dados. A Figura 3 ilustra o processo de aquisio de uma imagem, sendo: ca (a) a partir de uma imagem cont nua; (b) seu sensoriamento realizado entre as delimitaes dos pontos A e B, obtendo e co a funao das amostras; c (c) a partir das amostras obtidas da imagem so realizadas os processos de quana tizaao; c (d) e assim, se obtm uma representao discreta quantizada e ca Na prtica, uma imagem com representaao cont a c nua utilizada como cone ceito no desenvolvimento de mtodos matemticos utilizados no processamento de e a imagens, tais como sries e transformadas de Fourier, que aproximam os sinais. e A representaao discreta quanticada utilizada nos dispositivos grcos comc e a putadorizados, enquanto que a representaao discreta cont c nua o formato mais e conveniente para grande parte das operaes com imagens, j que a funo imagem co a ca assume valores de pontos utuantes (GOMES J.; VELHO, 2002).

23

Figura 3: Processo de aquisiao de uma imagem. Fonte: (MELLO, ANO) c

Aps a realizao das etapas de amostragem e da quantizao, o resultado o ca ca uma imagem digital (sinal digital), isto , discretizaao das coordenadas (x, y) e e c codicadas em uma matriz de nmeros inteiros (M xN ). A Figura 4 ilustra a matriz u de codicao de uma imagem sendo que M representa a resoluo vertical e N , ca ca a resoluao horizontal. Cada elemento da matriz corresponde a um elemento da c imagem, pixels ou pel (picture element). Os elementos da imagem correspondem exatamente nas coordenadas dos pixels e das informaes contidas em cada posio co ca (GOMES J.; VELHO, 2002). Essas duas funes esto relacionadas com resoluo co a ca espacial e resoluao da cor, respectivamente. c

Figura 4: Matriz M xN como representaao de uma imagem. Fonte: (MELLO, c ANO)

24

3.2 Processamento de Imagens aplicado ao Reconhecimento Automtico de Placas de Automveis


No campo do reconhecimento otico de caracteres existem vrias tcnicas para a e a segmentaao e o reconhecimento dos caracteres em uma imagem. Entre os vrios c a algoritmos existentes, os mais comuns so os baseados na realizao de uma proa ca jeo vertical dos pontos da imagem e na anlise do histograma gerado. Alguns ca a mtodos de processamento digital de imagens podem ser utilizados neste trabalho, e so eles: a

3.2.1 Aquisio da Imagem


Aquisiao da Imagem: a qualidade da imagem fundamental para o sucesso do c e sistema elaborado, pois uma imagem de baixa resoluao, por exemplo, pode fazer c com que o programa torne-se incapaz de executar a fase de segmentaao ou de c reconhecimento (SOUZA, 2000). A Figura 5(a) ilustra uma imagem considerada de baixa qualidade e a Figura 5(b) demonstra uma imagem considerada de qualidade adequada.

SITE6,

Figura 5: Qualidade da Imagem. Fonte: (SITE5, Retirado em 05 de junho de 2008; Retirado em 10 de junho de 2008)

3.2.2 Realce
E utilizado com o objetivo de salientar caracter sticas relevantes para o processo de classicaao. Aumentando o contraste da imagem de uma placa, por c exemplo, poss tornar mais evidente a separaao entre os caracteres pertene vel c centes a mesma imagem. Na Figura 6(a) apresentado um exemplo da placa com e

25

baixa luminosidade e, na Figura 6(b), a mesma imagem aps aplicaao do aumento o c de contraste.

Figura 6: Realce da Imagem. Fonte: (PASTORE F. M.; OLIVEIRA, ANO)

3.2.3 Remoo de rudos


Usado para eliminar ou reduzir as informaoes esprias preexistentes na aquisio c u ca original da imagem ou introduzidos durante a captura.

3.2.4 Binarizao
Consiste na modicao da imagem para apresentar apenas tons de preto e ca branco, utilizando a Equaao 3.1. c

ImgBin(i, j) =

se Img(i, j) =< LM

(3.1)

255 na Img(i, j) > LM

sendo 0 e 255 os valores dos pixels da imagem binarizada (ImgBin), i e j so a as coordenadas do pixel na imagem original Img, e LM o limite que determina e a partir de qual regio a cor do pixel ter o valor de limiar 255 ou 0. O resultado a a da binarizaao ilustrado na Figura 7. c e

Figura 7: Binarizaao da Imagem. Fonte: (SITE7, Retirado em 15 de junho de c 2008)

26

3.2.5 Projeo das letras


Consiste na contagem dos pixels existentes em uma determinada linha ou coluna. O resultado da projeo horizontal e vertical de uma placa mostrado na ca e Figura 8. E necessrio realizar as duas projees por 2 motivos: primeiro, a proa co jeo horizontal permite que se determine a posio inicial e nal das letras no ca ca eixo y, facilitando a projeao vertical; e, segundo, ela permite que caracteres que c possuem projeoes verticais semelhantes sejam separados (FUJISAWA H.; NAKANO, c 1992).

Figura 8: Projeoes Horizontal e Vertical. Fonte: (BELVISI R.; FREITAS, ANO) c

3.2.6 Segmentao
Depois de realizadas as projeoes, os caracteres so segmentados para serem c a identicados. No processo de segmentaao feito uma varredura vertical de forma c e a localizar o in e o m dos caracteres a serem reconhecidos e depois um rascio treamento dos espaos em branco entre os caracteres. Com isso poss separar c e vel os caracteres. A Figura 9 mostra o resultado de uma segmentao. ca

27

Figura 9: Segmentaao dos Caracteres. Fonte: (SITE8, Retirado em 15 de junho c de 2008)

3.3 O Problema da Localizao da Placa na Imagem Capturada


Localizar a placa do automvel em uma imagem consiste em encontrar a regio o a que contm os caracteres que o identicam unicamente. Resolver esse problema e requer a elaboraao de uma estratgia de busca que procure por padres que aponc e o tem a ocorrncia da placa na cena, o que uma tarefa extremamente complicada. e e As placas podem aparecer nas mais diversas condies: sujas, tortas e at mesmo co e amassadas. Mais do que ter sua estrutura f sica comprometida, a placa tambm e pode ter tamanhos e cores diferentes, sem contar o estilo de seus caracteres, que pode variar de uma para a outra. A estratgia tambm deve se preocupar com a e e maneira em que a placa aparece na cena, isto , deve levar em conta questes como e o angulo de rotao e perspectiva, tamanho, resoluao e iluminaao (Figura 10). O ca c c
trabalho de (POLIDORIO, 1997) apresenta, em mais detalhes, as diculdades do

problema de localizaao. c Grande parte das abordagens em localizao de placas de ve ca culos procura por padres como: a forma da placa (LOTUFO R. A.; MORGAN, 1990; COWELL, 1995; o
SARFRAZ M.; AHMED,

2003), concentrao ou agrupamentos (clusters) de cores ca

(NIJHUIS J. A. G.; BRUGGE, 1995; RAHMAN C. A.; BADAWYE, 2003), sequncias e de caracteres de comprimento xo (PARKER J. R.; FEDERL, 1996) ou ainda, assi-

28

Figura 10: Problemas com as placas. Fonte: (SITE1, Retirado em 10 de junho de 2008; SITE2, Retirado em 10 de junho de 2008; SITE3, Retirado em 10 de junho de 2008; SITE4, Retirado em 10 de junho de 2008)

naturas em escala de cinza (BARROSO J.; BULAS-CRUZ, 1997b, 1997a; CASTELLO


P.; COELHO,

1999) e variaoes (SETCHELL, 1997; SOUZA F. P. C.; SUSIN, 2000). No c

entanto, observa-se aqui que, de todos os padres presentes na placa do ve o culo, o texto aquele que melhor se preserva nas condies mais variadas, por ser mais e co presente e redundante. Dessa forma, a localizaao da placa pode se dar em duas c etapas: a primeira deve produzir uma representao da imagem que destaque poca tenciais fragmentos de texto (sequncias de caracteres como palavras ou frases), e e a segunda deve procurar qual (ou quais) dos fragmentos realmente corresponderiam ` placa, realizando uma anlise posterior sobre os fragmentos encontrados. a a O trabalho de (CLAUDINO, 2005) apresenta um mtodo de segmentaao de imae c gens para lidar com a primeira etapa, cujo objetivo reduzir uma cena real a um e conjunto de regies que devem ser consideradas texto a partir do momento que o satisfaam trs principais condioes: c e c

29

serem principalmente formadas por bordas verticais; serem alongadas; apresentarem transioes (ou bordas) distribu c das regularmente por toda sua extenso. a Como pode ser observado em outros trabalhos, o texto modelado como um e padro de textura (WU V.; MANMATHA, 1999) e caracterizado atravs da dea e e composiao QMF wavelet (ETEMAD K.; DOERMANN, 1997; JAIN A. K.; YU, 1998; c
MENOTI,

2003). Na presente abordagem, a segmentao realizada mantendo-se ca e

apenas as imagens das sub-bandas verticais, que so borradas e posteriormente a binarizadas. Aps isso, regies oito-conectadas so selecionadas de acordo com seu o o a comportamento espacial. As regies resultantes so mapeadas de volta ao dom o a nio espacial, quando se tornam fragmentos de texto candidatos. Os verdadeiros fragmentos de texto so escolhidos de acordo com a regularidade e distribuio de a ca suas transies. Essas duas caracter co sticas so extra a das da prpria imagem do o fragmento, em um passo nal.

30

Utilizando PCA para Identicar os Caracteres da Placa

4.1 Requisitos Tericos


Nesta seo dar-se- uma breve introduo matemtica para servir de fundo `s ca a ca a a competncias que sero necessrias para compreender o processo de PCA. Estes e a a requisitos se fazem necessrios para a compreenso do algoritmo utilizado para a a aplicar a PCA. Por se tratar de uma tcnica matemtica da algebra linear, aplicada e a a matrizes, todos os conceitos extra dos foram retirados do trabalho A Tutorial on Principal Component Analysis, que explica todo os funcionamento do algoritmo do PCA (SMITH, 2002).

4.1.1 Mdia Aritmtica


A mdia aritmtica por deniao a soma de elementos de um mesmo cone e c e junto dividida pelo nmero de elementos deste conjunto, da Equao 4.1, tem-se u ca a frmula, para dar um tratamento matemtico: o a
n i=1

X=

Xi

(4.1)

Sendo n o nmero de elementos do conjunto de dados, e X o valor de cada u valor do conjunto de dados. Realizar este clculo fundamental para a tcnica PCA, pois um resultado a e e e importante e empregado em diversas equaoes posteriores. e c

31

4.1.2 Desvio Padro


O desvio padro uma medida de disperso de um conjunto de dados. Esse a e a valor capaz de traduzir quo disperso o conjunto de dados em relaao ao seu e a e c valor mdio. Da Equaao 4.2, dar-se- o devido tratamento matemtico para a e c a a obtenao deste resultado: c
n i=1 (Xi

s=

X)2 (n 1)

(4.2)

Este clculo no ser empregado diretamente ao algoritmo de PCA, porm a a a e faz-se necessria a sua explicao para que se entenda o conceito empregado em a ca outros clculos do algoritmo. a

4.1.3 Varincia
A varincia, assim como o desvio padro, uma medida capaz de traduzir a a a e disperso dos dados em relao a mdia do conjunto de dados. Da Equaao 4.3, a ca e c e evidente que a varincia exatamente igual ao quadrado do desvio padro, como a e a o modelo matemtico abaixo exemplica: a
n i=1 (Xi

s =

X)2 (n 1)

(4.3)

Para a tcnica PCA, esse clculo ser realizado de uma maneira particular nos e a a casos em que o conjunto de dados possu rem apenas uma dimenso. Para a tcnica a e PCA ser empregada a conjuntos de dados com mais de uma dimenso, esse clculo a a no ser efetuado, sendo substitu pelo clculo da covarincia. a a do a a

32

4.1.4 Covarincia
A covarincia, assim como a varincia e o desvio padro, uma medida de a a a e disperso dos dados com relaao a sua mdia. Porm as duas ultimas so medidas a c e e a utilizadas com relao a apenas uma dimenso, sendo necessrio calcular uma ca a a medida diferente para cada dimenso. A covarincia uma medida que relaciona a a e sempre duas dimenses entre si, relacionando o quo disperso o conjunto de dados o a e com relaao as duas dimenses. Se a covarincia for calculada para uma dimenso c o a a ela ser na realidade a varincia do conjunto de dados. Da Equaao 4.4, dar-se- a a c a o devido tratamento matemtico: a
n i=1 (Xi

cov(X, Y ) =

X)(Yi Y ) (n 1)

(4.4)

Na PCA, este resultado ser de fundamental importncia, pois deste rea a e sultado que se constri a matriz de covarincia, que o conjunto de dados de o a e maior signicncia na PCA. Esse conjunto representa de maneira matemtica o a a comportamento dos dados ou o padro que estes dados seguem, extraindo a sua a caracter stica.

4.1.5 A Matriz Covarincia


A matriz covarincia, como j citado, o conjunto de dados extra a a e dos do conjunto original, que extrair deste ultimo o seu padro, conservando a caracter a a stica fundamental dos dados com relaao a dimensionalidade dos mesmos. A covarincia c a s faz sentido se calculada para duas dimenses. Todavia, se um conjunto de dados o o composto por mais de uma dimenso em seus dados, faz-se necessria a formaao e a a c de uma matriz covarincia, sendo esta composta pelos resultados obtidos do cla a culo da covarincia para duas dimenses, tomadas duas a duas, formando assim a o esta matriz.

33

A t tulo de exemplo, demonstrar-se- como ser montada a matriz covarincia a a a para um conjunto de dados compostos por trs dimenses. e o

cov(x, x) cov(x, y) cov(x, z) cov(z, x) cov(z, y) cov(z, z)

C = cov(y, x) cov(y, y) cov(y, z)

(4.5)

A t tulo de algoritmo, importante deixar claro que, para melhorar o deseme penho do software a ser elaborado, far-se- necessria a utilizaao das propriedades a a c matemticas da covarincia, sendo neste caso espec a a co daquela que diz que no a importa a ordem em que as dimenses entram na frmula matemtica; o resultado o o a da covarincia para duas dimenses ser sempre o mesmo. Em outras palavras, a a o a covarincia de X e Y ser a mesma de Y e X. a a

4.1.6 Autovalores e Autovetores


Os autovalores e os autovetores, para a tcnica PCA sero os componentes e a que chamaremos de componentes principais, pois eles sero subconjuntos de dados a extra dos a partir da matriz covarincia e, sero os componentes de estudo na a a tcnica. e Os autovalores classicam-se como valores de signicncia de cada autovetor a correspondente, ou seja, cada autovetor tem em seu autovalor o peso, ou a signicncia da tendncia dos dados com relao ao conjunto de dados. a e ca Os autovetores, de uma viso matemtica, so as diferentes direoes que um a a a c conjunto de dados apresenta, demonstrando qual a tendncia deste conjunto de e dados. Da matemtica, o conceito de autovalores e autovetores retirado a partir da a e seguinte concepao: dada uma matriz, diz-se que a transformao empregada a c ca esta matriz gera como resultado um nmero real ou escalar, multiplicado a esta u mesma matriz. Ao nmero real dar-se- o nome de autovalor e ao vetor dar-seu a

34

a o nome de autovetor. Da Equaao 4.6 abaixo, dar-se- o devido tratamento c a matemtico: a

T (v) = Av = v

(4.6)

T (v) a operao que transforma o vetor v; A chamado de autovetor e o e ca e e autovalor. Fazendo-se uso das propriedades da algebra linear, extrai-se a seguinte Equaao 4.7 mais simplicada: c

(A I)v = 0 Sendo I a matriz Identidade. e

(4.7)

Mais uma vez fazendo-se uso da aplicao das denies da algebra linear, ca co extrai-se a Equaao 4.8 que gerar um polinmio onde as ra dele sero os autoc a o zes a valores. Abaixo, apresenta-se a Equao 4.8, para o devido tratamento matemtico: ca a

det(A I) = 0

(4.8)

Como resultado da soluao do polinmio caracter c o stico dessa equao se exca traem os autovalores, e a partir destes, por substituiao, obtm-se os autovetores. c e Para a tcnica PCA far-se-o necessrios todos estes clculos e a utilizaao de e a a a c mtodos matemticos para a soluo de polinmios, para, assim, se obter os aue a ca o tovalores e autovetores. Estes clculos que necessitam de uma maior capacidade a e de processamento, para que o algoritmo de PCA tenha um alto desempenho.

4.2 Anlise em Componentes Principais


A Anlise em Componentes Principais consiste em uma tcnica que transforma a e um conjunto de dados em um novo conjunto de dados de menor dimenso que o a

35

conjunto de dados inicial, sem perda signicativa de informaao ou caracter c stica. Deste ponto em diante analisar-se- o funcionamento desta transformao, exema ca plicando como o algoritmo opera e quais resultados sero obtidos em cada etapa. a

4.2.1 Conjunto de Dados


Para exemplicar os passos do algoritmo, tomou-se certo conjunto de dados ct cios, a m de demonstrar a primeira operaao a ser realizada. Como exemplo, c utilizou-se o seguinte conjunto de dados (D): X 2,5 0,5 2,2 1,9 3,1 2,3 2,0 1,0 1,5 1,1 Y 2,4 0,7 2,9 2,2 3,0 2,7 1,6 1,1 1,6 0,9

Tabela 1: Conjunto de Dados Original (D)

4.2.2 Subtraindo da mdia


O primeiro procedimento executado pelo algoritmo ser o clculo da mdia a a e aritmtica de cada dimenso a ser analisada. E a partir destas mdias calculadas, e a e calcular-se- um novo conjunto de dados, onde este ser composto pela diferena a a c entre os elementos de cada dimenso menos a mdia aritmtica daquela determia e e nada dimenso. a

36

Figura 11: Distribuiao do Conjunto de Dados (D). Fonte: (SMITH, 2002) c

A partir desta operaao, obter-se- um novo conjunto de dados (D) que possui c a a mesma dimenso e quantidade de dados que o conjunto de dados original (D). a X 0,69 -1,31 0,39 0,09 1,29 0,49 0,19 -0,81 -0,31 -0,71 Y 0,49 -1,21 0,99 0,29 1,09 0,79 -0,31 -0,81 -0,31 -1,01

Tabela 2: Novo Conjunto de Dados (D)

4.2.3 Calculando a Matriz Covarincia


A matriz covarincia a segunda transformaao que o conjunto original de a e c dados sofre. A partir desta transformaao que ocorre a compactaao dos dados c e c e a reduao da dimensionalidade, sem a perda de informaes. c co

37

A matriz covarincia uma matriz quadrada. O nmero de elementos desta a e u matriz determinado pelo quadrado das dimenses do conjunto de dados. Do e o conjunto de dados original (D), extrai-se a seguinte matriz covarincia: a

cov =

0, 616555556 0, 615444444 0, 615444444 0, 716555556

(4.9)

4.2.4 Calculando os Autovetores e o Autovalores da Matriz Covarincia


De posse da matriz de covarincia calculam-se os autovalores e os autovetores a para esta matriz. Estes so de grande importncia, pois eles guardam informaes a a co relevantes ao conjunto de dados. Abaixo vemos os autovalores e autovetores:

cov =

0, 0490833989 1, 28402771

(4.10)

cov =

0, 735178656 0, 677873399 0, 677873399 0, 735178656

(4.11)

Os autovetores so utilizados para encontrarmos as caracter a sticas de relacionamento do conjunto de dados. Observe a Figura 12. Dela observa-se o conjunto de dados D plotado, e sobre este, de forma tracejada, observamos os dois autovetores. Pode-se observar que um dos autovetores forma um caminho mdio pelo conjunto e de dados D, tal como a melhor aproximaao. J o segundo autovetor separa os c a dados em dois lados, nos mostrando a quantidade de pontos prximos ao primeiro o autovetor. Porm esta anlise secundria e menos importante que a primeira. e a e a O processo de clculo dos autovetores da matriz covarincia utilizado, ento, a a e a para a extraao das linhas de caracter c sticas do conjunto de dados.

38

Figura 12: Autovetores plotados sobre o Conjunto de Dados D. Fonte: (SMITH, 2002)

4.2.5 Escolhendo as componentes e formando um vetor de caractersticas


Neste ponto do algoritmo que ocorre a compresso dos dados e, como consee a qncia, a reduo de dimensionalidade dos dados. ue ca Analisando os autovetores e os autovalores obtidos na seao anterior, pode-se c notar que os autovalores so muito diferentes entre si. O autovetor com maior a autovalor correspondente o que carrega a parte mais signicativa da informaao. e c Em geral, o funcionamento do algoritmo neste ponto extrair da matriz coe varincia os autovetores e seus correspondentes autovalores. E ento ordenar os a a autovetores por seus autovalores, do maior para o menor. Assim ter-se- um vetor a ordenado, do maior grau de signicncia para o de menor grau. Este vetor o a e vetor que chamamos de Vetor das Componentes Principais. Para a reduao de dimensionalidade dos dados, o que se faz nesta etapa do alc goritmo ignorar os autovetores de menor signicncia. Assim, se perder alguma e a a informao. Porm esta informao perdida ser a de menor grau de importnca e ca a a cia para o conjunto de dados. Com isto, o conjunto nal de dados formado ter a um nmero de dimenses menor do que o conjunto original, ocorrendo assim a u o

39

reduao de dimensionalidade. Para o exemplo utilizado, obtemos o seguinte vetor c caracter stica:

0, 677873399 0, 735178656 0, 735178656 0, 677873399

(4.12)

Este vetor a prpria matriz de autovetores. No entanto, para a reduao da e o c dimenso dos dados, desconsiderar-se- o autovetor de menor autovalor. Desta a a forma obtm-se o seguinte vetor caracter e stica:

0, 677873399 0, 735178656

(4.13)

4.2.6 Formando o Novo Conjunto de Dados


Esta a ultima etapa do algoritmo, e tambm a mais fcil. Aps a escolha dos e e a o componentes principais obtm-se o vetor caracter e stica. Para se obter o conjunto de dados nal, com a reduao da dimenso, basta realizar a operaao representada c a c pela Equao 4.14. ca (ConjuntoF inal) = (V etorCaracterstica)X(ConjuntoD ) (4.14)

Sendo que o Vetor Caracter stica a matriz contendo os autovetores selecionae dos, porm, este vetor foi transposto. O mesmo ocorreu com o Cojnuto D, que e tambm deve ser transposto, com a nalidade de agilizar os clculos e diminuir o e a esforo computacional. O Conjunto Final ser uma matriz composta da seguinte c a forma: cada linha uma dimenso e cada coluna um conjunto de dados. e a

40

4.2.7 Recompondo os dados originais


Para a reconstruao dos dados originais basta realizar o clculo representado c a pela Equao 4.15: ca (ConjuntoD) = [(V etorCaracterstica)T X(ConjuntoF inal)] + (M edia) (4.15) Sendo que a Mdia a matriz mdia de cada dimenso. Se forem utilizados nos e e e a clculos todos os autovetores, o Conjunto Original ser obtido exatamente igual ao a a Conjunto aplicado no inicio do algoritmo. No entanto, se algum autovetor for desconsiderado, o Conjunto Original obtido ser diferente do Conjunto inicial, porm a e a diferena ser desprez tanto quanto proporcional ao autovetor desprezado. c a vel

4.3 Exemplo do uso de PCA para Reconhecer Faces


Aps as etapas de tratamento da imagem, que neste caso fez-se a transformaao o c da imagem colorida para tons de cinza, inicia-se o processo de transformaao da c imagem pelo algoritmo de PCA. Inicialmente transforma-se uma imagem, uma matriz de pixels, em um vetor de pixels, conforme mostrado pela Figura 13.

Figura 13: Matriz de Pixels para Vetor de Pixels. Fonte: (MELO G.; SOUTO, 2004)

Cada face que ser armazenada na base de dados sofrer este processo, a m a a de obter uma matriz que ser chamada de Matriz de Faces, Figura 14. a

41

Figura 14: Matriz de Faces. Fonte: (KITANI E. C.; THOMAZ, 2005)

Dessa Matriz de Faces, calculada a chamada Face Mdia, que nada mais e e e que a mdia aritmtica de todas as faces. A Figura 15 mostra um exemplo de face e e mdia: e

Figura 15: Mdia Aritmtica das Faces. Fonte: (KITANI E. C.; THOMAZ, 2005) e e

Uma vez obtida a face mdia, realiza-se a operaao de subtraao de cada uma e c c das faces contidas na Matriz de Faces da Face Mdia, gerando, desta forma, uma e nova Matriz de Faces. Dessa nova matriz que ocorre a reduao da dimensioe c nalidade, ocorrendo a extrao de uma matriz covarincia, e dessa, o clculo dos ca a a autovalores e autovetores. Dos classicadores, os autovetores e autovalores de cada face constituem-se uma Matriz de Faces com reduao de dimensionalidade. Nessa nova matriz consc taro apenas os componentes necessrios para a identicao da face, ou seja, os a a ca de maiores relevncia. a Para o processo de identicaao de faces, uma nova imagem dever ser adquirida c a pelo sistema, e esta imagem deve passar por todo o processo j descrito, at que a e sejam extra dos os seus autovetores e autovalores, que so os classicadores para a esta imagem. E para a comparao desta imagem com as outras se utiliza a tcca e

42

nica da comparaao dos classicadores um a um, por mtodos matemticos, como c e a a distncia euclidiana entre dois pontos. Atravs da menor diferena entre os clasa e c sicadores que se realiza a identicao do individuo. A mesma idia a que se e ca e e pretende empregar neste trabalho, pois tanto a face quanto os caracteres tem um padro denido. a

4.4 A funo da Anlise de Componentes Principais neste trabalho


Neste trabalho o objetivo principal da tcnica PCA reconhecer o padro dos e e a caracteres das placas dos ve culos automotores. Para que o reconhecimento ocorra de maneira ideal, o primeiro passo do sistema ser adquirir da imagem da placa dos a ve culos os caracteres, e esses devem ser separados em imagens menores e atravs e de tcnicas de tratamento de imagens torn-los monocromticos. e a a Com os caracteres separados, cada um deles deve ser transformado em uma matriz, para que sejam processados pelo algoritmo de PCA. Aps se determinar os o vetores caracter sticas extra dos de cada caractere, compara-se esses vetores com os vetores caracter sticas j armazenados na base de dados do sistema, comparando-se a com a margem de erro estipulada, a m de determinar qual caractere foi localizado e, desta forma, gerar uma seqncia de caracteres traduzindo a informao extra ue ca da da imagem do carro com a informao previamente cadastrada. ca O conceito deste software basicamente se comportar como um software OCR e - Optical Characther Recognition - que um sistema capaz de traduzir imagem e de textos em caracteres. E desta forma identicar o carro previamente cadastrado na base de dados.

43

O Funcionamento e Arquitetura do Sistema

5.1 Introduo
Como referncia de comparaao para as imagens das placas, adotou-se os e c padres de fontes utilizadas nos caracteres de placas de ve o culos: Din 1451 Mittelschrift (utilizada nas placas mais antigas) e Mandatory (novo padro desde a 1o de agosto de 2007). Como descrito no Cap tulo 2, este novo padro foi adotado a pelo CONTRAN para facilitar a identicaao dos caracteres e sua nalidade a c e padronizaao nacional das placas, visto que existem inmeras fora dos padres, c u o como ser mostrado nos prximos cap a o tulos. Os nmeros e letras so mais bem u a denidos e com contornos mais fortes. O Figura 41, apresentada como anexo a este trabalho, mostra a diferena entre estes 2 padres. c o Para tentar resolver o problema apresentado por este trabalho, foi elaborado uma metologia (arquitetura) para os algoritmos do sistema. A Figura 16 apresenta o diagrama de uxo dos dados para o melhor entendimento da metodologia aplicada neste trabalho. Por algumas razes, os resultados no foram exatamente iguais aos o a esperados pelos desenvolvedores do tema. Por isso algumas etapas apresentadas por esta metodologia no foram aplicadas, mas mesmo assim segue abaixo uma a explicaao mais detalhada dos itens presentes na arquitetura. c Fase 1 - Captura da Imagem do Ve culo: Foi proposto pelo trabalho utilizar uma cmera de vigilncia comum para capturar a imagem do ve a a culo,

44

mas no permitido tirar foto das placas de ve a e culos sem ordem judicial e implementar um sistema deste, para esta nalidade, seria nanceiramente invivel e no haveria tempo hbil para sua implementao, visto que ele a a a ca no era o foco do trabalho. E para substituir este recurso, foi utilizado uma a cmera digital comum para capturar as imagens das placas de testes, de a alguns ve culos, com autorizaao prvia dos donos; c e

Figura 16: Arquitetura do Sistema de deteco de placas atravs da tcnica PCA. ca e e

Fase 2 - Processamento Digital da Imagem: Como mencionado nos cap tulos anteriores, a seleao da placa na imagem capturada , sem dvida, a parte c e u mais dif de ser implementada. Mas para tentar resolver este problema, cil foi utilizado um software de Processamento Digital de Imagens em conjunto com linguagem de programa Visual Basic .Net: o RoboRealm foi capaz de selecionar as placas de algumas imagens capturadas. Este algoritmo de seleao c de placas ser desrito na prxima seo, ainda neste cap a o ca tulo; Fase 3 - Segmentaao dos Caracteres: De posse da imagem da placa, c e necessrio segmentar os caracteres, e para isso foi desenvolvido um algoa ritmo em MatLab R , que faz esta segmentao com uma grande performance ca e preciso. Este algoritmo tambm ser descrito com maiores detalhes, ainda a e a neste cap tulo;

45

Fase 4 - Aplicaao da Tcnica PCA: J com os caracteres segmentados, o c e a algortimo em MatLab R do PCA faz todo o trabalho matemtico e tenta a investigar os padres existentes entre os caracteres e as referncias, e assim, o e encontrar os resultados; Fase 5 - Interface com o Usurio: O propsito desta interface mostrar ao a o e usurio os resultados das aplicaces de cada etapa da metologia, e assim o a o usurio verica o trabalho que est sendo executado. Mas como a nalidade a a principal validar o PCA para encontrar padres em caracteres, esta etapa e o foi deixada para ser implementada como uma futura melhoria para o sistema.

5.2 Processamento Digital da Imagem - Seleo da Placa


Para o sistema de captura de imagens de placas de ve culos automotivos, utilizou-se uma base de dados livre, composta por 100 imagens (SITE11, Retirado em 15 de junho de 2008), e ainda, algumas fotos capturadas por cmera a digital convencional. Algumas imagens da base de dados foram eliminadas manualmente aps a aplicaao dos ltros no RoboRealm, pois elas no possu o c a am a placa do ve culo ou a placa estava completamente ileg vel. Aps este trabalho o restaram 65 placas como base de imagens para a prxima etapa do sistema que o e a Segmentao dos Caracteres. ca Essas imagens foram utilizadas para simular o sistema que seria responsvel a pela aquisio das imagens dos ve ca culos. Como esse sistema secundrio ao trae a balho, utilizou-se essas imagens a m de simplicar esta etapa.

5.2.1 O RoboRealm
O Roborealm uma poderosa ferramenta para aplicaes em viso computae co a cional, processamento de imagens e tarefas para controle robtico. Esta ferramenta o foi desenvolvida para se tornar fcil a aplicaoes de ltros para processamento de a c imagens e controle robtico. A verso utilizada deste software (v1.8.23.10), uma o a e verso livre. Maiores informaoes podem ser obtidas pelo site www.roborealm.com. a c

46

O Roborealm uma poderosa ferramenta para softwares com aplicaoes em e c viso computacional, processamento de imagens e tarefas para viso de robos. a a Esta ferramenta foi desenvolvida para se tornar fcil a aplicaoes de ltros para a c processamento de imagens e controle de robos. Este software um processador de imagens que contm todas as ferramentas e e necessrias para o processamento de imagens para viso computacional. Este a a software simples o suciente para iniciantes o utilizarem e poderoso o suciente e para que aplicaes mais avanadas possam ser desenvolvidas. co c O corao do processamento de imagens do Roborealm a estrutura de utica e lizaao dos mdulos de ltros utilizados para o processamento de imagens. Esta c o estrutura permite que vrios ltros possam ser aplicados sequencialmente a imagem a e a facilidade em se alterar a ordem de execuo destes ltros torna esta ferramenta ca extremamente exivel para se criar os mais diferentes resultados. (ROBOREALM, 2008)

Figura 17: A interface do software Roborealm.

Todo este poder de processamento de imagens, ainda pode ser utilizado junto a uma linguagem de programaao como, Visual Basic, C++, Java, entre outras. c Esta integraao realizada atravs de uma biblioteca. Com esta ferramenta podec e e se ter todo o poder de processamento do Roborealm em um software dedicado.

47

5.2.2 A Interface com o RoboRealm


Para o tratamento das imagens utilizou-se a interface do software RoboRealm com o software de linguagem de programao Visual Basic .Net. Essa interface foi ca responsvel por dois passos no processamento das imagens. Em um primeiro moa mento, como interface responsvel pelo algoritmo de extrao da placa do ve a ca culo na imagem, e em um segundo momento, como sistema utilizado para redimensionar os caracteres extra dos das imagens das placas.

5.2.2.1 Algoritmo de extrao da placa na imagem


Para a primeira etapa do sistema, desenvolveu-se um algoritmo capaz de extrair da imagem do ve culo apenas a placa do ve culo. Essa primeira etapa do sistema ilustrada, com mais detalhes, pelo uxograma da Figura 18. e

Figura 18: Fluxograma do Algoritmo de Seleo da Placa na Imagem Capturada. ca

48

Para a obtenao desse algoritmo, inicialmente, realizou-se um estudo das cores c na imagem, criando, assim, um ltro capaz de isolar a placa do ve culo do restante da imagem. Com base nessa anlise foi poss classicar as imagens dos ve a vel culos em dois tipos: imagens de ve culos claros e imagens de ve culos escuros. Para essa separao, utilizou-se o ltro estat ca stico de cores contido no RoboRealm e atravs e da anlise da varivel de varincia das cores, realizou-se a classicaao: 1 - imagens a a a c com ve culos claros; 2 - imagens com ve culos escuros. Os ltros responsveis por extrair da imagem as placas dos ve a culos so constia tu dos de uma sequncia de ltros processados pelo RoboRealm. Ambos os ltros e tm como objetivo criar um retngulo branco exatamente sobre a placa do ve e a culo na imagem, a m de identic-la. Realizado esse processo, obtm-se as coordea e nadas da regio onde a placa se encontra na imagem e, aps a obtenao dessas a o c coordenadas, extrai-se a regio da imagem original. a A Figura 19 mostra o RoboRealm aplicando os ltros, e as Figuras 20, 21 e 22 mostram o Visual Basic .Net interagindo com o RoboRealm para aplicar o algoritmo descrito. Em anexo, a Figura 42 at 53 so exemplos da aplicaao do e a c algoritmo de seleao da placa na imagem. c

Figura 19: RoboRealm aplicando alguns ltros a Imagem Original do Ve culo.

49

Figura 20: Visual Basic .Net interagindo com o RoboRealm - Passo 1 do Algoritmo.

Figura 21: Visual Basic .Net interagindo com o RoboRealm - Passo 2 do Algoritmo.

50

Figura 22: Visual Basic .Net interagindo com o RoboRealm - Passo 3 do Algoritmo.

5.2.2.2 Algoritmo de redimensionamento da imagem do caractere


Este algoritmo fez-se necessrio para manter um tamanho padro entre os a a caracteres extra dos das imagens dos ve culos. Para esse procedimento, utilizou-se o ltro de redimensionamento j existente no RoboRealm. O uxograma da Figura a 23 demonstra com mais detalhes o algoritmo. Este sistema bem simples, aplicando o ltro de redimensionamento a imagem e ` do caractere, redimensionando a mesma e salvando-a novamente. Todos os caracteres foram redimensionados para o tamanho de 100x100 pixels. Este tamanho foi adotado aleatoriamente, sem nenhum estudo prvio do mesmo, visto que o mesmo e no iria interferir no procedimento de identicao dos caracteres, j que a base a ca a utilizada como referncia no reconhecimento dos caracteres tambm foi redimene e sionada por este mesmo algoritmo.

51

Figura 23: Fluxograma do Algoritmo de Redimensionamento dos Caracteres que compem a Placa. o

5.2.3 Diculdades na identicao da placa


A maior diculdade encontrada nesta etapa do processo foi a extraao da imac gem da placa de ve culos claros. Esta diculdade surgiu devido a baixa resoluao ` c das imagens utilizadas, pois a placa do ve culo se confundia, na maioria dos casos, com a frente do ve culo, o que dicultou a extrao e identicaao da mesma. ca c Utilizando uma resoluao maior foi poss melhorar o desempenho do algoritmo c vel e extrair algumas placas. Entretanto, no foi um resultado satisfatrio. a o Para a extrao de imagens de ve ca culos claros, necessita-se de um maior estudo dos ltros, para que possa ser poss extrair a imagem da placa sem confundi-la vel com a cor do ve culo.

52

5.2.4 Resultados obtidos para a extrao das placas


No sistema de extraao das placas de ve c culos o resultado foi satisfatrio para o carros escuros, visto que, nesses casos, a taxa de acerto foi de 100%. No entanto, na extraao da placa para ve c culos claros, a taxa de acerto foi de 50%, no sendo a um resultado satisfatrio. o De todas as imagens processadas pelo sistema de extrao de placas, obteve-se ca 65% de aproveitamento, resultado este, considerado no satisfatrio. Mas, com a o o sucesso obtido nos ltros para ve culos escuros, demonstra-se claramente que o algoritmo deciente em identicar placas de ve e culos claros. Para esta etapa, ca como melhoria para trabalhos futuros a implantaao de c um ltro mais eciente em encontrar a regio da placa na imagem, independentea mente da cor do ve culo.

5.3 Segmentao dos Caracteres


A Segmentao dos Caracteres , sem dvida, uma das principais partes do ca e u Sistema de Reconhecimento de Placas de Ve culos. Como foi apresentado pela teoria, muito mais fcil para o algoritmo comparar letra com letra e nmero com e a u nmero, do que comparar a placa como um todo. Portanto a Segmentaao dos u c Caracteres se torna essencial para o bom funcionamento do sistema.

5.3.1 O Algoritmo
A Segmentao poderia ter sido aplicada tambm utilizando o RoboRealm e ca e o Visual Basic .Net. Mas, decidiu-se utilizar o MatLab R , pois a tcnica escolhida e para se fazer a Segmentaao dos Caracteres foi a das Projeoes Vetical e Horizonc c tal. E, utilizando o MatLab R , caria extremamente simples de implementar esta tcnica. e

53

O princ pio deste algoritmo bem fcil de ser entendido. Ele est baseado na e a a utilizaao das Projees Horizontal e Vertical. Basicamente o que acontece : a c co e Projeao Horizontal obtm como resposta as coordenadas Y1 e Y2 que informam c e a altura exata dos caracteres; a Projeao Vertical obtm como resposta as coorc e denadas X1 e X2 de cada caractere. De posse dessas 4 coordenadas para cada caractere, poss segmentar com perfeiao os caracteres. A Figura 24 mostra e vel c com mais detalhes este processo.

Figura 24: Processo de Segmentaao dos Caracteres que compem a Placa. c o

O uxograma da Figura 25 demonstra com mais detalhes o algoritmo como um todo.

Figura 25: Fluxograma do Algoritmo de Segmentao dos Caracteres que compem ca o a Placa.

54

5.3.2 Diculdades
Existem inmeras diculdades na Segmentaao dos Caracteres. Algumas so u c a descritas abaixo e devem ser levadas em considerao para a construao de um ca c algoritmo eciente: Seleo da Placa mal executada: como descrito anteriormente, na teoria ca a seleao da placa na imagem complicada de ser aplicada. Neste trabalho c e utilizado o RoboRealm e o Visual Basic .Net para fazer essa seleao, mas e c aps a seleao e aplicaao dos ltros, inmeros ru o c c u dos foram introduzidos na placa, o que dicultou a segmentaao dos caracteres; c Inclinao da Placa: deve ser levada em consideraao pelo algoritmo, ca c mas neste trabalho, as fotos utilizadas foram retiradas frontalmente, ou seja, evitando a inclinaao e consequentemente a necessidade do tratamento deste c problema. Baixa Resoluo: a baixa resoluo pode fazer com que os caracteres ca ca sejam completamente distorcidos aps a segmentao, e isto pode prejudicar o ca o processo de reconhecimento.

5.3.3 Resultados obtidos


Caso a etapa anterior, que faz seleo da placa na imagem, seja bem sucedida ca e o resultado esteja em padro aceitvel, a segmentaao ter como resultado os a a c a caracteres perfeitamente segmentados. Inmeros testes foram feitos e as respostas u deste algoritmo esto acima da expectativa e os resultados so extremamente saa a tisfatrios. o Ocorreram algumas segmentaoes incorretas, mas, nesses casos, as placas esc tavam em pssimas condioes de trabalho. e c

55

Figura 26: Exemplo 1 - Segmentaao dos Caracteres. c

As Figuras 26 e 27 mostram 2 exemplos de segmentaoes bem sucedidas. Rec pare que nessas 2 guras existem muitas sujeiras nas placas, mas, mesmo assim, o algoritmo consegue segmentar os caracteres perfeitamente.

Figura 27: Exemplo 2 - Segmentaao dos Caracteres. c

A Figura 28 mostra um exemplo mal sucedido da segmentaao dos caracteres, c mas repare que a placa est em pssima condiao visual. a e c

Figura 28: Exemplo 3 - Segmentaao dos Caracteres. c

56

5.4 Aplicao da Tcnica PCA


Aps o Processamento Digital das Imagens, calculou-se o PCA, ou seja, autoo valores e autovetores, de cada caractere no padro velho e no padro novo. Um fato a a importante a ser comentado que de acordo com a posiao do caractere na placa, e c poss e vel determinar se este um nmero ou uma letra, podendo desta forma e u criar algoritmos de comparao independentes para as letras e para os nmeros. ca u Desta forma, o desempenho do algoritmo foi melhorado, visto que no h necesa a sidade de comparao entre nmeros e letras; e tambm foi poss criar lgicas ca u e vel o de comparao diferentes entre letras e nmeros, pois os resultados de PCA para ca u eles foram bem diferentes, como ser mostrado adiante. a Os caracteres padres foram gerados e editados em Adobe Photoshop, para o conseguir uma certa perfeio para os mesmos, visto que os clculos desses padres ca a o serviro de base para a comparao entre os caracteres. As Projeoes Vertical e a ca c Horizontal foram geradas a partir destes caracteres. Sendo assim, para cada letra ou nmero existem trs resultados de autovalores e trs resultados de autovetores. u e e A Figura 29 exibe a letra A e suas respectivas projeoes vertical e horizontal. c

Figura 29: Caractere A, projeao vertical e projeo horizontal respectivamente. c ca

Isto foi feito para aumentar o nmero de resultados para a comparaao, visto u c que o PCA, como est sendo utilizado neste trabalho (apenas utilizando a cor a preta como base de informaoes), no oferece um grande nmero de componentes c a u principais para a anlise estat a stica dos resultados. O clculo de comparao do a ca autovalor da referncia com o autovalor do caractere descrito com mais detalhes e e ainda nesta seo. ca

57

5.4.1 Clculo dos Autovalores


O resultado do clculo do autovalor uma matriz 2x2 com resultados apenas a e na diagonal principal, como mostra a Equao 5.1. ca

A 0 0 B

(5.1)

Sendo: A - autovalor de menor relevncia da imagem; a B - autovalor de maior relevncia da imagem. a Primeiramente calculou-se a diferena em mdulo entre a Matriz de autovalor c o de referncia e a Matriz de autovalor de comparao (Caractere que se quer descoe ca brir).

Ar 0 0 Br

Ac 0 0 Bc

(5.2)

Sendo: Ar - autovalor de menor relevncia da referncia; a e Ac - autovalor de menor relevncia da imagem comparada; a Br - autovalor de maior relevncia da referncia; a e Bc - autovalor de maior relevncia da imagem comparada. a O clculo que foi efetuado para a anlise dos resultados dos autovalores a a e mostrado pela Equaao 5.3 c abs(Ar Ac ) + abs(Br Bc ) 2

R=

(5.3)

58

Este clculo realizado para a imagem do caractere, projeoes Vertical e Horia e c zontal de todas as letras ou nmeros. O valor referncia utilizado em cada uma u e e das 26 letras do alfabeto ou em cada um dos 10 nmeros existentes, ou seja, como u referncia, criada uma matriz M (linha, coluna) de dimenses M (3, 10) para os e e o nmeros, e uma matriz M (3, 26) para as letras. Sendo que a primeira linha traz o u resultado do autovalor de cada um dos nmeros ou letras do alfabeto, a segunda u linha traz a projeao vertical e a terceira linha, a projeao horizontal de cada um c c dos caracteres. Posteriormente existe um algoritmo que faz a anlise de todos os resultados do a vetor e os multiplica por um peso, ou seja, os menores valores recebem os menores pesos e os maiores valores tendem a car ainda maiores. Foi dado um nome para estes trs algoritmos sendo: e Normal: resultado de comparao dos resultados do PCA sobre a imagem ca do caractere; PV: resultado de comparaao dos resultados do PCA sobre a imagem da c Projeao Vertical do caractere; c PH: resultado de comparaao dos resultados do PCA sobre a imagem da c Projeao Horizontal do caractere. c Este algoritmo foi criado para tentar eleger aquele que mais coincide com a imagem de comparaao, de forma a evitar que algum caractere, que no seja o c a correto, venha a ser eleito como o mais provvel em uma das trs anlises. Um a e a exemplo prtico deste algoritmo do peso apresentado no exemplo abaixo: a e Supondo-se que o vetor resposta para o clculo sobre a imagem do caractere a seja dado pela Equaao 5.4: c

R = [4.43, 5.01, 3.12, 1.98, 8.76, 14.77, 1.51, 9.87, 11.76, 6.45]

(5.4)

59

Este mesmo vetor ordenado mostrado na Equao 5.5: e ca

R = [1.51, 1.98, 3.12, 4.43, 5.01, 6.45, 8.76, 9.87, 11.76, 14.77]

(5.5)

Enquanto o menor valor 1.51 recebe peso 1, o segundo valor receber peso a 2 e assim sucessivamente at o maior valor 14.77 receber peso 10, ou seja, ser e a multiplicado por 10. Assim garante-se uma melhor variedade entre os melhores classicados. Assim a chance de um resultado interferir em outro eliminada, pois e a diferena dos caracteres errados ser muito maior que aquela que o algortimo c a julga ser o correto. Aps este passo do algortimo, um novo vetor de resposta obtido, sendo este o e mostrado na Equaao 5.6: c

R = [1.51, 3.96, 9.36, 17.72, 25.05, 38.7, 61.32, 78.96, 105.84, 147.7]

(5.6)

Este procedimento foi feito para as trs imagens de cada caractere (caractere, e projeoes vertical e horizontal). Dessa forma, nas outras duas anlises, o resultado c a pode estar distante do correto, recebendo ento um peso maior e distanciando-o a da eleiao da resposta (que busca o menor valor dentre aqueles do vetor), e aquele c que deve ser o correto recebe sempre pesos pequenos. Em seguida somam-se os trs resultados de forma a obter um valor resultado e para cada caractere, como mostra a Equaao 5.7 c
k

= N ormal(i ) + P V (i ) + P H(i )
i=1

(5.7)

Sendo: letras.

um valor inteiro que varia at 10 para os nmeros e at 26 para as e u e

O menor valor referncia. e

o resultado, visto que ele indica a menor discrepncia ou e a

distoro entre os resultados do PCA da imagem comparada e um dos caracteres ca

60

Este foi o procedimento nal adotado, e o motivo da escolha deste algoritmo ser mostrado no cap a tulo de resultados e discusses. A Figura 30 mostra um o pouco do algoritmo desenvolvido. O cdigo foi feito em MatLab R devido a facilidade deste software resolver o equaoes como covarincia, autovalores e autovetores atravs de funes internas do c a e co software. Neste trabalho de concluso de curso, foi utilizado apenas uma referncia a e para a comparaao das imagens, os padres antingo e novo, e os caracteres foram c o divididos nestes 2 grupos como tentativa de melhorar os resultados, ou seja, de acordo com a imagem que estava sendo analisada era utilizada a referncia do e padro antigo e para outras imagens o padro novo. a a

Figura 30: Algoritmo dos pesos

61

Anlise dos Resultados Finais

6.1 Analisando os Testes


Os primeiros testes que foram executados com o PCA foram realizados utilizando caracteres adquiridos manualmente, ou seja, sem a utilizaao do RoboRec alm ou do algoritmo de corte dos caracteres j citados anteriormente. Primeiraa mente utilizou-se os nmeros para os testes, visto que so mais fceis de serem u a a obtidos e tambm devido a menor quantidade, quando comparado as letras (10 e comparaoes para os nmeros contra 26 comparaes para os caracteres). c u co Aps o estudo da tcnica PCA, vericou-se que a identicao dos caracteres o e ca no seria fcil, pois a maioria dos algoritmos que utilizam a tcnica PCA para coma a e paraao de padres utilizavam inmeras caracter c o u sticas retiradas de uma mesma imagem, como por exemplo o padro das cores que compem a imagem: caso a o a imagem esteja no padro RGB, poss obter vrias componentes principais a e vel a desta imagem, e assim realizar um tratamento estat stico e obter mais facilmente o padro desejado. Isto acontece com o PCA sendo aplicado ao reconhecimento de a faces, pois existem vrias faixas de cores, sendo que cada uma destas faixas gera a um resultado de autovalores e autovetores a ser comparado e equacionado. Sendo assim, cada imagem possui duas ou mais componentes principais, enquanto que na anlise das placas deste trabalho existe apenas a cor preta, ou seja, o vetor de a anlise nada mais que um vetor em coordenadas X e Y com as posies dos pona e co tos pretos da imagem, ou seja, existe uma quantidade menor de informaes que co sero quanticadas e, conseqentemente, uma grande chance de alguns caracteres a u apresentarem resultados parecidos, dicultando a anlise do resultado.. Tentando a aumentar a quantidade de componentes principais para as anlises, foram utia lizadas as projees vertical e horizontal, consideradas como segunda e terceira co anlise da resposta. a

62

Os primeiros testes realizados levavam em consideraao os autovalores e auc tovetores, mas percebeu-se que os autovetores nem sempre seguiam um padro, a diferentemente dos autovalores que sempre tendiam o resultado correto. Dependendo da distorao da imagem o autovetor mudava signicativamente seu ngulo c a =
posicaoY posicaoX

e no convergia ao resultado esperado do mesmo autovetor do caraca

tere de referncia para aquela imagem. Qualquer perturbaao de ru e c do, salincia e e diferenas de resoluao na imagem interferia, e o resultado era completamente c c diferente do esperado.

Figura 31: Nmero 5 da Referncia Padro Antigo. u e a

autovalores =

747.4 0 0 1004.7

(6.1)

autovetores =

0.86223 0.50652 0.50652 0.86223

(6.2)

0.86223 = 1, 7022 0.50652

(6.3)

Utilizando a imagem no padro antigo do nmero 5 como referncia, Figura a u e 31, os resultados de autovalor, autovetor e so mostrados respectivamente nas a Equaoes 6.1, 6.2, 6.3. Agora, analisando os resultados de autovalor, autovetor e c respectivamente as Equaes 6.4, 6.5 e 6.6 da imagem do caractere que deseja-se co comparar, Figura 32, percebe-se que o autovalor semelhante ao da referncia, mas e e a tangente no, mesmo a diferena entre a referncia e o caractere estando nas a c e casas decimais, ela no de grande utilidade para utilizaao, visto que existiro a e c a

63

outros caracteres totalmente diferentes do 5, que tero valores de mais prximos a o e precisos. Sendo assim o autovetor foi descartado do algoritmo nal. Para tomar esta deciso, inmeros testes foram realizados. a u

Figura 32: Nmero 5 da Placa 1 dos testes. u

autovalores =

648.47 0 0 935.82

(6.4)

autovetores =

0.77891 0.62713 0.62713 0.77891

(6.5)

0.77891 = 1, 2420 0.62713

(6.6)

Mas no caso do caractere acima apresentado, os resultados foram satisfatrios, o e o nmero 5 foi encontrado com sucesso pelo algoritmo. u Um outro fato interessante da tcnica PCA que foi visto nos resultados do aue tovalor, que, independentemente da rotaao do caractere na imagem, o resultado e c do autovalor no muda. A tcnica PCA consegue identicar o caractere da mesma a e maneira devido a caracter stica matemtica do algoritmo. A Figura 33 mostra esse a exemplo.

Figura 33: Nmero 3 na fonte Mandatory (Padro atual da placa) e sua rotaao. u a c

64

autovalores(3normal) =

521.7 0 0 1851.7

(6.7)

autovalores(3invertido) =

525.02 0 0 1863.8

(6.8)

Estes testes foram realizados para saber como o PCA se comportaria com pequenas rotaes ou caracteres que, se invertidos, so parecidos, mas este tipo co a de inverso no ir ocorrer neste trabalho, apenas algumas variaes nas imagens a a a co sero levadas em considerao. a ca Utilizando a Equaao 6.9, que foi apresentada no cap c tulo anterior, e que e mostrada novamente abaixo, o resultado R = 7.6353, do nmero 3 invertido comu parado ao nmero 3 normal, um valor muito pequeno. Mas comparando-se com u e qualquer outro caractere, o resultado muito maior. Um exemplo disto seria o e nmero 4, que apresenta como resultado R = 463.67, ou seja, o nmero 4 no u u a ser escolhido pelo algoritmo, pois 60 vezes maior que o resultado R do nmero a e u 3. Pode-se concluir deste exemplo, que mesmo com o caractere 3 invertido, o algoritmo consegue determinar o padro correto. a abs(Ar Ac ) + abs(Br Bc ) 2

R=

(6.9)

A cada teste que era feito, percebia-se uma tendncia ainda maior de utilizar e o autovalor para a anlise do resultado. a Da teoria do PCA, obteve-se o conhecimento necessrio para identicar o caa ractere, porm, a teoria mostrava que os valores a serem utilizados, aps a aplie o caao do algoritmo PCA, deveriam ser os valores de autovetores. Entretanto, aps c o anlise desses resultados, viu-se que eles eram muito prximos, de um caractere a o para outro, o que estava inviabilizando a identicaao inicial do caractere. Atravs c e de inmeros testes e da anlise visual dos resultados numricos, percebeu-se que os u a e Autovalores apresentavam padres e que poderiam ser utilizados na identicao o ca dos caracteres. Ento esses passaram a ser o foco das equaoes utilizadas. a c

65

Inmeros testes de equaoes foram feitos seguindo a teoria do PCA, principalu c mente aquele que diz O autovalor mais signicativo indica qual o autovetor que e carrega os dados mais importantes para aquele conjunto de dados, A Tutorial on Principal Component Analysis, (SMITH, 2002). Na tentativa de validar o sistema, criou-se algumas equaoes, todas com a mesma idia inicial (subtrao do resulc e ca tado da imagem de referncia pelo resultado da imagem que queria-se encontrar a e resposta). As principais equaoes e suas explicaoes so mostradas abaixo: c c a OBS: Nas equaoes que sero apresentadas, sero utilizados os auc a a tovalores e autovetores descritos abaixo.

Autovalor do Caractere

Ac 0 0 Bc

Autovalor da Referncia e

Ar 0 0 Br

Autovetor do Caractere

Cc Dc Ec Fc Cr Dr Er Fr

Autovetor da Referncia e

1 - Equao do autovetor mais Signicativo ca R = abs( Fr Fc ) Dr Dc (6.10)

A Equaao 6.10 utiliza a diferena entre as tangentes das componentes princ c cipais da referncia e do caractere. e 2 - Equao da Primeira Componente Principal ca R = abs(Ar Er Ec Ac ) Cr Cc (6.11)

A Equaao 6.11 utiliza-se da teoria do PCA, ou seja, dado um autovalor que c possui um autovetor associado, utilizou-se o autovalor multiplicado pelo seu correspondente autovetor e fez-se a subtraao de acordo com a referncia. c e

66

3 - Equao da Segunda Componente Principal ca R = abs(Br Fc Fr Bc ) Dr Dc (6.12)

O mesmo ocorre na Equaao 6.12, s que utiliza-se, neste caso, o segundo c o autovalor com seu correspondente autovetor. Lembrando que estes clculos so realizados para a imagem do caractere, proa a jees Vertical e Horizontal de todas as letras ou nmeros. E o mesmo algoritmo co u de Peso tambm foi utilizado nas equaes descritas acima. e co Analisando os resultados dos 4 algoritmos, o resultado nal era dado pelo caractere que fosse eleito o maior nmero de vezes pelos algoritmos. Esse foi um u teste no muito efetivo e que foi descartado logo aps algumas anlises. Utilizoua o a se, ainda, de um algoritmo auxiliar que dividia o resultado de cada uma das trs e equaoes (imagem normal, projeao horizontal e projeao vertical) pelo menor c c c ou maior resultado encontrado dentro do vetor. Isso foi feito numa tentativa de deixar todos os resultados na mesma grandeza. Entretanto, observou-se que os resultados no foram muito diferentes dos que j haviam sido encontrados. Ento, a a a descartou-se essa forma de anlise. Logo, decidiu-se utilizar apenas as Equaoes a c de Autovalores, visto que elas eram as que resolviam a maior parte dos problemas. Alguns caracteres espec cos foram encontrados perfeitamente pelo sistema, com uma taxa de acerto de 100% em relao a amostragem utilizada para valica ` daao, nesses casos os caracteres eram completamente diferentes de qualquer outro c caractere, como exemplo pode-se citar o nmero 4: no h nenhum nmero semeu a a u lhante a ele. Entretanto, alguns caracteres no chegavam a um resultado correto a em algumas amostras, devido ` semelhana com outros caracteres, como o caso a c e da letra Ocom a letra Q. Apesar disso, havia uma convergncia do resultado, e ou seja, mesmo o resultado no sendo o correto, o caractere que deveria ser a a soluao cava, pelo algoritmo, entre os provveis resultados. c a

67

Apesar de ser um bom identicador de padres o PCA no foi suciente na o a identicaao dos caracteres numricos. Isso ocorreu devido a baixa dimensionac e ` lidade dos dados utilizados neste trabalho. Para cada caractere so analisadas a apenas as dimenses das coordenadas dos pixels pretos no plano cartesiano, o que o limita a anlise do PCA a apenas duas dimenses, X e Y. Para aumentar a dimena o sionalidade dos dados, tentou-se incluir tambm a anlise das projees horizontal e a co e vertical. O resultado dessa nova anlise foi signicativo, mas no suciente para a a o resultado nal ser considerado satisfatrio. o

6.1.1 Anlise dos resultados para os Nmeros


Separou-se os resultados obtidos na identicao dos caracteres numricos enca e tre: padro antigo e padro novo de placas de ve a a culos automotores no Brasil. Segue abaixo a Tabela 3, apresentando os resultados obtidos para ambos os padres. o Nmero Padro Antigo Padro Novo u a a 0 60% 90% 1 78% 0% 2 61% 71% 3 61% 43% 4 83% 100% 5 64% 100% 6 68% 50% 7 91% 100% 8 76% 20% 9 0% 0% Tabela 3: Resultado da Aplicaao do algoritmo de Reconhecimento sobre os c Nmeros. u

Padro Resultados a Antigo 64% Novo 57% Tabela 4: Resultado Geral para os Nmeros u

Observou-se atravs dos experimentos que o PCA um algoritmo muito bom e e para encontrar padres. Isso foi avaliado atravs de testes realizados durante a o e fase de implementao do algoritmo de identicaao de caracteres. Esperava-se, ca c

68

j desde essa fase, diculdades em identicar o caractere numrico 6 e o 9, pois, a e conforme j explicado anteriormente , eles so praticamente idnticos, diferindo a a e apenas de 180o entre si. E isso foi conrmado com o resultado nal, como e poss observar atravs das Tabelas 3 e 4. vel e

6.1.2 Anlise dos resultados para as Letras


O mesmo procedimento aplicado aos nmeros foi utilizado com as letras. u Separou-se cada letra em uma pasta diferente, e essas letras faziam parte das placas da base de testes. Testou-se o algoritmo em todas as letras, tanto as do padro antigo, quanto as do padro novo. Inmeros testes foram aplicados a m de a a u obter um melhor resultado, mas como j explicado anteriormente, o algoritmo que a apresentou uma melhor resposta foi o que utiliza apenas os autovalores para comparaao com a referncia. Com certeza, ele deve ser melhorado, mas foi poss c e vel obter uma resposta razovel do PCA para encontrar padres entre caracteres. a o A Tabela 5 mostra os resultados encontrados da aplicaao do algoritmo de c autovalores. E a Tabela 6 mostra o resultado geral para os teste. Os resultados mostram apenas as porcentagens de acertos para cada letra, mas, um ponto que foi observado da aplicao do PCA, que o resultado do autovalor ca e estava sempre entre os 3 primeiros resultados poss veis, mostrando que o PCA encontra, na maioria das vezes, um certo padro entre o caractere e as referncias. a e Os resultados apresentados esto abaixo da expectativa deste trabalho, mas a devido aos inmeros problemas (que ocorrem nas fases anteriores a seleao do u c caractere), pode-se considerar o PCA uma boa ferramenta para anlise de padres a o de caracteres, pois esta tcnica apresenta uma margem de acertos superior a 90% e quando o caractere est em boas condioes. Em uma base de dados simulada com a c pequenas distores, o algoritmo apresenta-se eciente e preciso. co Com uma qualidade das imagens em um n aceitvel, o PCA ir responder vel a a de maneira muito mais positiva do que a que apresentada neste trabalho. e

69

Letra Padro Antigo a A 100% B 50% C 42,86% D 13,33% E 100% F 50% G 60% H 0% I 0% J 100% K 66,67% L 28,57% M 16,67% N 0% O 37,50% P 100% Q 37,50% R 50% S 100% T 100% U 33,33% V Nenhum Caractere W 33,33% X 0% Y 0% Z 85,71%

Padro Novo a 0% Nenhum Caractere Nenhum Caractere 10% 100% Nenhum Caractere Nenhum Caractere Nenhum Caractere Nenhum Caractere Nenhum Caractere Nenhum Caractere 100% 0% 100% 100% 100% 0% 100% 25% 100% 100% Nenhum Caractere Nenhum Caractere Nenhum Caractere 66,67% 100%

Tabela 5: Resultado da Aplicao do algoritmo de Reconhecimento sobre as Letras. ca

Padro Resultados a Antigo 48,22% Novo 66,78% Tabela 6: Resultado Geral para as Letras

70

6.2 Problemas Ocorridos


Os resultados no foram satisfatrios. Acreditava-se que seria poss a o vel uma margem de acertos superior a 90%, mas ao longo do trabalho percebeu-se que isto no seria poss a vel, devido a vrios problemas, que sero descritos nesta seao com a a c detalhes. O principal problema vinha do fato da semelhana entre os caracteres. Nas c Figuras 34, 35 e 36 so mostrados alguns destes exemplos. a

Figura 34: Caractere J e L e suas respectivas projeoes Vertical e Horizontal. c

Para efeito da imagem e do algoritmo, as letras J e L so idnticas (cona e siderando indiferente a rotao), dicultando a identicaao. ca c

Figura 35: Caractere O e Q e suas respectivas projees Vertical e Horizontal. co

Ocorre uma grande diculdade tambm entre as letras O e Q, que se diferem e por um pequeno detalhe na parte inferior do caractere Q e suas projees so co a semelhantes.

Figura 36: Caractere V e Y e suas respectivas projeoes Vertical e Horizontal. c

71

As letras V e Y no so muito parecidas, porm, o algoritmo quando exea a e cutado no conseguiu em todos os casos validar as letras de forma correta, cona fundindo seu resultado com a sua letra semelhante em alguns casos. Isto se deve a distores que ocorrem na imagem coletada. Um exemplo desta confuso ` co a e mostrado pela Figura 37, que no foi autenticada pelo algoritmo como um Y, e a sim como um V.

Figura 37: Imagem Y e suas projees de uma placa coletada para testes. co

Para a anlise humana, a Figura 37 evidentemente um Y, mas o sistema a e no a identica como tal. Todavia, ao analisar o resultado, percebe-se que a letra a Y o segundo melhor resultado do sistema, ou seja, ela se assemelha ` imagem, e a porm o V o mais prximo do resultado de referncia. e e o e Outro problema ocorrido foi em relao a quantidade de caracteres de refernca e cias, utilizou-se apenas uma referncia para os caracteres no padro novo (fonte e a Mandatory) e uma referncia para os caracteres no padro antigo (fonte Din 1451 e a Mittelschrift). Isso dicultou o resultado, pois quando o caractere aparecia um pouco mais reforado do que o normal ou muito falho, esse no conseguia ser c a autenticado como o caractere correto. Havia ainda o problema de algumas placas coletadas no estarem em nenhum a dos dois padres adotados, provavelmente devido a falta de scalizaao e pelo o c fato de que em um passado prximo, a Fonte utilizada pelos caracteres no era o a padronizada como ocorre hoje.

72

Outros problemas esto relacionados a caracteres, que dependendo da inverso, a a so parecidos, como o 6 e o 9 no padro antigo, como mostra a Figura 38. a a

Figura 38: Nmeros 6 e 9 no padro antigo. u a

Como j citado anteriormente, a rotao de um dos nmeros da Figura 38 a ca u resulta na identidade do outro, ou seja, o algoritmo pode se confundir e enviar o resultado errado. Alguns problemas podem ocorrer tambm em relaao aos nmeros 6, 8 e 9 no e c u padro novo como mostra a Figura 39, que so caracteres muito parecidos. a a

Figura 39: Nmeros 6, 8 e 9 no padro novo. u a

Repare que na Figura 39 a diferena entre o 6 e o 9 apenas a orientao c e ca do caractere, se um dos dois nmeros forem rotacionados e invertidos, eles so u a idnticos, como j foi descrito anteriormente. Outro fato que o nmero 8 tem e a e u pouca diferena em relao ao nmero 6 ou 9, considerando a comparaao de c ca u c imagens, ou seja, um m nimo de distorao na imagem ou tamanho do contorno c pode resultar na identicaao do caractere semelhante (identicao incorreta). c ca Outra anlise mais precisa exibida na Figura 40. a e Percebe-se atravs das projeoes (que so utilizadas nos clculos) a grande e c a a semelhana entre esses nmeros. c u

73

Figura 40: Nmeros 6 e 9 normais, projeoes Verticais e Projeoes Horizontais u c c respectivamente.

Vericou-se que a baixa resoluao das imagens, foi a principal causa para o c baixo desempenho do sistema como um todo. Seja no processo de extrao da ca placa, no processo de extraao dos caracteres e no processo de identicao dos c ca mesmos. A baixa resoluao da imagem faz com que o formato geomtrico do caracc e tere seja muito distorcido, quando o mesmo redimensionado ou no processo da e captura, o prprio caractere ca, muitas vezes, irreconhec at a olho nu. o vel e Esses e os demais problemas, descritos nesta seao, ocasionaram inmeras c u decincias ao sistema criado neste trabalho. e

74

Futuras Melhorias e Implementaes

O algoritmo, apesar de no ser totalmente convel, sempre coloca o caractere a a correto entre os resultados provveis. Com certeza, se for feita uma anlise mais a a detalhada dos resultados do PCA, ser poss encontrar uma maneira para coloa vel car o caractere correto como resultado do algoritmo. Muitas correes e melhorias co podem ser aplicadas sobre este trabalho, pode-se destacar: Fazer um algoritmo renado, que considere as restrioes apresentadas antec riormente, como o 6 e 9 , o Q e O, e analisar de outras maneiras quando cair nesses casos; Utilizar Redes Neurais para analisar os resultados do PCA. As RNAs so a muito ecazes quando se trata de anlise de resultados. E, assim, pode-se a obter uma anlise mais renada dos autovalores e autovetores; a Utilizar outras informaes das imagens como fonte de dados para o PCA, co como, por exemplo, rea da imagem, contorno, resoluo, padro de cores, a ca a etc; Desenvolver todos os algoritmos em alguma linguagem de programaao (VB c por exemplo). Assim a performance e conabilidade do sistema aumentam signicativamente;

75

Utilizar um Banco de Dados, por exemplo, um feito em SQL Server, para guardar os resultados das Referncias e aumentar a amplitude estat e stica das comparaoes. Ou seja, em trabalhos futuros poder-se-ia criar um banco de c dados com vrias referncias de todos os caracteres, de forma a conseguir a e uma melhoria signicativa nos resultados de comparaao; c Utilizar uma quantidade maior de placas nos testes para que a amplitude de comparaoes aumente e, assim, a conabilidade do sistema tambm. c e Essas so algumas melhorias futuras e correoes, que se aplicadas, podem trazer a c para o sistema uma alta conabilidade e preciso no reconhecimento de caracteres. a

76

Concluso

Pode-se dizer em um primeiro momento que o resultado obtido no foi saa tisfatrio para ser utilizado como um sistema real. No entanto deve-se levar em o consideraao que este um trabalho inicial e inovador no que se diz respeito a c e identicaao de caracteres utilizando a tcnica PCA. c e Este trabalho pode ser utilizado futuramente por outros pesquisadores para ajudar como base e dar suporte para empregar a tcnica PCA em identicao e ca de padres, no s para caracteres como para qualquer outro tipo de identicao o a o ca atravs de anlise de dados estat e a sticos. O PCA ainda deve ser muito explorado devido a facilidade de implementao do seu algoritmo, alm disto, o PCA tem ca e pouca exigncia computacional, favorecendo sistemas que utilizam identicaao e c em tempo real. Da anlise de imagens, conclui-se que para realizar trabalhos em que se nea cessita de imagens para a identicaao de padres, deve-se sempre trabalhar com c o a maior resoluo poss de captura da imagem, pois com uma melhor resoluca vel ao se obtm uma melhor deniao de cor e formas contidas na imagem. Alm c e c e disto, o PCA como foi empregado neste trabalho, no permite a anlise de muitos a a parmetros, somente a cor preta utilizada como conjunto de dados, dicultado a e muito o resultado. A razo para o resultado negativo da aplicao da tcnica PCA foi explicada a ca e anteriormente com detalhes, mas poss citar as principais causas desta falha e vel como: baixa resoluo das imagens de testes, baixa quantidade de imagens de ca

77

testes, base de dados de referncia com pequena quantidade de caracteres. Esses e e muitos outros so os motivos para a falha do PCA, mas em um trabalho que a contorne todos esses problemas, pode ser poss obter um resultado muito melhor vel do que o aqui apresentado. E importante salientar tambm que, apesar de no satisfatrio em primeiro e a o momento, percebeu-se que os caracteres que deveriam ser dados como resultado sempre se aproximavam da resposta, cando no algoritmo da eleiao sempre entre c os trs primeiros colocados, comprovando a ecincia do PCA na identicao das e e ca letras e nmeros. Alm disto, notou-se por anlise visual que quando se utiliza u e a a tcnica com caracteres em boa resoluao e sem muitas distores, o resultado e c co apresentado superior a 90% de acerto. Neste trabalho muitos dos caracteres e estavam ileg veis e mesmo assim foram considerados para a estat stica Finalmente, no que tange como objetivo de um trabalho de graduao, acreditaca se, que o objetivo foi alcanado. Tanto no quesito de pesquisa quanto no quesito c de desenvolvimento, pois, durante a fase de pesquisa colheu-se todo o material necessrio para o desenvolvimento de todos os algoritmos e analisou-se os resultaa dos em particular, para depois ser denido o algoritmo nal de resultado do sistema, que foi sendo modicado e aperfeioado na medida que o trabalho avanava. c c

78

Anexos

Figura 41: Diferena entre os 2 padres existentes. c o

79

Figura 42: Exemplo 1 - Aplicaao do algoritmo de seleao da placa na imagem. c c

Figura 43: Exemplo 1 - Placa Selecionada.

Figura 44: Exemplo 2 - Aplicaao do algoritmo de seleao da placa na imagem. c c

Figura 45: Exemplo 2 - Placa Selecionada.

80

Figura 46: Exemplo 3 - Aplicaao do algoritmo de seleao da placa na imagem. c c

Figura 47: Exemplo 3 - Placa Selecionada.

Figura 48: Exemplo 4 - Aplicaao do algoritmo de seleao da placa na imagem. c c

Figura 49: Exemplo 4 - Placa Selecionada.

81

Figura 50: Exemplo 5 - Aplicaao do algoritmo de seleao da placa na imagem. c c

Figura 51: Exemplo 5 - Placa Selecionada.

Figura 52: Exemplo 6 - Aplicaao do algoritmo de seleao da placa na imagem. c c

Figura 53: Exemplo 6 - Placa Selecionada.

82

Referncias
BARROSO J.; BULAS-CRUZ, J. Number plate reading using computer vision. In: IEEE-International Symposium on Industrial Electronics ISIE. [S.l.: s.n.], 1997. p. 761 766. BARROSO J.; BULAS-CRUZ, J. Real time number plate reading. In: 4th IFACWorkshop on Algorithms and Architetures for Real-time Control. Portugal: [s.n.], 1997. BELVISI R.; FREITAS, R. Um Sistema de Reconhecimento Automtico de Placas a de Automveis. Dissertaao (So Paulo, Brasil) Faculdade de Engenharia o c a Industrial - FEI, ANO. BOTELHO, M. F. Aplicaao de redes neurais articiais na classicao de c ca imagens de alta resoluo espacial e dados do laser scanner, usando uma ca abordagem orientada a regies. In: . Paran, Brasil: [s.n.], 2004. o a BRAGA A. P.; CARVALHO, A. C. P. L. F. Redes Neurais Articiais: teoria e aplicaes. 1a . ed. Rio de Janeiro, Brasil: [s.n.], 2000. co BRASILIENSE correio. correio brasiliense - carros na clandestinidade. 24 de outubro de 2004. CASTELLO P.; COELHO, C. Trac monitoring in motorways by real-time number plate recognition. In: Proceedings of the International Conference on Image Analysis and Processing. Veneza, Itlia: [s.n.], 1999. p. 1128 1131. a CHENGJUN, L. Gabor-based kernel pca with fractional power polynomial models for face recognition. IEEE, VOL. 26, n. No 25, May 2004. CLAUDINO, L. M. B. Segmentao de Fragmentos de Texto para a Localizao de ca ca Placas de Automveis. Dissertaao (Mestrado) Departamento de Engenharia o c Eltrica da Universidade Federal de Minas Gerais - UFMG, Minas Gerais, Brasil, e Abril 2005. CONTRAN. Resoluo 241 de 22 de junho de 2007 contran - conselho nacional de ca trnsito; resoluo 231 de 15 de maro 2007 contran - conselho nacional de trnsito. a ca c a

83

http://www.denatran.gov.br/download/Resolucoes/resolucao contran 241.pdf; http://www.denatran.gov.br/download/Resolucoes/resolucao 231.pdf, Retirado em 05 de junho de 2008. COWELL, J. R. Syntactic pattern recognizer for vehicle identication numbers. In: Elsevier Science, Image and Vision Computing. [S.l.: s.n.], 1995. CUENCA W. M.; SEIXAS, J. M. Anlise de componentes principais para a identicar descargas parciais em transformadores de potncia. 2000. e DRAGHICI, S. A neural network based articial vision system for licence plate recognition. International Journal of Neural Systems, volume 8, 1997. ETEMAD K.; DOERMANN, D. Multiscale segmentation of unstructured document pages using soft decision integration. IEEE Transactions on Pattern Analysis and Machine Intelligence, p. 92 96, 1997. FUJISAWA H.; NAKANO, Y. Segmentation to document structure analysis. Proceedings of the IEEE, v. 80, n. 7, p. 1079 1092, Julho 1992. GOMES J.; VELHO, L. Computao grca: Imagem - srie de computaao e ca a e c matemtica. In: IMPA. Rio de Janeiro, Brasil: [s.n.], 2002. p. 421. a GONZALEZ R.C.; WOODS, R. Processamento de Imagens Digitais. So Paulo, a Brasil: [s.n.], 2003. GUIDINI M. P.; RIBEIRO, C. H. C. Utilizaao da biblioteca terralib para c algoritmos de agrupamento em sistemas de informaoes geogrcas. 2006. c a HAYKIN, S. Redes Neurais, Princpios e Prtica. 2a edio. ed. [S.l.: s.n.], 2001. a ca HEINEN M. R.; OSORIO, F. S. Autenticaao de assinaturas utilizando anlise c a de componentes principais e redes neurais articiais. 2006. HUGO V.N. E FILHO, O. Processamento Digital de Imagens. Brasil: [s.n.], 1999. JAIN A. K.; YU, E. B. Automatic text location in images and video frames. 2055 - 2076. 1998. JR S. S.; SANTOS, A. L. B. C. Comparaao das tcnicas de anlise dimensional, c e a otimizao de ensaios e redes neurais para determinao da equao de taylor ca ca ca expandida no processo de fresamento de topo. In: 1o COBEF. Paran, Brasil: a [s.n.], 2001.

84

KITANI E. C.; THOMAZ, C. E. Abordagem PCA+LDA para Reconhecimento de Faces com Variao de Pose. Dissertaao (Relatrio do Seminrio de Viso ca c o a a Computacional do Mestrado da FEI) Faculdade de Engenharia Industrial FEI, So Paulo, Brasil, 2005. a LEE M.; WONG, W. Vehicle license plate recognition in marketing application. In: Proceedings of International Joint Conference on Neural Networks. [S.l.: s.n.], 1999. LEITE L.; SILVA, E. A. B. Anlise de componentes independentes aplicada a a ` identicaao de regies lesionadas em mamogramas. 2004. c o LOTUFO R. A.; MORGAN, A. D. Automatic number-plate recognition. Proceedings of IEEE Coloquium on Image Analisys for Transport Applications, 1990. MARQUES, G. Anlise em componentes principais. 2006. a MELLO, C. Processamento Digital de Imagens. Dissertaao (Mestrado) Escola c Politcnica de Pernambuco, Pernambuco, Brasil, ANO. e MELO G.; SOUTO, R. Estudo da ecincia do reconhecimento facial utilizando e pca incremental. In: Simpsio Brasileiro de Computao Grca e Processamento o ca a de Imagens - SIBGRAPI. Paran, Brasil: [s.n.], 2004. a MENOTI, D. Segmentao de envelopes postais para localizao do bloco ca ca endereo: Uma abordagem baseada em seleo de caractersticas no espao c ca c wavelet. Dissertao (Mestrado em Informtica Aplicada) Universidade ca a Catlica do Paran (PUC/PR), Paran, Brasil, 2003. o a a NAKASHIMA, E. K. Reconhecimento Automtico de Placas de Veculos. a Dissertaao (Instituto de Matemtica e Estat c a stica - IME) Universidade de So Paulo - USP, So Paulo, Brasil, 2004. a a NIJHUIS J. A. G.; BRUGGE, M. H. T. Car license plate recognition with neural networks and fuzzy logic. In: Proceedings of IEEE International Conference on Neural Networks. [S.l.: s.n.], 1995. volume 5, p. 2232 2236. PARKER J. R.; FEDERL, E. P. An approach to licence plate recognition. Dissertaao (Mestrado) University of Calgary, Alberta, Canad, Outubro 1996. c a PASTORE F. M.; OLIVEIRA, L. R. Reconhecimento de Placas de Automveis o Utilizando Viso Computacional. Dissertao (Mestrado) Universidade a ca Salvador - UNIFACS, ANO.

85

PEREIRA D. S. A.; REZENDE, J. A. R. Mtodos de Processamento e e Tratamento de Imagens para Reconhecimento Facial. Dissertaao (XI Encontro c Latino Americano de Iniciao Cient ca ca e VII Encontro Latino Americano de Ps-Graduao) Universidade do Vale do Para - UNIVAP, So Paulo, o ca ba a Brasil, 2007. POLIDORIO, A. M. Segmentao e reconhecimento de caracteres para ca identicao de placas de veculos. Dissertaao (Ps-Graduaao em Engenharia ca c o c Eltrica e Informtica Industrial) Centro Federal de Educaao Tecnolgica do e a c o Paran (CEFET/PR), Curitiba, Brasil, 1997. a POLIDORIO A. M.; BORGES, L. D. Reconhecimento de Caracteres Alfanumricos para Identicao de Placas de Veculos. Dissertaao (Anais e ca c do IX SIBGRAPI) Centro Federal de Educaao Tecnolgica do Paran c o a CEFET/PR, Paran, Brasil, 1996. a QIU B.; PRINET, V. Multi-Block PCA Method for Image Change Detection. Dissertaao (Mestrado) Institut de Recherche Pour le Developpement, Bondy, c France, 2003. RAHMAN C. A.; BADAWYE, W. M. A real time vehicles license plate recognition system. In: Proceedings of the 2003 IEEE Conference on Advanced Video and Signal Based Surveillance (AVSS 2003). Miami, Florida, EUA: [s.n.], 2003. ROBOREALM. Site do roborealm. http://www.roborealm.com/, 2008. SARFRAZ M.; AHMED, M. J. Saudi arabian license plate recognition system. In: International Conference on Geometric Modeling and Graphics (GMAG03). [S.l.: s.n.], 2003. p. 36 41. SETCHELL, C. J. Applications of Computer Vision to Roadtrac Monitoring. Tese (Doutorado) Faculty of Engineering Department of Electrical and Electronic Engineering of the University of Bristol, Setembro 1997. SHLENS, J. A Tutorial on Principal Component Analysis. [S.l.], 2005. SILVA L. S. P.; GRACIOSO, A. C. N. Reconhecimento de Padres de Imagens o ruidosas Utilizando Redes Neurais Articiais. Dissertaao (Mestrado) c Universidade de So Paulo - USP, So Paulo, Brasil, 2006. a a SITE1. http://bp1.blogger.com/ 53dxi7mln94/sbp3wpuhuri/aaaaaaaaab0/pigfvw51obg/s400/vts13.jpg. Retirado em 10 de junho de 2008.

86

SITE11. Base de dados de imagens do centro brasileiro de pesquisas f sicas. http://www.cbpf.br/cat/pdsi/downloads/LPR ImageDataBase Sample.zip, Retirado em 15 de junho de 2008. SITE2. http://www2.uol.com.br/bestcars/carros/outros2/placa-t.jpg. Retirado em 10 de junho de 2008. SITE3. http://bp0.blogger.com/ irvspilj14c/rnaikawam9i/aaaaaaaaawc/4xiz4fbauq/s1600-h/at+147+do+guilherme+3.jpg. Retirado em 10 de junho de 2008. SITE4. http://decio.globolog.com.br/carro20ze.jpg. Retirado em 10 de junho de 2008. SITE5. http://bp2.blogger.com/ q-2-wrehnmc/roqc4zfsii/aaaaaaaag6c/p4gnufulpmu/s400/placa2.jpg. Retirado em 05 de junho de 2008. SITE6. http://decio.globolog.com.br/carro20ze.jpg. Retirado em 10 de junho de 2008. SITE7. http://www.carroantigo.com/imagens/informacoes/colecao.jpg. Retirado em 15 de junho de 2008. SITE8. http://www.carroantigo.com/imagens/informacoes/colecao.jpg. Retirado em 15 de junho de 2008. SMITH, L. I. A Tutorial on Principal Component Analysis. [S.l.], 2002. SONG W.; SHAOWEI, X. Robust pca based on neural network. In: Proceedings of 36th Conference On Decision e Control. San Diego, California, United States of America: [s.n.], 1997. SOUZA, F. P. Localizao e leitura automtica de caracteres alfanumricos. ca a e Dissertaao (Mestrado) Universidade Federal do Rio Grande so Sul - UFRGS, c Porto Alegre, Brasil, 2000. SOUZA F. P. C.; SUSIN, A. Siav - um sistema de identicaao automtica de c a ve culos. In: Anais do XIII Congresso Brasileiro de Automtica-CBA. [S.l.: s.n.], a 2000. STALINGS, W. Arquitetura e Organizao de Computadores. 5a edio. ed. So ca ca a Paulo, Brasil: [s.n.], 2002.

87

TALEB-AHMED A.; HAMAD, D. Vehicle license plate recognition in marketing application. In: Proceedings of IEEE Intelligent Vehicles Symposium. [S.l.: s.n.], 2003. p. 106 109. THOME A. C. G.; GUINGO, B. C. Reconhecimento Automtico de Placas de a Ve culos Automotores Atravs de Redes Neurais Articiais. Dissertaao (Area de e c Ensino e Pesquisa, NCE/IM) Universidade Federal do Rio de Janeiro, Rio de Janeiro, Brasil, 2002. WU V.; MANMATHA, R. Textnder: An automatic system to detect and recognize text in images. IEEE Transactions on Pattern Analysis and Machine Intelligence, p. 1224 1229, 1999.

Você também pode gostar