Reconhecimento de Placas de Ve´ıculosArthur Ribeiro1, Jo˜ao Batista Matos1, Vin´ıcius Coelho11Instituto de Inform´atica – ...
Figure 1. Padr˜ao de placas nos autom´oveis brasileirosVisto que as placas possuem car-acter´ısticas geom´etricas exclusiv...
vizinhos se forem pretos trocam de valoresde 3 em diante afim de marcar o espac¸o compixel de valor zero. Ap´os esse passo ...
dimenc¸˜oes. Para percorrer as linhas e colu-nas da imagens do banco de dados usamosa mesma l´ogica de incrementac¸˜ao usa...
que o processo de reconhecimento de pla-cas seja eficiente e r´apido, diminuindo oserros humanos e acelerando todo o pro-ce...
Próximos SlideShares
Carregando em…5
×

Reconhecimento de Placas

340 visualizações

Publicada em

  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Reconhecimento de Placas

  1. 1. Reconhecimento de Placas de Ve´ıculosArthur Ribeiro1, Jo˜ao Batista Matos1, Vin´ıcius Coelho11Instituto de Inform´atica – Universidade Federal de Goi´as (UFG)Goiˆania – GO – Brasilarthurfranklin@hotmail.com, {joaobatistamatos, viniciuscoelho}@inf.ufg.brAbstract. Over the years, the so-ciety needed resources that wouldaid in traffic. With this work, wetry to create a system that opti-mizes the traffic control that is sonecessary in today’s urban cen-ters.Resumo. Com o passar dos anos,a sociedade necessitou de recur-sos que auxiliassem no trˆansito.Com esse trabalho, tentamoscriar um sistema que otimize essecontrole de tr´afego que ´e t˜aonecess´ario nos centros urbanos dehoje.1. Introduc¸˜aoCom o constante crescimento da frotamundial de ve´ıculos e o aumento da in-tensidade dessa frota nos centros urbanos,tornou-se cada vez mais necess´ario o cont-role do trˆansito dos autom´oveis, afim de semanter a ordem e at´e mesmo a seguranc¸ade determinados locais caso algum impre-visto acontec¸a. O reconhecimento de placashoje ´e ´util para v´arias ´areas distintas, comoa de controle e monitoramento de tr´afego,localizac¸˜ao de carros roubados, aplicac¸˜aode multas aos condutores infratores, con-trolar o acesso a estacionamentos, coletarestat´ısticas de fluxo de entrada e sa´ıda decertos locais ou mesmo gerar subs´ıdios paraa ´area de turismo. Mesmo nas grandesmetr´opoles brasileiras, a identificac¸˜ao dove´ıculo, a partir das fotografias dos fiscal-izadores eletrˆonicos, ainda ´e feita manual-mente e n˜ao em tempo real. E otimizar esseprocesso j´a ´e uma necessidade para o Brasile muitos outros pa´ıses, ´e um problema quevem recebendo crescente atenc¸˜ao na comu-nidade de Reconhecimento de Padr˜oes dev-ido a sua praticidade e visibilidade de resul-tados diretos, logo a criac¸˜ao de um sistemade reconhecimento autom´atico de placas setornaria um aliado a mais da sociedade notrˆansito.2. Reconhecimento e Localizac¸˜ao da“Placa”As placas dos autom´oveis possuem padr˜oesimpostos a todos os ve´ıculos circulantes.Por conta dessa padronizac¸˜ao o sistemadeve procurar reconhecer a placa em umaimagem atrav´es de an´alises como a formada placa, a concentrac¸˜ao ou os agrupa-mentos de cores, a textura, as sequˆenciasde caracteres pr´e-determinadas ou aindaas assinaturas e as variac¸˜oes em escalacinza em determinado ponto da imagem.Al´em da procura por padr˜oes, os algorit-mos de segmentac¸˜ao aplicados `as imagensdevem ser capazes de contornar problemasde visualizac¸˜ao das placas, como neblinana imagem ou deteriorac¸˜ao da placa pelotempo. Claro na medida do poss´ıvel, talqual como os seres humanos s´o identifi-cam algo at´e um certo limite. A “Figure 1”mostra a padronizac¸˜ao vigente para as pla-cas de autom´oveis brasileiros.
  2. 2. Figure 1. Padr˜ao de placas nos autom´oveis brasileirosVisto que as placas possuem car-acter´ısticas geom´etricas exclusivas, comoforma e proporc¸˜oes de comprimento e al-tura, o uso de t´ecnicas de segmentac¸˜ao fo-cadas em operadores geom´etricos mostra-se bastante interessante. Assim, a buscapela placa do autom´ovel em uma im-agem resume-se na procura por uma figurageom´etrica retangular a qual respeite as car-acter´ısticas de uma placa de autom´ovel.Afim de resolver problemas de perspec-tiva a bibliografia especializada cita especi-ficamente trˆes abordagens as quais atingemtais objetivos. S˜ao elas: a translac¸˜ao, arotac¸˜ao e o “scaling” da imagem, que nadamais s˜ao do que formas de promover oreposicionamento da placa na imagem, peloreposicionamento e interpolac¸˜ao de pix-els,garantindo as proporc¸˜oes afim de vali-dar o encontro ou n˜ao da placa. A t´ecnicade aproximac¸˜ao Douglas-Peucker (DP), ca-paz de selecionar cada um dos objetos pre-sentes na imagem. Utilizando de v´ertices,um pol´ıgono ´e criado contornando o objetoreal a ser considerado. No caso a placado carro o pol´ıgono gerado deve ser anal-isado e tem de respeitar as seguintes carac-ter´ısticas:• O pol´ıgono deve possuir quatrov´ertices;• A ´area do pol´ıgono deve ser com-pat´ıvel com a de uma placa de au-tom´ovel,a chamada proporc¸˜ao.• O pol´ıgono deve ser convexo, ouseja, n˜ao deve possuir reentrˆancias;• O ˆangulo entre duas arestas consec-utivas deve ser de 90 graus.O pol´ıgono que respeitar ascondic¸˜oes impostas acima possui grandechance de ser um retˆangulo e, consequente-mente, a placa de um ve´ıculo. Todosos pol´ıgonos encontrados com tais carac-ter´ısticas s˜ao marcados na imagem para queseja realizada posteriormente uma an´alisemais minuciosa de cada um deles.3. Segmentac¸˜ao de CaracteresA segmentac¸˜ao da imagem ´e um processoque possui o objetivo de separar em im-agens distintas cada letra ou n´umero deuma placa permitindo a identificac¸˜ao dessaplaca. Para isso um algoritmo de recon-hecimento de vizinhanc¸a foi feito, identif-icando o caractere atrav´es dos pixels pretose brancos obtidos ap´os a binarizac¸˜ao. O al-goritmo analisa a partir de um pixel de co-ordenadas (x,y) toda a sua vizinhanc¸a, ouseja analisa tamb´em os 8 pixels ao seu en-torno. Desta forma o algoritmo vai verifi-cando cada um dos pixels. Ap´os o thresholdos pixels pretos adquirem valor 0 e os bran-cos 1, com isso o algoritmo de contagem fazuma varredura a procura de um pixel preto.Ap´os isso seu valor ´e trocado para 2 e seus
  3. 3. vizinhos se forem pretos trocam de valoresde 3 em diante afim de marcar o espac¸o compixel de valor zero. Ap´os esse passo o al-goritmo pula de 2 para o 3 e faz tudo denovo analisando seus pixels de vizinhanc¸atrocando mais valores al´em dos 9 poss´ıveisanteriormente e isso ´e feito at´e acabaremos pixels negros da imagem e se recomec¸auma varredura para encontrar o pr´oximopixel de valor zero, com isso as letras en´umeros v˜ao se formando como imagem ede formas separadas. Para otimizar o pro-cesso de segmentac¸˜ao um ´unico algoritmoque faz a contagem e a segmentac¸˜ao dasimagens ser´a utilizado, e ele funciona daseguinte forma, o algoritmo original de con-tagem quando for terminada a identificac¸˜aode um objeto para ser contabilizado, ele ar-mazena em alguma matriz o valor que foiatribu´ıdo ao ´ultimo pixel desse objeto. Comessa criac¸˜ao de matrizes h´a a separac¸˜ao deobjetos em imagens distintas, j´a que cadamatriz ´e gerada ao fim de cada contagem earmazenada de forma individual. Com issoas imagens poder˜ao ser reconhecidas commais uma etapa de processamento, a de re-conhecimento de caracteres. Cada imagemnova criada de cada caractere separado vaiser submetida a ´ultima etapa do processa-mento, sendo composta apenas pelo objetoe pelo fundo que depois ser´a transformadoem dados, a imagem virar´a por exemplo odado: X, derivado da placa XAB-0000.4. Filtragem de CaracteresSeparadas imagens menores contendo asletras e n´umeros, passamos ent˜ao para aparte de reconhecimento dos caracteres nes-sas figuras. Inicialmente haviamos pen-sado em selecionar os quatro pixels maisexternos em cada imagem e tentar rela-cionar as distancias entres esses pixels e ascaracteristicas de cada letra e/ou n´umero.Ao percebermos que isso n˜ao seria t˜ao efi-ciente, pensamos em usar um outro algo-ritmo. Esse novo algoritmo agora iria per-correr a imagem comparando os pixels daimagem a ser reconhecida com os pixels deimagens em um banco de dados de imagens,para cada pixel compativel incrementava-se um contador. No fim, dividiamos essecontador pelo total de pixels e analizava-mos o percentual de compatibilidade en-tre essa imagem e a imagem do banco dedados, ent˜ao selecionavamos o caracatercom maior compatibilidade. Um problemacom esse algoritmo era o tamanho difer-ente das imagens a serem comparadas. Pararesolver esse problema percorriamos ape-nas a imagem a ser reconhecida pixel apixel, os pixels do banco de dados erampercorridos a cada “largura da imagem dobanco de dados/largura da imagem a ser re-conhecida” e “altura da imagem do bancode dados/altura da imagem a ser recon-hecida”. Esse ultimo algoritmo demonstroucerto sucesso, por´em mostrou-se ineficientepor reconhecer tamb´em algumas imagensque n˜ao eram caracteres, apenas lixo cap-tado pelo algoritmo. Enfim ficou claroque precisavamos reconhecer n˜ao somenteo que era igual nas imagens, mas tambemo que diferia. O intuit do novo algorimtopassou a ser, reconhecer a imagem anal-isando as semelhanc¸as e diferenc¸as em cadaborda da imagem.O novo algoritmo quegera quatro vetores, dois com o tamanhoda largura da imagem a ser reconhecida edois com o tamanho da altura da mesma.Em os dois vetores com o tamanho da al-tura s˜ao preenchidos um com a distˆanciado primeiro pixel preto da borda esquerdada imagem e outro com a distˆancia do ul-timo pixel preto da borda direita, para cadalinha da matriz imagem. O dois vetorescom o tamanho da largura s˜ao preenchidosseguindo a mesma logica, so que por suavez com as distancia do primeiro pixel pretoda borda superios e o ultimo pixel preto daborda inferior respectivamente, para cadacoluna da matriz imagem. Para as ima-gens do banco de dados, tambem s˜ao ger-ados os mesmos vetores e com as mesmas
  4. 4. dimenc¸˜oes. Para percorrer as linhas e colu-nas da imagens do banco de dados usamosa mesma l´ogica de incrementac¸˜ao usado noalgoritmo anterior. No s˜ao comparados para par vetor base, vetor topo, vetor da es-querda e vetor da direita e novamente con-tamos o numero de distˆancias compat´ıveise dividimos pelo tamanho de cada respec-tivo vetor. No algor´ıtmo relacionamos oscaracteres as maiores compatibilidades en-contradas e depois de uma analise sele-cionamos um caracter como o caracter naimagem em reconhecimento. A complex-idade desde ultimo algoritmo se encontrano fato de que alguns caracteres demon-stram extrema semelhanc¸a, casos como “B”e “D”, “R” e “P”, “U” e “V”, “Q” e “O”,“C” e “G” , “N” e “H”, “E” e “F”, “6” e“8” , “9” e “8”, “9” e “0”, “0” e “8”, “0” e“6” entre outros. Para resolver isso procu-ramos identificar como o character em si,as imagens com maior compatibilidade pos-sivel em todas as bordas, e no maior nu-mero de bordas possivel. Outro problema´e a semelhanc¸a entre letras e numeros, emcasos como “6” e “G”, “0” e “G”, “0” e“B”, “8” e “B”, um e “I” e “1” e etc. Asoluc¸˜ao mais simples foi separar a detecc¸˜aode letras da detecc¸˜ao de numeros, e comec¸ara detecc¸˜ao dos n´umeros apenas depois deidentificados as trˆes letras das placas.5. Conclus˜aoFoi possivel perceber durante o desenvolvi-mento e testes do trabalho que o mais im-portante no reconhecimento ´e um rico evariado banco de imagens dos caracteres,pois quanto maior o banco maior ´e a efi-ciencia na detecc¸˜ao. Notamos que paraas imagens que tinhamos menos caracteresno banco de dados o sucesso na dectec¸˜aoera visivelmente menor. Letras como Y eM trouxeram dificuldades na detecc¸˜ao porconta do desgaste que a maioria das pla-cas do nosso banco possuiam. Um des-cuido dos motoristas hoje em dia ´e com asinalizac¸˜ao de seu carro, facilmente vimosplacas sem cor, placas descascando, pla-cas entortadas entre outros. A “Figure 2”mostra o n´umero de placas utilizadas e re-conhecidas pelo software.Figure 2. N´umero de placas usadas, parcialmente e totalmente reconhecidasUma grande dificuldade encontradafoi quanto a qualidade das imagens dosve´ıculos e determiner o ponto de corteideial do Threshold para selecionar os car-acteres na placa, visto que em uma situac¸˜aoreal o carro estar´a em movimento a im-agem sera feita de forma r´apida e eficientepegando toda a ´area da placa. O sistemadeve ser inteligente, capaz de detectar essaplaca na imagem, de nada adianta recon-hecer os caracteres se na fotografia tamb´emhouver placas na rua e outros sinais quepossam confundir o sistema. Por fim con-cluimos que ´e essencial para a sociedade
  5. 5. que o processo de reconhecimento de pla-cas seja eficiente e r´apido, diminuindo oserros humanos e acelerando todo o pro-cesso de fiscalizac¸˜ao do tr´afego e do trˆansitonas nossas cidades. Al´em disso ´e impor-tante manter um banco de imagens muitogrande e com uma grande variedade de im-agens. Outro ponto importante ´e garantirque ser˜ao tiradas imagens com um deter-minado padr˜ao e qualidade para garantir aeficiˆencia de todo o processo. Concluindoassim percebemos a importˆancia de nossotrabalho e de nossa pesquisa no assunto.6. References-[1] DAMBROS, A. L., “Sistema deReconhecimento de Placas de Ve´ıculos Au-tomotores”. Centro Universit´ario Feevale,Novo Hamburgo, 2008.[2] BRADSKI, G.; KAEHLER.A., “Learning OpenCV: Computer Visionwith OpenCV Library”. Sebastopol, CA,O’Reilly Media, Inc., September 2008.577p.[3] NU ˜NES, J. R., “Segmentac¸˜aoAutom´atica e Classificac¸˜ao em V´ıdeos Es-portivos”. Dissertac¸˜ao (Mestrado) - Pon-tif´ıcia Universidade Cat´olica do Paran´a,Curitiba, 2006.[4] “Principais Interesses dePesquisa: Processamento de Imagens eVis˜ao Computacional” - Unisinos[5] MARANA, A. N.; BREGA, J.R. F., “T´ecnicas e Ferramentas de Proces-samento de Imagens Digitais e Aplicac¸˜oesem Realidade Virtual e Misturada”, Bauru,Canal6 Editora, 2008.[6] Duda, R. O; Hart, P. E. “PatternClassification and Scene Analysis”, JohnWiley Sons, 1973.[7] Kupac, G. V.; Rodrigues, R.J.; Thom´e, A. C. G.; “Extrac¸˜ao de carac-ter´ısticas para Reconhecimento de D´ıgitosCursivos”, VIth Brazilian Symposium onNeural Networks - SBRN2000, Rio deJaneiro, november 2000.[8] Rodrigues, R. J.; Kupac, G. V.;Thom´e, A. C. G.; “Character Feature Ex-traction Using Polygonal Projection Sweep(Contour Detection)”, accepted for presen-tation at IWANN2001. Granade - Spain,June 2001.[9] Rodrigues, R. J.; Silva, E.;Thom´e, A. C. G.; “Feature Extraction Us-ing Contour Projection”, accepted for pre-sentation at SCI2001. Orlando - USA, July2001.

×