PONTIF´                    ´
      ICIA UNIVERSIDADE CATOLICA DE MINAS GERAIS
               Instituto de Inform´tica
    ...
Edgard Davidson Costa Cardoso




LOCALIZACAO DE PLACAS DE VE´
        ¸˜                 ICULOS BASEADA EM
            ME...
Edgard Davidson Costa Cardoso



   LOCALIZACAO DE PLACAS DE VE´
           ¸˜                 ICULOS BASEADA EM
         ...
Resumo

       No meio acadˆmico, v´rias pesquisas vem sendo apresentadas sobre o reconhe-
                      e        ...
Lista de Tabelas

 4.1 Tabela que demonstra as caracter´
                                     ısticas das imagens utilizad...
Lista de Figuras

 2.1 a) flood-fill com 4 dire¸˜es; b) flood-fill com 8 dire¸˜es . . . . . . . . . . . .
                    ...
Sum´ rio
   a

1 Introdu¸˜o
         ca                                                                                   ...
Cap´tulo 1
   ı

       ¸˜
Introducao


      O uso de sistemas de informa¸˜o baseados em recupera¸˜o de informa¸˜es vem, ...
´               ¸˜
CAPITULO 1. INTRODUCAO                                                                 2


pera¸˜o de i...
´               ¸˜
CAPITULO 1. INTRODUCAO                                                                                 ...
´               ¸˜
CAPITULO 1. INTRODUCAO                                                                 4


aos ´rg˜os d...
Cap´tulo 2
   ı

Revis˜ o Bibliogr´ fica
     a           a


2.1         ¸˜
       Definicoes

Defini¸˜o 2.1.1 Imagem Digita...
´             ˜          ´
CAPITULO 2. REVISAO BIBLIOGRAFICA                                                       6


em ...
´             ˜          ´
CAPITULO 2. REVISAO BIBLIOGRAFICA                                                             7...
´             ˜          ´
CAPITULO 2. REVISAO BIBLIOGRAFICA                                                      8


2.4 ...
´             ˜          ´
CAPITULO 2. REVISAO BIBLIOGRAFICA                                                              ...
´             ˜          ´
CAPITULO 2. REVISAO BIBLIOGRAFICA                                                      10


per...
Cap´tulo 3
   ı

M´ todo Proposto
 e


      Para realizar este trabalho, foram assumidas duas premissas b´sicas, que cond...
´         ´
CAPITULO 3. METODO PROPOSTO                                                          12


tuitivas e necess´ri...
´         ´
CAPITULO 3. METODO PROPOSTO                                                               13




             ...
´         ´
CAPITULO 3. METODO PROPOSTO                                                          14



                   ...
´         ´
CAPITULO 3. METODO PROPOSTO                                                              15


onde P Lx [y] co...
´         ´
CAPITULO 3. METODO PROPOSTO                                                                16


   • s2 (P Lx ...
´         ´
CAPITULO 3. METODO PROPOSTO                                                                17


dessa regra pa...
´         ´
CAPITULO 3. METODO PROPOSTO                                                             18


       Como j´ di...
´         ´
CAPITULO 3. METODO PROPOSTO                                                                    19




        ...
´         ´
CAPITULO 3. METODO PROPOSTO                                                                  20


os pontos de...
´         ´
CAPITULO 3. METODO PROPOSTO                                                               21


3.2           ¸...
´         ´
CAPITULO 3. METODO PROPOSTO                                                               22


um pixel menor ...
´         ´
CAPITULO 3. METODO PROPOSTO                                                        23


sua identifica¸˜o e que...
Cap´tulo 4
   ı

Experimentos e Resultados


       Para realizar este trabalho, foi coletada uma base de dados de imagens...
´
CAPITULO 4. EXPERIMENTOS E RESULTADOS                                                       25

                        ...
´
CAPITULO 4. EXPERIMENTOS E RESULTADOS                                                      26


para “assinatura”. Os co...
´
CAPITULO 4. EXPERIMENTOS E RESULTADOS                                                   27




                         ...
Cap´tulo 5
   ı

Conclus˜ o
       a


      A partir de experimentos realizados neste trabalho em imagens de ve´
        ...
´               ˜
CAPITULO 5. CONCLUSAO                                                                   29


       Dife...
´               ˜
CAPITULO 5. CONCLUSAO                                                                 30


      Quanto ...
Referˆ ncias Bibliogr´ ficas
     e               a

[BDRBC97] J. BARROSO, E.L. DAGLESS, A. RAFAEL, and J. BULAS-CRUZ. Numb...
Localização de Placas de Veículos Baseada em Métodos Estatísticos
Localização de Placas de Veículos Baseada em Métodos Estatísticos
Upcoming SlideShare
Loading in …5
×

Localização de Placas de Veículos Baseada em Métodos Estatísticos

1,030 views
987 views

Published on

Este trabalho tem como objetivo desenvolver um método capaz de localizar a placa do veículo e preparar os caracteres de tal forma que um algoritmo de OCR possa reconhecer e identificá-las, com a mínima intervenção humana. O método proposto utiliza técnicas de processamento de imagens aplicada na análise estatística dos perfis de linha da imagem

Published in: Technology, Automotive
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,030
On SlideShare
0
From Embeds
0
Number of Embeds
148
Actions
Shares
0
Downloads
42
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Localização de Placas de Veículos Baseada em Métodos Estatísticos

  1. 1. PONTIF´ ´ ICIA UNIVERSIDADE CATOLICA DE MINAS GERAIS Instituto de Inform´tica a LOCALIZACAO DE PLACAS DE VE´ ¸˜ ICULOS BASEADA EM METODOS ESTAT´ ´ ISTICOS Edgard Davidson Costa Cardoso Belo Horizonte 2006
  2. 2. Edgard Davidson Costa Cardoso LOCALIZACAO DE PLACAS DE VE´ ¸˜ ICULOS BASEADA EM METODOS ESTAT´ ´ ISTICOS Trabalho de Diploma¸˜o apresentado ao Curso ca de Gradua¸˜o em Sistemas de Informa¸˜o ca ca da Pontif´ıcia Universidade Cat´lica de Minas o Gerais, como requisito parcial para obten¸˜o do ca Grau de Bacharel em Sistemas de Informa¸˜o.ca Orientador: Prof. Silvio J. F. Guimar˜es, D.Sc.. a Belo Horizonte 2006 ii
  3. 3. Edgard Davidson Costa Cardoso LOCALIZACAO DE PLACAS DE VE´ ¸˜ ICULOS BASEADA EM METODOS ESTAT´ ´ ISTICOS Trabalho de Diploma¸˜o apresentado ao Curso de ca Gradua¸˜o em Sistemas de Informa¸˜o da Pontif´ ca ca ıcia Universidade Cat´lica de Minas Gerais, como requisito o parcial para obten¸˜o do Grau de Bacharel em Sistemas ca de Informa¸˜o. ca Aprovada em de 2006 BANCA EXAMINADORA: Prof: Silvo Jamil F. Guimar˜es, D.Sc. a Pontif´ Universidade Cat´lica de Minas Gerais ıcia o Professor Pontif´ Universidade Cat´lica de Minas Gerais ıcia o Professor Pontif´ Universidade Cat´lica de Minas Gerais ıcia o Belo Horizonte 2006 iii
  4. 4. Resumo No meio acadˆmico, v´rias pesquisas vem sendo apresentadas sobre o reconhe- e a cimento de placas de ve´ ıculos, utilizando o processamento de imagens. A utiliza¸ao de c˜ t´cnicas de OCR (Optical Character Recognition) ´ extremamente importante para a e e identifica¸˜o de placas de ve´ ca ıculos, em um ambiente controlado ou n˜o. Entretanto, a o simples fato de utiliz´-las, n˜o garante, suficientemente, a sua perfeita identifica¸˜o. a a ca Nesse caso, procedimentos que aux´ ıliem a localiza¸˜o e a identifica¸˜o da referida placa ca ca devem prover, de forma satisfat´ria, a condi¸˜o ideal para que o uso do OCR seja eficiente e o ca eficaz. De fato, o fator cr´ıtico de sucesso para o reconhecimento autom´tico dos caracteres a contidos na placa ´ uma etapa anterior de localiza¸˜o. Nesse contexto, este trabalho tem e ca como objetivo desenvolver um m´todo capaz de localizar a placa do ve´ e ıculo e preparar os caracteres de tal forma que um algoritmo de OCR possa reconhecer e identific´-las, com a a m´ınima interven¸˜o humana. O m´todo proposto utiliza t´cnicas de processamento de ca e e imagens aplicada na an´lise estat´ a ıstica dos perfis de linha da imagem. iv
  5. 5. Lista de Tabelas 4.1 Tabela que demonstra as caracter´ ısticas das imagens utilizadas no trabalho 24 4.2 Tabela que demonstra as caracter´ ısticas de hardware e software utilizados . 25 4.3 Tabela que demonstra os tempos m´dios obtidos do algoritmo em cada etapa e 25 4.4 Tabela que demonstra a taxa de acerto da etapa de localiza¸˜o da placa e ca da etapa de prepara¸˜o dos caracteres, utilizando placas de v´rios pa´ ca a ıses . 26 v
  6. 6. Lista de Figuras 2.1 a) flood-fill com 4 dire¸˜es; b) flood-fill com 8 dire¸˜es . . . . . . . . . . . . co co 7 2.2 Ilustra¸˜o que demonstra o comportamento do perfil de linha em trˆs linhas ca e distintas da imagem. a) Imagem Original; b) Perfil de Linha 1 (linha superior); c) Perfil de Linha 2 (linha central); d) Pefil de linha 3 (linha inferior) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.1 Vis˜o macro da seq¨ˆncia l´gica das etapas . . . . . . . . . . . . . . . . . a ue o . 12 3.2 Demonstra¸˜o do perfil de linha. a) Imagem original com duas an´lises ca a de “assinatura”ortogonais ` placa. b) Perfil de linha superior, cortando os a far´is. c) Perfil de linha inferior cortando a placa. . . . . . . . . . . . . . o . 13 3.3 Identifica¸˜o dos pontos de m´ximos e m´ ca a ınimos, a partir da an´lise es- a tat´ ıstica do perfil de linha . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.4 Linha encontrada com base na an´lise estat´ a ıstica do perfil de linha. . . . . 19 3.5 Regi˜o encontrada ap´s analisar a condensa¸˜o dos pontos de m´ximo . . a o ca a . 20 3.6 Estruturas de dados utilizadas para localiza¸˜o da placa a) Estrutura de ca dados para localiza¸˜o da linha candidata; b) Estrutura de dados usada ca para localizar as coordenadas exatas da placa na linha candidata identifi- cada pela estrutura da Figura a). . . . . . . . . . . . . . . . . . . . . . . . 20 ´ 3.7 Area dos caracteres localizada com a utiliza¸˜o do flood-fill adaptado. . . ca . 22 4.1 Resultado do algoritmo de localiza¸˜o da placa em diversos n´ ca ıveis de lumi- nosidade, ˆngulo de distˆncia de tomada . . . . . . . . . . . . . . . . . . . 26 a a 4.2 Resultado do algoritmo de prepara¸˜o dos caracteres em diversos n´ ca ıveis de luminosidade, ˆngulo de distˆncia de tomada . . . . . . . . . . . . . . . . . 27 a a 4.3 Exemplo de uma situa¸˜o em que o m´todo proposto falha. 4.3(a) Imagem ca e da placa indicando um perfil de linha. 4.3(b) Exemplo de um perfil de linha em que o m´todo proposto n˜o ´ capaz de identificar a “assinatura”. . . . . 27 e a e vi
  7. 7. Sum´ rio a 1 Introdu¸˜o ca 1 2 Revis˜o Bibliogr´fica a a 5 2.1 Defini¸˜es . . . . . . . co . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 Flood Fill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.3 Perfil de Linha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.4 Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3 M´todo Proposto e 11 3.1 Localiza¸˜o da Placa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 12 3.2 Prepara¸˜o dos Caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 21 3.3 Reconhecimento dos Caracteres . . . . . . . . . . . . . . . . . . . . . . . . 22 4 Experimentos e Resultados 24 5 Conclus˜o a 28 5.1 Sugest˜o de Estudos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 a Bibliografia 30
  8. 8. Cap´tulo 1 ı ¸˜ Introducao O uso de sistemas de informa¸˜o baseados em recupera¸˜o de informa¸˜es vem, a ca ca co cada dia, se consolidando como uma importante ´rea de estudo, recebendo, conseq¨en- a u temente, uma consider´vel aten¸˜o no meio acadˆmico, devido ` sua capacidade de criar a ca e a mecanismos, que viabilizam o desenvolvimento de t´cnicas e m´todos, a fim de otimizar e e ou automatizar processos de reconhecimento, extra¸˜o, indexa¸˜o e recupera¸˜o de in- ca ca ca forma¸˜es de interesse em uma imagem digital. co Apesar de todo o desenvolvimento tecnol´gico j´ alcan¸ado na ´rea da computa¸˜o, o a c a ca a recupera¸˜o de informa¸˜es baseadas na an´lise de imagens mostra-se muito dif´ e ca co a ıcil complexa. No entanto, mesmo com otimiza¸˜es ou automatiza¸˜es sendo realizadas nos referi- co co dos processos, seja no reconhecimento ou extra¸˜o de dados, seja na indexa¸˜o ou na recu- ca ca pera¸˜o desses dados utilizando algoritmos de buscas, ainda existem v´rios desafios cau- ca a sados pelo r´pido crescimento do volume de informa¸˜es definidas como “interessantes”, a co para um determinado grupo de pessoas ou organiza¸˜es, em detrimento da falta de ca- co pacidade em como administr´-las. a Contudo, cresce cada vez mais a necessidade de desenvolver sistemas de recu- 1
  9. 9. ´ ¸˜ CAPITULO 1. INTRODUCAO 2 pera¸˜o de informa¸˜o autom´ticos, para serem aplicados `s v´rias atividades cotidianas, ca ca a a a a fim de gerar procedimentos eficientes e eficazes, reduzindo, ou at´ mesmo eliminando, e processos que at´ ent˜o seriam caros, demorados e propensos ` erros. e a a Sobre esse contexto, especificamente na ´rea de processamento de imagens, ´ a e poss´ citar v´rios exemplos de aplica¸˜o que est˜o baseadas nessas necessidades, tais ıvel a ca a como sensoriameto remoto, rob´tica, medicina, biometria, reconhecimento ´tico de carac- o o teres, assinaturas, c´digos de barras, placa de ve´ o ıculos, entre outros. Por sua vez, ´ poss´ perceber que mesmo essas aplica¸˜es estando inseridas na e ıvel co a ´rea de processamento de imagens, cada uma necessita de t´cnicas ou m´todos diferentes, e e definindo com isso, uma grande variedade de sub-´reas de conhecimento, elevando natu- a ralmente uma grande varia¸˜o de pesquisas, muitas vezes utilizadas em conjunto, a fim ca de solucionar um determinado tipo de problema. Um exemplo disso pode ser visto na pesquisa que aborda o reconhecimento da placa de ve´ ıculos. Sobre esse assunto, ´ poss´ estudar uma variedade de t´cnicas, seja e ıvel e na compreens˜o de determinadas informa¸˜es contidas na imagem utilizando t´cnicas de a co e OCR (“Optical Recognition Characters”), seja na implementa¸˜o de filtros que possi- ca bilitem a segmenta¸˜o de elementos espec´ ca ıficos em determinadas ´reas ou na identifica¸˜o a ca de padr˜es que podem definir um grupo ou v´rios grupos de dados. o a Apesar de, inicialmente, o trabalho de reconhecimento da placa de ve´ ıculos parecer uma aplica¸˜o de solu¸˜o trivial, pois o objeto do reconhecimento, a placa, ´ constitu´ ca ca e ıda de caracteres impressos com formas bem definidas, induzindo ao pensamento que a simples utiliza¸˜o de um sistema de reconhecimento ´tico de caractere OCR convencional pode, ca o sem grande dificuldade, resolver o problema. Entretanto, a realidade mostra o contr´rio. a Os algoritmos de OCR existentes no mercado n˜o s˜o suficientes para reconhecer em uma a a imagem, os caracteres contidos na placa de um ve´ ıculo. Esse fato poder ser entendido por meio de v´rios fatores, entre eles o fato de que: a
  10. 10. ´ ¸˜ CAPITULO 1. INTRODUCAO 3 • os algoritmos de OCR trabalham com imagens bin´rias, j´ as imagens de ve´ a a ıculos s˜o coloridas ou em n´ a ıveis de cinza; • os referidos algoritmos n˜o foram concebidos com o prop´sito de identificar carac- a o teres em um ambiente espec´ ıfico com o de placa de ve´ ıculos; • a simples segmenta¸˜o por meio de uma binariza¸˜o1 da imagem da placa n˜o ´ sufi- ca ca a e ciente para o bom funcionamento do OCR, pois eventualmente essa t´cnica sozinha e n˜o ´ capaz de segmentar os caracteres. a e Al´m desses fatores, o reconhecimento da placa do ve´ e ıculo apresenta caracter´ ısticas pr´prias advindas, por exemplo, de diversos efeitos introduzidos por fatores, como a ve- o locidade de deslocamento do ve´ ıculo, o ˆngulo de tomada da imagem, a distˆncia e a a a qualidade t´cnica do equipamento de captura, a luminosidade natural ou falta da mesma, e sombra, reflexo, diferen¸as de padr˜o, estado da placa, entre outras adversidades, que c a tornam o problema muito mais complexo de ser tratado. Apesar da identifica¸˜o manual da placa ser uma atividade simples, ela ´ restrin- ca e gida com a intr´ ınseca limita¸˜o humana, quando se tem um grande fluxo de ve´ ca ıculos, caracterizando-se em um processo lento, ou at´ mesmo invi´vel. Essa limita¸˜o se d´ pela e a ca a falta de uma ferramenta espec´ ıfica capaz de fazer a identifica¸˜o dos caracteres contidos ca nas placas de autom´veis. Com um sistema automatizado, o ganho n˜o se restringe o a t˜o somente ao tempo de resposta, mas principalmente na imediata disponibilidade da a informa¸˜o para uso em in´meras aplica¸˜es. ca u co Um sistema de informa¸˜o autom´tico de reconhecimento da placa de um ve´ ca a ıculo pode auxiliar e aumentar o desempenho de diversos setores, que necessitam desta in- forma¸˜o para desenvolverem seu trabalho e mesmo ampliar para outros usu´rios em ca a potencial. Um sistema de reconhecimento autom´tico de placas seria um excelente aliado a 1 ´ Onde a imagem e convertida de n´vel de cinza para preto e branco, a partir de um limiar determinado. Valores ı abaixo do limiar assumem preto. Valores acima do limiar assumem branco.
  11. 11. ´ ¸˜ CAPITULO 1. INTRODUCAO 4 aos ´rg˜os de fiscaliza¸˜o, aos estacionamentos de grande rotatividade, `s concession´rias o a ca a a das rodovias privatizadas e ` outros setores que possam fazer uso da informa¸˜o colocada a ca rapidamente ` disposi¸˜o de forma facilitada e com um custo mais baixo. a ca O grande problema de identifica¸˜o de placa de ve´ ca ıculos ´ que como j´ mencionado, e a o simples fato de utilizar um OCR ´ necess´rio, entretanto, n˜o ´ suficiente para a sua e a a e identifica¸˜o. Assumindo este fato como verdade, ´ necess´rio, a priori, o desenvolvimento ca e a de um algoritmo que seja capaz de “entender”o que ´ placa e ap´s esse “entendimento”, e o ser capaz de preparar os caracteres de forma satisfat´ria a ponto de que um algoritmo de o OCR possa reconhecˆ-los. e Este trabalho tem como objetivo desenvolver um m´todo capaz de localizar a placa e do ve´ ıculo e preparar os caracteres, de tal forma que um algoritmo de OCR possa reconhe- cer e identific´-los, com a m´ a ınima interven¸˜o humana. Esse m´todo utiliza t´cnicas de ca e e processamento de imagens aplicada na an´lise estat´ a ıstica dos perfis de linha da imagem. O trabalho est´ organizado da seguinte forma: No Cap´ a ıtulo 2, s˜o apresentadas as a revis˜es bibliogr´ficas e as defini¸˜es utilizadas ao longo do trabalho, al´m de uma breve o a co e abordagem sobre o estado da arte dos trabalhos relacionados publicados na literatura. O Cap´ ıtulo 3 descreve o metodologia utilizada no trabalho, abordando o m´todo de local- e iza¸˜o e prepara¸˜o dos caracteres da placa, para serem reconhecidos por um algoritmo ca ca de OCR. A an´lise dos experimentos e os resultados do trabalho s˜o descritos no Cap´ a a ıtulo 4, onde ´ poss´ analisar o desempenho do m´todo desenvolvido. O Cap´ e ıvel e ıtulo 5 descreve as conclus˜es obtidas com o desenvolvimento deste trabalho e as sugest˜es de estudos o o futuros.
  12. 12. Cap´tulo 2 ı Revis˜ o Bibliogr´ fica a a 2.1 ¸˜ Definicoes Defini¸˜o 2.1.1 Imagem Digital ⇒ Segundo [GW02], uma imagem digital pode ser des- ca crita por uma fun¸˜o f(x,y), que assume M linhas e N Colunas. ca   f (0, 0) f (0, 1) ··· f (0, N − 1) f (1, 0) f (1, 1) ··· f (1, N − 1)     f (x, y) =  . . .    . . . . ··· . .   f (M − 1, 0) f (M − 1, 1) · · · f (M − 1, N − 1) Defini¸˜o 2.1.2 M´dia Aritm´tica ⇒ A m´dia aritm´tica pode ser descrita como um ca e e e e conjunto de n observa¸˜es x1 , x2 , ..., xn , onde a soma dos valores dessas observa¸oes ´ co c˜ e o quociente da divis˜o por estas n observa¸˜es. A m´dia ´ largamente empregada, para a co e e indicar a tendˆncia central de um conjunto de observa¸˜es[FSC98]. A m´dia aritm´tica e co e e ´ denominada por x: e ¯ x1 + x2 + ... + xn xi x= ¯ = (2.1) n n 5
  13. 13. ´ ˜ ´ CAPITULO 2. REVISAO BIBLIOGRAFICA 6 em que xi ´ o s´mbolo que indica a observa¸˜o de ordem i, onde i = 1,2,...,n. e ı ca Defini¸˜o 2.1.3 Variˆncia ⇒ A variˆncia ´ uma medida que indica o grau de dispers˜o, ca a a e a ou variabilidade, em rela¸˜o ao valor central de um determinado conjunto de observa¸˜es ca co [FSC98]. Considerando ent˜o a soma dos quadrados dos desvios em rela¸˜o ` m´dia, e a ca a e sendo denotada por s2 e ´ definida como: e (xi − x)2 ¯ s2 = (2.2) n Defini¸˜o 2.1.4 Desvio Padr˜o ⇒ Ao contr´rio da variˆncia que envolve a soma dos ca a a a quadrados de um conjunto de observa¸˜es e que n˜o exprime a mesma unidade do conjunto co a de dados original, o desvio padr˜o atrav´s do c´lculo da ra´ quadrada da variˆncia ´ capaz a e a ız a e de obter a mesma unidade de medida dos dados originais [FSC98]. Ent˜o, o desvio padr˜o a a ´ denotado por s e ´ definido como: e e (xi − x)2 ¯ s= (2.3) n 2.2 Flood Fill O flood-fill ´ um algoritmo que tem como prop´sito preencher ´reas definidas por e o a componentes conexos da mesma cor, ou na sua forma estendida, componentes conexos den- tro de um intervalo de cor. Na sua forma cl´ssica o flood-fill necessita de trˆs parˆmetros: a e a 1- Ponto inicial P (x, y); 2- Nova cor de preenchimento; 3- Cor anterior do componente conexo. Na sua forma estendida, a cor anterior do componente conexo n˜o precisa ser a uma cor espec´ ıfica, mas um intervalo de cores pr´-determinadas. e Existem algumas formas nas quais o algoritmo pode ser estruturado, entretanto ele sempre usa uma estrutura expl´ ıcita ou impl´ ıcita de pilha, que ´ a sua forma recursiva. O e caminhamento do algoritmo pode ser implementado de duas formas: com quatro dire¸˜es, co
  14. 14. ´ ˜ ´ CAPITULO 2. REVISAO BIBLIOGRAFICA 7 ou com oito dire¸˜es como ilustrado na Figura 2.1. A diferen¸a ´ que com oito dire¸˜es, co c e co o algoritmo ´ capaz preencher ´reas que o de quatro dire¸˜es n˜o tem acesso, devido ` e a co a a vizinhan¸a que cada um consegue alcan¸ar. c c (a) (b) ¸˜ ¸˜ Figura 2.1: a) flood-fill com 4 direcoes; b) flood-fill com 8 direcoes 2.3 Perfil de Linha O perfil de linha de uma imagem com 256 tons de cinza ´ uma proje¸˜o da dis- e ca tribui¸˜o do n´ de cinza de cada pixel contido em cada posi¸˜o ao longo de uma deter- ca ıvel ca minada linha. O perfil de linha P Lx de uma imagem f poder ser definido por: P Lx = {f (x, y), ∀y ∈ [0, N − 1]} (2.4) onde x ´ a linha que est´ sendo analisada, y ´ a coluna e N ´ a largura da imagem f e a e e analisada. [MG04] (a) (b) (c) (d) ¸˜ Figura 2.2: Ilustracao que demonstra o comportamento do perfil de linha em trˆ s linhas distintas e da imagem. a) Imagem Original; b) Perfil de Linha 1 (linha superior); c) Perfil de Linha 2 (linha central); d) Pefil de linha 3 (linha inferior)
  15. 15. ´ ˜ ´ CAPITULO 2. REVISAO BIBLIOGRAFICA 8 2.4 Trabalhos Relacionados No trabalho desenvolvido por [BDRBC97], foi proposto um m´todo de localiza¸˜o e ca de placas, baseado no fato de que a ´rea da placa possui um padr˜o de varia¸˜o tonal a a ca diferente do restante da imagem. A essa caracter´ ıstica deu-se o nome de “assinatura”, que em outras palavras, ´ a ´rea prov´vel da localiza¸˜o da placa, a partir de um padr˜o e a a ca a previamente observado. A referida “assinatura”´ caracterizada por sucessivos pontos de e m´ximos e m´ a ınimos, caracterizados pela intercala¸˜o de caracteres e fundo presentes no ca perfil de linha, que corta horizontalmente a regi˜o da placa. Por fim, no referido tra- a balho, ap´s a localiza¸˜o de uma linha que possui as caracter´ o ca ısticas de uma “assinatura”, a localiza¸˜o da placa dar-se-´ pela compara¸˜o de caracter´ ca a ca ısticas pr´-definidas empiri- e camente com medidas calculadas dinamicamente, como distˆncia e amplitude dos pontos a de m´ximos e m´ a ınimos da linha candidata. A t´cnica descrita em [BDRBC97] apresenta um bom desempenho, entretanto, os e autores n˜o explicitaram como a “assinatura”tratou da dificuldade de identificar quais a pontos m´ximos e m´ a ınimos s˜o relevantes para a identifica¸˜o da assinatura, que muitas a ca vezes retorna um falso positivo, devido ` presen¸a de outros elementos na imagem com a a c mesma caracter´ ıstica. Para tratar essa dificuldade, [MG04] aperfei¸oou o m´todo de localiza¸˜o de placas c e ca desenvolvido por [BDRBC97], utilizando para isso operadores morfol´gicos de white-top o hat e black top-hat concebido por [SER88], para filtrar o perfil de linha com o prop´sito o de diminuir a ocorrˆncia de falsos positivos na an´lise da assinatura. e a J´ [CPR04] apresentou uma t´cnica baseada na variˆncia do perfil de linha, para a e a localizar a placa. O algoritmo proposto pelo autor identifica a linha de maior variˆncia a na imagem, e ap´s encontrada, ´ determinada uma faixa ´tima que segundo o autor, o e o ´ a faixa prov´vel onde est´ localizada a placa. Ap´s encontrada essa faixa ´tima, o e a a o o
  16. 16. ´ ˜ ´ CAPITULO 2. REVISAO BIBLIOGRAFICA 9 algoritmo percorre novamente a imagem em busca da localiza¸˜o da ´rea candidata. Nesta ca a nova itera¸˜o, o algoritmo encontra o valor do limiar calculado a partir dos valores do ca maior e menores picos da linha amostrada. Para analisar os picos encontrados na an´lise a anterior, o algoritmo trabalha com valores pr´-definidos, que caracterizam a largura da e placa. Segundo o autor, a abordagem utilizada no m´todo proposto mostrouse eficiente e na localiza¸˜o e extra¸˜o de placas de ve´ ca ca ıculos. Entretanto, a referida abordagem, est´ a condicionada ao conjunto de imagens testadas. Este fato fica transparente se for observado que o autor utilizou valores pr´-definidos para determinar a faixa ´tima e para determinar e o a largura da placa, al´m de n˜o levar em considera¸˜o a presen¸a de outros elementos na e a ca c imagem com a mesma caracter´ ıstica da “assinatura”. O trabalho de [SS00] tamb´m aborda a t´cnica de “assinatura”para localizar o e e padr˜o de varia¸˜o tonal, efetuando uma busca em toda a imagem ` procura de linhas a ca a horizontais que possuam um padr˜o diferente do restante da imagem. Ap´s encontrar a a o a ´rea que mais se enquadra ao padr˜o da “assinatura”, o algoritmo passa para uma segunda a fase onde a regi˜o encontrada ´ binarizada, utilizando o algoritmo Niblack 1 proposto por a e [NIB86], para ser analisada posteriormente por um algoritmo de procura e verifica¸˜o de ca d´ ıgitos. [SCY00] propˆs um m´todo que tamb´m se enquadra na categoria an´lise da “assi- o e e a natura”por varia¸˜o tonal. O referido trabalho, no entanto, realiza um pr´-processamento ca e aplicando o operador unidimensional Sobel 2 , que pode ser visto com mais detalhes em [GW02]. Em cada linha da imagem, utiliza-se uma m´scara M = [−1, 0, 1] sobre a ima- a gem para real¸´-la, afim de explicitar mais o contraste existente entre os caracteres e o ca fundo da imagem. O operador Sobel tem o objetivo de pr´-processar a imagem, com o e prop´sito de facilitar a identifica¸˜o do perfil que caracteriza a placa. O referido m´todo o ca e pode ser visto tamb´m no trabalho desenvolvido por [FER03]. Os picos encontrados no e 1 Algoritmo que calcula para cada pixel da imagem a m´ dia e o desvio padr˜ o da vizinhanca em torno dele, e a e a ¸ seguir, compara o valor do pixel analisado com o limiar f (x, y). Se o valor do pixel for maior que f (x, y), ele e ´ ´ considerado pertencente ao fundo, caso contr´ rio, e considerado pertencente a algum objeto. a 2 ¸˜ Operador utilizado para realizar a deteccao de borda em uma imagem.
  17. 17. ´ ˜ ´ CAPITULO 2. REVISAO BIBLIOGRAFICA 10 perfil de linha menores que um valor Θ e os picos negativos s˜o descartados. Uma codi- a fica¸˜o em fun¸˜o da largura dos picos ´ feita, resultando em intervalos que representam ca ca e as distˆncias entre os elementos encontrados. A fase subseq¨ente analisa os elementos en- a u contrados quanto a suas dimens˜es horizontais. Aqueles intervalos que estiverem dentro o das dimens˜es esperadas s˜o agrupados at´ formarem grupos com dimens˜es pr´ximas as o a e o o das placas. Devido ` possibilidade de existirem diversas ´reas candidatas, ´ necess´rio a a e a um modo de verificar qual delas ´ realmente v´lida. Este procedimento ´ feito atrav´s de e a e e uma procura bidirecional nas linhas adjacentes ` linha amostrada. Quando um grupo de a linhas ´ aproximadamente igual a dimens˜o vertical dos caracteres, este ´ considerado o e a e local da placa. Outro trabalho que tamb´m apresenta a utiliza¸˜o da “assinatura”´ o desenvolvido e ca e por [YM05], que como o trabalho de [SCY00] e [FER03], utiliza o operador unidimen- sional Sobel para determinar ´reas candidatas a placa e usa a morfologia matem´tica para a a efetivamente localizar ` placa. a Dentre os in´meros trabalhos relacionados na literatura que tratam do assunto u desta monografia, foi conveniente destacar aqueles que possuem alguma influˆncia sobre o e modelo proposto neste trabalho. Entretanto, existe outro grande n´mero de trabalhos que u utilizaram outros tipos de t´cnicas para localizar a placa que valem a pena ser brevemente e citados, como por exemplo o trabalho de [YS05], que utiliza de t´cnicas de l´gica Fuzzy; e o o desenvolvido por [GRT02], [KTK+ 03], [TK99], que utiliza de redes neurais artificiais, o proposto por [YGN+ 03] que localiza a placa utilizando uma combina¸˜o da t´cnica de ca e Hough concebida inicialmente por [Hou62] para localizar linhas em uma imagens e uma t´cnica denominada pelo autor de Voted Block Matching, para localizar a regi˜o da placa. e a
  18. 18. Cap´tulo 3 ı M´ todo Proposto e Para realizar este trabalho, foram assumidas duas premissas b´sicas, que condi- a cionaram a forma do desenvolvimento de uma seq¨ˆncia l´gica de etapas e, conseq¨en- ue o u temente, dos algoritmos necess´rios para o desenvolvimento deste trabalho. As referidas a premissas s˜o descritas como: a • Eficiente - que o algoritmo proposto percorra o m´ ınimo poss´ na imagem; ıvel • Adapt´vel - que o algoritmo se adapte `s situa¸˜es de varia¸˜o de luminosidade, a a co ca contraste e resolu¸˜o de cada imagem de forma dinˆmica. ca a Tendo em vista que o principal fator cr´ ıtico de sucesso para um sistema de iden- tifica¸˜o autom´tico de placas de ve´ ca a ıculos ´ a fase de localiza¸˜o da placa, o m´todo e ca e proposto foca principalmente no referido fator cr´ ıtico, acreditando que o sucesso de um OCR depende totalmente do sucesso da etapa de localiza¸˜o. Ademais, atrelando aos ob- ca jetivos apresentados pelas premissas, condicionou-se ao desenvolvimento de uma seq¨ˆncia ue l´gica de etapas, que fizesse uso das vantagens apresentadas por cada um dos algoritmos o dos outros trabalhos estudados, evitando suas deficiˆncias. Sendo assim, as etapas pro- e postas neste trabalho foram escolhidas de forma semelhante aos v´rios outros trabalhos a publicados na literatura sobre este mesmo assunto, que em outra palavras, s˜o etapas in- a 11
  19. 19. ´ ´ CAPITULO 3. METODO PROPOSTO 12 tuitivas e necess´rias para o desenvolvimento de tal trabalho. Como ilustrado da Figura a 3.1, as etapas foram divididas em aquisi¸˜o da imagem, localiza¸˜o da placa, prepara¸˜o ca ca ca dos caracteres e reconhecimento dos caracteres. a uˆ Figura 3.1: Vis˜ o macro da seq¨ encia l´ gica das etapas o 3.1 ¸˜ Localizacao da Placa A regi˜o onde a placa est´ localizada ´ caracterizada necessariamente por uma a a e varia¸˜o entre pontos de m´ximo e de m´ ca a ınimo, intercalados com amplitude e distˆncia a ` semelhantes. A referida caracter´ ıstica, deu-se o nome de “assinatura”, inicialmente pro- posta por [BDRBC97] e tamb´m utilizada nos trabalhos de [MG04], [CPR04], [SS00], e [SCY00], [FER03]. A “assinatura”pode ser facilmente observada no perfil de linha da Figura 3.2. A etapa de localiza¸˜o da placa possui como entrada uma imagem digital em n´ ca ıvel de cinza, que foi previamente adquirida por algum tipo de equipamento de aquisi¸ao de c˜ imagem, cˆmera digital, filmadora, entre outros. Eventualmente, a imagem adquirida a pode ou n˜o conter uma placa. Caso n˜o haja placa na imagem, o algoritmo retorna a a as coordenadas da regi˜o que mais se assemelha `s caracter´ a a ısticas pr´-definidas de uma e
  20. 20. ´ ´ CAPITULO 3. METODO PROPOSTO 13 ¸˜ Figura 3.2: Demonstracao do perfil de linha. a) Imagem original com duas an´ lises de “assi- a ` natura”ortogonais a placa. b) Perfil de linha superior, cortando os far´ is. c) Perfil de linha o inferior cortando a placa. placa. Caso contr´rio, a etapa de localiza¸˜o da placa tem como sa´ as coordenadas a ca ıda referentes a placa. Quem vai dizer se a regi˜o selecionada ´ placa ou n˜o ´ a etapa de a e a e reconhecimento dos caracteres e ser´ explicada com detalhes posteriormente. a O m´todo utilizado neste trabalho para localizar a placa est´ fortemente embasado e a na estat´ ıstica descritiva que se justifica para atender a segunda premissa enunciada na metodologia. A escolha da estat´ ıstica, representada aqui neste trabalho por trˆs dos seus e v´rios conceitos: m´dia(¯), variˆncia(s2 ) e desvio padr˜o(s), adequa-se muito bem ` um a e x a a a ambiente com situa¸˜es de varia¸˜o de luminosidade, contraste e resolu¸˜o, como ´ uma co ca ca e situa¸˜o real de um sistema de localiza¸˜o autom´tica de placa de ve´ ca ca a ıculos. Esses trˆs e conceitos, na etapa de localiza¸˜o da placa, s˜o utilizados sobre o perfil de linha P Lx . ca a A ado¸˜o da estat´ ca ıstica neste trabalho ´ necess´ria, para que a an´lise de P Lx seja feita e a a de forma dinˆmica, afim de encontrar alguns padr˜es que caracterizam uma placa. Nesta a o etapa, os trˆs conceitos s˜o utilizados da seguinte forma: e a
  21. 21. ´ ´ CAPITULO 3. METODO PROPOSTO 14 n−1 P Lx [y] y=0 x(P Lx ) = ¯ (3.1) n n−1 (P Lx [y] − x(P Lx ))2 ¯ y=0 s2 (P Lx ) = (3.2) n s(P Lx ) = s2 (P Lx ) (3.3) A etapa de localiza¸˜o da placa inicia-se com uma varredura na imagem em busca ca de linhas horizontais, que possuam um padr˜o de varia¸˜o tonal esperado, caracterizando a ca a “assinatura”. Para reduzir o tempo gasto na procura da placa, as linhas s˜o amostradas a em intervalos regulares τ . A escolha do valor de τ depende do tamanho dos caracteres procurados, devendo, entretanto, ser necessariamente menor que a sua dimens˜o vertical. a Embora quanto maior o valor de τ , mais a premissa de eficiˆncia citada anteriormente e ser´ atendida. Uma imagem f de M linhas pode ter o seu processamento reduzido, se as a linhas a serem analisadas na varredura respeitarem a seguinte defini¸˜o: ca f (x , y) = {f (x, y), ∀x ∈ [0, M − 1] ⇔ x mod τ = 0} (3.4) onde f (x , y) representa as linhas x da imagem f (x, y), se e somente se, a linha x for m´ltipla de τ . As linhas, s˜o representadas por x, e y s˜o as colunas. u a a Para a compreens˜o do m´todo desenvolvido para localizar a placa, foram criados a e dois conceitos: PM ax , que representa um ponto de m´ximo do perfil de linha P Lx da a imagem f e PM in , que representa um ponto de m´ ınimo do perfil de linha P Lx da imagem f . Os dois conceitos s˜o definidos como: a s(P Lx ) PM ax = P Lx [y] ≥ x(P Lx ) + ¯ ∀y ∈ [0, N − 1] (3.5) λ s(P Lx ) PM in = P Lx [y] ≤ x(P Lx ) − ¯ ∀y ∈ [0, N − 1] (3.6) λ
  22. 22. ´ ´ CAPITULO 3. METODO PROPOSTO 15 onde P Lx [y] corresponde ao valor do pixel em cada posi¸˜o do perfil de linha P Lx ca Como j´ citado, a regi˜o onde a placa se encontra ´ fortemente caracterizada por a a e um padr˜o denominado “assinatura”. No trabalho proposto por [MG04], a placa ´ lo- a e calizada atrav´s da an´lise das distˆncias dos pontos de m´ximo e m´ e a a a ınimo presentes no padr˜o da “assinatura”. N˜o obstante, outro trabalho com o mesmo prop´sito desen- a a o volvido por [CPR04] determina, a partir da variˆncia do perfil de linha, os pontos de a m´ximo e m´ a ınimo. Neste trabalho, os pontos de m´ximo e m´ a ınimo s˜o determinados de forma seme- a lhante aos trabalhos de [MG04] e [CPR04]. Entretanto, a estat´ ıstica ´ usada de forma e mais efetiva em rela¸˜o ao trabalho de [CPR04] e sem a necessidade de pr´-processamento ca e como ´ o caso do trabalho de [MG04] e Os pontos de m´ximos PM ax e m´ a ınimos PM in s˜o escolhidos, a partir de uma a varredura da esquerda para a direita no perfil de linha P Lx de cada linha x da ima- gem f . A partir de observa¸˜es emp´ co ıricas do comportamento das caracter´ ısticas da “assinatura”, nota-se que apenas a utiliza¸˜o da m´dia dos valores dos pixels do perfil de ca e linha ´ necess´ria, entretanto, n˜o ´ suficiente para discernir o que ´ ponto de m´ximo e e a a e e a o que ´ ponto de m´ e ınimo de forma coesa. Observando a diferen¸a abrupta de tons de cinza referentes ao fundo da placa c em rela¸˜o aos seus caracteres, ´ poss´ notar duas caracter´ ca e ıvel ısticas marcantes da “assi- natura”: • Uma aplitude dos n´ ıveis de cinza entre o fundo da placa e seus respectivos caracteres. • Uma condensa¸˜o entre os pontos de m´ximos e m´ ca a ınimos da amplitude. A partir dessas duas caracter´ ısticas, ´ ent˜o necess´rio atribuir duas pr´-condi¸˜es, e a a e co para diminuir a taxa de falsos positivos:
  23. 23. ´ ´ CAPITULO 3. METODO PROPOSTO 16 • s2 (P Lx ) < (Θ.¯), onde Θ ´ um multiplicador definido empiricamente, s2 (P Lx ) x e refere-se ao valor da variˆncia do perfil de linha. Perfil de linhas com amplitude a menor que (Θ.¯) s˜o descartadas. x a • Como a regi˜o da “assinatura”´ caracterizada por uma regi˜o com altas amplitudes a e a referentes aos pontos de m´ximos e m´ a ınimos e de forma condensada, conforme ilustrado na Figura 3.3, ´ necess´rio atribuir um desvio em rela¸˜o ` m´dia para e a ca a e cima e para baixo, que seja suficiente para encontrar os pontos de m´ximo e m´ a ınimos da “assinatura”e que tamb´m seja suficiente para descartar regi˜es que n˜o possuem e o a amplitudes como as observadas na “assinatura”. Esse desvio deve ser definido de forma dinˆmica, atrav´s do c´lculo da m´dia, mediana e desvio padr˜o do perfil de a e a e a linha. As duas caracter´ ısticas presentes na “assinatura”e a desvio atribu´ em rela¸˜o ıdo ca ao valor da m´dia do perfil de linha podem ser visualizados na Figura 3.3. e ¸˜ Figura 3.3: Identificacao dos pontos de m´ ximos e m´nimos, a partir da an´ lise estat´stica do a ı a ı perfil de linha Para que um ponto seja considerado como ponto de m´ximo, ele deve possuir um a tom de cinza maior que a m´dia somada com a metade do desvio padr˜o correspondente. e a Para o ponto de m´ ınimo, o racioc´ ınio ´ o mesmo, modificando apenas que o pixel deve e ser menor que a m´dia subtra´ da metade do desvio padr˜o correspondente. Al´m e ıda a e
  24. 24. ´ ´ CAPITULO 3. METODO PROPOSTO 17 dessa regra para a escolha dos pontos de m´ximo e m´ a ınimo, uma vez que um ponto foi considerado como ponto de m´ximo, o pr´ximo ponto s´ poder´ ser um ponto de a o o a m´ ınimo, sequenciamente, o pr´ximo ponto s´ poder´ ser um ponto de m´ximo, e assim o o a a sucessivamente intercalando pontos de m´ximo e m´ a ınimo, at´ atingir o final do perfil de e linha. Como pode ser notado na Figura 3.3, os pontos de m´ximo n˜o s˜o necessariamente a a a os picos do perfil de linha. Nesse caso, o ponto de m´ximo passa a ser o primeiro ponto a que respeita a l´gica descrita acima, o mesmo acontecendo com os pontos de m´ o ınimo. Ap´s definido o conceito de PM ax e PM in e entendido o processo de discernir o que o ´ ponto de m´ximo e o que ´ ponto de m´ e a e ınimo, ´ necess´rio a compreens˜o de mais dois e a a conceitos: LPM ax , que representa uma lista contendo as ocorrˆncias dos pontos de m´ximo e a de cada perfil de linha P Lx da imagem f . E, LPM in , que tem o mesmo sentido de LPM ax , no entanto, contendo as ocorrˆncias dos pontos de m´ e ınimo. 1, se P Lx [y] = PM ax f lagM ax [xi ] = (3.7) 0, se P Lx [y] = PM ax 1, se P Lx [y] = PM in f lagM in [xi ] = (3.8) 0, se P Lx [y] = PM in onde y ∈ [0, N − 1] e xi ∈ [0, N − 1] . N −1 LPM ax [x ] = f lagM ax [xi ] ∈ P Lx , ∀P Lx ∈ f (x , y) (3.9) xi =0 N −1 LPM in [x ] = f lagM in [xi ] ∈ P Lx , ∀P Lx ∈ f (x , y) (3.10) xi =0 Para definir em qual linha est´ situada a placa, as listas LPM ax e LPM in s˜o anali- a a sadas. As duas listas n˜o precisam ser analisadas em conjunto, sendo assim, este trabalho a referenciar´ apenas a lista LPM ax . No entanto, a an´lise tamb´m pode ser feita sobre a a a e lista LPM in .
  25. 25. ´ ´ CAPITULO 3. METODO PROPOSTO 18 Como j´ dito, a placa ´ caracterizada por sucessivos pontos de m´ximos e m´ a e a ınimos, intercalados com amplitude e distˆncia semelhantes. Toda a metodologia de escolha a de pontos de m´ximo e m´ a ınimo j´ foi previamente elaborada, para que o M ax(LPM ax ) a contenha a assinatura procurada, onde M ax(LPM ax ) ´ a posi¸˜o da lista LPM in com o e ca maior n´mero de pontos de m´ximo. u a Para verificar a veracidade do m´todo, os elementos vizinhos de M ax(LPM ax ), ou e seja, os V (M ax(LPM ax )), tamb´m s˜o analisados, para diminuir a taxa de falsos positivos e a se, eventualmente, a linha encontrada em M ax(LPM ax ) possuir ru´ ıdos ou pertuba¸˜es, co que possuam a mesma caracter´ ıstica esperada para a placa. A an´lise dos vizinhos ´ a e realizada da seguinte forma: a linha de cima e a linha de baixo da linha encontrada em M ax(LPM ax ) s˜o verificadas, a fim de saber qual das duas contˆm o maior n´mero de a e u PM ax . Ap´s encontrada qual das duas possui o maior n´mero de PM ax . Essa linha ´ o u e analisada com a linha encontrada em M ax(LPM ax ). Se a linha vizinha a M ax(LPM ax ) com o maior n´mero de PM ax for pelo menos δ%deMax(LPM ax ), ent˜o a linha contida em u a M ax(LPM ax ) ´ caracterizada como a linha prov´vel para a placa. Caso a condi¸˜o n˜o e a ca a seja aceita, ´ feita uma nova busca na lista de LPM ax , buscando agora a segunda posi¸˜o e ca que cont´m o maior n´mero de PM ax . Os passos descritos acima se repetem at´ obter um e u e valor que seja pelo menos δ%deMax(LPM ax ), ou ent˜o, at´ que todas as posi¸˜es da lista a e co LPM ax sejam analisadas, at´ concluir que a imagem n˜o possui placa . e a Ap´s o processo descrito acima, ´ esperado em uma imagem que contenha a placa o e o seguinte resultado, conforme Figura 3.4 Para localizar a regi˜o que mais se caracteriza como uma placa ao longo da linha a ilustrada na Figura 3.4, o perfil de linha ´ submetido novamente a uma inspe¸˜o. Neste e ca ponto, a busca para de ser vertical e passa a ser horizontal, ou seja, ap´s encontrar a o linha x que mais se enquadra ao padr˜o esperado p´ra a ‘assinatura”, o objetivo agora a a ´ determinar em qual posi¸˜o efetivamente come¸a e termina a regi˜o delimitada pela e ca c a
  26. 26. ´ ´ CAPITULO 3. METODO PROPOSTO 19 Figura 3.4: Linha encontrada com base na an´ lise estat´stica do perfil de linha. a ı placa. O algoritmo percorre o perfil de linha, criando uma nova lista com o c´lculo da a distˆncia entre cada ponto de m´ximo ou de cada ponto de m´ a a ınimo, referentes `s distˆncias a a de duas posi¸˜es y do perfil de linha P Lx . Ap´s percorrer o perfil de linha e preencher a co o estrutura de dados ilustrada na Figura 3.6 b), o algoritmo utiliza novamente os conceitos ısticos de m´dia(¯), variˆncia(s2 ) e desvio padr˜o(s). Os trˆs valores estat´ estat´ e x a a e ısticos s˜o a calculados, a partir da lista que foi criada com os c´lculos das distˆncias. Esta opera¸˜o a a ca pode ser descrita pela defini¸˜o a seguir: ca s Linf = x+ ¯ (3.11) α Ldis [xi ] > Linf , f lag = 1 (3.12) Ldis [xi ] ≤ Linf , f lag = 0 (3.13) onde α ´ um valor inteiro suficiente para separar as distˆncias maiores das distˆncias e a a menores. Linf caracteriza o limite inferior, que servir´ como um limiar para separar a distˆncias entre dois pontos maior de distˆncia entre dois pontos menores. Os valores a a de distˆncia da lista de distˆncias Ldis [xi ] maiores que Linf assumem f lag = 1, caso a a contr´rio, assumem f lag = 0. E s representa o desvio padr˜o das distˆncias de pontos de a a a m´ximo. a Observando o perfil de linha da Figura 3.3, ´ not´vel que existe uma regi˜o onde e a a
  27. 27. ´ ´ CAPITULO 3. METODO PROPOSTO 20 os pontos de m´ximo e de m´ a ınimos est˜o mais condensados. A defini¸˜o acima busca a ca exatamente localizar a referida condensa¸˜o, atribuindo 0 para as distˆncias maiores e 1 ca a para as distˆncias curtas. A regi˜o da lista Ldis com a maior condensa¸˜o de valores 1 a a ca ´ considerada como a regi˜o da placa e as coordenadas s˜o remetidas como ilustrado na e a a Figura 3.5. a o ¸˜ Figura 3.5: Regi˜ o encontrada ap´ s analisar a condensacao dos pontos de m´ ximo a As estruturas de dados usadas para localizar a linha candidata ` placa e a estrutura a usada para localizar as coordenadas exatas das linhas candidatas est˜o ilustradas nas a Figuras 3.6 a) e b), respectivamente. (a) (b) ¸˜ Figura 3.6: Estruturas de dados utilizadas para localizacao da placa a) Estrutura de dados para ¸˜ localizacao da linha candidata; b) Estrutura de dados usada para localizar as coordenadas exatas da placa na linha candidata identificada pela estrutura da Figura a).
  28. 28. ´ ´ CAPITULO 3. METODO PROPOSTO 21 3.2 ¸˜ Preparacao dos Caracteres Ap´s a etapa de localiza¸˜o da placa, onde as coordenadas referentes ` poss´ o ca a ıvel localiza¸˜o da placa s˜o identificadas. A etapa de prepara¸˜o dos caracteres tem o objetivo ca a ca de analisar a ´rea delimitada pelas referidas coordenadas, afim de obter as ´reas de cada a a caracter segmentada e binarizada da imagem original. Contudo, isso em condi¸˜es que co facilite e aumente a precis˜o de um algoritmo de OCR. Caso n˜o haja um caracter na a a a ´rea segmentada, esta etapa ter´ como sa´ coordenadas errˆneas de ´reas que mais se a ıda o a adequam ` l´gica do algoritmo descrito a seguir. a o A etapa de prepara¸˜o dos caracteres, por sua vez, tamb´m utiliza as medidas ca e ısticas de m´dia(¯), variˆncia(s2 ) e desvio padr˜o(s). Os trˆs valores estat´ estat´ e x a a e ısticos s˜o a calculados a partir do perfil de linha P Lx encontrado na etapa de localiza¸˜o da placa, ca que mais se assemelha ao padr˜o de “assinatura”procurado corretamente delimitado pela a regi˜o encontrada ap´s analisar a condensa¸˜o dos pontos de m´ximo. A estat´ a o ca a ıstica descritiva ´ novamente utilizada nesta etapa para garantir que o m´todo continue sendo e e adapt´vel com varia¸˜o de ilumina¸˜o e contraste. a ca ca O objetivo desta etapa ´ separar cada caracter contido na placa e trat´-los separa- e a damente. Uma vers˜o adaptada do algoritmo flood-fill foi formulada neste trabalho, para a que a segmenta¸˜o dos caracteres fosse poss´ ca ıvel. Para entender como o flood-fill se tornou adapt´vel, segue a defini¸˜o de como a CorAntiga ´ atribu´ a ca e ıda: CorAntiga = {¯(P Lx )} x (3.14) ou seja, CorAntiga recebe a m´dia dos n´ e ıveis de cinza de P Lx , delimitado pela ´rea a encontrada ap´s analisar a condensa¸˜o dos pontos de m´ximo. o ca a O algoritmo percorre o perfil de linha da esquerda para direita e quando encontrar
  29. 29. ´ ´ CAPITULO 3. METODO PROPOSTO 22 um pixel menor que CorAntiga, ou seja, 0 < CorN ova < CorAntiga, o algoritmo executa o flood-fill e a ´rea encontrada ´ caracterizada como um caractere. Essa busca ´ realizada a e e at´ encontrar o final de P Lx . e A Figura 3.7 ilustra as ´reas dos caracteres encontrados ap´s a utiliza¸˜o do flood- a o ca fill adaptado, onde cada caracter foi separado e binarizado, e est´ pronto para ser enviado a para um OCR. ´ ¸˜ Figura 3.7: Area dos caracteres localizada com a utilizacao do flood-fill adaptado. 3.3 Reconhecimento dos Caracteres Ap´s a localiza¸˜o da placa e prepara¸˜o dos caracteres, j´ ´ poss´ utilizar um o ca ca ae ıvel OCR com objetivo de reconhecer os caracteres referentes ` placa. Se eventualmente n˜o a a for reconhecido nenhum caracter ou se os caracteres reconhecidos n˜o caracterizarem uma a placa com os padr˜es nacionais de trˆnsito, esta etapa tem como sa´ uma sinaliza¸˜o o a ıda ca que indica que o processo dever´ ser reiniciado a partir da etapa localiza¸˜o dos caracteres. a ca Entretanto, agora o valor de x referente n˜o mais ` M ax(LPM ax ) e M ax(LPM in ) presentes a a na primeira itera¸˜o, mas referente ` segunda maior quantidade de pontos de m´ximo ca a a e m´ ınimo. A lista completa de todos os valores em ordem decrescentes dos pontos de m´ximo e m´ a ınimo LPM ax e LPM in j´ foi previamente armazenada em mem´ria na etapa a o de localiza¸˜o da placa. Se a nova itera¸˜o falhar novamente, todo processo poder´ ser ca ca a realizado novamente at´ o n´mero total de x ou at´ um limite de itera¸˜es previamente e u e co estabelecido. Para reconhecer os caracteres, este trabalho utilizou uma ferramenta OCR de terceiros. Entendendo que o simples fato de utilizar um OCR n˜o ´ suficiente para a a e
  30. 30. ´ ´ CAPITULO 3. METODO PROPOSTO 23 sua identifica¸˜o e que a referida ferramenta j´ ´ uma tecnologia dominada e consagrada ca ae no mercado e no meio acadˆmico, atingido um alto n´ de acertos. e ıvel
  31. 31. Cap´tulo 4 ı Experimentos e Resultados Para realizar este trabalho, foi coletada uma base de dados de imagens, que se en- contram em situa¸˜o de ambiente controlado. Um ambiente controlado necessariamente ´ ca e um ambiente que propicia o mesmo ˆngulo de tomada, na mesma distˆncia e mesmo grau a a de luminosidade. Um ambiente dito controlado pode ser encontrado em entradas de shop- ping ou estacionamento, como ´ o caso das imagens utilizadas neste trabalho. A escolha e de imagens em um ambiente controlado s˜o necess´rias para diminuir a complexidade dos a a algoritmos, agindo pontualmente em uma determinada dificuldade e aumentando assim a probabilidade de acerto. A Tabela 4.1 demonstra as caracter´ ısticas das imagens utilizadas neste trabalho. Para realizar os experimentos, foram coletadas imagens com exemplos de placas de v´rios pa´ do mundo com diferentes dimens˜es. a ıses o Banco de dados de imagem N´ mero de Imagens u 139 ¸˜ Resolucao 96 DPI Cores 256 Cores (8BitsPorPixel) Tipo de Arquivo JPG Tabela 4.1: Tabela que demonstra as caracter´sticas das imagens utilizadas no trabalho ı Foi utilizado para processar as imagens um computador com as configura¸˜es des- co critas na Tabela 4.2 As etapas de localiza¸˜o da placa e prepara¸˜o dos caracteres mostrou extrema- ca ca 24
  32. 32. ´ CAPITULO 4. EXPERIMENTOS E RESULTADOS 25 ¸˜ Configuracao utilizada Processador AMD Athlon(TM)XP 2600+ 1.92GHz Mem´ ria o 256MB Sistema Operacional Windows XP Professional ¸˜ Linguagem deProgramacao Delphi 7 Tabela 4.2: Tabela que demonstra as caracter´sticas de hardware e software utilizados ı mente eficiente do ponto de vista de tempo de processamento. Como um dos principais objetivos desta proposta ´ localizar a placa e preparar os caracteres para o reconheci- e mento em um OCR, de forma que o algoritmo percorra o m´ ınimo poss´ da imagem. ıvel Esse objetivo foi alcan¸ado na etapa para localizar os pontos de m´ximo PM ax e pontos c a de m´ ınimo PM in , onde o algoritmo passa a trabalhar com a imagem f (x , y) e n˜o mais a com a imagem original f (x, y), al´m das pr´-condi¸˜es como o perfil de linhas com am- e e co plitude menor que (Θ . x) serem descartados e perfis de linhas que n˜o se enquadram ¯ a no padr˜o da “assinatura”tamb´m ser˜o descartados. Com a utiliza¸˜o conjunta desses a e a ca m´todos, a quantidade de pixels a serem analisados na imagem original f (x, y) diminuem e significamente, o que pode ser observado com os dados demonstrados na Tabela 4.3 Tempos Obtidos Etapa em milesegundos em segundos ¸˜ Localizacao da Placa 32 ms p/imagem 31,25 imagens p/s ¸˜ Preparacao dos Caracteres 15 ms p/imagem 66,66 imagens p/s OCR 80 ms p/imagem 12,50 imagens p/s Total 127 ms p/imagem 7,87 imagens p/s Tabela 4.3: Tabela que demonstra os tempos m´ dios obtidos do algoritmo em cada etapa e Cada conjunto de imagem de cada pa´ analisado possui caracter´ ıs ısticas pr´prias o quanto ` ilumina¸˜o, distˆncia e ˆngulo de tomada, al´m de possuir padr˜es de numera¸˜o a ca a a e o ca espec´ ıficos para cada pa´ como pode ser visto na Figura 4.1. Entretanto, para o algo- ıs, ritmo, os referidos fatos s˜o indiferentes, levando em considera¸˜o que a busca pela placa a ca ´ realizada da mesma forma e entendendo que o fator cr´ e ıtico de sucesso do algoritmo ´ e que apenas o ve´ ıculo esteja contido na imagem. Imagem que al´m da presen¸a do ve´ e c ıculo, contenha tamb´m outros objetos que n˜o pertencem ao autom´vel aumenta considerav- e a o elmente a possibilidade de haver outra regi˜o com as mesmas caracter´ a ısticas esperadas
  33. 33. ´ CAPITULO 4. EXPERIMENTOS E RESULTADOS 26 para “assinatura”. Os conjuntos de imagens exemplificados pela Figura 4.1 demonstram um ambiente ideal para o sucesso do algoritmo. O desempenho da etapa de localiza¸˜o ca da placa e da etapa de prepara¸˜o dos caracteres ´ apresentado na Tabela 4.4 ca e Desempenho do Algoritmo Pa´s ı No de Images Localizacao da placa Preparacao dos Caracteres ¸˜ ¸˜ Brasil 31 27 - 87,0% 16 - 51,6% Holanda 39 39 - 100% 31 - 79,4% Israel 39 37 - 94,8% 29 - 74,3% Austr´ lia a 30 27 - 90% 14 - 46,6% ¸˜ Tabela 4.4: Tabela que demonstra a taxa de acerto da etapa de localizacao da placa e da etapa ¸˜ de preparacao dos caracteres, utilizando placas de v´ rios pa´ses a ı (a) Brasil (b) Holanda (c) Israel (d) Austr´ lia a ¸˜ Figura 4.1: Resultado do algoritmo de localizacao da placa em diversos n´veis de luminosidade, ı ˆ angulo de distˆ ncia de tomada a Neste trabalho, foram criadas duas premissas que presavam a eficiˆncia e a adap- e tabilidade do algoritmo proposto. As referidas premissas foram elaboradas para efetivar o desenvolvimento de um m´todo que diminu´ a taxa de particularidade de algoritmos e ısse j´ desenvolvidos. Tais particularidades podem ser percebidas no trabalho de [SCY00], a que apesar de ser eficiente do ponto de vista de velocidade de processamento, demonstrou ser segundo o autor, pouco eficaz no que diz respeito ` sua exposi¸˜o em condi¸oes de a ca c˜ ilumina¸˜o vari´veis. Entretanto, outro algoritmo desenvolvido por [CBW98] apresentou ca a ser eficiente quanto ` varia¸˜o de ilumina¸˜o, mas em contrapartida, tamb´m segundo o a ca ca e autor, apresentou ser pouco eficiente no quesito tempo de processamento.
  34. 34. ´ CAPITULO 4. EXPERIMENTOS E RESULTADOS 27 (a) Brasil (b) Holanda (c) Israel (d) Austr´ lia a ¸˜ Figura 4.2: Resultado do algoritmo de preparacao dos caracteres em diversos n´veis de lumi- ı ˆ nosidade, angulo de distˆ ncia de tomada a Contudo, o algoritmo apresentado neste trabalho mostrou-se eficiente no quesito tempo de processamento e adapt´vel `s v´rias condi¸˜es de ilumina¸˜o diferentes, sem a a a co ca comprometer o tempo gasto. No entanto, foi poss´ observar que em algumas situa¸˜es ıvel co o algoritmo falha. A Figura 4.3 demonstra uma situa¸˜o t´ ca ıpica na qual o algoritmo n˜o ´ a e capaz de localizar a placa, levando ` sinaliza¸˜o de um ponto onde o processo n˜o alcan¸ou a ca a c resultado satisfat´rio. o Como pode ser notado, as trˆs linhas que representam a m´dia x, a m´dia mais e e ¯ e a ¯ s metade do desvio padr˜o x + 2 e a linha que representa a m´dia menos a metade do desvio e s padr˜o x − a ¯ 2 passam acima da ´rea que representa a “assinatura”. Este fato se d´ pela a a alta concentra¸˜o de pixels com tons de cinza pr´ximos a branco, o que leva a m´dia para ca o e cima, gerando a ineficiˆncia do algoritmo nestes casos. e (a) (b) ¸˜ Figura 4.3: Exemplo de uma situacao em que o m´ todo proposto falha. 4.3(a) Imagem da placa e indicando um perfil de linha. 4.3(b) Exemplo de um perfil de linha em que o m´ todo proposto e a ´ n˜ o e capaz de identificar a “assinatura”.
  35. 35. Cap´tulo 5 ı Conclus˜ o a A partir de experimentos realizados neste trabalho em imagens de ve´ ıculo em um ambiente controlado, notou-se que as duas premissas de adaptabilidade e eficiˆncia e descritas no trabalho foram alcan¸adas. Este fato pode ser observados na Tabela 4.3 c que demonstrou o tempo gasto para processamento das imagens na etapa de localiza¸˜o ca e prepara¸˜o dos caracteres e, na Figura 4.3, que demonstra v´rios tipos de ˆngulo de ca a a tomada, distˆncia, ilumina¸˜o e contraste. a ca O processo de reconhecimento dos caracteres contidos em uma placa depende forte- mente do m´todo utilizado para encontr´-la e prepar´-la. Com a utiliza¸˜o de t´cnicas de e a a ca e processamento de imagens aplicada na an´lise estat´ a ıstica dos perfis de linha da imagem, possibilitou, principalmente, atrav´s da an´lise estat´ e a ıstica, que o algoritmo trabalhasse com valores obtidos dinamicamente e, por sua vez, adapt´vel ` situa¸˜es diversas de a a co ilumina¸˜o. ca Neste trabalho, a localiza¸˜o da placa de ve´ ca ıculo em um cen´rio controlado ocorreu a de forma satisfat´ria do ponto de vista do que era esperado no in´ do trabalho, com o ıcio o´ ındice de 93% de acerto, sendo que em alguns ambientes, como o caso do grupo de imagens de autom´veis holandesas, obteve 100% de acerto. o 28
  36. 36. ´ ˜ CAPITULO 5. CONCLUSAO 29 Diferentemente da etapa de localiza¸˜o placa, a etapa de prepara¸˜o dos caracte- ca ca res apesar de tamb´m ser embasada sobre valores obtidos atrav´s de an´lise estat´ e e a ıstica, demonstrou um n´ de acerto abaixo do esperado, com 64% de acerto. No entanto, a ıvel prepara¸˜o dos caracteres pode ser descartada se o algoritmo de OCR utilizado sofisticado ca o suficiente para realizar esta etapa. Em outras palavras, em um processo de identifica¸˜o ca autom´tico dos caracteres contidos em um placa de ve´ a ıculo, o fator cr´ ıtico de sucesso ´ e a localiza¸˜o da placa, ou seja, se esta etapa falhar, todos as outras etapas subsequentes ca falhar˜o e foi nessa etapa que este trabalho teve seu foco. a 5.1 Sugest˜ o de Estudos a Algumas melhorias podem ser realizadas como trabalhos futuros para aperfei¸oar c as t´cnicas utilizadas neste trabalho. Uma melhoria que poderia ser realizada ´ quanto a e e etapa de prepara¸˜o dos caracteres. Neste trabalho, como pode ser observado na Tabela ca 4.4, houve um baixo ´ ındice de acerto. No entanto, ap´s a placa j´ ter sido localizada, a o a etapa de prepara¸˜o dos caracteres deve apenas preparar a referida ´rea, para que um ca a algoritmo de OCR possa ter um resultado mais efetivo. Algumas abordagens podem ser utilizadas, como por exemplo, melhorar a forma que o flood-fill segmenta os caracteres ou realizar binariza¸˜es adaptativas, como as conhecidas Otsu, Niblack; ou utilizar t´cnicas co e de realce de borda, como Cany; ou at´ mesmo utilizar morfologia matem´tica, para e a tentar resolver o problema. Em outras palavras, a etapa de prepara¸˜o dos caracteres ca deve separar os caracteres dos outros objetos conexos existentes na regi˜o resultante da a etapa de localiza¸˜o da placa. ca Outra melhoria que pode ser realizada ´ quanto a inclina¸˜o da placa. Neste tra- e ca balho, a tolerˆncia quanto a inclina¸˜o ´ pequena, visto que para o sucesso da localiza¸˜o, a ca e ca a inclina¸˜o da placa deve ser de tal forma que o perfil de linha deve pegar o primeiro e ca o ultimo caracter da placa. ´
  37. 37. ´ ˜ CAPITULO 5. CONCLUSAO 30 Quanto ` falha apresentada e ilustrada na Figura 4.3, uma alternativa para pesquisas a futuras seria talves, nos casos espec´ ıficos nas quais o algoritmo falha, executar um pr´- e processamento de forma que uma eventual alta concentra¸˜o de pixels pr´ximos de brancos ca o ou pixels pr´ximos de pretos seja contornada, com m´todos como white-top hat e black o e top-hat concebidos por [SER88].
  38. 38. Referˆ ncias Bibliogr´ ficas e a [BDRBC97] J. BARROSO, E.L. DAGLESS, A. RAFAEL, and J. BULAS-CRUZ. Number plate reading using computer vision. IEEE - International Sympositum on Industrial Eletronics ISIE’97 Universidade do Minho, Guimar˜es, Jul 1997. a [CBW98] C. COETZEE, C. BOTHA, and D. WEBER. Pc based number plate recog- nition system. Proceedings of IEEE International Conference on Industrial Electronics, 1998. [CPR04] B. G. CUNHA, J. F. PEREIRA, and W. S. M. RIBEIRO. Localiza¸˜o ca de placas de ve´ ´ ıculos utilizando t´cnicas de variˆncia. PRAXIS - Revista do e a Instituto Luterano de Ensino Superior de Itumbiara, (5):23–25, jul/dez 2004. [FER03] A. P. P. FERREIRA. Sistema de Identifica¸˜o Autom´tica de Matr´ ca a ıculas em Ve´culos Autom´veis. PhD thesis, Instituto Superior de Engenharia de ı o Lisboa, 2003. ´ [FSC98] A. A. FARIAS, J. F. SOARES, and C. C. CESAR. Introdu¸˜o ` Estat´stica. ca a ı Rio de Janeiro :LTC 2. ed., 1998. ´ [GRT02] C.B. GUINGO, R. J. RODRIGUES, and A. C. G. THOME. Reconhecimento autom´tico de placas de ve´ a ıculos automotores atrav´s de redes neurais arti- e ficiais. 2o . Congresso Brasileiro de Computa¸˜o, 2002. ca [GW02] R. C. GONZALEZ and R. E. WOODS. Digital Image Processing. Prentice Hall, 2002. 31

×