112
Pós-Graduação em Ciência da Computação RECONHECIMENTO AUTOMÁTICO DE PLACAS DE AUTOMÓVEIS UTILIZANDO REDES DE KOHONEN Por PEDRO RODOLFO DA SILVA GONÇALVES Dissertação de Mestrado Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao RECIFE 2015

Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Embed Size (px)

Citation preview

Page 1: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Pós-Graduação em Ciência da Computação

RECONHECIMENTO AUTOMÁTICO DE PLACAS DE

AUTOMÓVEIS UTILIZANDO REDES DE KOHONEN

Por

PEDRO RODOLFO DA SILVA GONÇALVES

Dissertação de Mestrado

Universidade Federal de Pernambuco

[email protected] www.cin.ufpe.br/~posgraduacao

RECIFE 2015

Page 2: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Universidade Federal de Pernambuco

Centro de InformáticaPós-graduação em Ciência da Computação

Pedro Rodolfo da Silva Gonçalves

RECONHECIMENTO AUTOMÁTICO DE PLACAS DEAUTOMÓVEIS UTILIZANDO REDES DE KOHONEN

Dissertação apresentada ao Programa de Pós-graduação

em Ciência da Computação do Centro de Informática da

Universidade Federal de Pernambuco como requisito parcial

para obtenção do grau de Mestre em Ciência da Computa-

ção.

Orientador: Aluízio Fausto Ribeiro Araújo

RECIFE2015

Page 3: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Catalogação na fonte

Bibliotecária Jane Souto Maior, CRB4-571

G635r Gonçalves, Pedro Rodolfo da Silva Reconhecimento automático de placas de automóveis

utilizando redes de Kohonen / Pedro Rodolfo da Silva Gonçalves. – Recife: O Autor, 2015.

111 f.: il., fig., tab. Orientador: Aluizio Fausto Ribeiro Araújo. Dissertação (Mestrado) – Universidade Federal de

Pernambuco. CIn, Ciência da computação, 2015. Inclui referências.

1. Inteligência artificial. 2. Inteligência computacional. 3. Visão computacional. 4. Processamento de imagem. I. Araújo, Aluizio Fausto Ribeiro (orientador). II. Título. 006.3 CDD (23. ed.) UFPE- MEI 2015-170

Page 4: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Dissertação de Mestrado apresentada por Pedro Rodolfo da Silva Gonçalves à Pós

Graduação em Ciência da Computação do Centro de Informática da Universidade Federal

de Pernambuco, sob o título “Reconhecimento Automático de Placas de Automóveis

Utilizando Redes de Kohonen” orientada pelo Prof. Aluízio Fausto Ribeiro Araújo e

aprovada pela Banca Examinadora formada pelos professores:

______________________________________________

Prof. Tsang Ing Ren

Centro de Informática / UFPE

_______________________________________________

Prof. Orivaldo Vieira de Santana Junior

Unidade Acadêmica de Informática / IFPB

________________________________________________

Prof. Aluízio Fausto Ribeiro Araújo

Centro de Informática / UFPE

Visto e permitida a impressão.

Recife, 1 de setembro de 2015.

___________________________________________________

Profa. Edna Natividade da Silva Barros Coordenador da Pós-Graduação em Ciência da Computação do

Centro de Informática da Universidade Federal de Pernambuco.

Page 5: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Dedico esse trabalho a minha mãe Rosilda e a minha

esposa Raissa.

Page 6: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Agradecimentos

Agradeço, primeiramente, a Deus por me prover uma vida de paz e saúde para que eupossa correr atrás dos meus sonhos. A fé é um elemento essencial para transpor barreiras erenovar as esperanças nos objetivos traçados e, em vários momentos, foi o meu combustível.

Agradeço, também, a todos meus familiares, minhas irmãs, meus sobrinhos, mas, emespecial, a minha mãe, Rosilda, que nunca mediu esforços para me propiciar a estrutura necessáriapara eu me tornar o cidadão que sou hoje. E, ainda, por ter sempre me incentivado a correr atrásdos meus sonhos e me confortar nas horas difíceis que passei, as quais não foram poucas. Porisso, muito obrigado minha mãe.

Agradeço, também, a meu amor, Raissa Pinto, por estar ao meu lado durante todos essesanos de pós-graduação, enfrentando e compreendendo todos os momentos que precisei estarausente. E, também, por me auxiliar, muitas vezes, a corrigir relatórios ou artigos, ela merece,entre tantos motivos, sem dúvida nenhuma, o meu amor.

Aos meus amigos, aqueles cuja convivência entre nós diminuiu durante esses anos porseguirmos caminhos profissionais diferentes e aqueles que fiz durante a pós-graduação e sabem oquanto é árdua a caminha, meu sinceros agradecimentos. Vocês contribuíram muito para minhaformação como pessoa.

Agradeço, ainda, ao meu professor orientador, Aluízio Araújo, pois sem o qual essapesquisa não poderia ser desenvolvida e, sem dúvida nenhuma, contribuiu muito para o aumentodo meu conhecimento.

Obrigado

Page 7: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Resumo

Punir infrações de trânsito, controlar tráfego em rodovias, controlar o acesso a áreasrestritas, entre outras, são ações tomadas para melhorar o trânsito nas grandes cidades. Pararealizar tais ações é necessário, portanto, identificar o veículo automotivo, utilizando, para isso,sua placa de licenciamento. Entretanto, com o aumento de automóveis nas vias urbanas, essatarefa tornou-se muito difícil de ser realizada de uma forma eficiente por apenas agentes detrânsito, pois existe uma grande quantidade de dados a serem analisados e reportados aos órgãoscompetentes. Soma-se a isso, o fato de fatores emocionais, cansaços físico e mental, inerentes aosseres humanos, atrapalharem a eficácia da tarefa executada. Por isso, ferramentas que realizam oreconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vezmais empregadas para realizar a identificação automática de caracteres existentes nas placas dosautomóveis.

Este trabalho visa descrever um sistema para identificação de veículos automotivosatravés de imagens estáticas, apresentando técnicas pesquisadas e estudadas em cada etapa doprocesso de identificação. As etapas que são apresentadas e detalhadas incluem: a identificação daplaca, segmentação dos caracteres presentes na placa e o reconhecimento dos caracteres isolados.Técnicas envolvendo processamento digital de imagem como detectores de bordas, operaçõesmorfológicas, análise de componentes conectados e limiarização serão explicitadas. Redesneurais artificias são propostas para realizar o reconhecimento do caractere isolado, tais comoSelf-Organizing Maps (SOM) e Kernel Self-Organizing Map (KSOM), e serão pormenorizadas.

Para avaliar o desempenho das técnicas empregadas nesse projeto, imagens presentes nabase de dados MediaLab LPR Database foram utilizadas. Métricas como Recall, Precision eF-Score foram empregadas na avaliação de performance dos diferentes algoritmos estudados eimplementados para realizar a detecção da placa, ajudando na escolha do extrator da placa dosistema final. No estágio de segmentação da placa e do reconhecimento dos caracteres isolados,a taxa de acerto foi utilizada para avaliar os algoritmos propostos. Para um grupo de 276imagens pertencentes a uma base pública, as etapas de detecção, segmentação e reconhecimentoalcançaram desempenhos semelhantes aos vigentes na literatura ANAGNOSTOPOULOS et al.(2006) e propiciaram, aproximadamente, uma taxa de acerto global do sistema OCR proposto de85%.

Palavras-chave: OCR,LPR, ANPR, Identificação de Automóveis, Mapas Auto-Organizáveis,Função Kernel, Redes Neurais

Page 8: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Abstract

Punish traffic infractions, traffic control on highways, control access to restricted areas,among others, are actions taken to improve traffic in major cities. In order to take these actionsis therefore necessary to identify the motor vehicle using it licensing plate. However, with theincrease of the number of cars on urban roads, this task has become very difficult to be performedeffectively only by traffic agents because there is a lot of data to be analyzed and reported to thecompetent agencies. In addition, the fact that emotional factors, physical and mental tiredness,that inherent features to humans, hider effectiveness of task begin performed. Therefore, toolsthat perform optical character recognition (OCR) are begin increasingly used for automating theidentification of characters on licensing plate of the vehicles.

This research describes a system for identification of automotive vehicles through stillimages showing algorithms researched in the literature on each step of the identification process.The stages are presented and detailed include: plate identification, segmentation of the charactersexisting in plate and the recognition of single characters. Techniques involving digital imageprocessing like edge detectors, morphological operations, connected component analysis andthresholding are explained. Artificial neural networks are submitted to achieve the recognitionof single character, such as Self-Organizing Maps (SOM) and Kernel Self-Organizing Map(KSOM), are detailed.

In order to evaluate the performance of the techniques used in this project, imagesfrom mainly the MediaLab LPR Database were used. The metrics employed to analyze theperformance of algorithms implemented to detect a region of plate on image are Recall, Precisionand F-Score. This metrics helped to choose the better algorithms for extraction plate on image.In the segmentation stage of the plate and the recognition of single characters, the hit rate wasused to evaluate the proposed algorithms. For group of 276 images belonging a public database,the stages of detection, segmentation and recognition reached similar performance with previousapproaches (ANAGNOSTOPOULOS et al., 2006), leading the proposed OCR system to 85% ofhit rate.

Keywords: OCR,LPR, ANPR, Vehicle Identification, Self-organizing Maps, Kernel Function,Neural Networks

Page 9: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Lista de Figuras

2.1 Visão global de um sistema OCR para identificação de veículos. . . . . . . . . 212.2 Escaneamento de N linhas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222.3 Sub-bandas de Haar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232.4 Imagem referência e imagem diferença. . . . . . . . . . . . . . . . . . . . . . 242.5 Imagem entrada e imagem processada pelo SCW. . . . . . . . . . . . . . . . . 242.6 Exemplos de detecções corretas (FREIRE e MAIA, 2013). . . . . . . . . . . . 252.7 Placa e suas respectivas imagens binárias. . . . . . . . . . . . . . . . . . . . . 262.8 Separação dos símbolos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.9 Com inclinação horizontal e sua respectiva imagem corrigida (PAN et al., 2009). 272.10 Detecção dos objetos de interesse (YOON et al., 2011). . . . . . . . . . . . . . 282.11 Imagem original em formato RGB e a sua respectiva imagem após a aplicação

do filtro semelhante ao laplaciano (SEDIGH e VAFADUST, 2011). . . . . . . . 282.12 Combinação Bayesiana. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.1 Visão Global do Método Árabe. . . . . . . . . . . . . . . . . . . . . . . . . . 323.2 Imagem Colorida, à esquerda, e a sua respectiva Imagem em Cinza, à direita. . 333.3 Imagem Binarizada Localmente. . . . . . . . . . . . . . . . . . . . . . . . . . 333.4 Imagem Binarizada após a operação de Fechamento. . . . . . . . . . . . . . . 343.5 Imagem com N objetos detectados. . . . . . . . . . . . . . . . . . . . . . . . . 343.6 Imagem com M objetos selecionados da imagem Figura 3.5. . . . . . . . . . . 353.7 Exemplo da representação de um indivíduo com 7 genes não repetidos e cada

gene com seu identificador único. . . . . . . . . . . . . . . . . . . . . . . . . 353.8 Exemplo de Mutação por Substituição de Genes (ABO SAMRA e KHALEFAH,

2014). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.9 Recombinação USPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393.10 Saída do Algoritmo Genético e do Método Proposto. . . . . . . . . . . . . . . 403.11 Diagrama de blocos da abordagem proposta por MENDES JÚNIOR et al. (2011). 423.12 Imagem de entrada em escala de cinza e sua respectiva imagem gradiente horizontal. 433.13 Imagem gradiente suavizada. . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.14 Imagem de abertura. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.15 Imagem de fechamento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.16 Imagem de saída da operação TOPHAT. . . . . . . . . . . . . . . . . . . . . . 453.17 Imagem de fechamento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453.18 Imagem proveniente de uma erosão e depois de uma dilatação. . . . . . . . . . 463.19 Imagem binarizada com OTSU. . . . . . . . . . . . . . . . . . . . . . . . . . 46

Page 10: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.20 Imagem binarizada com região não-placas removidas. . . . . . . . . . . . . . . 473.21 Imagem binarizada com regiões conectadas removidas. . . . . . . . . . . . . . 473.22 Imagem binarizada com os ajustes da regiões. . . . . . . . . . . . . . . . . . . 483.23 Imagem binarizada com as regiões conectadas removidas. . . . . . . . . . . . . 483.24 Imagem que evidencia a região escolhida e a imagem da placa recortada da cena

em escala de cinza na Figura 3.12. . . . . . . . . . . . . . . . . . . . . . . . . 493.25 Visão global da abordagem de combinação de classificadores (WANG et al., 2014). 513.26 Imagem de entrada em escala de cinza e sua respectiva imagem borrada com

filtro de mediana. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513.27 Imagem com caractere mais claro do que o fundo e sua respectiva imagem

gradiente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.28 Imagem com caractere mais escudo do que o fundo e sua respectiva imagem

gradiente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.29 Imagem de magnitude do gradiente com composição vertical e horizontal. . . . 523.30 Objetos detectados com o Adaboost combinado com o Haar. . . . . . . . . . . 533.31 Objetos detectados com placa(vermelho) e/ou encaminhados para uma melhor

análise(azul). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543.32 Imagem de saída do método de WANG et al. (2014). . . . . . . . . . . . . . . 553.33 Gráficos de Recall e Precision para diferentes graus de casamento, utilizando as

imagens de testes da base da UFOP. . . . . . . . . . . . . . . . . . . . . . . . 583.34 Gráfico do F-Score para diferentes graus de casamento, utilizando as imagens de

testes da base da UFOP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583.35 Gráficos de Recall e Precision para diferentes graus de casamento, utilizando as

imagens de testes da Medialab LPR Database. . . . . . . . . . . . . . . . . . . 593.36 Valores do F-Score para diferentes graus de casamento para as técnicas imple-

mentadas na base Medialab LPR Database. . . . . . . . . . . . . . . . . . . . 59

4.1 Em (a) as janelas concêntricas e em (b) o escaneamento das janelas sobre aimagem (ANAGNOSTOPOULOS et al., 2008). . . . . . . . . . . . . . . . . . 63

4.2 Imagens em RGB, em tons de cinza e binária, respectivamente, da placa analisada. 634.3 Imagem binária presente na Figura 4.2 apenas com os objetos que satisfazem as

condições de orientação e largura. . . . . . . . . . . . . . . . . . . . . . . . . 644.4 Projeção vertical e horizontal dos desvios padrão para imagem em Figura 4.3. . 644.5 Caracteres corretamente segmentados da imagem binária da Figura 4.3. . . . . 654.6 Imagens em RGB e em tons de cinza. . . . . . . . . . . . . . . . . . . . . . . 664.7 Imagens de Niblack, máscara definida manualmente e binária final, respectiva-

mente, da placa analisada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664.8 Imagem resultante da correção angular horizontal aplicada sobre a imagem

binária ótima em Figura 4.7. . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Page 11: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.9 Imagem resultante da correção angular vertical da imagem binária em Figura 4.8. 684.10 Projeção vertical e horizontal dos dos pixels brancos da Figura 4.9. . . . . . . . 694.11 Caracteres corretamente segmentados da imagem binária da Figura 4.9. . . . . 694.12 Diagrama de blocos do método proposto pelos autores (YOON et al., 2011). . . 704.13 Imagens em escala cinza, à esquerda, e sua respectiva imagem, à direita, com o

melhoramento de contraste citado. . . . . . . . . . . . . . . . . . . . . . . . . 714.14 Imagem binarizada da placa com contraste melhorado na Figura 4.13. . . . . . 714.15 Imagem binarizada da placa que é a inversão da placa na Figura 4.14. . . . . . 714.16 Os componentes conectados, em vermelho, são encontrado para imagem da

placa na Figura 4.15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724.17 A imagem de saída dessa etapa para a placa da Figura 4.16. . . . . . . . . . . . 724.18 A imagem de saída dessa etapa para a placa da Figura 4.17. . . . . . . . . . . . 734.19 Exemplo do sucesso do estágio de split de caracteres. . . . . . . . . . . . . . . 744.20 Objetos finais definidos a partir dos objetos existentes na Figura 4.19. . . . . . 754.21 Caracteres corretamente segmentados através do blobs de Figura 4.20. . . . . . 75

5.1 Diagrama de blocos do OCR proposto com ênfase no algoritmos utilizados pornas etapas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.2 Diagrama de blocos do algoritmo de segmentação proposto. . . . . . . . . . . 815.3 Imagem de entrada em RGB. . . . . . . . . . . . . . . . . . . . . . . . . . . . 835.4 Imagem em Figura 5.3 após o operador da Tabela 5.2. . . . . . . . . . . . . . . 845.5 Imagem em Figura 5.4 limiarizada segundo o método explicado acima. . . . . . 845.6 Imagem em Figura 5.5 após a correção horizontal. . . . . . . . . . . . . . . . . 855.7 Imagem em Figura 5.3 após a correção horizontal. . . . . . . . . . . . . . . . . 855.8 Imagem com os blobs resultantes da primeira seleção de objetos para imagem

em Figura 5.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865.9 Exemplo de sucesso da primeira seleção de 7 objetos na imagem em processamento. 865.10 ROI para a imagem em Figura 5.8 . . . . . . . . . . . . . . . . . . . . . . . . 865.11 Imagens binária e em formato RGB com correção angular recortadas com auxílio

da imagem em Figura 5.10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875.12 Máscara de cor e sua aplicação na imagem binária presente em Figura 5.11. . . 875.13 Imagens em formato RGB e limiarizada com após a etapa de correção angular

horizontal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885.14 Imagem binária recortada e sua respectiva imagem sem elementos de borda da

placas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885.15 Os objetos detectados na imagem presente em Figura 5.12 e os objeto que

permanecem após a análise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895.16 Imagens com os objetos presentes em Figura 5.15 corretamente particionados. . 89

Page 12: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.17 Imagem com caractere particionado horizontal e sua a respectiva imagem após ajunção das letras. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

5.18 Resultado da execução do Algoritmo 1 para uma das imagens presentes emFigura 5.17. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

5.19 Exemplo de ruído gerado após o processo de split. . . . . . . . . . . . . . . . . 915.20 Imagem de saída da etapa K para a Figura 5.19. . . . . . . . . . . . . . . . . . 915.21 Exemplo de remoção do ruído gerado pela operação de split em Figura 5.20. . . 915.22 Escolhas final do objetos para a imagem em Figura 5.16 . . . . . . . . . . . . 925.23 Caracteres corretamente segmentados da imagem na Figura 5.22. . . . . . . . . 925.24 Espaço euclidiano e não-euclidiano. . . . . . . . . . . . . . . . . . . . . . . . 945.25 Imagem original e suas imagens reconstruídas através dos seus primeiros 13

momentos (TRIER et al., 1996), da esquerda para a direita e de cima para baixo. 985.26 Imagem do caractere ’0’ e suas respectivas imagens esqueleto e de distância

transformada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

6.1 Exemplo de incorreta detecção. . . . . . . . . . . . . . . . . . . . . . . . . . . 1006.2 Exemplo de região maior do que a placa. . . . . . . . . . . . . . . . . . . . . . 1006.3 Exemplo de região menor do que a placa. . . . . . . . . . . . . . . . . . . . . 101

Page 13: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Lista de Tabelas

3.1 GRM do protótipo para a base grega (ABO SAMRA e KHALEFAH, 2014).Cada linha representa as distâncias existentes num variável especifica, X , Y e H,das bounding boxes dos caracteres. . . . . . . . . . . . . . . . . . . . . . . . . 37

3.2 Resultados alcançados nas bases utilizadas. . . . . . . . . . . . . . . . . . . . 413.3 Resultados alcançados nas bases utilizadas. . . . . . . . . . . . . . . . . . . . 503.4 Resultados alcançados na base privada mencionada pelos autores. . . . . . . . 563.5 Resultados alcançados para as 335 imagens da base Medialab LPR Database

pela versão original e pela versão replicada de ABO SAMRA e KHALEFAH(2014). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

3.6 Valores das Métricas Recall, Precision e F-Score para o grau de casamento 0.5para as imagens da UFOP de teste. . . . . . . . . . . . . . . . . . . . . . . . . 59

3.7 Valores das Métricas Recall, Precision e F-Score para o grau de casamento 0.5para as imagens Medialab LPR Database de teste. . . . . . . . . . . . . . . . . 59

4.1 Resultados alcançados pelo SCWs nas imagens referencias em (ANAGNOSTO-POULOS et al., 2006). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.2 Resultados alcançados pelo método de correções angulares para as imagensreferencias em PAN et al. (2008). . . . . . . . . . . . . . . . . . . . . . . . . . 69

4.3 Resultados alcançados pelo sistema proposto por YOON et al. (2011). . . . . . 754.4 Resultados alcançados pelos 3 métodos estudados e implementados nesse capítulo. 76

5.1 Máscara do filtro similar ao laplaciano proposto em SEDIGH e VAFADUST(2011). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

5.2 Máscara do filtro proposto em SEDIGH e VAFADUST (2011) modificado. . . 835.3 Novos valores para a matriz GRM. Cada linha representa as distâncias existentes

num variável especifica, X , Y , W e H, das bounding boxes dos caracteres. . . . 915.4 Os 7 primeiros momentos para m com valores não-negativos. . . . . . . . . . . 97

6.1 Resultados alcançados pelo estágio de detecção. . . . . . . . . . . . . . . . . . 996.2 Resultados alcançados pelo estágio de segmentação. . . . . . . . . . . . . . . . 1016.3 Desempenho das redes implementadas em testes preliminares. . . . . . . . . . 1026.4 Parâmetros utilizados na melhor configuração do comitê. . . . . . . . . . . . . 1026.5 Performance dos comitês utilizando as características ou binárias (BW) ou dos

momentos de Zernick (ZN) ou, ainda, da distância transformada do esqueleto(SD) da imagem para K = 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Page 14: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

6.6 Performance dos comitês utilizando as características ou binárias (BW) ou dosmomentos de Zernick (ZN) ou, ainda, da distância transformada do esqueleto(SD) da imagem para K = 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

6.7 Comparação entre o sistema OCR proposto e o elaborado por ANAGNOSTO-POULOS et al. (2006). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

6.8 Tempos de execução médios para as 276 imagens de teste apresentadas aosistema OCR proposto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Page 15: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

Sumário

1 Introdução 16

2 Reconhecimento Automático de Símbolos de Placas 202.1 Visão Global do OCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.2 Detecção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.3 Segmentação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262.4 Reconhecimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.5 Discussão Final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3 Detecção 313.1 Detecção Através de Algoritmo Genético . . . . . . . . . . . . . . . . . . . . 31

3.1.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313.1.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.1.2.1 Etapa de Processamento de Imagem . . . . . . . . . . . . . 323.1.2.2 Etapa de Algoritmo Genético . . . . . . . . . . . . . . . . . 35

3.1.3 Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.2 Detecção Através de Operações Morfológicas . . . . . . . . . . . . . . . . . . 41

3.2.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.2.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.2.3 Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

3.3 Detecção Através de Combinações de Classificadores . . . . . . . . . . . . . . 503.3.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.3.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.3.3 Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

3.4 Testes Validadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563.5 Discussão Final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

4 Segmentação 624.1 Segmentação Através de Janelas Concêntricas Deslizantes . . . . . . . . . . . 62

4.1.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.1.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634.1.3 Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.2 Segmentação Utilizando Projeções Verticais e Horizontais de Imagens comCorreção Angulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654.2.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654.2.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

Page 16: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

15

4.2.3 Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694.3 Segmentação Através de Extrações de Blobs . . . . . . . . . . . . . . . . . . . 69

4.3.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694.3.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704.3.3 Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

4.4 Testes Validadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754.5 Discussão Final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

5 Sistema OCR Para Identificação de Placas de Veículos Automotivos 795.1 Detecção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805.2 Segmentação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805.3 Reconhecimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.3.1 Algoritmo Inteligente . . . . . . . . . . . . . . . . . . . . . . . . . . . 935.3.2 Extratores de Características . . . . . . . . . . . . . . . . . . . . . . . 97

6 Experimentos 99

7 Conclusão 106

Referências 109

Page 17: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

161616

1Introdução

Os grandes centros urbanos costumam oferecer oportunidades profissionais interessantes,boas instituições de ensino tanto básico como superior, e, também, bons serviços na área dasaúde às pessoas. Com isso, existe uma grande tendência, principalmente em países emergentes,que haja uma concentração populacional nesses centros urbanos. Esse fato gera vários problemasnessas regiões tais como, altos índices de desemprego, alta taxa de criminalidade, sobrecargade pacientes em hospitais públicos e, um que é fruto das boas oportunidades profissionais, odesordenado tráfego de veículos automotivos nas vias urbanas. Em especial, os problemas notrânsito ocorrem por haver um número grande de automóveis nas vias, por existirem proble-mas estruturais nas vias, buracos e poucas sinalizações, mas, principalmente, pela imprudênciados condutores. Estes não respeitam as leias de trânsito e as infringem rotineiramente, com-prometendo, por exemplo, a fluidez do tráfego ao parar sobre a faixa de pedestre ou obstruiruma via perpendicular a sua via de deslocamento. O desrespeito ao código de trânsito vigenteem um país não comprova, apenas, uma grande falta de educação do condutor ou pedestre,mas, principalmente, um atentado contra a integridade física do condutor ou pedestre. Talcaracterística aumenta a probabilidade de atropelamento dos pedestres e de graves acidentesquando há colisões entre veículos e/ou não se usa equipamentos obrigatórios de segurança, porexemplo, o capacete. Como, na maioria do países, as leis de trânsito enfatizam que os veículosautomotores são responsáveis pela segurança dos veículos que não são automotores e pedestre, atarefa de identificação dos veículos automotivos que infligem as leis de trânsito tem uma grandeimportância para a sociedade.

Visando atenuar consideravelmente os problemas de trânsito citados anteriormente epunir os infratores das leis de trânsito, pesquisadores e/ou engenheiros da área de processamentodigital de sinal e computação inteligente vêm produzindo, ao longo de décadas, sistemas de reco-nhecimento ótico de caractere, Optical Character Recognition (OCR), para serem empregadosna identificação de veículos que estão presentes em imagens capturadas de ambientes internosou, principalmente, externos. Os sistemas OCRs, de uma maneira geral, são um conjunto detécnicas matemáticas que produzem textos codificados para o computador a partir de imagensdigitalizadas desses textos. Tais imagens podem ser de caracteres manuscritos ou impressos por

Page 18: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

17

máquina. Quando o sistema OCR é utilizado para identificação de veículos (DU et al., 2013),sua tarefa é produzir um texto em formato codificado para um computador, por exemplo ASCII,a partir da imagem de um automóvel contendo a sua respectiva placa de licenciamento.

Com a identificação automática da placa de licenciamento dos veículos, é possível multarautomóveis que infrinjam as leis de trânsito, como excesso de velocidade em vias, avanço dosemáforo e parada sobre a faixa de pedestres. Pode-se, ainda, controlar acesso a ambientesrestritos, como estacionamentos privados ou públicos, rastrear veículos roubados, e, ainda,verificar o direito ou não de um veículo circular em vias urbanas em dias de rodízio, entreoutras possibilidades. Essas aplicações, principalmente em ambientes externos, possibilitama coibição e, consequentemente, atenuação dos problemas de trânsito vigentes nas sociedadesmodernas, como citado anteriormente. Ao realizar o presente estudo, notou-se na literaturaque os pesquisadores vêm desenvolvendo técnicas que permitem reconhecimento do veículode modo cada vez mais eficiente, eficaz e robusto. Apesar de haver técnicas e abordagensdiferentes para realizar o reconhecimento ótico dos caracteres presentes em placas veiculares, háconvergência para a estrutura que este OCR deve possuir. Então, como está presente no survey deANAGNOSTOPOULOS et al. (2008) ou no survey de DU et al. (2013), tal sistema deve possuir3 etapas fundamentais: detecção, segmentação e reconhecimento. Cada um desses estágios éresponsável por extrair informações peculiares da cena analisada e se associam em cascata comopode ser visto na Figura 2.1.

Na primeira etapa, a detecção, a imagem do veículo, contendo sua respectiva placade licenciamento, é tomada como entrada e espera-se que, no final dessa etapa, a saída seja asub-região da imagem onde está localizada a placa do automóvel. Existem, na literatura, técnicasque processam mais de um veículo contendo sua identificação em uma mesma cena, como emANAGNOSTOPOULOS et al. (2006), gerando mais de uma imagem contendo uma placa comoresposta desse estágio.

Já a etapa de segmentação é responsável pela individualização dos caracteres presentesna(s) placa(s). Por conseguinte, esta etapa deve receber uma imagem da placa de identificaçãocomo entrada e, após a execução do algoritmo, exibir como saída imagens onde, em cada uma,consta um símbolo individualizado.

A última etapa, o reconhecimento, é responsável por realizar a identificação da imagemdo caractere apresentado. Portanto, ao receber a imagem do caractere, esse estágio deve retornaro caractere no formato ASCII, por exemplo. Na grande maioria dos trabalhos desenvolvidos,nesta etapa, devido à variabilidade dos caracteres e à presença de ruído, utilizam-se técnicas deaprendizagem de máquina, destacando-se, entre essas, redes neurais artificiais.

Entretanto, mesmo que o OCR para identificação de veículos automotivos seja já umaaplicação bem sucedida de reconhecimento de padrões, há, ainda, muitas melhorias a seremrealizadas, como, principalmente, diminuir o número de restrições impostas a tal tarefa. Aborda-gens existentes na literatura, como algumas citadas por ANAGNOSTOPOULOS et al. (2008) eDU et al. (2013), impõem restrições a algumas ou todas etapas do sistema OCR para realizar

Page 19: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

18

a tarefa de identificação da placa do veículo automotivo. São exemplos de tais restrições: aobrigação dos caracteres apresentarem tons mais escuros do que o fundo da placa para realizara etapa de detecção (ANAGNOSTOPOULOS et al., 2006), dificultando a extração de placascom caracteres mais claros do que o background; a imagem binária da placa deve ser ótima, semruído, enfatizando os caracteres (PAN et al., 2008); caracteres sem ruído e bem segmentadospara serem corretamente manipulados pela etapa de reconhecimento, utilizando, por exemplo, atécnica de Template Matching (DU et al., 2013). Além dessas restrições, a entrada de um sistemaOCR demanda, muitas vezes, um alto custo de hardware e de processamento para obtençãode uma identificação eficaz, pois, como tipicamente acontece em aplicações de tratamento desinal 2D, a imagem é composta de muita informação, as quais, frequentemente, são redundantesou desnecessárias. Soma-se a tal fato, a grande variação de forma, nitidez e integridade doscaracteres examinados. Por isso, aprimoramentos de análise e segmentação da imagem e métodosde extração de características podem ser otimizados para filtrar dados relevantes e melhorar odesempenho do sistema OCR. Esses aprimoramentos visam, ainda, melhorar a performance dosistema OCR quando os caracteres impressos por máquina estão degradados e/ou possuem fontesdistintas das utilizadas para treinar os algoritmos utilizados na fase de concepção do sistemaOCR.

Visando fundamentalmente melhorar o desempenho da etapa de reconhecimento, classi-ficando corretamente caracteres ruidosos, este trabalho foi realizado. Por isso, o objetivo dessapesquisa foi realizar um estudo de abordagens vigentes na literatura para propor um sistemaOCR para identificação de veículos automotivos com foco, principalmente, no reconhecimentode caracteres degradados, utilizando um conjunto limitado de restrições e aplicando poucas vari-ações paramétricas para os diferentes posicionamentos das placas de licenciamento nas imagensanalisadas. Por caracteres degradados, entende-se o símbolo que sofreu alguma degradação,translação, rotação, falta de uniformidade da luminosidade incidente no caractere, entre outros,no momento da aquisição da imagem ou durante as etapas de detecção e segmentação do OCR.

Para realizar o objetivo traçado, fez-se um estudo na literatura vigente para encontrarabordagens que obtivessem boa performance nas etapas de detecção e segmentação, já que,na etapa de reconhecimento, um modelo seria proposto. Então, os algoritmos implementadosem cada etapa do sistema OCR eram comparados entre si através de métricas existentes naliteratura como Recall, Precision e F-Score (EPSHTEIN et al., 2010) e, com isso, os métodoscom performances mais promissoras seriam selecionados para compor o sistema final. Entretanto,ao se analisar a performance num grupo de imagens utilizadas, percebeu-se que, apenas, algumastécnicas da etapa de detecção atingiram a performance esperada. Tais abordagens são: omodelo proposto por MENDES JÚNIOR et al. (2011) em sua formatação original e o algoritmoapresentado por WANG et al. (2014) após melhoramentos realizados sobre a sua proposiçãooriginal. Como apenas métodos na etapa de detecção apresentaram desempenhos satisfatórios,foi necessário, ainda, propor uma abordagem para a etapa de segmentação, que consiste deum conjunto de técnicas existentes na literatura, e elaborar um modelo baseado em algoritmos

Page 20: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

19

de redes neurais artificiais com aprendizado não-supervisionado, em escpecial Kernel Self-

organizing Maps (KSOM) (ANDRÁS, 2002; LAU et al., 2006; YIN, 2006), para realizar atarefa do reconhecimento do caractere. Então, grosseiramente, o modelo proposto apresentauma sequência de operações morfológicas aplicadas a imagem do veículo, contendo a sua placa,para realizar a detecção da região de interesse (MENDES JÚNIOR et al., 2011), em seguida, aimagem da placa passa por um conjunto de técnicas que corrigem a sua orientação horizontal,encontram os limites inferiores e superiores dos caracteres e individualizam os caracteres segundoalgumas peculiaridades e, por fim, os caracteres individualizados são apresentados um a um aoreconhecedor baseado na rede KSOM. É importante frisar que as modificações realizadas nomodelo proposto por WANG et al. (2014) e as proposições de algoritmos para realizar as tarefasdas etapas segmentação e de reconhecimento para compor o sistema OCR final são as principaiscontribuições dessa pesquisa.

Utilizou-se, inicialmente, uma abordagem de implementar as etapas de detecção, seg-mentação e reconhecimento de forma separada para verificar e analisar mais criteriosamenteos erros que ocorrem e como eles podem efetivamente ser corrigidos. Essa abordagem de“dividir para conquistar” faz com que os algoritmos empregados em cada etapa possam ficarmais eficientes e eficazes. Como será exibido nas análises sobre os resultados, essas etapas,quando avaliadas isoladamente, apresentaram resultados bastante satisfatórios, atingindo 96,38%de precisão para detecção, 94,38% de acerto para a segmentação e 93,25% performance para oreconhecimento, gerando, com as suas associações em cascata, um sistema OCR com perfor-mance global de 85,14% de precisão. Esse desempenho ocorreu por diversos fatores que serãocitados e pormenorizados no decorrer desta dissertação.

O próximo capítulo, o segundo, apresenta o estado da arte, evidenciando o que vêm sendodesenvolvido por pesquisadores nas 3 etapas do sistema; no terceiro capítulo são explicadasas principais técnicas consideradas e implementadas para a etapa de detecção; o capítulo 4traz o conjunto de técnicas implementadas para compor o bloco de segmentação dos caracterespresentes na placa; o capítulo 5 exibe o sistema OCR proposto referenciando ou explicitandotodos algoritmos utilizados nas 3 etapas; o penúltimo capítulo traz os experimentos realizadosnas etapas e no sistema final; por fim, no último capítulo, será apresentado um conjunto deconclusões sobre o projeto realizado.

Page 21: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

202020

2Reconhecimento Automático de Símbolos dePlacas

Neste capítulo são apresentadas técnicas desenvolvidas por outros autores, em suas res-pectivas pesquisas, visando realizar com boa precisão algumas ou todas as etapas de identificaçãoautomática de veículos através do sensoriamento por câmera. Essas técnicas são apresentasseguindo as três etapas fundamentais de um sistema OCR para identificação de automóveis:a detecção, segmentação e reconhecimento. O objetivo deste capítulo é mostrar o estado daarte aos leitores e prover um resumo das pesquisas que vêm sendo desenvolvidas na área deidentificação e reconhecimento das placas automobilísticas.

2.1 Visão Global do OCR

Um sistema OCR para identificação de veículos automotivos tem a tarefa de receberuma imagem de um veículo contendo a sua placa de licenciamento e produzir uma sequência decaracteres em texto codificado para o computador que corresponde aos símbolos identificadoresdo veículo existentes na sua placa. Como foi citado anteriormente, um OCR aplicado a imagensde veículos é composto por três etapas fundamentais: detecção, segmentação e reconhecimento.O primeiro estágio, o extrator de placa, é responsável por receber a imagem capturada pelo sensorde imagem, realizar vários processamentos e produzir, como saída, uma imagem contendo aplaca existente na cena capturada. Essa saída da detecção é a entrada do estágio de segmentação,que, por sua vez, irá processar a imagem de placa e gerar imagens, onde em cada uma deveráconter apenas um símbolo. Cada imagem que contém um símbolo será uma entrada para oestágio de reconhecimento. Nesta etapa, o símbolo que foi isolado irá produzir um caractere emformato eletrônico, por exemplo ASCII. Ao não existir mais imagens na entrada do reconhecedor,este irá produzir uma sequência de caracteres em formato eletrônico que deverá ser igual aossímbolos identificadores existentes na placa do veículo. A Figura 2.1 mostra o fluxograma deum sistema OCR para identificação de veículos automotivos.

Page 22: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.2. DETECÇÃO 21

Detecção Segmen-

tação Reconhe-cimento

Imagem

Caracteres ASCII

Sistema OCR para Veículos

Figura 2.1: Visão global de um sistema OCR para identificação de veículos.

2.2 Detecção

Como citado anteriormente, nesta etapa ocorre uma filtragem na imagem de entrada,objetivando extrair regiões que correspondem a placas de automóveis. Muitas são as técnicasempregadas nesta etapa, entretanto, a grande maioria, utiliza-se do contraste existente entreo fundo da placa (background) e os caracteres contidos na mesma (foreground) e, ainda, dascaracterísticas geométricas das placas. Portanto, a maioria dos trabalhos vigentes na literaturadesprezam a característica de cor, convertendo as imagens de entrada para escala de cinza ou emimagens binárias, diminuindo o custo de processamento.

De acordo com ABO SAMRA e KHALEFAH (2014), a tarefa de extração da placa delicenciamento é o estágio mais crítico de um sistema de identificação automática de veículos. Porisso, na literatura há um grande número de trabalhos que visam realizar a operação de extraçãoda placa com o número cada vez menor de restrições. Tais restrições deixam o extrator muitoespecífico ao posicionamento da câmera de captura e/ou ao formato da placa, mas possibilitam,algumas vezes, contornar problemas que dificultam muito a ação do extrator da placa, como, porexemplo, existência de outros caracteres na placa que não são úteis na identificação do veículo.

Para elencar e nortear, na área de Sistemas de Transportes Inteligentes, Intelligent

Transport System(ITS), ANAGNOSTOPOULOS et al. (2008) e DU et al. (2013) fizeram uma

Page 23: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.2. DETECÇÃO 22

pesquisa na área e citaram várias técnicas para extração da placa contida na imagem submetidaao processamento da etapa de detecção. Um das técnicas citadas por ANAGNOSTOPOULOSet al. (2008) é a conhecida como análise parcial da imagem (BROUMANDNIA e FATHY, 2005).Nesta técnica a imagem, já em escala de cinza, é submetida a um detector de bordas verticaise, em seguida, a imagem em processamento é verificada em N linhas, as quais são separadaspor uma distância predefinida, e, com isso, são realizadas as contagens dos pixels de bordasverticais existentes em cada uma das N linhas (ver Figura 2.2). Então, se o número de pixels debordas verticais for maior que um valor de limiar definido empiricamente, a presença da placapode ser assumida. Entretanto, se em nenhuma linha examinada o número dos pixels de bordasultrapassar o valor de limiar e, consequentemente, a placa não for encontrada, o algoritmo érepetido, reduzindo-se o valor de limiar, segundo um fator predefinido, para a contagem dasbordas. O método apresenta baixo tempo de execução, uma vez que apenas algumas linhassão verificadas. No entanto, este método não é robusto suficiente para localizar a placa emvários cenários ou ambientes. Além disso, não é invariante ao tamanho ou distância da imagemobtida e sofre, claramente, com problemas de iluminação não uniforme. Os autores da técnica deanálise parcial da imagem utilizaram imagens de placas persas, mas não citaram a performancealcançada pelo método isoladamente.

Figura 2.2: Imagem da parte frontal do veículo em escala de cinza e sua respectivaimagem de bordas verticais com as N linhas de análise tracejadas, enfatizando aquantidade de pixels de bordas por linha (ANAGNOSTOPOULOS et al., 2006).

Ainda na etapa de detecção, existe um método que aplica a transformada wavelet (HSIEHet al., 2005). O emprego da transformada wavelet, para extração de características de contrasteimportantes, atua como guia para a busca de regiões onde podem ser encontradas placas. Natransformada wavelet (WT), existem quatro subimagens (sub-bandas), nominadas de LL, LH,HL e HH, onde L e H significam, respectivamente, baixa e alta frequência. Essas subimagenspossuem características de detalhes verticais, HL, de detalhes horizontais, LH, e de detalhesdiagonais, HH. A subimagem LL é a imagem original, que estava em escala de cinza, numaresolução menor. Uma linha de referência é utilizada para localizar a placa. A Figura 2.3evidencia o resultado de extração da placa utilizando a família de wavelet Haar. Esse métodonão possui um resultado confiável quando a distância entre o veículo e a câmera de aquisição émuito grande ou muito pequena e, também, quando o ângulo do ponto de visão é largo. A taxa

Page 24: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.2. DETECÇÃO 23

média de acerto de detecção obtida em HSIEH et al. (2005) foi de 92,4% para um conjunto de315 imagens.

Figura 2.3: Emprego da wavelet da família de Haar e suas sub-bandas de detalhesverticais (1HL), horizontais (1LH), diagonais (1HH) e sua imagem de aproximação

(ANAGNOSTOPOULOS et al., 2008).

LEE et al. (2004) elaboraram um método que faz uso de detecção de movimento emedidas estatísticas para extrair as placas veiculares. Essa técnica trabalha com pares de imagensem escala de cinza, onde uma será nomeada de imagem de processamento e a outra de imagem dereferência. Essas imagens são, obviamente, de instantes de tempos diferentes, sendo a imagem doinstante t a de referência e a imagem do instante t +1 a de processamento. Então, primeiramente,são retirados blocos de tamanho definido pelo usuário considerados de pouco contraste daimagem de processamento. O pouco contraste é constatado ao comparar a variância dos tonsde cinza com um limiar. Em seguida, é realizada a detecção de blocos estáticos presentes naimagem de processamento, comparando-a, para isso, com a imagem referência. Então, os blocosestáticos são retirados da imagem de processamento (ver Figura 2.4). Sobre os blocos resultantesna imagem de processamento, é realizada a detecção de pixels de bordas verticais e horizontaise, então, as linhas verticais e horizontais de cada bloco que possuírem uma quantidade de pixelsde bordas inferior a um limiar definido empiricamente são excluídas. Assim, característicasgeométricas, com proporção de largura e altura e área da região, são utilizadas para detectarregiões de placas na imagem de processamento resultante. LEE et al. (2004) reportaram emseu artigo uma taxa de acerto de 98% para 180 pares de imagens que possuíam 351 placas semoclusão.

ANAGNOSTOPOULOS et al. (2006) elaboraram um método conhecido como desli-zamento de janelas concêntricas, sliding concentric windows (SCWs), que faz uso também demedidas estatísticas como média e desvio padrão para extrair as placas da imagem em escalade cinza (ver Figura 2.5). Como o nome sugere, as janelas concêntricas, uma duas vezes maior

Page 25: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.2. DETECÇÃO 24

Figura 2.4: Extração de blocos estáticos (LEE et al., 2004).

que a outra, serão transladadas pela imagem pixel por pixel. Então, se a razão entre as mé-dias dos pixels da janela maior e da janela menor for maior que um limiar, o pixel corrente éconsiderado um pixel de interesse, um pixel de foreground. Após deslizar essas janelas pelaimagem detectando pixels de interesse, é realizada uma binarização adaptativa local através dométodo de Sauvola para limiarizar a imagem resultante. Em seguida, é realizada uma análisede componentes conectados, connected components analysis (CCA), para identificar as regiõesde interesse. Essas regiões de interesse são denominadas como placas se respeitarem restriçõescomo proporção entre a altura e a largura e, também, o número de buracos existentes, os quaissão calculados através do método de Euller. Os autores reportaram, em ANAGNOSTOPOULOSet al. (2006), uma taxa de acerto de 96,5% para um conjunto contendo 1334 imagens.

Figura 2.5: Imagem de entrada e sua respectiva imagem processada pelo SCW(ANAGNOSTOPOULOS et al., 2006).

Existem, também, trabalhos inspirados no detector apresentado por VIOLA e JONES(2004). A pesquisa realizada por FREIRE e MAIA (2013) exibe um detector de placas delicenciamento baseado no trabalho de VIOLA e JONES (2004), apresentando uma técnica que

Page 26: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.2. DETECÇÃO 25

realiza a detecção da placa de licenciamento de veículos brasileiros. E, como há uma grandediferença de níveis de tons de cinza entre as placas brasileiras, a abordagem proposta por elestreina dois modelos de VIOLA e JONES (2004): um sub-detector para placas com caracteresmais escuros do que o fundo da placa e um outro sub-detector para placas com caracteres maisclaros do que o fundo da placa. Esses sub-detectores são combinados em paralelo e suas saídascompõem a saída final do detector proposto. Esses autores relatam, em seus estudos, uma taxade acerto de 99% para um conjunto de teste de 350 imagens com tempo de processamento de91 ms. FREIRE e MAIA (2013) utilizaram a ferramenta OpenCV para realizar o treinamentodo Adaboost e um conjunto de 10000 imagens de exemplos positivos dos objetos, as placas. AFigura 2.6 exibe corretas detecções para placas do tipo 1, caracteres mais escuros do que o fundo,e tipo 2, caracteres mais claros do que o fundo.

Figura 2.6: Exemplos de detecções corretas (FREIRE e MAIA, 2013).

PRATES et al. (2013) apresentaram um detector similar ao de VIOLA e JONES (2004),diferenciando-se, entretanto, pelas características extraídas e o classificador utilizado. O métodode VIOLA e JONES (2004) utiliza as característica de Haar combinadas com um classificadorAdaboost, enquanto que a abordagem de PRATES et al. (2013) utiliza as características de HOG

combinadas com SVM de Kernel linear. A abordagem de PRATES et al. (2013) é extensivamenteutilizada para a detecção de pedestres. Esses autores utilizaram imagens brasileiras e um conjuntode métricas que melhoram análise do método proposto, o Recall e o Precision. Tais métricas sebaseiam no grau de casamento entre a região detectada e a região verdadeira da placa, nomeadade região de ground-truth. Tal método apresentou, para um grau de casamento de 0.5, umperformance de 98% para Recall e 80% para o Precison, superando algumas técnicas vigentesna literatura. Tais métricas foram utilizadas para análise dos métodos implementados na etapa dedetecção do sistema proposto nesse trabalho.

Existem, ainda, métodos que utilizam Algoritmo Genético (AG) combinados com téc-nicas de processamento para realizar, ao mesmo tempo, as etapas de detecção e segmentação(ABO SAMRA e KHALEFAH, 2014). Há, também, métodos que utilizam um grande númerode operações morfológicas em sequências para realizar a extração da região da placa, como podeser visto em MENDES JÚNIOR et al. (2011). Encontra-se, também, para realizar a extração

Page 27: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.3. SEGMENTAÇÃO 26

da placa, métodos que utilizam combinações de classificadores (WANG et al., 2014) e que sãoinspirados no modelo proposto para detecção de faces em imagens (VIOLA e JONES, 2004).Esses últimos três trabalhos referenciados foram escolhidos para uma análise mais detalhada eserão descritos no Capítulo 3.

A escolha desses três últimos frameworks citados para uma análise mais minuciosadeve-se ao fato de fazerem uso de imagens de testes públicas, possibilitando a comparação deresultados obtidos com os originais. Soma-se a isso, o fato de apresentarem uma alternativabastante interessante aos métodos vigentes na literatura, pois realizam a extração da placa deforma mais precisa em cenários complexos com grande variação de background e luminosidade.

2.3 Segmentação

Nesta etapa, como enunciado antes, acontece o recorte dos caracteres que estão presentesna placa extraída pela fase de detecção. Antes de fazer a individualização dos símbolos emimagens é necessário realizar, frequentemente, um realce no foreground, ou seja, é essencialaumentar o contraste entre o fundo da placa e os caracteres. Existem ainda, em muitos casos,necessidades de realizar correções angulares na imagem da placa. Por isso, as etapas de pré-processamento da imagem da placa são importantíssimas, como pode ser visto em DU et al.(2013), e foram muito estudadas e exploradas.

CASEY e LECOLINET (1996) realizaram um survey sobre métodos para realizar aextração de símbolos presentes em imagens contendo strings. Entretanto, devido ao caracterecontido na placa ser impresso por máquina, uma individualização baseada em projeções ho-rizontais e verticais de pixels mostra-se um método bastante eficaz, como citado também porANAGNOSTOPOULOS et al. (2008) e DU et al. (2013). Mas, como citado no início dessaseção, é necessário, antes, realizar uma discriminação entre foregound e background, através debinarização adaptativa local que, além realçar os objetos de interesse, atenua ruídos existentes naimagem da placa (Figura 2.7). Nessa limiarização, a imagem é dividida em blocos de mxn pixelse um limiar é escolhido para cada bloco. Os limiares podem ser calculados através do algoritmode Otsu, pois esse algoritmo busca o limiar ótimo (GONZALEZ e WOODS, 2006).

Figura 2.7: Imagem em escala de cinza, a sua respectiva imagem binária com limiarglobal e local, respectivamente (LEE et al., 2005).

Após esse processamento, a placa será, então, submetida a algoritmos de projeção vertical

Page 28: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.3. SEGMENTAÇÃO 27

e horizontal dos pixels pretos e brancos. Essa técnica faz uso de vales nessas distribuições depixels, pois os caracteres impressos por máquinas são separados por um espaço. Em seguida,com essas projeções, é possível saber onde começa e termina um caractere, possibilitando o seurecorte da imagem da placa. A Figura 2.8 ilustra as técnicas de projeção.

Figura 2.8: Isolamento dos símbolos existentes na placa (ANAGNOSTOPOULOS et al.,2008).

Entretanto, o método de projeções verticais e horizontais sofre muito, entre outros ruídos,com distorções angulares. Quando há uma angulação da placa e/ou dos caracteres, detectar oslimites existentes entre os caracteres e entre esses símbolos e as bordas da placa torna-se umatarefa difícil e, muitas vezes, impossível para um método baseado nessas projeções.

Visando atenuar esses problemas angulares que podem existir, os trabalhos de PAN et al.(2008) e PAN et al. (2009) propõem técnicas baseadas no método dos mínimos quadrados ena transformada de Karhunen–Loève, respectivamente, para realizar as correções horizontale/ou vertical que podem existir na imagem binária da placa. A Figura 2.9 exibe um exemplo decorreção horizontal do método de PAN et al. (2009)

Figura 2.9: Com inclinação horizontal e sua respectiva imagem corrigida (PAN et al.,2009).

.O trabalho de ANAGNOSTOPOULOS et al. (2006) também utiliza janelas concêntricas

deslizantes para realizar a segmentação dos caracteres. Para tarefa de segmentação, entretanto, amedida estatística adotada foi o desvio padrão e não a média . Esses autores utilizaram, ainda,uma análise de componentes conectados em imagens binárias para retirar objetos indesejados. E,por fim, utilizaram a projeção horizontal e vertical para individualizar os caracteres.

YOON et al. (2011) propuseram um framework contendo etapas combinadas em cascatapara realizar a extração dos caracteres das placas. Técnicas como binarização local de Niblack,

Page 29: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.4. RECONHECIMENTO 28

aumento de contraste, análise de componentes conectados, entre outros métodos, foram utilizadas.Tais autores relatam uma taxa de acerto de cerca de 97% para o conjunto de 1944 imagens quepossuem o mesmo formato das placas europeias. A Figura 2.10 exibe os objetos de interesseselecionados.

Figura 2.10: Detecção dos objetos deinteresse (YOON et al., 2011).

SEDIGH e VAFADUST (2011) apresentaram um filtro muito semelhante ao filtro desegunda ordem, o laplaciano (GONZALEZ e WOODS, 2006), para realizar a limiarizaçãoda imagem. Utilizaram, também, filtros de suavização, como o gaussiano e de mediana, paraatenuar ruídos na imagem durante o processamento da técnica. A Figura 2.11 mostra a filtragemrealizada pelo operador semelhante ao laplaciano.

Figura 2.11: Imagem original em formato RGB e a sua respectiva imagem após aaplicação do filtro semelhante ao laplaciano (SEDIGH e VAFADUST, 2011).

2.4 Reconhecimento

Neste estágio, a imagem do caractere é decodificada para o formato de processamentodo computador. Nesta etapa, a maioria dos autores utiliza técnicas de aprendizagem de máquina,tais como aprendizado bayesiano, vizinho mais próximo, o K-NN, e redes neurais artificiais(ANAGNOSTOPOULOS et al., 2006; WEN et al., 2011; SHAPIRO e GLUHCHEV, 2004). Há,ainda, pesquisadores que antes de aplicar algoritmos de aprendizagem realizam extrações decaracterísticas invariantes para facilitar ou aperfeiçoar o trabalho do algoritmo inteligente.

TRIER et al. (1996) realizaram uma pesquisa que evidencia muitos extratores de caracte-rísticas. Entre esses extratores estão os momentos geométricos invariantes, descritores de Fourier,operações de zoning e extração de contorno. Esses extratores ajudam a discriminar de formamais eficiente os símbolos. Assim, as características geradas pelos extratores são utilizadas paracompor o vetor de características que alimentam os algoritmos inteligentes.

ANAGNOSTOPOULOS et al. (2008) citam, em seus trabalhos, uma técnica que utilizaalguns desses extratores para compor um algoritmo onde o primeiro passo é uma regra bayesianae o segundo é uma árvore de decisão. A Figura 2.12 ilustra esse método de reconhecimento. Ataxa de acerto reportada foi de 95,4% de 1000 placas analisadas. É importante frisar, entretanto,que existem também pesquisadores que utilizam as intensidades dos pixels para compor vetor decaracterísticas dos símbolos.

Page 30: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.5. DISCUSSÃO FINAL 29

Figura 2.12: Extratores alimentando o classificador Bayesiano ANAGNOSTOPOULOSet al. (2008).

WEN et al. (2011) propuseram um framework completo para realizar a identificação doveículo. Em seus trabalhos, os autores propuseram uma melhoramento no filtro de binarização deBersen, utilizaram correção angular baseada, apenas, nos objetos existentes na imagem binária eutilizaram um SVM alimentado com diversas características para realizar o reconhecimento docaractere. A performance média relatada pelos autores para as etapas de detecção, 97%, segmen-tação, 98%, e reconhecimento, 97%, foi muito boa. Entretanto, tais autores não disponibilizarama base utilizada, dificultando a comparação com o modelo proposto por eles.

Já SHAPIRO e GLUHCHEV (2004) utilizaram, para realizar a etapa de reconhecimento,a rede não-supervisionada de Kohonen, o Self-Organizing Map(SOM). A regra de atração dosnodos, no SOM utilizado pelos autores, é baseada na força elástica existentes num sistemas demolas. No trabalho de SHAPIRO e GLUHCHEV (2004) existem três redes que correspondema três subgrupos de caracteres. Cada grupo é selecionado pelo número de buracos e endpoints

existentes no caractere de entrada da etapa. Após a identificação da rede que irá processar ocaractere, o contorno do mesmo é obtido e irá compor o vetor de características desse elemento.

2.5 Discussão Final

Apesar dos resultados reportados na literatura serem bons é possível, ainda, resolverproblemas existentes, como, principalmente, os que ocorrem na etapa de reconhecimento.Trabalhos como os de MENDES JÚNIOR et al. (2011) e WANG et al. (2014) são interessantes eapresentaram resultados relevantes em bases de dados públicas e podem ser utilizados na etapade extração da placa. Já para etapa de segmentação dos caracteres muitas abordagens realizarama individualização dos símbolos em placas de formatos específicos e em bases privadas. Por isso,foi necessário criar uma abordagem baseada em métodos vigentes na literatura para compor ométodo de segmentação proposto nesse trabalho e atingir desempenho satisfatório na base dedados utilizada. Por fim, na etapa de reconhecimento, que foi o foco maior dessa pesquisa, uma

Page 31: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

2.5. DISCUSSÃO FINAL 30

variante do SOM, o Kernel SOM, foi proposta para realizar o reconhecimento da imagem docaractere. Vários tipos de Kernel SOMs foram estudados e implementados, visando realizar aescolha que melhor realize tal tarefa. O capítulo 5 traz um detalhamento da escolha feita e osresultados preliminares obtidos.

Page 32: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

313131

3Detecção

Neste capítulo, serão apresentadas, detalhadamente, as principais técnicas estudadas eimplementadas para realizar a tarefa de extração da(s) placa(s) de licenciamento do(s) veículo(s)presente(s) na imagem de entrada, evidenciando e ilustrando as principais etapas das abordagens.Os métodos discutidos neste capítulo foram extensivamente testados em bases de dados públicas,objetivando alcançar as performances relatadas pelos mesmos. Os algoritmos baseados emalgoritmo genético (AG) (ABO SAMRA e KHALEFAH, 2014), operações morfológicas (MEN-DES JÚNIOR et al., 2011) e combinações de classificadores (WANG et al., 2014) serão, nestaordem, apresentados.

3.1 Detecção Através de Algoritmo Genético

ABO SAMRA e KHALEFAH (2014) conceberam um modelo baseado na busca decombinações de regiões de objetos em imagens binárias, sendo a melhor combinação encontradaapós aplicação de um algoritmo genético (AG), utilizando uma medida de similaridade entreuma solução do AG e uma solução template para representar a sua função de aptidão. A melhorcombinação deve representar, no modelo proposto por tais autores, a sequência de caracteresidentificadores presentes na placa de licenciamento do veículo.

3.1.1 Objetivo

O trabalho de ABO SAMRA e KHALEFAH (2014) apresenta um algoritmo que com-bina métodos de processamento de imagem, como binarização local adaptativa e operaçõesmorfológicas, e a execução de um AG para realizar a busca dos caracteres existentes nas placasveiculares. Assim, o algoritmo irá, após o processamento da imagem do automóvel contendoa sua placa de licenciamento, gerar imagens dos caracteres individualizados. Portanto, estetrabalho realiza as duas primeiras etapas de um sistema OCR, detecção e segmentação.

Page 33: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 32

3.1.2 Metodologia

Como citado anteriormente, o algoritmo é composto de métodos de Processamento deImagem, PI, e execução de um Algoritmo Genético, AG, para um problema de permutaçãode números inteiros. Na Figura 3.1, pode ser visualizado que o sistema possui, na fase de PI,técnicas de transformação para tons de cinza da imagem colorida, binarização adaptativa local,operações morfológicas, análise de componentes conectados e a filtragem de blobs por restriçõesgeométricas. Já na segunda etapa, por ser um AG, estratégias de operadores de variação, seleçãode pais, seleção dos sobreviventes e análise de aptidão do individuo estão presentes.

Imagem RGB

Conversão para Cinza

Binarização Local

Operação Morfológica

Análise de Componentes Conectados

Seleção de Objetos por Tamanho

AG

Seleção de L Símbolos

GRM

Figura 3.1: Diagrama de blocos que evidencia entrada e saídas dos estágios do algoritmoproposto por ABO SAMRA e KHALEFAH (2014).

As etapas de PI e AG serão explicadas separadamente, possibilitando um entendimentomais pormenorizado do algoritmo. É importante frisar, ainda, que os valores dos parâmetrosadotados no modelo foram encontrados empiricamente.

3.1.2.1 Etapa de Processamento de Imagem

A. Conversão da Imagem Colorida para Escala de Cinza

Nesse estágio da fase de PI, a imagem, no formato RGB, é convertida para escala decinza de acordo com a seguinte fórmula:

GS = 0.299R+0.587G+0.114B� �3.1

Page 34: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 33

onde GS é a intensidade em escala de cinza de um determinado pixel, R é a intensidade dessemesmo pixel no plano vermelho, G é a intensidade deste pixel no plano verde e B é a intensidadedo pixel corrente no plano azul. A Figura 3.2 ilustra essa conversão.

Figura 3.2: Imagem Colorida, à esquerda, e a sua respectiva Imagem em Cinza, à direita.

B. Limiarização Adaptativa Local

Essa etapa realiza a binarização adaptativa local da imagem em escala de cinza utilizandouma janela de tamanho 30x30 pixels, na qual o pixel central é considerado de fundo (background)se a sua intensidade for maior do que 90% da média da sua vizinhança, caso contrário ele éconsiderado de objeto (foreground) (ver Figura 3.3). A janela desliza em todos os pixels daimagem em escala de cinza, os valores dos pixels variam de 0 (fundo) a 255 (objeto).

Figura 3.3: Imagem Binarizada Localmente.

C. Operações Morfológicas

Nesse estágio a imagem binarizada sofre uma operação de fechamento, dilatação seguidade erosão com mesmo elemento estruturante (ES), que, neste caso, tem o formato de um discocom raio de 3 pixels. O objetivo dessa operação é conectar regiões de um mesmo caractere quetenha se separado na etapa de binarização. A Figura 3.4 exibe a imagem binária após a referidaoperação.

Page 35: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 34

Figura 3.4: Imagem Binarizada após a operação de Fechamento.

D. Análise de Componentes Conectados

A imagem fechada, nesta etapa, passa por um processo de encontrar elementos conectadosque pertencem a uma mesma região, definindo blobs. Cada blob terá associado a ele umabounding box. Então, a saída dessa etapa é o conjunto de N bounding boxes que envolve seusrespectivos blobs, os objetos (ver Figura 3.5).

Figura 3.5: Imagem com N objetos detectados.

E. Filtragem pelo Tamanho dos Objetos

Neste estágio, as bounding boxes são filtradas segundo restrições de altura e largura.Serão desconsideradas todas as boundig boxes que violarem ao menos uma das restrições:

HMIN 6 HBOX 6 HMAX� �3.2

WMIN 6WBOX 6WMAX� �3.3

onde HMIN é a altura mínima que o objeto pode ter, atribuído o valor igual a 8 pixels, HMAX

é a altura máxima que o objeto pode possuir, inicializado com 1/3 da quantidade de linhas da

Page 36: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 35

imagem de entrada, HBOX é a altura do objeto analisado, WMIN é a largura mínima que o objetopode ter, inicializada com valor igual a 2 pixels, WMAX é a largura máxima que o objeto podepossuir, inicializado com 1/3 da quantidade de colunas da imagem de entrada, e WBOX é a largurado objeto analisado. Nesta etapa o conjunto de N objetos é reduzido a M objetos. A Figura 3.6exibe a filtragem realizada por

� �3.2 e� �3.3 .

Figura 3.6: Imagem com M objetos selecionados da imagem Figura 3.5.

3.1.2.2 Etapa de Algoritmo Genético

Nesta fase, serão descritos a representação de um indivíduo da população de solução,a definição da população inicial, a definição da função de aptidão, os operadores de variação(recombinação e mutação), a seleção de pais, a seleção de sobreviventes e os critérios de paradaque são os elementos fundamentais do Algoritmo Genético proposto para o problema de busca.

A. Representação do Indivíduo

O conjunto dos M objetos, que é a saída da fase de processamento de imagem, serão osgenes da fase de computação evolucionária. Então, todas as M bounding boxes são numeradasde 0 até M−1, possibilitando cada bounding box possuir um identificador único. Então, cadagene de um indivíduo será um número inteiro não negativo entre 0 e M− 1, não podendohaver repetição de genes em um mesmo indivíduo, caracterizando o problema como sendo depermutação. O tamanho de cada indivíduo é o mesmo e é definido pelo usuário, originalmenteo tamanho foi igual a 7, e representa a quantidade de caracteres esperados na placa do veículo.Abaixo um exemplo de indivíduo.

Figura 3.7: Exemplo da representação de um indivíduo com 7 genes não repetidos e cadagene com seu identificador único.

Page 37: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 36

B. Definição da População Inicial

Sabendo o número M de objetos, é possível saber a quantidade de indivíduos que umapopulação deve possuir. As expressões a seguir mostram como calcular o número de soluções.

B = L(log2M)� �3.4

Z = 1.65×2(0.21×B)� �3.5

onde B, em caso de representação binária dos genes, seria o tamanho do cromossomo, o indivíduo,em

� �3.5 . Mas, o problema é composto por genes com valores inteiros e, portanto, foi necessáriorealizar uma modificação, sendo o valor de B encontrado pela expressão

� �3.4 . M é o númerode objetos, L é o número de caracteres presentes na placa e Z é a quantidade de indivíduos napopulação.

Após a determinação do número de indivíduos na população, Z, pode-se, agora, gerar osindivíduos da população. Então, Z indivíduos serão gerados, onde cada um terá 7 genes inteirossem repetições. Os genes são inseridos aleatoriamente no cromossomo, se seu valor ainda nãoestiver presente no mesmo. Entretanto, caso o valor do gene esteja presente no indivíduo, umnúmero entre 0 e M−1 será sorteado, com probabilidade uniforme, até que o gene encontradonão esteja presente no cromossomo e, então, possa ser inserido no mesmo.

C. Definição da Função de Aptidão

Inicialmente, algumas distâncias são definidas entre as bounding boxes representadaspelos seus identificadores inteiros presentes nos cromossomos. O trabalho de ABO SAMRA eKHALEFAH (2014) define até 5 distâncias, mas para base utilizada, a Medialab LPR Database,apenas 3 são efetivamente utilizadas:

RX( j+1, j) = (X( j+1)−X j)/H j� �3.6

RY( j+1, j) = (Y( j+1)−Yj)/H j� �3.7

RH( j+1, j) = (H( j+1)−H j)/H j� �3.8

onde H j é o valor da altura do j-ésimo elemento no cromossomo, RX( j+1, j) é a distância entre oscoordenadas X das bounding boxes representadas pelo valores dos elementos j+1 e j, X( j+1)

é o valor da coordenada X do elemento j+ 1 e X j é o valor da coordenada X do elemento j;RY( j+1, j) é a distância entre os coordenadas Y das bounding boxes representadas pelos valoresdos elementos j + 1 e j, Y( j+1) é o valor da coordenada Y do elemento j + 1 e Yj é o valorda coordenada Y do elemento j; RH( j+1, j) é a distância entre as alturas H das bounding boxes

representadas pelos valores dos elementos j+1 e j e H( j+1) é o valor da altura H do elemento

Page 38: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 37

j+1.Após a definição dessas distâncias efetivamente utilizadas, uma matriz de relacionamento

geométrico, Geometric Relationships Matrix (GRM), entre os caracteres presentes em uma placade licenciamento de uma imagem de ajuste, imagem protótipo, é calculada. Essa matriz retrataqual deve ser o valor esperado para cada distância aferida. A matriz é calculada apenas uma vezpara um modelo de placa, caracterizando um indivíduo protótipo, p.

j 1 2 3 4 5 6

RX( j+1, j) 0.8 0.8 1.55 0.8 0.8 0.8

RY( j+1, j) 0 0 0 0 0 0

RH( j+1, j) 0 0 0 0 0 0Tabela 3.1: GRM do protótipo para a base grega (ABO SAMRA e KHALEFAH, 2014).

Cada linha representa as distâncias existentes num variável especifica, X , Y e H, dasbounding boxes dos caracteres.

Com a definição da matriz GRM e das métricas de distâncias efetivamente utilizadas, épossível calcular a função objetivo da seguinte maneira:

4RX(k,p) =(L−1)

∑( j=1)

|(RX( j+1, j))k− (RX( j+1, j))p|� �3.9

4RY(k,p) =(L−1)

∑( j=1)

|(RY( j+1, j))k− (RY( j+1, j))p|� �3.10

4RH(k,p) =(L−1)

∑( j=1)

|(RH( j+1, j))k− (RH( j+1, j))p|� �3.11

FOk =4RX(k,p)+44RY(k,p)+44RH(k,p)

� �3.12

onde 4RX(k,p) corresponde variação acumulada entre as distâncias RXs do cromossomo k eo cromossomo do protótipo, p, 4RY(k,p) corresponde variação acumulada entre as distânciasRY s do cromossomo k e o cromossomo do protótipo,4RH(k,p) corresponde variação acumuladaentre as distâncias RHs do cromossomo k e o cromossomo p e FOk é a função objetivo paracromossomo k e que deve ser minimizada.

D. Operadores de Variação

I. Mutação de Substituição de Genes

Esse operador consiste na escolha aleatória de uma posição do indivíduo e, em se-guida, repor esse valor genético por um valor genético dentre os M valores e que não estão nocromossomo (ver Figura 3.8). A taxa de mutação foi igual a 0.02.

Page 39: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 38

Figura 3.8: Exemplo de Mutação por Substituição de Genes (ABO SAMRA eKHALEFAH, 2014).

II. Recombinação

ABO SAMRA e KHALEFAH (2014) criaram um operador de recombinação e nomearamde USPS (Union operation for Sorting, Partitioning and Sorting). Esse operador recebe comoentrada dois indivíduos, que são os pais, para gerar dois filhos. Inicialmente, há uma concatenaçãodos dois cromossomos, formando um indivíduo maior, mas sem elementos repetidos. Em seguida,há um ordenamento crescente dos valores genéticos, dos identificadores das bounding boxes,baseados na posição Y de cada uma. Posteriormente, é realizada a divisão desse cromossomoem dois indivíduos; o primeiro indivíduo gerado será composto pelos 7, número de caracteresesperado na placa, primeiros genes do cromossomo único e o segundo será composto pelos 7genes entre NG -7+1 e NG genes, onde NG é o número de genes do cromossomo único. Após,obter dois indivíduos, os dois terão valores genéticos ordenados crescentemente novamente, mas,agora, segundo a posição X das bounding boxes que representam. É importante frisar que a taxade recombinação foi igual a 0.7. A Figura 3.9 ilustra esse operador USPS.

E. Seleção de Pais

Para selecionar os pais, os autores utilizaram o Stochastic Universal Sampling (SUS) (EI-BEN e SMITH, 2004), método baseado na função de aptidão, que nesse problema é o inverso dafunção objetivo, para escolha de C indivíduos da população atual que serão pais em potencial.Originalmente, foram escolhidos 90% da população para a etapa de operadores de variação.

F. Seleção de Sobreviventes

Após a execução dos operadores de variação sobre os indivíduos escolhidos, é necessárioescolher entre os 1,9Z quais Z indivíduos irão para próxima geração. Os 0.9Z resultantes daetapa de operadores de variação passam para próxima geração, assim como, os 10% mais aptos dapopulação atual, caracterizando o elitismo, e, como isso, a população voltará a ter Z indivíduos.

Page 40: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 39

Figura 3.9: Exemplo da Recombinação USPS (ABO SAMRA e KHALEFAH, 2014).Nota-se a formação do indivíduo maior sem repetição, ordenamento segundo Y s,

separação em dois indivíduos e ordenamento segundo Xs.

G. Critérios de Parada

Os critérios de parada da execução do algoritmo genético são: distância, que é a funçãoobjetivo, mínima da população menor que um limiar, que foi definido 5, ou se a média dapopulação por seis gerações não for alterada. Se a distância mínima for menor que 5, a placafoi encontrada, mas, caso o critério de parada for a não alteração da distância média por seisgerações, a placa só será encontrada se a distância mínima for igual ou menor que a 8.

ABO SAMRA e KHALEFAH (2014) propuseram, ainda, um algoritmo que trata decomo separar regiões que deveriam ser disjuntas, mas estão conectadas. Então, foi incluído nométodo um estágio que minimiza os erros provenientes da análise de componentes conectados.A Figura 3.10 ilustra uma resposta do algoritmo para a imagem colorida presente na Figura 3.2.

Page 41: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.1. DETECÇÃO ATRAVÉS DE ALGORITMO GENÉTICO 40

Figura 3.10: Saída do Algoritmo Genético e do Método Proposto.

H. Minimização da Análise de Componentes Conectados

Após a binarização local adaptativa e as técnicas de operação morfológicas, os caracteresvizinhos podem se tocar entre si e/ou as bordas da placa. Esse fenômeno faz com que asbounding boxes desses caracteres não consigam ser extraídas. Logo, a correta definição doscaracteres presentes na placa fica severamente prejudica nesses casos. Por isso, tais pesquisadoresdesenvolveram um método para negligenciar alguns genes do indivíduo, no máximo 4, fazendocom que, apenas as bounding boxes dos caracteres presentes no indivíduo, influenciem nocálculo da função de aptidão. Por exemplo, se o gene 3 é negligenciado, então as distânciasRX3,2, RY3,2, RH3,2, RX4,3, RY4,3 e RH4,3 não serão calculadas. Ao invés dessas distâncias, assimilaridades calculadas serão RX4,2, RY4,2, e RH4,2. Estas, se forem dos indivíduos, serãoretiradas das bounding box que representam, se forem do protótipo p, serão retiradas da matrizGRM. Portanto, para as retiradas da GRM, tem-se para o gene 3:

RX3,2 = (X3−X2)/H2� �3.13

RX4,3 = (X4−X3)/H3� �3.14

RX4,2 = (X4−X2)/H2 = ((RX3,2 +1)(RX4,3 +1))−1� �3.15

Para identificar a quantidade de genes que serão pulados, foi introduzido um valor NS(number skipped). Esse número assume valores inteiros entre 0 e 3. O momento de negligenciarum ou mais genes é definido quando o AG converge sem atingir a distância mínima de aceitação.Então, na primeira execução do AG o NS é inicializado como 0 e, ao convergir sem atingir olimiar de aceitação, o valor de NS é incrementado em 1 e o passo do AG é executado novamente.O algoritmo só iriá parar se o limiar de aceitação for atingido ou se NS for igual a 4. A definiçãode quais genes serão pulados é realizada no momento do cálculo da função objetivo. Nestemomento, cada indivíduo possuirá um vetor a ele associado que possuirá 4 posições, no máximo,onde cada posição irá guardar o índice de um gene que será pulado.

Page 42: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 41

3.1.3 Experimentos

Em ABO SAMRA e KHALEFAH (2014), os autores utilizaram a base de dados, Saudi

LP, de domínio privado, que contém 800 imagens e parte da base de dados, de domínio público,Medialab LPR Database, que resultou em 335 imagens. A primeira base não está disponível,pois os autores não possuem autorização dos proprietários dos veículos para isso. Com respeitoa segunda base, foi possível adquirir todas as imagens utilizadas para teste do modelo proposto.As imagens foram adquiridas de grupos: day color (large sample), day shadows in plate, day

very close view e difficult shadows. Os autores implementaram o algoritmo no MATLAB, masnão disponibilizaram o código. A Tabela 3.2 exibe os resultados citados no artigo para as duasbases mencionadas.

Base de Dados Número deImagens

CaracteresDetectados

Falsos Nega-tivos

Falsos Positi-vos

Taxa deAcerto

Saudi LP 800 770 8(1%) 2(0.25%) 98.75%

Medialab LPR 335 327 6(1.79%) 2(0.59%) 97.61%

Total 1135 1117 14(1.23%) 4(0.35%) 98.41%Tabela 3.2: Resultados alcançados nas bases utilizadas.

3.2 Detecção Através de Operações Morfológicas

O trabalho de MENDES JÚNIOR et al. (2011) apresenta um conjunto de técnicas deprocessamento de imagem, aplicadas em cascata, que realça, na imagem, possíveis regiões deplacas. Essas regiões serão avaliadas, segundo uma métrica puramente estatística, e a bounding

box com a melhor avaliação dessa métrica é tida como pertencente a placa. Os autores utilizaramuma base obtida na UFOP (Universidade Federal de Ouro Preto) e parte da base Medialab LPR

Database para validar o algoritmo proposto.

3.2.1 Objetivo

MENDES JÚNIOR et al. (2011) apresentaram uma técnica para extração da placa delicenciamento através de, entre outros métodos, realce de bordas, principalmente, verticais,suavização da imagem, análise de componentes conectados e, fundamentalmente, de operaçõesmorfológicas.

3.2.2 Metodologia

A abordagem é composta, por vários algoritmos, predominantemente dispostos emcascata, de processamento de imagem. Filtros 2D de realce de bordas e de suavização deimagem são utilizados, assim como, também, métodos de binarização e de operações baseadas na

Page 43: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 42

matemática da teoria de conjuntos. Uma visão global do framework proposto MENDES JÚNIORet al. (2011) pode ser vista na Figura 3.11.

Figura 3.11: Diagrama de blocos da abordagem proposta por MENDES JÚNIOR et al.(2011).

Na Figura 3.11, percebe-se que a extração do gradiente seguida de aplicação do filtrode mediana compõe o primeiro bloco da abordagem de MENDES JÚNIOR et al. (2011). Emseguida, um conjunto de operações morfológicas dispostas em cascata formam o segundo bloco,nomeado pelos autores, de filtragem. O terceiro e último bloco é o responsável por excluir,

Page 44: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 43

ajustar e escolher regiões para a avaliação da métrica detectora de placas, resultando na extraçãoda imagem da placa.

A. Realce de Bordas Verticais

Neste estágio, a imagem de entrada após, ser transformada em escala de cinza segundo aequação

� �3.1 , é convolvida com um filtro passa-alta para realçar as bordas verticais. A máscarautilizada foi a do Sobel Vertical. A Figura 3.12 ilustra essa etapa.

Figura 3.12: Imagem de entrada em escala de cinza e sua respectiva imagem gradientehorizontal.

B. Suavização da Imagem Gradiente

Neste etapa, a imagem gradiente do estágio anterior é suavizada através de um filtropassa-baixa, um filtro de média, de tamanho 3×3. A Figura 3.12 ilustra essa etapa.

Figura 3.13: Imagem gradiente suavizada.

C. Atenuação de Regiões Pequenas

Nesta etapa, a imagem em processamento é submetida a uma operação morfológica deabertura, utilizando um elemento estruturante no formato de coluna. Essa etapa visa remover

Page 45: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 44

pequenas regiões que não são "placas". A Figura 3.14 ilustra a saída desta etapa.

Figura 3.14: Imagem de abertura.

D. União de Regiões Desconectadas

Neste estágio, a imagem em processamento é submetida a uma operação de fechamento,utilizando um elemento no formato linha, objetivando a união de saliências verticais. Essaoperação de fechamento, ao contrário da de abertura, é uma dilatação seguida por uma erosãocom o mesmo elemento estruturante. A Figura 3.15 exibe a saída do método.

Figura 3.15: Imagem de fechamento.

E. Atenuação de Regiões Grandes

A imagem em processamento é submetida a um operação de morfológica nomeadade TOPHAT, que é subtrair a imagem da sua respectiva imagem de abertura, fazendo uso deum elemento estruturante no formato coluna. Essa etapa atenua regiões grandes que não são"placas"(ver Figura 3.16).

Page 46: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 45

Figura 3.16: Imagem de saída da operação TOPHAT.

F. Unir Elementos Presentes na Placa

Nesta etapa, sobre a imagem proveniente do E, é realizada uma operação morfológica defechamento para realçar possíveis intensidades dos caracteres. O elemento estruturante utilizadofoi de formato linha. A Figura 3.17 evidencia a saída deste bloco.

Figura 3.17: Imagem de fechamento.

G. Remoção de Bordas da Placa

Neste estágio, a imagem em processamento sofre uma operação de erosão seguida poruma de dilatação, mas por elementos estruturantes diferentes. Esta estágio tenta retirar as bordaslaterais da placa que sugiram após a aplicação do Sobel Vertical. A Figura 3.18 exibe a saídadessas operações.

Page 47: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 46

Figura 3.18: Imagem proveniente de uma erosão e depois de uma dilatação.

H. Remoção de Regiões Escuradas

Neste passo, inicia-se o ajustamento da placa. Então, a imagem, proveniente de G, passapor um limiarização global, utilizando o limiar ótimo de OTSU. Objetiva-se como essa etaparetirar, ainda, possíveis saliências de regiões que não são "placas". A Figura 3.19 evidencia oresultado encontrado por este passo.

Figura 3.19: Imagem binarizada com OTSU.

I. Remoção de Regiões Infratoras das Restrições

Nesta etapa, é realizada uma análise dos componentes conectados da imagem do passoanterior para eliminar regiões que não obedecem algumas restrições inerentes a placas, comoproporção de altura e largura. As regiões que possuem a altura menor do que a de um caractere eas regiões que tocam as bordas também são eliminadas. A Figura 3.20 evidencia a saída destemétodo.

Page 48: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 47

Figura 3.20: Imagem binarizada com região não-placas removidas.

J. Remoção de Regiões Conectadas

Nesta etapa, as regiões conectadas são retiradas da imagem oriunda do passo anterior.Entretanto, os autores não retratam bem o que eles utilizam para mensurar se as regiões estão ounão conectadas e, por isso, a área da região analisada tornou-se a métrica de decisão. Portanto,se a área da região analisada for maior que um determinado limiar, ele é dita com uma regiãocomposta. A Figura 3.21 ilustra a saída dessa etapa.

Figura 3.21: Imagem binarizada com regiões conectadas removidas.

K. Ajustes das Regiões Resultantes

Para cada região candidata presente na imagem de J, é criada uma bounding box e namesma posição da imagem de F é recortada uma ROI(Region Of Interest), região de interesse, ecolocada nessa bounding box. Posteriormente, operações de dilatação com elemento estruturante5×5, de binarização utilizando OTSU, de erosão com elemento estruturante em forma de linha ede dilatação com elemento estruturante em forma de retângulo são realizadas, visando realizaruma melhor segmentação das regiões candidatas. A Figura 3.22 ilustra a saída dessa etapa.

Page 49: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 48

Figura 3.22: Imagem binarizada com os ajustes da regiões.

L. Análise das Regiões Resultantes

Nesta etapa, é feita análise da imagem gerada em K para verificar se a largura da bounding

box é menor do que a largura mínima esperada para uma placa, se a altura da bounding box émenor do que a altura mínima esperada para uma placa e, ainda, se a altura é maior do que alargura. Se pelo menos umas dessas condições for atendida, essa região é retirada da imagem. AFigura 3.23 exibe o retorno dessa etapa.

Figura 3.23: Imagem binarizada com as regiões conectadas removidas.

M. Escolha da Região da Placa

Esta etapa é a última. Nesse estágio, é extraída a placa do carro. Ela recebe, como entrada,a imagem de L e de F. A imagem de L é utilizada como máscara para obter as bounding boxes dasregiões candidatas e aplicá-las na imagem de F, e, posteriormente, calcular a métrica V . Esta éigual a média da região elevada ao quadrado divida pelo desvio padrão dessa região (ver equação� �3.16 ). A região como maior valor de V será considerada como a placa de licenciamento. AFigura 3.24 exibe a máscara da região escolhida e a placa extraída.

Page 50: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.2. DETECÇÃO ATRAVÉS DE OPERAÇÕES MORFOLÓGICAS 49

Vr = µr2/σr

� �3.16

Figura 3.24: Imagem que evidencia a região escolhida e a imagem da placa recortada dacena em escala de cinza na Figura 3.12.

3.2.3 Experimentos

MENDES JÚNIOR et al. (2011) utilizaram duas bases de dados: um grupo de imagensda Medialab LPR Database e uma base adquirida em alguns dos portões de acesso ao Campusda Universidade Federal de Ouro Preto (UFOP). O número de imagens da primeira base foi igual377 e o número de imagens da segunda foi de 345. Todas essas 722 imagens possuem, cada,dois rótulos: uma bounding box de menor tamanho possível que inclui todos os caracteres e umaoutra bounding box de tamanho mínimo que inclui toda a placa. Com esses rótulos os autorescriaram duas métricas la e ea que, ao serem combinadas, resultam na performance atingida peloalgoritmo proposto. As equações, a seguir, mostram como encontrar as duas métricas:

la =area(rchar∩ rmet)

are(rchar)

� �3.17

ea =area(rvl p∩ rmet)

are(rvl p)

� �3.18

onde rchar é a mínima bounding box que contém os todos os caracteres da placa, rvl p é a mínimabounding box que contém toda a região da placa, rmet é a região encontrada pelo abordagemproposta e area é o operador que encontra a área de uma determinada região.

A Tabela 3.3, a seguir, traz os resultados alcançados por MENDES JÚNIOR et al. (2011)para as as duas bases de imagens. É importantíssimo citar que os autores não levaram emconsideração a etapa de decisão, a saída do estágio M, para encontrar essas métricas. A região daimagem de saída da etapa L que melhor se ajustar a região da placa, que possui o posicionamentoconhecido, é escolhida. Com isso, o erro da etapa M é desprezado e, portanto, não interfere novalor das métricas de avaliação definidas. A coluna la > 0.85 & ea < 1 corresponde a localização

Page 51: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.3. DETECÇÃO ATRAVÉS DE COMBINAÇÕES DE CLASSIFICADORES 50

ótima, a coluna la > 0.85 & ea≥ 1 corresponde a uma localização que extrapola os limites daplaca, a coluna la≤ 0.85 & ea < 1 exibe o erro de localização, o campo la > 0 corresponde auma localização "Naive"e o campo Número de Candidatos corresponde a quantidade de regiõesretornadas na etapa L.

Base de Dados la > 0.85&ea < 1

la > 0.85&ea≥ 1

la≤ 0.85&ea < 1

la > 0 Número deCandidatos

UFOP 94.43% 1.59% 2.12% 96.02% 2.57%

Medialab LPR 96.52% 0.87% 2.61% 99.13% 1.53%

Total 95.43% 1.24% 2.35% 97.51% 2.07%

Tabela 3.3: Resultados alcançados nas bases utilizadas.

3.3 Detecção Através de Combinações de Classificadores

O trabalho de WANG et al. (2014) apresenta, principalmente, um operador gradiente paranormalizar as imagens, tornado as placas com caracteres mais claros do que o fundo e as placascom caracteres mais escuro do que o fundo com tons semelhantes. Em seguida, o algoritmoproposto realiza uma combinação de classificadores para extrair a(s) placa(s) existente(s) naimagem de entrada.

3.3.1 Objetivo

WANG et al. (2014) utilizaram algoritmos de processamento de imagem, como filtrosde primeira ordem para gerar imagem gradiente e filtro de mediana, atuando com combinaçãode classificadores para detecção da placa de licenciamento. Esses autores foram fortementeinspirados pelo trabalho de VIOLA e JONES (2004) para detecção facial de imagens em temporeal.

3.3.2 Metodologia

WANG et al. (2014), como enunciado anteriormente, fazem uso de métodos que combi-nam classificadores em cascata para extrair a placa da imagem analisada. E, afim de melhoraro treinamento e a performance de um dos seus métodos de classificação, eles utilizaram umaimagem gradiente para realizar a análise. A Figura 3.25 exibe o diagrama de blocos do fra-

mework por esses pesquisadores. A seguir as etapas que compõem a abordagem proposta serãoexplicadas.

Page 52: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.3. DETECÇÃO ATRAVÉS DE COMBINAÇÕES DE CLASSIFICADORES 51

Figura 3.25: Visão global da abordagem de combinação de classificadores (WANG et al.,2014).

Inicialmente, como pode ser visto em Figura 3.25, o método realiza um preprocessamentoda imagem aplicando um operador gradiente seguido de um filtro de mediana. Em seguida,detecções de regiões promissoras, utilizando característica de Haar combinadas com um Adabo-

ost, são realizadas em múltiplas escalas da imagem em processamento. As regiões promissoraspassarão, então, por uma classificação baseada em heurísticas, que excluirão algumas dessasregiões promissoras. Por fim, um algoritmo baseado em voto, utilizando características extraídaspelo descritor Histogram Oriented Gradients (HOG) e um classificador de Máquinas de Vectoresde Suporte, Support Vector Machine (SVM), é empregado para decidir se a região promissora éuma placa ou não.

A. Pré-Processamento da Imagem

Inicialmente, a imagem no formato RGB é convertida para escala de cinza utilizando� �3.1 , pois, apenas, os tons de cinza são necessários para extrair a informação da placa. Emseguida, visando extrair possíveis ruídos existentes na imagem, por exemplo, sal e pimenta, umfiltro de mediana de dimensão 3×3 é aplicado na imagem em cinza. Ao final desse processo,uma imagem em escala cinza suavizada é gerada (ver Figura 3.26 ).

Figura 3.26: Imagem de entrada em escala de cinza e sua respectiva imagem borradacom filtro de mediana.

Como, ao transformar a imagem RGB em escala de cinza e suavizá-la, os caracterespodem ser mais claros ou mais escuros que o fundo, a imagem gradiente foi obtida, visandouniformizar o relacionamento de tons entre o foreground e o background. As Figura 3.27 eFigura 3.28 ilustram bem a normalização gerada pela extração da imagem gradiente.

Page 53: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.3. DETECÇÃO ATRAVÉS DE COMBINAÇÕES DE CLASSIFICADORES 52

Figura 3.27: Imagem com caractere mais claro do que o fundo e sua respectiva imagemgradiente.

Figura 3.28: Imagem com caractere mais escudo do que o fundo e sua respectivaimagem gradiente.

Para gerar a imagem de magnitude do gradiente, foi utilizado o operador horizontal [-1,0, 1], gerando a imagem Gx, e vertical [-1; 0 ; 1], gerando a Gy. Assim, tem-se duas imagensque compõem características verticais e horizontais da imagem em escala de cinza borrada. Paraencontrar a imagem de magnitude do gradiente, utilizou-se, na prática, a seguinte aproximação:

GMag = |Gx|+ |Gy|� �3.19

onde GMag é a imagem aproximada de magnitude do gradiente. Utilizando� �3.19 na imagem

em escala de cinza borrada da Figura 3.26, tem-se a imagem presente na Figura 3.29 rica emdetalhes verticais e horizontais.

Figura 3.29: Imagem de magnitude do gradiente com composição vertical e horizontal.

B. Detecção de Regiões Candidatas a Placas

Como o framework proposto por VIOLA e JONES (2004) para detecção de facesposicionadas frontalmente ao sensor de captura apresenta uma excelente acurácia e velocidade,próxima a um sistema de tempo real, esse método foi utilizado para detectar regiões candidatas àplaca.

Então, exemplos positivos (imagens de placas) e exemplos negativos (imagens de não-placas), ambos transformados em escala de cinza, suavizadas e, finalmente, com sua resultanteimagem gradiente obtida, terão características de Haar extraídas e irão alimentar um Gentle

Page 54: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.3. DETECÇÃO ATRAVÉS DE COMBINAÇÕES DE CLASSIFICADORES 53

Adaboost. Após o treinamento, off-line, do Adaboost, este é utilizado para varrer uma imagemem tons de cinza que foi suavizada e teve, em seguida, sua imagem gradiente obtida. Essavarredura pode ocorrer em várias dimensões. Após esse escaneamento em várias dimensões,pode-se ter um grupo de retângulos de regiões interesse detectadas como placa de licenciamento.Cada região detectada numa escala diferente da original tem seu tamanho e posicionamento,correspondente, calculada na imagem original. A Figura 3.30 exibe as detecções realizadaspelos classificadores Adaboost alimentados com características de Haar extraídas da imagemgradiente.

Figura 3.30: Objetos detectados com o Adaboost combinado com o Haar.

C. Verificação de Regiões Candidatas a Placas

Os objetos detectados como placas, pelo estágio anterior, serão, heuristicamente, analisa-dos. Essa análise permite ratificar a região com sendo uma placa, rejeitar o rótulo de placa daregião ou, ainda, enviar a região para uma análise mais criteriosa em outro estágio. Para isso,dois processos ocorrem em paralelo sobre a imagem em escala de cinza da região candidata:uma análise das bordas verticais e uma análise blobs resultantes de operações morfológicas.Para realizar a análise de bordas, a imagem da região candidata é convolvida com a máscarade Sobel Vertical para realce das bordas verticais e, então, as bordas verticais são obtidas. Emseguida, uma projeção vertical da imagem de bordas é realizada, acumulando os valores dospixels por linha. É calculado, então, o valor médio do vetor de projeção vertical. Se qualquervalor da projeção vertical for maior do que 60% da média, ele permanece na projeção, casocontrário será zerado da projeção. Então, se os valores remanescentes, diferentes de zero, naprojeção formarem um segmento contínuo de tamanho igual ou maior a 35% do tamanho daprojeção, que é igual a altura da região, essa região é uma potencial placa, caso contrário essaregião poderá sofrer uma avaliação mais robusta. Já para avaliar os blobs, a imagem candidatairá sofrer uma binarização local adaptativa, a qual não informada pelos autores, seguida de umaoperação morfológica de abertura, os autores não informaram qual foi o elemento estruturante,para remoção de pequenos ruídos. Em seguida, com uma análise de componentes conectados, os

Page 55: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.3. DETECÇÃO ATRAVÉS DE COMBINAÇÕES DE CLASSIFICADORES 54

blobs existentes nessas regiões são encontrados. Se a quantidade de blobs encontrados for menorque 4 ou maior que 10, a região não será rotulada como sendo uma placa, caso contrário seráuma potencial região de placa.

Finalmente, se a análise de bordas retornar que a região é uma potencial placa e omesmo acontecer da avaliação de blobs, a imagem é tida com sendo uma real região de placade licenciamento. Ou seja, se as duas análises confirmarem a potencialidade de placa da regiãoconcomitantemente, a região é considerada como uma placa. Já se a quantidade de objetos formaior ou igual 4 e menor do que 11, mas a etapa que analisa as bordas não considerar a regiãocomo placa, a região irá sofrer análise adicional.

A Figura 3.31 exibe a saída desse estágio para imagem da Figura 3.30. Perceba que aregião em vermelho foi dita por essa etapa com sendo uma região real de placa e não sofrerámais análise, enquanto que as regiões azuis passarão por outra avaliação mais criteriosa. Nota-seque, ainda, que algumas regiões foram rejeitadas como placa por não possuir a quantidade deobjetos numa faixa de valores.

Figura 3.31: Objetos detectados com placa(vermelho) e/ou encaminhados para umamelhor análise(azul).

D. Método de Baseado em Votação

As regiões que precisaram de uma análise mais criteriosa serão submetidas à avaliaçãonesse estágio. Então, a região candidata será submetida a um descritor HOG e as característicasresultantes serão analisadas por um SVM. Como o Cascade Adaboost, o SVM será treinadooff-line com exemplos positivos (imagens de placas) e exemplos negativos (não-placas) devetores característicos de HOG, ou seja, cada imagem de treinamento terá características deHOG extraídas antes de serem apresentadas ao SVM para o seu aprendizado. O processamentodo HOG combinado com o SVM com treinamento off-line, assim como ocorre no Cascade

Adaboost, será realizado em diferentes escalas, podendo resultar, para uma mesma área daimagem, várias detecções de placas. Então, é possível extrair uma placa de uma região candidatase ocorrerem 3 ou mais detecções de placa, sendo, então, a região da placa resultante a médiadas coordenadas dessas regiões, caso contrário, a região candidata não possui uma placa de

Page 56: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.3. DETECÇÃO ATRAVÉS DE COMBINAÇÕES DE CLASSIFICADORES 55

licenciamento. A Figura 3.32 exibe a saída final do framework proposto WANG et al. (2014).Percebe-se, pela região em destaque na Figura 3.32, que permaneceu, apenas, a região candidatadetectada como placa do estágio anterior.

Figura 3.32: Imagem de saída do método de WANG et al. (2014).

3.3.3 Experimentos

Os autores dessa abordagem utilizaram uma base de dados privada e não disponibilizaramo acesso. A quantidade de imagens utilizadas para validação do método foi 4087 imagens deresolução 1920x1088, onde 270 imagens não possuem placas de licenciamento, 2647 imagenspossuem, cada, apenas uma placa de licenciamento e 1170 imagens possuem, cada, mais de umaplaca de licenciamento. Essas imagens, como relatam os autores, possuem grande variação deluminosidade e, portanto, apresentam um grau de dificuldade elevado para a tarefa de localização.

A fim de realizar uma avaliação de performance mais objetiva entre as imagens detectadase as rotuladas, as métricas Recall, Precision e F-Score foram utilizadas por WANG et al. (2014).Abaixo, as fórmulas originais dessas métricas serão exibidas.

Recall =T P

T P+FN

� �3.20

Precision =T P

T P+FP

� �3.21

F =1

α

Precision +1−α

Recall

� �3.22

sendo T P o número de verdadeiros positivos, FP o número de falsos positivos, FN o número defalsos negativos e α uma constante de ponderação que terá valor 0,5.

Como o módulo de detecção de placas é, fundamentalmente, um problema de localizaçãoda placa numa imagem, é preciso, então, saber o quão "ideal"é o casamento entre a regiãoda placa detectada pelos métodos computacionais e a correta região da placa definida por umhumano e, ainda, o quão preciso é esse casamento. Por isso, essas métricas serão calculadas

Page 57: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.4. TESTES VALIDADORES 56

segundo WANG et al. (2014) e, principalmente, EPSHTEIN et al. (2010). Tal referência utiliza onível de sobreposição das bounding boxes de detecção, que é a saída da etapa de detecção numaimagem, e de ground-truth, que é a saída esperada do sistema para etapa de detecção para umaimagem analisada, para calcular o Recall, Precision e F-Score para um conjunto de imagens.As equações

� �3.24 e� �3.25 exibem como será o cálculo do Recall e Precision na avaliação da

performance dos métodos para cada imagem. O F-Score a ser utilizado é o mesmo da equação� �3.22 . O grau de casamento utilizado como referência para medir o desempenho para o Recall,Precision e F-Score será 0,5, como em WANG et al. (2014). Abaixo, as fórmulas que serãoutilizadas no cálculo do Recall e Precision serão exibidas.

m(r;R) = max{mp(r;r0)|r0 ∈ R}� �3.23

Recall =∑rt∈T m(rt ,E)

|T |� �3.24

Precision =∑re∈E m(re,R)

|E|� �3.25

onde m(r;R) é o melhor casamento entre uma região r com uma região do conjunto R; e é oconjunto de regiões detectadas e T é o conjunto de ground-truth.

A tabela a seguir evidencia os resultados alcançados pelo algoritmo proposto por WANGet al. (2014) para o grau de casamento de referência.

Grau de Casamento Recall Precision F

0.5 87.29% 62.31% 72.71%Tabela 3.4: Resultados alcançados na base privada mencionada pelos autores.

3.4 Testes Validadores

Com exceção de WANG et al. (2014), os demais autores consideraram ao menos uma basepública para teste dos modelos propostos. Por isso, foi possível tentar replicar os experimentosoriginalmente propostos. É importante frisar que todas as imagens que ilustram as saídas dasetapas das abordagens propostas são oriundos da implementação desses trabalhos, ou seja, essasimagens não constam nos artigos publicados. O artigo de ABO SAMRA e KHALEFAH (2014)citou duas bases uma pública e outra privada. Sendo assim, os testes dos modelos replicadosforam utilizados em todas as imagens citadas por esses autores na base Medialab LPR Database,a pública. A Tabela 3.5 evidencia os resultados alcançados pelos os autores e os alcançadospela replicação. O modelo implementado foi executado sobre as 335 imagens gregas citadas noartigo.

Page 58: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.4. TESTES VALIDADORES 57

Fonte Taxa de Acerto Falso Negativo Falso Positivo

ABO SAMRA e KHALEFAH (2014) 97.61% 1.79% 0.59%

Replicado 51.64% 30.36% 17%Tabela 3.5: Resultados alcançados para as 335 imagens da base Medialab LPR Database

pela versão original e pela versão replicada de ABO SAMRA e KHALEFAH (2014).

Como os métodos, apresentados por MENDES JÚNIOR et al. (2011) e WANG et al.(2014) apresentam métricas de avaliação parecidas, os resultados obtidos foram confrontadossegundo as mesmas métricas (

� �3.22 ,� �3.23 ,

� �3.24 e� �3.25 ). Para isso, fez-se necessário que os

dois métodos executassem sobre o mesmo conjunto de imagem. Então, como há uma necessidadede treinamento para um dos métodos, divide-se as imagens, dentro dos seus respectivos gruposde dados, em conjuntos de treinamento e teste. Sendo assim, como presente em PRATESet al. (2013), cerca de 20% das imagens compõem o treinamento e cerca de 80% compõemo conjunto teste. Um grupo de imagens foi coletadas, como dito anteriormente, da base dedados Medialab LPR Database e totalizam 345 imagens. Já a outra da base de dados utilizadasem MENDES JÚNIOR et al. (2011) possui imagens que foram capturadas de alguns portõesde acesso da Universidade Federal de Ouro Preto e totalizam 377 imagens. Como a técnicade MENDES JÚNIOR et al. (2011) não utiliza nenhum modelo que necessite, inicialmente,de uma aprendizagem computacional, como uma rede neural ou classificador, as imagens detreinamento serviram para encontrar os melhores parâmetros para os filtros utilizados na extraçãoda placa. Para a abordagem de WANG et al. (2014), que apresenta um classificador Adabooste um SVM, essas imagens foram preprocessadas, como citadas por eles e, em seguida, foramextraídas a região da placa e outras 20 regiões, que não são placas. Essas 20 regiões, que nãosão placas, de cada imagem foram escolhidas aleatoriamente compondo, assim, o grupo deimagens de exemplos negativos do conjunto de treinamento. Já as regiões que correspondem àsplacas formam o grupo de imagens de exemplos positivos do conjunto de treinamento. Nota-se,entretanto, que o número de imagens positivas é 20 vezes menor do que o número de imagens deexemplos negativos e isso, muitas vezes, gera um overfiting ou uma convergência prematura doAdaboost. Para evitar esse problema, cada imagem positiva originou mais 11 imagens, através daaplicação de 4 distintos ruídos gaussianos, 3 distintos ruídos multiplicativos, 1 ruído através dadistribuição de Possion, 2 distintos ruídos de sal e pimenta e, ainda, a imagem equalizada. Apóso ajuste paramétrico e/ou o treinamento das abordagens propostas pelos métodos implementados,é possível, então, gerar as métricas propostas para análises. Com essas métricas é possível gerargráficos que evidenciam o comportamento do sistema com o aumento do grau de casamento,aumentando o rigor para se aceitar o matching.

Através de testes preliminares, percebeu-se que a etapa avaliação heurística de WANGet al. (2014) excluía diversas regiões de placas reais e, também, que, ao suavizar a imagem, sea mesma já estiver um pouco escura, a informação de gradiente da placa fica muito degradada.Por isso, duas modificações foram realizadas no modelo original de WANG et al. (2014). A

Page 59: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.4. TESTES VALIDADORES 58

primeira, nomeada de WangII, foi retirar a etapa de análise heurística do modelo e a segundaque, além de retirar a etapa de análise heurística, realizar uma equalização da imagem em escalade cinza, quando nenhuma região é detectada ao final do método, e o framework é executadomais uma vez. A Figura 3.33 e a Figura 3.34 exibem gráficos que mostram o comportamentodas métricas com aumento do grau de casamento. Nesses gráficos, a cor vermelha representa ométodo de MENDES JÚNIOR et al. (2011), a cor verde representa o método original de WANGet al. (2014), a cor azul representa a abordagem de WANG et al. (2014) com uma modificação, oWangI, e a cor amarela representa a técnica de WANG et al. (2014) com duas modificação, oWangII.

Figura 3.33: Gráficos de Recall e Precision para diferentes graus de casamento,utilizando as imagens de testes da base da UFOP.

Figura 3.34: Gráfico do F-Score para diferentes graus de casamento, utilizando asimagens de testes da base da UFOP.

Os mesmos modelos implementados, MENDES JÚNIOR et al. (2011) e WANG et al.(2014), que foi nomeado nas próximas tabelas de Wang, o WangI e o WangII, foram, também,aplicados nas imagens de testes que fazem parte da base Medialab LPR Database. E os resultados,para diferentes graus de casamento, podem ser visualizados na Figura 3.35 e na Figura 3.36. Ascores desses gráficos simbolizam os mesmos métodos das cores dos gráficos das Figuras 3.33 e3.34.

Page 60: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.4. TESTES VALIDADORES 59

Figura 3.35: Gráficos de Recall e Precision para diferentes graus de casamento,utilizando as imagens de testes da Medialab LPR Database.

Figura 3.36: Valores do F-Score para diferentes graus de casamento para as técnicasimplementadas na base Medialab LPR Database.

Para facilitar a visualização do valor de referencia do grau de casamento, que é iguala 0.5, as Tabelas 3.6 e 3.7 foram geradas. Isso permitiu realizar uma análise mais pontual efacilitou a preferência de um método em detrimento de outros.

Métricas Mendes Júnior Wang Wang I WangII

Recall 0.9203 0.6910 0.8505 0.9269

Precision 0.3854 0.5581 0.6645 0.7309

F-Score 0.4053 0.6512 0.7741 0.8405Tabela 3.6: Valores das Métricas Recall, Precision e F-Score para o grau de casamento

0.5 para as imagens da UFOP de teste.

Métricas Mendes Júnior Wang Wang I WangII

Recall 0.9746 0.5435 0.9312 0.9493

Precision 0.8333 0.4746 0.7826 0.8007

F-Score 0.8913 0.5109 0.8406 0.8587

Page 61: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.5. DISCUSSÃO FINAL 60

Tabela 3.7: Valores das Métricas Recall, Precision e F-Score para o grau de casamento0.5 para as imagens Medialab LPR Database de teste.

3.5 Discussão Final

Com tudo que foi apresentado nesse capítulo, é possível, então, analisar o comporta-mento e precisão das técnicas profundamente estudas e implementadas. As escolhas dessastécnicas obedeceram algumas premissas, como disponibilidade dos dados, no caso do métodode MENDES JÚNIOR et al. (2011), fusão de estágios do sistema OCR, no caso do método deABO SAMRA e KHALEFAH (2014), múltiplas detecções, na mesma imagem, de placas, nocaso do método de ABO SAMRA e KHALEFAH (2014), entre outras.

A abordagem de ABO SAMRA e KHALEFAH (2014) apresenta um conjunto de técnicasde processamento de imagem, combinando-as, então, uma etapa de Algoritmo Genético paraencontrar a sequência de caracteres presentes na placa. Essa bordagem é bastante interessante,pois realiza num único estágio a abordagem de detecção e segmentação, evitando, assim, mais umbloco de processamento, o estágio de segmentação. Baseando-se, fundamentalmente, em simila-ridades de distâncias entre os caracteres existentes em placas gregas, o método de ABO SAMRAe KHALEFAH (2014) propõe-se a localizar as coordenadas dos 7 caracteres existentes emplacas da base Medialab LPR Database. E essa característica evidencia a primeira limitação dométodo, pois se a placa possuir mais ou menos do que 7 caracteres, a performance do mesmoserá degradada. Como pode ser visto na Tabela 3.5, o método apresenta desempenho bastantesatisfatório, principalmente, quando se leva em consideração o descarte da etapa de segmentaçãoproporcionado pelo método. Entretanto, a Tabela 3.5 é evidencia que a implementação dessaabordagem ficou longe do esperado, já que, para o mesmo conjunto de imagens, o desempenhocaiu bastante quando comparado ao método proposto pelos autores. Essa diferença se deu pordiversos fatores que serão enunciados a seguir. Primeiro, ausência de informações de alguns dosparâmetros do modelo, tais como tamanho da janela da etapa de binarização da imagem para asimagens de placas gregas, tamanho do raio do elemento estruturante da operação de fechamento,definição da taxa de mutação, definição da taxa de recombinação e, principalmente, um maioresclarecimento da etapa de minimização dos efeitos da análise de componentes conectados.Essa etapa é responsável por contornar problemas de boundig boxes de caracteres faltantes e/ouque se tocam. A ausência desses esclarecimentos ou parâmetros contribui muito para que osdesempenhos dos métodos implementados e pesquisados fossem muito discrepantes. Soma-sea isso, o grande número de parâmetros a serem ajustados, tornando muito difícil a replicaçãodos resultados sem todas as informações. Na etapa de AG, por exemplo, o algoritmo fica presoem mínimos locais e as bounding boxes de não-caracteres que estão próximas dos verdadeiroscaracteres acabam entrando na sequência final de caracteres, gerando, assim, um erro de detecção.Na etapa da operação de fechamento, os caracteres podem se tocar entre si e/ou com as bordas daplaca e terminam sendo suprimidos do universo de genes após a análise de componentes conecta-

Page 62: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

3.5. DISCUSSÃO FINAL 61

dos. Soma-se a isso, o fato de a etapa de minimização da análise de componentes conectados nãoestá descrita com clareza no artigo, não levando, então, o contorno desse obstáculo. O métodode ABO SAMRA e KHALEFAH (2014) parece ser bastante promissor, entretanto, precisa sermelhor esclarecido em alguns pontos. Barreiras como detectar placas cujos os caracteres sãomais claros do que o fundo e, ainda, realizar múltiplas detecções de diferentes placas que podemocorre numa mesma imagem precisam ser superadas.

Já os métodos de MENDES JÚNIOR et al. (2011) e de WANG et al. (2014) realizamdetecções de placas com diversas variações de tons de cinza entre os caracteres e fundo daplacas. O método de MENDES JÚNIOR et al. (2011) é todo executado, apenas, com técnicasde processamento de imagem. Existe um grande número de parâmetros para ser ajustado,porém, seus valores são citados no artigo, facilitando, também, um possível ajuste necessário. Asequência de filtros e, principalmente, de operações morfológicas produzem uma máscara comregiões bastante promissoras da imagem de entrada. Esse método, para as métricas analisadas,possuem o desempenho satisfatório (ver a linhas vermelhas das Figuras 3.33, 3.34, 3.35 e 3.36).A etapa de decisão, entretanto, possui, ainda, um bom potencial de crescimento. O métodoproposto por WANG et al. (2014) também apresentou uma performance bastante interessante,principalmente, com a retirada da etapa heurística e a equalização da imagem, se necessário.A Tabelas 3.6 e 3.7 evidenciam o excelente desempenho global do método de WANG et al.(2014) com duas modificações. Entretanto, ao analisar a saída do método para a base Medialab

LPR Database, percebe-se que, pela resolução escolhida para as imagens de treinamento, há,frequentemente, um detecção incompleta da placa. Esse problema ocorre nas imagens capturadasmais próximas ao veículos que resultam em placas maiores. Não foi possível escolher umaresolução maior para treinamento, pois não há imagens suficientes para treinamento do Cascade

Adaboost. O aumento da resolução gera um aumento de características de Haar e acarreta numoverfitting.

Page 63: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

626262

4Segmentação

Nesta etapa, como citado anteriormente, a individualização dos caracteres presentes naimagem da placa de licenciamento é realizada. Ao final dessa etapa, deve-se, então, ter imagensde caracteres isolados. Existem, na literatura, diversos processamentos que são realizados naimagem da placa extraída da etapa de detecção, como binarização local ou global, análise decomponentes conectados, projeção vertical e/ou horizontal dos pixels ou medida estatísticas,correções angulares, entre outros (ANAGNOSTOPOULOS et al., 2008; DU et al., 2013). Paraconseguir isolar os caracteres com precisão, é necessário realizar diversos pré-processamentosna imagem afim de atenuar problemas gerados por inclinações angulares e/ou não-uniformidadeluminosa existentes, principalmente, em imagens de placas em cenas capturadas em ambientesexternos. Por isso, a seguir, 3 abordagens promissoras propostas na literatura são pormenorizadase contribuíram muito para modelo de segmentação proposto.

4.1 Segmentação Através de Janelas Concêntricas Deslizan-tes

4.1.1 Objetivo

ANAGNOSTOPOULOS et al. (2006) propuseram um método de binarização de ima-gem através de medidas estatísticas computadas sobre duas janelas concêntricas deslizantes detamanho distintos. Nomeado pelos autores de SCWs (Sliding Concentric Windows), o métodorealiza uma binarização local da imagem de entrada em escala de cinza, utilizando duas janelasconcêntricas, A e B, que são deslizadas pela imagem pixel por pixel e obtendo medidas esta-tísticas, média ou desvio padrão dos tons de cinza, sobre as janelas sobrepostas à imagem. Arelação, entre as medidas estatísticas computadas sobre as duas janelas, possibilita inferir se opixel central, o pixel atual visitado na imagem de entrada, é do foreground ou do background. AFigura 4.1 ilustra o método SCWs.

Page 64: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.1. SEGMENTAÇÃO ATRAVÉS DE JANELAS CONCÊNTRICAS DESLIZANTES 63

Figura 4.1: Em (a) as janelas concêntricas e em (b) o escaneamento das janelas sobre aimagem (ANAGNOSTOPOULOS et al., 2008).

.

4.1.2 Metodologia

Com o método de SCWs ilustrado, apresenta-se a sequência de passos que compõeo algoritmo de segmentação de caracteres presentes em placas de licenciamento. O métodoproposto por esses autores emprega várias técnicas de processamento de imagem e de medidasestatísticas. Inicialmente, como pode ser visto na Figura 4.1, é necessário definir os valores deX1, Y1, que correspondem as dimensões da janela A, X2 e Y2, que correspondem as dimensões dajanela B. Em seguida, define-se o valor do limiar de binarização:

Ig(x,y)⇒ Ibw(x,y) =

0 Se MBMA

6 T

1 Se MBMA

> T

� �4.1

onde Ig é a imagem de entrada em escala de cinza, Ibw é a imagem binária a ser gerada, MB éa medida estatística de janela B, MA é a medida estatística da janela A, T é a um limiar a serdefinido e (x,y) é o corrente pixel analisado em Ig. A sequência de passos a seguir exibe ométodo de segmentação dos caracteres propostos por ANAGNOSTOPOULOS et al. (2006).

A. Binarização Com SCWs

Neste passo a imagem de entrada é transformado em escala de cinza segundo� �3.1 ,

redimensionada para a resolução 75x228 e, então, binarizada por SCWs, com os parâmetros X1,Y1, X2, Y2 e T inicializados, respectivamente, com os valores empíricos 2, 5, 4, 10 e 1.005. Amedida estatística adotada foi a média e não o desvio padrão, como foi sugerido no trabalhooriginal.

Page 65: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.1. SEGMENTAÇÃO ATRAVÉS DE JANELAS CONCÊNTRICAS DESLIZANTES 64

Figura 4.2: Imagens em RGB, em tons de cinza e binária, respectivamente, da placaanalisada.

.

B. Análise de Componentes Conectados

Um análise de componentes conectados é realizado neste estágio. Para cada objetodetectado, é calculado a sua altura e a sua orientação. Se o objeto não possuir orientação maiordo que 75 e altura maior do que 32 pixels, o mesmo será retirado da imagem da placa. AFigura 4.3 mostra a saída desta etapa para imagem binária da Figura 4.2.

Figura 4.3: Imagem binária presente na Figura 4.2 apenas com os objetos que satisfazemas condições de orientação e largura.

.

C. Individualização dos Caracteres

Este estágio é responsável pela individualização dos objetos remanescentes na imagembinária que são os caracteres. Para encontrar os limites de cada caractere, os desvios padrão decada linha e coluna são calculados e é possível, através de projeções verticais e horizontais dessesdesvios padrão, identificar esses limites. A Figura 4.4 contém essas projeções e a Figura 4.5exibe a saída, estando os caracteres individualizados.

Figura 4.4: Projeção vertical e horizontal dos desvios padrão para imagem em Figura 4.3.

.

Page 66: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.2. SEGMENTAÇÃO UTILIZANDO PROJEÇÕES VERTICAIS E HORIZONTAIS DEIMAGENS COM CORREÇÃO ANGULARES 65

Figura 4.5: Caracteres corretamente segmentados da imagem binária da Figura 4.3.

4.1.3 Experimentos

A abordagem proposta por ANAGNOSTOPOULOS et al. (2006) é um framework criadopara executar as três partes fundamentais de um sistema OCR. Sendo assim, para validar aproposta, os autores utilizaram 1334 imagens dividas em 5 diferentes grupos. Essa divisãoocorreu pois os autores definiram um conjunto paramétrico para cada grupo. A etapa dedetecção da placa obteve 96.5%, resultando em 1287 imagens que tiveram a placa detectadacorretamente, segundo os autores. Então, 1287 imagens de placa foram submetidas à etapa desegmentação propriamente dita. É importante frisar que, apesar de algumas imagens exibidasno artigo serem da base Medialab LPR Database, não há clareza quanto à disponibilidade dabase de dados. ANAGNOSTOPOULOS et al. (2006) exibiram, também, a taxa de acerto para oestágio de segmentação combinado com a etapa de reconhecimento, não sendo possível saberqual é a precisão isolada de ambos os estágios. A Tabela 4.1 traz o resultado alcançado porANAGNOSTOPOULOS et al. (2006) com a referida combinação.

Base de Dados Total de Imagens Taxa de Acerto

Medialab LPR Database 1287 89.1%Tabela 4.1: Resultados alcançados pelo SCWs nas imagens referencias em

(ANAGNOSTOPOULOS et al., 2006).

4.2 Segmentação Utilizando Projeções Verticais e Horizon-tais de Imagens com Correção Angulares

4.2.1 Objetivo

Problemas de inclinação vertical, horizontal ou ambas foram tratados por PAN et al.(2008). A inclinação angular dificulta muitas técnicas de individualização de caracteres propri-amente dita, como as projeções verticais e horizontais da imagem binária. Por isso, o métodoproposto por PAN et al. (2008) apresenta um pré-processamento para atenuar os efeitos causadospela angulação da placa através de correção horizontal e vertical. Após essa pré-processamentoda imagem binária, ela será segmentada.

Page 67: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.2. SEGMENTAÇÃO UTILIZANDO PROJEÇÕES VERTICAIS E HORIZONTAIS DEIMAGENS COM CORREÇÃO ANGULARES 66

4.2.2 Metodologia

Antes de realizar a individualização dos caracteres, é preciso, como dito anteriormente,realizar a retificação angular. Tais pesquisadores utilizaram o método dos mínimos quadradospara corrigir a inclinação horizontal e/ou vertical da placa. Primeiramente, é necessário quea imagem de entrada tenha passado por um método de binarização, sendo foreground o tombranco dos pixels dos caracteres e o background o tom preto. Essa massa de pixels brancosserá o conjunto de dados que será submetido ao LSM (Least Square Method) para encontraruma reta que melhor se aproxima para um determinado conjunto Nx2 de pontos. A presençade ruídos, pontos brancos que deveriam ser pretos degradam sensivelmente a performance dométodo. Por isso, as imagens que serão exibidas na Subseção 4.2.2 foram, forçosamente, muitobem limiarizadas. A seguir, as etapas fundamentais do método proposto por PAN et al. (2008)serão descritas.

A. Correção Horizontal da Imagem Binária da Placa

Nesta etapa, a imagem em formato RGB é transformada em escala de cinza através de� �3.1 , pois é necessário, apenas, uma imagem de um só canal para realizar o processamento dométodo proposto. A Figura 4.6 exibe a imagem de entrada desse estágio, que está em formatoRGB, e a sua respectiva imagem de saída, a qual está em tons de cinza.

Figura 4.6: Imagens em RGB e em tons de cinza.

Em seguida, a imagem é redimensionada para resolução 40x180 para ser limiarizadausando a binarização local de Niblack. Essa imagem binarizada é multiplicada, pixel a pixel, poruma máscara definida manualmente. A imagem de saída é a binarização excelente necessária aoprocesso. A Figura 4.7 a seguir ilustra essa sequência de operações.

Figura 4.7: Imagens de Niblack, máscara definida manualmente e binária final,respectivamente, da placa analisada.

Page 68: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.2. SEGMENTAÇÃO UTILIZANDO PROJEÇÕES VERTICAIS E HORIZONTAIS DEIMAGENS COM CORREÇÃO ANGULARES 67

.

O conjunto de coordenadas de todos pixels brancos presentes na excelente imagemda placa binarizada é processado pelo LSM para determinar a angulação da reta que melhoraproxima os pontos existentes no conjunto de pixels brancos. A angulação é encontrada por:

a0 =

nn∑

i=1yixi−

n∑

i=1yi

nn∑

i=1x2

i − (n∑

i=1x1)2

� �4.2

onde i é o i-ésimo elemento visitado, n é o número de elementos no conjunto de pixels brancos,x1 é a coordenada x do elemento i, yi é a coordenada y do elemento i e a0 é o valor do coeficienteangular da reta aproximada pelo LSM.

Com a0 calculado, determina-se o angulo α segundo a equação� �4.3 para realizar a

correção angular horizontal da placa ( Figura 4.8).

α = 90−a0×180PI

� �4.3

Figura 4.8: Imagem resultante da correção angular horizontal aplicada sobre a imagembinária ótima em Figura 4.7.

.

B. Correção Vertical da Imagem Binária da Placa

Após a correção horizontal, a imagem resultante pode ainda apresentar inclinação nosobjetos existentes. Portanto, PAN et al. (2008) propuseram uma correção angular vertical. Paraisso, inicialmente encontra-se o primeiro pixel branco mais acima possível, Top_Line, em seguida,o primeiro pixel branco mais a esquerda possível, Left_Line(ver

� �4.4 ).

(Top_Line,Le f t_Line) =

Top_Line = {x | P(x,y) = 1 e x é a mínima linha}

Le f t_Line = {y | P(x,y) = 1 e y é a mínima coluna}

� �4.4

Em seguida, pode-se encontrar os conjuntos Co_X e Co_Y que são as coordenadas dosprimeiros pixels brancos em cada linha relativizados pelo Top_Line e Left_line, respectivamente.A equação exibe como calcular esses conjuntos.

(Co_X,Co_Y) =

Co_X = {x - Top_Line | P(x,y) = 1 e y é a mínima coluna}

Co_Y = {y - Left_Line| P(x,y) = 1 e y é a mínima coluna}

� �4.5

Page 69: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.2. SEGMENTAÇÃO UTILIZANDO PROJEÇÕES VERTICAIS E HORIZONTAIS DEIMAGENS COM CORREÇÃO ANGULARES 68

Através de Co_Y é possível definir uma métrica de seleção. Primeiro, tira-se a médiae o desvio parão de Co_Y. Em seguida, seleciona-se de Co_Y e seu correspondente em Co_X,apenas, os elementos que satisfazem a seguinte regra:

|Co_Y (i)− y_Mean|< y_Std� �4.6

onde Co_Y (i) é o i-ésimo elemento de Co_Y, y_Mean é a média de Co_Y e y_Std é o desviopadrão do conjunto y_Std.

Após essa seleção, os conjuntos Co_Y e Co_X são concatenados horizontalmente eprocessados pelo LSM, encontrado o a0 (ver

� �4.2 ). Então, a tanθ é encontrada e possui valorigual −a0. O elemento tanθ é utilizado para realizar a correção vertical que é realizada atravésde

� �4.7 .

[X′1Y′11] = [X1Y11]

1 0 0tanθ 1 0

0 0 1

� �4.7

A Figura 4.9 ilustra a correção vertical realizada na imagem binária da placa presentena Figura 4.8. É importante frisar que mesmo com o mascaramento da imagem, essa correçãovertical não apresentou o desempenho esperado na maioria dos casos.

Figura 4.9: Imagem resultante da correção angular vertical da imagem binária emFigura 4.8.

.

C. Individualização dos Caracteres

Este estágio é responsável pela individualização dos objetos remanescentes na imagembinária, após a correção vertical, que são os caracteres. Para encontrar os limites de cadacaractere, são calculados as projeções verticais e horizontais dos pixels brancos. Após a definiçãode limites, o número de pixels brancos existentes num blob é computado e se esse valor forinferior a um limiar, o blob é descartado. A Figura 4.10 traz essas projeções e a Figura 4.11exibe a saída, sendo os caracteres individualizados.

Page 70: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.3. SEGMENTAÇÃO ATRAVÉS DE EXTRAÇÕES DE BLOBS 69

Figura 4.10: Projeção vertical e horizontal dos dos pixels brancos da Figura 4.9.

.

Figura 4.11: Caracteres corretamente segmentados da imagem binária da Figura 4.9.

4.2.3 Experimentos

PAN et al. (2008) utilizaram 200 imagens de placas chinesas para realizar a validação dométodo proposto. As imagens foram binarizadas sendo o caractere, o foreground em branco, eo fundo, o background em preto. É importante frisar que tal procedimento de binarização foitestado em imagens sem variação de luminosidade, pois apenas os caracteres presentes na placasão brancos não havendo presença de ruído. Do conjunto de 200 imagens, 160 são placas semqualquer inclinação, nomeadas de placas ordinárias, e 40 são com algum tipo de inclinação.

Base de Dados Acerto Ordinárias Acerto Inclinadas Acerto Total

Chinesa Privada 100% 100% 100%Tabela 4.2: Resultados alcançados pelo método de correções angulares para as imagens

referencias em PAN et al. (2008).

4.3 Segmentação Através de Extrações de Blobs

4.3.1 Objetivos

YOON et al. (2011) criaram um framework para realizar a tarefa de segmentação docaractere baseado em extração e análise de blobs existentes em uma imagem da placa de

Page 71: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.3. SEGMENTAÇÃO ATRAVÉS DE EXTRAÇÕES DE BLOBS 70

licenciamento. A Figura 4.12 apresenta o diagrama proposto pelos autores. Desses estágios,três não foram implementados: a estimativa de número de linhas de caracteres, verificação ecorreção angular da imagem, e o módulo de reconhecimento de caractere. A etapa de estimativade números de linhas não foi desenvolvida, pois almeja descobrir o número de linhas, uma ouduas linhas, de caracteres relevantes na placa e, como as imagens de validação só apresentamuma linha de caracteres relevantes, não foi necessária. Já o estágio de verificação e correçãoangular da placa não foi implementado, pois os autores não descrevem com clareza o métodoutilizado. E, por fim, o módulo de reconhecimento dos caracteres para decidir se um objeto éum caractere, não foi desenvolvido, porque tal tarefa pode ser realizada no terceiro estágio dosistema OCR empregado na identificação de veículos. Uma outra alteração, que, possivelmente,foi um erro no artigo, foi a troca de ordenamento entre os blocos que estimam o tipo da cor e oque realizam a binarização da imagem.

Figura 4.12: Diagrama de blocos do método proposto pelos autores (YOON et al., 2011).

4.3.2 Metodologia

Como foi dito anteriormente, a característica fundamental do método proposto proYOON et al. (2011) é realizar a extração e análise dos blobs detectados. Mas, para se extrair osblobs, é preciso realizar diversos processamentos da imagem e várias análises de componentesconectados através dos passos descritos a seguir.

A. Ajustamento da Imagem

A imagem da placa de licenciamento, em formato RGB, é transformada em escala decinza por

� �3.1 . Em seguida, a imagem em tons de cinza tem seus valores de pixels normalizadosentre 0 e 255. É feito, também, para o 1% de pixels mais claros, com valores próximos ou iguaisa 255, um ajuste de valor de cinza para 255. Com essas operações é esperado que o contraste naimagem em escala de cinza melhore significativamente.

Page 72: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.3. SEGMENTAÇÃO ATRAVÉS DE EXTRAÇÕES DE BLOBS 71

Figura 4.13: Imagens em escala cinza, à esquerda, e sua respectiva imagem, à direita,com o melhoramento de contraste citado.

B. Binarização da Imagem

Após o melhoramento de contraste a imagem está pronta para sofrer binarização localadaptativa, visando contornar os problemas de não uniformidade luminosa que seriam causadospela binarização global. O algoritmo de limiarização local de Niblack (NIBLACK, 1985) éempregado, demandando definição adequada do tamanho da janela localmente analisada. Emtestes preliminares, a configuração de tamanho da janela foi igual a 25 e redimensionamentoda imagem com melhoramento de contraste para 75x228 apresentou bons resultados visuais. AFigura 4.14 exibe a saída desse estágio para a imagem com contraste acentuado com respeito àFigura 4.13.

Figura 4.14: Imagem binarizada da placa com contraste melhorado na Figura 4.13.

C. Estimativa do Tipo de Cor

Neste estágio, é computado a quantidade de pixels brancos existentes na parte centralda imagem binarizada. Essa parte central de imagem binarizada é definida com sendo a regiãoem torno do pixel do meio da imagem. A largura dessa região é igual a cols

7×2 , onde cols é largurada imagem em número de colunas, e a altura é igual a rows× 0.8, onde rows é a altura daimagem em número de linhas. Essa computação de pixels brancos na região central é utilizadapara melhor analisar a imagem da placa, que pode ter trechos do veículo, como para-choque,produzindo informação errônea sobre a disposição dos pixels pretos e brancos na imagem. Então,se o número de pixels brancos for predominante na região central, ou seja, os caracteres são ospixels pretos, a imagem deve ser invertida. Caso contrário, não há inversão da imagem.

Figura 4.15: Imagem binarizada da placa que é a inversão da placa na Figura 4.14.

D. Descoberta dos Componentes Conectados

A imagem binária do estágio anterior é processada e todos os seus componentes conec-tados com vizinha igual a 8 serão encontrados. Na Figura 4.16, percebe-se que só os pixels

Page 73: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.3. SEGMENTAÇÃO ATRAVÉS DE EXTRAÇÕES DE BLOBS 72

brancos é que compõem os objetos conectados.

Figura 4.16: Os componentes conectados, em vermelho, são encontrado para imagem daplaca na Figura 4.15.

E. Primeira Exclusão de Objetos Ruidosos

Nesta etapa, os blobs encontrados na Figura 4.16 4.3.2 passam por análise com respeitoàs suas características e características da imagem da placa. Dado que W é a largura, H é a altura,A é a área, (X ,Y ) é o centro dabounding box e (Xm,Ym) é o centro de um objeto encontrado e,ainda, Iw e Ih serem, respectivamente, o largura e altura da binária da placa, é possível, então,elaborar um conjunto de restrições que esses blobs devem possuir. Através dessas restrições,é possível remover, se o objeto violar alguma condição, ou reter, se o blob respeitar todas ascondições. Essas condições são exibidas abaixo.

I⇒ (W < 0.0625× Iw)∨ (W > 0.3× Iw)∨ (H < 0.125× Ih)� �4.8

II⇒ (A < 0.15×W ×H)� �4.9

III⇒ (Y < 0.25× Iw)∨ (Y < 0.75× Iw)� �4.10

IV ⇒

(Xm < 0.015× Iw)∧ (Ym < 0.015× Ih)

(Xm < 0.015× Iw)∧ (Ym > 0.985× Ih)

(Xm > 0.985× Iw)∧ (Ym < 0.015× Ih)

(Xm > 0.985× Iw)∧ (Ym > 0.985× Ih)

� �4.11

O blob que atender a condição I, ou II ou III ou algumas das condições presentes emIV será removido do universo de blobs existentes na imagem binária da placa. A Figura 4.17apresenta a saída dessa etapa.

Figura 4.17: A imagem de saída dessa etapa para a placa da Figura 4.16.

Page 74: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.3. SEGMENTAÇÃO ATRAVÉS DE EXTRAÇÕES DE BLOBS 73

F. União de Objetos Particionados

Esta fase almeja realizar a junção de partes de um mesmo objeto que foi dividido indevi-damente após a binarização. Essa separação ocorre devido a fatores como forte embaçamento daimagem ou grande variação de luminosidade que incide num mesmo objeto, o caractere. Essajunção de partes só ocorre na vertical, pois os autores argumentam que a junção horizontal podeunir erroneamente caracteres vizinhos.

Para compor um objeto de partes verticalmente disjuntas, essas sub-regiões devematender a algumas restrições. A primeira restrição é que as partes devem possuir conjuntosde coordenadas x, que variam num intervalo de valores, e a interseção desses conjuntos deveapresentar um conjunto com cardinalidade muito próxima ao conjunto de coordenadas x doelemento de menor largura. Sendo a primeira condição satisfeita, uma segunda condição estipulaque a altura do objeto já com as partes fundidas deverá apresentar valor próximo a todos osoutros objetos existentes. Se altura for próxima, então a fusão é consumada, caso contrário,a fusão é desfeita. Perceba que, como não houve exemplo de sucesso da operação de merge

no conjunto de imagens utilizadas, a imagem da Figura 4.18, quando comparado a imagem daFigura 4.17, evidencia que não houve junção de blobs.

Figura 4.18: A imagem de saída dessa etapa para a placa da Figura 4.17.

G. Quebra de Objetos Conectados

Nesta fase, é realizado o particionamento de dois ou três objetos que deveriam serdisjuntos e foram conectados pelo método de binarização aplicado. As causas que geram essaconexão de objetos disjuntos são as mesma que particionam um objeto.

A quebra é realizada quando um determinado blob possui uma largura discrepante quandocomparado à mediana das larguras do universo dos blobs existentes. Quando essa comparaçãomostra que blob é cerca de duas vezes maior do que a mediana, esse objeto é particionado emduas partes. Já quando essa comparação mostra que o objeto é cerca de três vezes maior do quea mediana, esse objeto é particionado em três partes. Para saber o ponto de segregação, paraum objeto que é aproximadamente duas vezes maior, utiliza-se a projeção vertical dos pixelsbrancos e encontra-se o menor ponto de mínimo e sua respectiva posição, desprezando, paraencontrar esse valor mínimo, os valores dos extremos da projeção. A posição encontrada é oponto de separação de um blob. Para segregá-lo em três partes aplica-se raciocínio semelhante,encontrando-se dois pontos para segregação. A Figura 4.19 ilustra a saída dessa método.

Page 75: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.3. SEGMENTAÇÃO ATRAVÉS DE EXTRAÇÕES DE BLOBS 74

Figura 4.19: Exemplo do sucesso doestágio de split de caracteres.

H. Segunda Exclusão de Objetos Ruidosos

Os blobs remanescentes passam por processo de remoção de blos não-caracteres. OAlgoritmo 1 mostra a sequência de passos que compõem essa etapa.

Algoritmo 1: Seleção dos Objetos FinaisEntrada: XSaída: Yinício

Y = X;VarRef = 4;repita

VarTmp = variância(alturas(Y));if (VarTmp < VarRef) || (Tamanho(Y) ≤ 7) then

Ir verificar a condição do laço;else

HRef = mediana(alturas(Y));HTmp = | alturas(Y)- HRef |;[ValorMax, Posição] = Máximo(HTmp);HTmp(Posição) = Ø;

endaté (VarTmp > VarRef) && (Tamanho(Y) > 7);

fim

Inicialmente, define-se um valor de variância limite, VarRe f , das alturas para o conjuntode objetos analisados. Tal valor é encontrada empiricamente e será uma das condições de paradado processo. Em seguida, é inciado o processo de análise e seleção dessa etapa. Primeiro,calcula-se a variância das alturas do conjunto de objetos e, em seguida, verifica-se se esse valorde variância das alturas é menor do que VarRe f . Se tal valor for menor que VarRe f , significaque o conjunto de blobs possui elementos com alturas bastante similares e a tarefa dessa etapaé finalizada. O processo realizado nesse estágio se encerrada também caso o número de blobs

existentes atingir um valor menor ou igual a 7, que é o número de caracteres esperados por placade licenciamento. Caso o valor da variância seja maior do que o valor esperado de variância,VarRe f , e o número de objetos seja maior do que 7, calcula-se a mediana das alturas, HRe f ,e retira-se do conjunto de blobs o objeto que apresentar a altura mais distante de HRe f . Esseprocesso é repetido até que a condição de número de caracteres e de variância das alturas não

Page 76: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.4. TESTES VALIDADORES 75

seja mais satisfeita. A Figura 4.20 mostra os blobs selecionado pelo Algoritmo 1.

Figura 4.20: Objetos finais definidos a partir dos objetos existentes na Figura 4.19.

I. Individualização dos Caracteres

Nessa etapa, cada blob oriundo da saída da etapa anterior gera uma imagem que devepreferencialmente conter um caractere binário. A Figura 4.21 exibe os caracteres segmentadosao final do processamento da abordagem de YOON et al. (2011).

Figura 4.21: Caracteres corretamente segmentados através do blobs de Figura 4.20.

4.3.3 Experimentos

YOON et al. (2011) utilizaram 1944 imagens que foram preparadas, segundo os autores,para validar o framework proposto. As placas, segundo os autores, seguem o formato europeu deplacas, mas não foram disponibilizadas. A Tabela 4.3 a seguir mostra a performance, de modogeral, do método proposto.

Base de Dados Número de Imagens Acerto Total

Base Privada 1944 97,2%Tabela 4.3: Resultados alcançados pelo sistema proposto por YOON et al. (2011).

4.4 Testes Validadores

Os autores dos algoritmos de segmentação estudadas e implementadas não disponibi-lizaram as bases de dados utilizadas para validação dos métodos propostos. Por isso, fez-senecessário encontrar um conjunto de imagens para realizar os testes de performance e verificar aeficácia dos métodos. Esse conjunto de imagens foi extraído da base de dados, originalmente,Medialab LPR database, que foi muito utilizada na etapa de detecção. Como visto anteriormente,MENDES JÚNIOR et al. (2011) utilizaram um subconjunto dessas imagens e as placas presentesnesse conjunto foram rotuladas. Assim, tornou-se possível extrair automaticamente, atravésde um rotina de computador, todas as placas existentes nas 345 imagens da Medialab LPR

database utilizadas por MENDES JÚNIOR et al. (2011). Assim, após execução dessa rotina,foram geradas 345 imagens de placas. Afim de realizar uma análise mais cuidadosa, foram

Page 77: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.5. DISCUSSÃO FINAL 76

utilizadas para validação e comparação dos métodos cerca de 20%, escolhidos aleatoriamente,dessas imagens de placas, totalizando 69 imagens de placas no conjunto de validação. Os trêsmétodos foram aplicados a esse conjunto e os resultados da segmentação foram obtidos. Oresultado para o método de PAN et al. (2008) foi gerado para a binarização não ótima, sendoatingido, portanto, sem a utilização da máscara definida manualmente. Acertar a segmentação daplaca significa individualizar todos os caracteres presentes na mesma, não importando quantasregiões de "caracteres"foram geradas. As siglas CP, CG e CSC, na Tabela 4.4, correspondem,respectivamente, ao número médio de Caracteres na Placa, ao número médio de CaracteresGerados e ao número médio de Caracteres Segmentados Corretamente. O CP evidência o valormédio de caracteres encontrados nas 69 imagens de placas analisadas. Já o CG correspondeao número médio de "caracteres"gerados por uma determinada técnica, podendo, inclusive,ser maior do que o número de caracteres existentes na placa em análise. O CSC representa ovalor médio dos caracteres que foram segmentados corretamente por placa, sendo, portanto, nomáximo igual ao CG. Essas três métricas ajudam a evidenciar o quão efetivos são os modelosimplementados e o quanto de complexidade é transferida para etapa de reconhecimento casoo número de objetos gerados seja maior do que o número de caracteres esperados, levando auma análise de confirmação ou de rejeição do objeto como caractere. Já os termos Anag2006,Pan2008 e Yoon2011 se referem, respectivamente, a ANAGNOSTOPOULOS et al. (2006), PANet al. (2008) e YOON et al. (2011).

Método CP CG CSC Taxa de Acerto

Anag2006 6,97±0,16 7,43±2,12 5,81±1,73 52,17%

Pan2008 6,97±0,16 7,55±3,31 4,14±2,71 37,68%

Yoon2011 6,97±0,16 6,23±1,97 5,68±2,02 47,82%Tabela 4.4: Resultados alcançados pelos 3 métodos estudados e implementados nesse

capítulo.

4.5 Discussão Final

Como pode ser visto na Tabela 4.4 a taxa de acerto de todos os métodos implementadosestá muito aquém dos referenciados nos respectivos trabalhos. Tal fato deve-se principalmente àausência da base de validação original de cada método e, ainda, da definição precisa de váriosparâmetros utilizados nos frameworks propostos. A performance pobre do método PAN et al.(2008) deve-se a enorme dependência da performance da técnica de binarização utilizada. Taisautores não citam que método de limiarização utilizaram e exibem placas com "excelentesbinarizações". Essas "binarizações excelentes"tornam as tarefas de correção angular horizontale vertical e de projeção vertical e horizontal muito facilitadas, possibilitando alta precisão dasegmentação da placa. Na ausência de uma binarização excelente, que normalmente ocorre, essemétodo não terá uma performance aceitável. Esse método, entretanto, apresenta uma correção

Page 78: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.5. DISCUSSÃO FINAL 77

horizontal bastante eficiente mesmo quando a limiarização não é ótima. Essa característica dométodo de PAN et al. (2008) é bastante interessante para compor uma etapa de preprocessamentoda imagem contendo uma placa de licenciamento.

Já o método desenvolvido por ANAGNOSTOPOULOS et al. (2006) apresentou o melhorresultado. Apesar de não citar quais foram as imagens utilizadas, foi possível realizar um melhorajustar dos parâmetros desse método quando comparado aos os outros, pois as imagens deutilizadas nesse trabalho para validação dos métodos de segmentação apresentam a mesmanacionalidade e essa característica explica a melhor performance desse método. Mas, mesmosendo testado em imagens da Medialab LPR Database, o SCWs, como citado anteriormente,utilizou nesses testes a média como medida estatística para se tomar uma decisão sobre o pixelcentral das janelas concêntricas e não o desvio padrão, como citado no artigo. O método deANAGNOSTOPOULOS et al. (2006) não apresentou uma regularidade nos casos de insucessosna segmentação de todos os caracteres presentes nas placas. Esses insucessos são em parte pelafalha na binarização, conectando bounding boxes de caracteres às bordas das placas e/ou entresi ou segregando, em várias partes, o mesmo caractere. Os erros são fruto, ainda, da restriçãoangular imposta aos caracteres e da falha dos métodos de projeções vertical e horizontal baseadosnos desvios padrão das colunas e linhas, respectivamente. Essa diversidade de falhas torna muitocomplicada a tarefa de sintonia paramétrica para atenuar ocorrência desses erros. Um pontointeressante do método propostos pelos gregos é que há um redimensionamento da imagem daplaca para uma escala conhecida e facilita o ajuste de, por exemplo, tamanho da janela de ummétodo de binarização local.

Já o algoritmo proposto por YOON et al. (2011) apresentou um desempenho inferiorao método de ANAGNOSTOPOULOS et al. (2006). Apesar de o seu desempenho ficar longedo esperado, algoritmo possui um potencial alto para aumento de performance após o ajusteparamétrico. As etapas propostas no método de YOON et al. (2011) visam segmentar a placadiante de vários problemas que podem existir, como caracteres conectados e caractere particio-nado. Ao analisar mais de cuidadosamente a saída desse método, percebe-se, como pode servisto no campo CG da Tabela 4.4, que o número de caracteres gerados no final do processoé sempre próximo do esperado, 7 símbolos. Isso é uma característica bastante interessante,pois a etapa de reconhecimento terá uma quantidade menor de símbolos para verificar se sãoou não caracteres. Outra característica interessante é que, ao se analisar as causas dos errosna segmentação de todos os caracteres corretamente, nota-se que cerca de 17,39% dos errosocorrem pela restrições de largura da bounding box imposta pela etapa 4.3.2, sendo os caracteres’I’ e ’1’ os afetados. Uma outra característica encontrada na análise dos erros é que cerca de28,90% dos erros na segmentação de todos os caracteres corretamente ocorrem pelo fato doscaracteres, após a binarização, ficarem conectados as bordas, principalmente, as bordas superiore inferior. Somando esses erros detectados e que foram disjuntos tem-se um potencial de melhorado método de cerca de 46,29%, possibilitando o método alcançar mais de 90% de acerto datarefa de segmentação dos caracteres.

Page 79: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

4.5. DISCUSSÃO FINAL 78

Por tudo que foi enunciado anteriormente, percebeu-se que, o mais interessante para etapade segmentação dos caracteres, seria um concatenação de características relevantes de diferentesmétodos presentes na literatura. Por isso, o capítulo do método proposto será apresentado ogrupo de algoritmos que combinados possibilitam uma performance mais aceitável da etapa desegmentação.

Page 80: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

797979

5Sistema OCR Para Identificação de Placasde Veículos Automotivos

Neste capítulo serão apresentados os métodos utilizados, em cada etapa, para compor osistema OCR proposto para identificação de veículos. O sistema OCR proposto é baseado nomaterial apresentado nos Capítulos 3 e 4 e parte do reconhecimento será baseada no modelo deMapa Auto-organizável (SOM). A Figura 5.1 ilustra o sistema OCR proposto, evidenciando asaída de cada etapa e a origem dos algoritmos utilizados em cada estágio.

Método de Operações

Morfológicas

Método de Segmentação

Proposto

Método de Reconhecimento

Proposto

Caracteres em ASCII

Imagem RGB

Região da Placa

Imagens de Caracteres

Sistema OCR Proposto

Figura 5.1: Diagrama de blocos do OCR proposto com ênfase no algoritmos utilizadospor nas etapas.

Page 81: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.1. DETECÇÃO 80

Como pode ser visto em Figura 5.1, o sistema OCR proposto utiliza o método descritona Seção 3.2 para realizar a extração da região da placa da imagem de entrada. Em seguida,a imagem da placa é submetida ao processamento do estágio de segmentação que utilizou umalgoritmo proposto para realizar a tarefa de individualização dos caracteres. Por fim, o algoritmoproposto para realizar o reconhecimento das imagens dos caracteres é aplicado para produzira sequência de caracteres existente na placa de licenciamento em formato eletrônico. Com odiagrama de bloco do OCR proposto, percebe-se que esse trabalho apresenta contribuições nosestágios de segmentação e de reconhecimento para um sistema OCR aplicado na área de ITS.

5.1 Detecção

Como será explicado no Capítulo 6, a base de dados escolhida para realizar a análisedo sistema OCR proposto será o subconjunto da MediaLab LPR Database utilizado por MEN-DES JÚNIOR et al. (2011). Por isso, diante das análises realizadas no Capítulo 3, a abordagemproposta por MENDES JÚNIOR et al. (2011) será utilizada para extrair a placa de licenciamentodo veículo, para realizar a detecção.

Como exposto no Capítulo 3, a abordagem proposta por MENDES JÚNIOR et al. (2011)utiliza-se, fundamentalmente, de um grande número de operações morfológicas para extrair aplaca do automóvel presente na imagem. Em alguns casos, o algoritmo de MENDES JÚNIORet al. (2011) recorta a região da placa muito rente aos caracteres e, por isso, após a definição damáscara da placa, foi introduzido um processo de expansão dessa região. Tal expansão é umaoperação de dilatação com elemento estruturante 4x4.

5.2 Segmentação

Muitos trabalhos foram considerados para etapa de segmentação, entretanto nenhum delesconseguiu realizar a segunda etapa do sistema OCR com performance satisfatória (ver Capítulo4). Por isso, fez-se necessário propor um algoritmo que realizasse a etapa de segmentação comperformance aceitável para a base de dados utilizada. Assim, um conjunto de técnicas existentesna literatura foram utilizadas em cascata juntamente com algumas outras proposições empíricas,que foram concebidas a partir dos experimentos. As etapas de Supressão de Regiões Coloridas,Remoção de Elementos de Bordas e Junção Horizontal de Caracteres são exemplos de técnicaspropostas para corrigir falhas de processamentos clássicos, como a binarização, e que levaram aum ganho de performance do estágio de segmentação. O diagrama de bloco na Figura 5.2 exibeas etapas que compõem o estágio de segmentação proposto.

Page 82: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 81

Imagem da Placa em RGB

Redimensionamento da Imagem

Binarização Local Adaptativa

Correção Horizontal

Primeira Seleção de Objetos

Verificação de Objetos Reais

Recorte da Região Horizontal de Interesse

Supressão de Regiões Coloridas

Remoção de Elementos de Bordas

Segunda Selecção de Objetos

Junção Horizontal de Caracteres

Terceira Selecção de Objetos

Filtragem de Elementos Particionados

Extração dos Caracteres

Imagens dos Caracteres

Não

Sim

Figura 5.2: Diagrama de blocos do algoritmo de segmentação proposto.

Inicialmente, após redimensionamento para uma resolução de operação, a imagem emRGB é limiarizada através de um processo de binarização local adaptativa para atenuar problemasdecorrentes da variação de luminosidade. Em seguida, é realizada sobre a imagem binária umacorreção horizontal, visando facilitar a definição da região de interesse (ROI) dos caracteres.Posteriormente, uma análise de componentes é realizada para localizar corretamente, no mínimo,dois caracteres. Se essa análise de componentes conectados encontrar apenas 7 objetos com

Page 83: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 82

características geométricas semelhantes, o estágio de segmentação concluiu a sua tarefa. Caso onúmero de objetos seja diferente de 7, o conjunto de blobs possibilita a definição da região deinteresse dos caracteres.

Após a definição da região de interesse, é possível realizar o recorte tanto na imagembinária e na imagem RGB com correções angulares horizontais da região dos caracteres. Comisso, é possível aplicar uma segmentação por cor e uma remoção de elementos de borda da placa,visando excluir regiões que não são caracteres. Em seguida, é realizada mais uma análise decomponentes conectados para excluir elementos que não são caracteres e realizar a operação desplit entre caracteres que se tocam.

O método de binarização empregado algumas vezes divide caracteres como ’H’, ’M’e ’N’. Por isso, após a segunda análise de componentes conectados, uma operação de junçãohorizontal de caracteres é realizada. Após essa operação de junção, é realizada uma seleção,apenas, dos objetos que possuem alturas semelhantes na imagem de corte. Em seguida, os blobs

resultantes passam por uma análise para saber quantas quebras horizontais ele possui e qualsua área em pixels, pois, caso algum blob viole a condição aceitável de número de quebras eárea efetiva, ele será removido do conjunto de blobs. Por fim, escolhe-se, dentre os objetosresultantes, os 7 blobs que representam os caracteres existentes na placa.

A. Redimensionamento da Imagem

Como proposto em ANAGNOSTOPOULOS et al. (2006), um redimensionamento daimagem é realizado, visando facilitar o ajuste paramétrico dos processos de filtragem e binariza-ção utilizados. A nova imagem terá, como em ANAGNOSTOPOULOS et al. (2006), a resoluçãode 75× 228 e método de interpolação utilizado foi a interpolação bicúbica (GONZALEZ eWOODS, 2006).

B. Binarização Local Adaptativa

SEDIGH e VAFADUST (2011) propuseram um tipo de binarização baseado em filtrosde suavização, filtro gaussiano e filtro de mediana, filtro similar ao laplaciano (ver Tabela 5.1)e binarização utilizando o limiar de Otsu. Neste trabalho, a limiarização local adaptativa deSauvola (SAUVOLA e PIETIKäINEN, 2000) foi empregada , pois apresentou desempenhosuperior ao método baseado em Otsu.

Page 84: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 83

0 0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0 0

1 1 1 1 -16 1 1 1 1

0 0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0 0Tabela 5.1: Máscara do filtro similar ao laplaciano proposto em SEDIGH e VAFADUST

(2011).

Inicialmente, a imagem de entrada, no formato RGB, é suavizada utilizando um filtrogaussiano de janela 16×16 e desvio padrão 1.5. Em seguida, a imagem suavizada no formatoRGB é convolvida com um filtro de máscara conforme Tabela 5.2. Percebe-se que a máscara daTabela 5.2 é diferente da máscara da Tabela 5.1. Essa modificação visa levar em consideração oselementos diagonais da região em convolução na imagem, atenuando problemas com os símbolos’M’ e ’N’.

1 0 0 0 1 0 0 0 1

0 1 0 0 1 0 0 1 0

0 0 1 0 1 0 1 0 0

0 0 0 1 1 1 0 0 0

1 1 1 1 -32 1 1 1 1

0 0 0 1 1 1 0 0 0

0 0 1 0 1 0 1 0 0

0 1 0 0 1 0 0 1 0

1 0 0 0 1 0 0 0 1Tabela 5.2: Máscara do filtro proposto em SEDIGH e VAFADUST (2011) modificado.

A imagem gerada após a aplicação do filtro na Tabela 5.2 possui formato RGB e ésuavizada com o filtro de mediana de máscara 3×3. Antes da aplicação desse filtro, é necessáriotransformar a imagem para escala de cinza segundo

� �3.1 . Por fim, a imagem possuindo um canalque foi suavizada com o filtro de mediana é limiarizada utilizando o método de Sauvola comjanela 32×32 e k igual a 0.4. As Figura 5.3, Figura 5.4 e Figura 5.5 ilustram os resultados dosprocessamentos fundamentais desse estágio.

Figura 5.3: Imagem de entrada em RGB.

Page 85: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 84

Figura 5.4: Imagem em Figura 5.3 após o operador da Tabela 5.2.

Figura 5.5: Imagem em Figura 5.4 limiarizada segundo o método explicado acima.

C. Correção Horizontal

A imagem da placa pode ter angulação com respeito aos eixos vertical e horizontal quepassam pelo ponto central da imagem. Essa inclinação atrapalha métodos baseados em projeçõeshorizontal e vertical, métricas de decisão baseadas na posição y dos blobs, ou ainda, na corretadefinição da região da placa que contém os caracteres. Por isso, o algoritmo proposto em PANet al. (2009), que faz uso da Transformada de Karhunen–Loève (KLT) sobre as coordenadas deum conjunto de pixels brancos da imagem binarizada, foi utilizado. Entretanto, diferentementedo que ocorre em PAN et al. (2009), onde todos os pixels brancos formam o conjunto submetidoa KLT, só os pixels centrais dos objetos de interesse, que são possíveis caracteres, formam oconjunto onde a KLT será utilizada. Essa modificação do conjunto submetido à KLT proporcionaatenuação da ocorrência de pixels de elementos que não são caracteres, diminuindo o ruído noconjunto (WEN et al., 2011). Esses objetos de interesse são escolhidos segundo a seguinterestrição:

(W ×H < 0.2× (Ih× Iw))∨W > 8∨ (H/W 6 4)∨ (H/W > 1)∨ (H > 0.4Ih)� �5.1

onde H é a altura do blob, W é a largura do blob, Ih é a altura da imagem da placa e Iw é a largurada placa.

O conjunto dos blobs que respeitam a restrição em� �5.1 é então filtrado uma vez mais. A

filtragem é feita pela condição:

((M−1.5×S)6 H 6 (M+1.5×S))� �5.2

onde M e S são a média e o desvio padrão das alturas Hs dos blobs filtrados por� �5.1 .

Se o conjunto de blobs estiver vazio, a imagem não sofrerá nenhuma correção. Casocontrário, os pixels centrais dos blobs formam o grupo de dados submetido a KLT e o maiorauto-valor encontrado será utilizado para calcular o ângulo de rotação existente na placa atravésde:

Page 86: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 85

θ = arccos(e11× (180/Π))� �5.3

onde θ é o angulo de rotação da placa e e11 é o maior autovalor da matriz de transformaçãoda KLT. Assim, é possível rotacionar a imagem em −θ graus. As Figura 5.6 e Figura 5.7exibem as imagens binária e em formato RGB da placa. É importante frisar que a imagem RGBsofre correção angular horizontal e recorte da região de interesse para propiciar uma corretasegmentação por cor que será realizada no passo G.

Figura 5.6: Imagem em Figura 5.5 após a correção horizontal.

Figura 5.7: Imagem em Figura 5.3 após a correção horizontal.

D. Primeira Seleção de Objetos

Neste estágio, a imagem binária da placa após a correção horizontal realizada é submetidaa primeira seleção de objetos do processo de segmentação. A escolha dos blobs é muitosemelhante àquela realizada na etapa de correção horizontal, mas diferencia-se fundamentalmentena altura de referência. Então, inicialmente escolhe-se os blobs que respeitam a restrição de áreada bounding box ser menor ou igual a 20% da quantidade de pixels existentes na imagem emprocessamento. Em seguida, a condição

� �5.4 é verificada. Se for satisfeita, o objeto permanecena placa, caso contrário ele será apagado.

((H >W )∨ (H > 0.4×Hmax))� �5.4

onde H e W são, respectivamente, a altura e largura do objeto analisado e Hmax é a alturamáxima do conjunto dos blobs. Escolheu-se a altura máxima com o parâmetro de referência,pois deseja-se encontrar os blobs mais semelhantes com respeito a altura. A Figura 5.8 ilustra asaída desta etapa com a exclusão dos blobs que não satisfazem a condição em

� �5.4 da imagemna Figura 5.6.

Page 87: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 86

Figura 5.8: Imagem com os blobs resultantes da primeira seleção de objetos paraimagem em Figura 5.6

E. Verificação de Objetos Reais

Neste estágio, a imagem vinda do estágio anterior é submetida a mais uma análisecom respeito a altura. Verifica-se se a imagem em processamento possui exatamente 7 objetos,quantidade padrão de caracteres existentes nas placas testadas, e se a variância das alturas desses7 objetos é menor do que 2 pixels, significando uma uniformidade de altura nesse conjuntode objetos. Se essas duas restrições são atendidas, os objetos são assumidos como sendo oscaracteres reais da placa e mais nenhum processamento será realizado na etapa de segmentação.Se ao menos uma dessas restrições for violada, a imagem será ainda processada para localizaçãode objetos. Nota-se que a imagem na Figura 5.8 viola a condição do número de objetos. Porisso, para ilustrar, a Figura 5.9 exibe um caso de sucesso da verificação. O objetivo dessa etapa éevitar processamentos desnecessário sobre a imagem binária.

Figura 5.9: Exemplo de sucesso da primeira seleção de 7 objetos na imagem emprocessamento.

F. Recorte da Região Horizontal de Interesse

Após rejeição do estágio anterior, a imagem contendo os objetos restantes será utilizadapara definir uma região de interesse da imagem binária da placa, como na Figura 5.6. Apósanálise, percebeu-se que alguns caracteres são apagados da imagem por se tocarem com asbordas das placas e/ou entre si. Por isso, visando recuperar os caracteres suprimidos, uma ROI(Region of Interest) é definida utilizando os objetos presentes na imagem em Figura 5.8. Comosão necessários apenas dois blobs para definir a região de interesse, é possível aumentar o rigordo critério para a seleção dos blobs de referência da ROI. Para isso, escolhe-se os objetos quesão maiores do que a média das alturas subtraída do desvio padrão das alturas dos blobs e menordo que a média somada ao desvio padrão das alturas. Então, a ROI é definida como sendo amenor região horizontal que contém todos os objetos selecionados por esse critério de variaçãode alturas. A Figura 5.10 exibe a ROI encontrada para imagem em Figura 5.8.

Page 88: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 87

Figura 5.10: ROI para a imagem em Figura 5.8

A imagem de ROI é utilizada para recortar tanto a imagem no formato RGB com correçãoangular como a imagem binária com correção angular que estão presentes na Figura 5.6. AFigura 5.11 ilustra a aplicação da máscara sobre essas imagens com correção angular pararealizar o recorte.

Figura 5.11: Imagens binária e em formato RGB com correção angular recortadas comauxílio da imagem em Figura 5.10.

G. Supressão de Regiões Coloridas

Algumas placas utilizadas para teste do algoritmo proposto para o estágio de segmentaçãoapresentam regiões coloridas que dificultam a individualização do caractere e/ou a sua corretaidentificação. Por isso, uma segmentação por cor foi realizada. Inicialmente, a imagem RGBrecortada é transformada para o modelo de cor L∗a∗b onde as coordenadas a e b são utilizadaspara se aplicar um algoritmo de agrupamento, o k-means. Empiricamente, percebeu-se quefazendo k igual a 2, o k-means conseguia separar corretamente pixels com cor destoante dosdemais pixels presentes na imagem em RGB recortada e, com isso, foi possível criar uma máscaracom os dois grupos, sendo o grupo com menor número de pixels constituído de elementos pretose o grupo com maior número de pixels constituído de elementos brancos. Entretanto, afim defiltrar possíveis erros de agrupamento, a máscara só será aplicada à imagem binária recortada seo número de elementos no menor grupo for inferior ou igual a 10% do total de pixels existentesna placa. A Figura 5.12 exibe a máscara criada através do k-means e a sua aplicação na imagembinária recortada. Percebe-se, contudo, que o contorno na cor preta presente na máscara de cornão existe, entretanto, é necessário para visualização da máscara.

Figura 5.12: Máscara de cor e sua aplicação na imagem binária presente em Figura 5.11.

H. Remoção de Elementos de Bordas

Para atenuar os problemas ocasionados pelas bordas das placas que, após o recorte daimagem, apresentam objetos similares aos caracteres ’I’ e ’1’, um estágio de remoção desseselementos foi criado. Então, para se efetuar essa remoção é preciso duas imagens: a imagembinária com correção horizontal (ver Figura 5.6) e a imagem binária do estágio anterior (verFigura 5.12). Só os objetos que possuem a altura 3 ou mais vezes maior do que a largura eestão posicionados nos 20% primeiras colunas ou nos 20% últimas colunas da imagem serãoanalisados, pois possuem tanto características geométricas dos caracteres ’I’ e ’1’ como tambémposicionamento de bordas verticais laterais das placas. Então, os blobs que satisfazem essas

Page 89: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 88

restrições têm suas posições extraídas na imagem binária após a aplicação da máscara de cor.Em seguida, essas posições são mapeadas na imagem binária com correção angular horizontal.Se um objeto fazia parte de um elemento com a quantidade pixels brancos 1,2 vezes igual oumaior a sua, ele fazia parte de uma borda e será removido na imagem binária após a aplicação damáscara de cor. Caso contrário, ele permanecerá na referida imagem. Na imagem binária apósa aplicação da máscara de cor não há objetos que satisfazem essas condições. A Figura 5.13mostra claramente os elementos que são de bordas e a Figura 5.14 mostra os elementos antes edepois da remoção, exemplificando o estágio atual.

Figura 5.13: Imagens em formato RGB e limiarizada com após a etapa de correçãoangular horizontal.

Figura 5.14: Imagem binária recortada e sua respectiva imagem sem elementos de bordada placas.

I. Segunda Seleção de Objetos

Esta etapa é fortemente inspirada no trabalho de YOON et al. (2011) para excluir objetosruidosos e particionar objetos que si tocaram após a binarização. Primeiro, as mesmas condiçõespresentes em

� �4.8 ,� �4.9 ,

� �4.10 e� �4.11 são verificadas com pequenas modificações nos valores

das constantes e, também, são adicionadas 2 novas restrições, que são� �5.9 e

� �5.10 . Então, oconjunto de restrições analisadas se torna:

I⇒ (W < 0.0225× Iw)∨ (W > 0.3× Iw)∨ (H < 0.125× Ih)� �5.5

II⇒ (A < 0.15×W ×H)� �5.6

III⇒ (Y < 0.05× Iw)∨ (Y < 0.85× Iw)� �5.7

IV ⇒

(Xm < 0.015× Iw)∧ (Ym < 0.015× Ih)

(Xm < 0.015× Iw)∧ (Ym > 0.985× Ih)

(Xm > 0.985× Iw)∧ (Ym < 0.015× Ih)

(Xm > 0.985× Iw)∧ (Ym > 0.985× Ih)

� �5.8

V ⇒ (E 6 0.75)∨ (H < 0.2× Ih)� �5.9

Page 90: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 89

V I⇒ (θ 6 75)∨ (H < 0.5× Ih)� �5.10

onde W é a largura, H é a altura, A é a área, (X ,Y ) é o centro da bounding box, (Xm,Ym) é ocentro de um objeto encontrado, E é a excentricidade do objeto, θ é o angulo de inclinação doobjeto e, ainda, Iw e Ih serem, respectivamente, a largura e altura da binária da placa. A adiçãoda condição V é para tentar retirar os pequenos objetos arredondados que existam entre as letrase os número. Já condição V I visa excluir objetos de altura média que não possuem orientaçãode caractere (ANAGNOSTOPOULOS et al., 2006). Se alguma objeto satisfizer alguma dessascondições será removido da imagem. A Figura 5.15 exibe os objetos que entram e os que saemdessa análise.

Figura 5.15: Os objetos detectados na imagem presente em Figura 5.12 e os objeto quepermanecem após a análise.

Após a remoção de partes que não são caracteres, é preciso, ainda, desconectar objetosque estão juntos utilizando o algoritmo apresentado no estágio G da Seção 4.3. Existe, entretanto,uma única modificação realizada nesse algoritmo. A mediana da largura dos objetos não écalculada em cima do conjunto de todos objetos, mas sim sobre o conjunto de objetos quenão possuem altura 3 ou mais vezes maior do que a largura. Essa modificação faz com queos caracteres ’I’ e ’1’, que serão excluídos, não adicionem ruído no cálculo da mediana. AFigura 5.16 exibe o split realizada nessa estágio e com a modificação no cálculo da mediana.

Figura 5.16: Imagens com os objetos presentes em Figura 5.15 corretamenteparticionados.

J. Junção Horizontal de Caracteres

Após todos os processamentos aplicados sobre a imagem binária até este estágio, nãofoi possível, ainda, corrigir o problema gerado pelo filtro similar ao laplaciano presente naTabela 5.2 em alguns caracteres ’M’, ’N’ e ’H’. Esses três símbolos, em algumas placas, acabamsendo particionados horizontalmente, levando ao aparecimento de "dois caracteres ’I’". Com obom desempenho do estágio de eliminação de bordas, frequentemente, foi possível realizar omerge das duas partes desses caracteres. Então, da esquerda para a direita, os blobs que estãoposicionados até a coluna do meio da imagem e possuem taxa de proporção de altura por largurasimilar ao ’I’ são analisados. Em seguida, se o caractere em análise está na primeira metade daimagem, possui taxa de proporção igual ao ’I’ e seu primeiro vizinho a direita também possuemtaxa de proporção igual ao ’I’, eles serão candidatos a operação de merge, caso contrário, o seuprimeiro vizinho a direita será agora o caractere em análise. Com isso, os caracteres que sãocandidatos a operação de merge serão conectados se a distância horizontal entre eles for 20% da

Page 91: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 90

largura do novo caractere que iria se formar se houver a fusão e, também, se a largura do novocaractere for maior do que 80% da mediana das larguras sem os elementos ’I’ e ’1’ e menor doque 120% da mesma mediana. É importante frisar que essas porcentagens foram encontradasempiricamente. Como a imagem presente em Figura 5.16 não apresenta nenhum dos caracteresparticionados, a Figura 5.17 traz um exemplo de sucesso que ocorreu em outra placa.

Figura 5.17: Imagem com caractere particionado horizontal e sua a respectiva imagemapós a junção das letras.

K. Terceira Seleção de Objetos

Esta etapa é a mesma do estágio H presente na descrição do trabalho de YOON et al.(2011) . Entretanto, há uma modificação no valor do limiar de variância das alturas do Algoritmo1, passando de 4 para 6.25, configurando um relaxamento das similaridades entre as alturas dosobjetos. A Figura 5.18 mostra o resultado da execução do Algoritmo 1 sobre a imagem presenteem Figura 5.17.

Figura 5.18: Resultado da execução do Algoritmo 1 para uma das imagens presentes emFigura 5.17.

L. Filtragem de Elementos Particionados

As placas de teste na segmentação possuem, muitas vezes, símbolos entre o conjunto deletras e número. Em algumas placas, esses símbolos se conectam a um dos caracteres vizinhos aele e, após operação de split, acabam tendo características geométricas, como altura e largura,parecidas com caracteres e dificultam a execução da última etapa do estágio de segmentaçãoque realiza a seleção dos 7 objetos existentes na placa. Por isso, houve a necessidade de excluiresses objetos gerados a partir de uma operação de split e, portanto, esse estágio foi elaborado.Então, para realizar essa exclusão, analisa-se cada objeto e calcula-se a sua projeção horizontaldos pixels. Em seguida, cria-se um vetor binário que identifica se existe pixel branco na linhaou não na imagem em processamento. Então, os elementos do vetor de projeção horizontalmaiores do que 0 serão setados para 1. Em seguida, calcula-se a primeira derivada desse novovetor. Após gerar o vetor de derivadas, que é menor em uma posição do que o vetor de projeçãohorizontal, calcula-se o módulo de cada elemento do vetor e, em seguida, soma-se todos oselementos do vetor resultante. Se a soma for maior do que 2, é porque o elemento possui maisde duas transições de tons brancos para tons pretos ou vice-versa e, portanto, possui mais de doisblocos particionados ou, ainda, a sua bounding box não está o limitando corretamente na partesuperior e/ou inferior. Com isso, o objeto acaba sendo considerado um ruído e descartado. Caso

Page 92: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.2. SEGMENTAÇÃO 91

a soma do vetor seja inferior ou igual a 2, o blob, através do vetor de projeção, tem a quantidadede pixels brancos computados. Se o número de pixels brancos for igual ou inferior a 20% da áreada sua bounding box, o objeto é descartado, caso contrário ele continua no conjunto de blobs

relevantes. As Figura 5.19, Figura 5.20 e Figura 5.21 ilustram o processo de retirada do ruído desplit.

Figura 5.19: Exemplo de ruído gerado após o processo de split.

Figura 5.20: Imagem de saída da etapa K para a Figura 5.19.

Figura 5.21: Exemplo de remoção do ruído gerado pela operação de split em Figura 5.20.

M. Extração dos Caracteres

Esse é o último processo da etapa de segmentação e é inspirado no método de cálculo dafunção de aptidão existente em ABO SAMRA e KHALEFAH (2014). Inicialmente, calculou-seuma nova matriz GRM a partir de uma placa fora do conjunto de teste (ver Tabela 5.3). Foirealizado, também, uma modificação nos valores dos coeficientes da função de distância em� �3.12 e o termo 4RW(k,p) foi adicionado (ver

� �5.11 ). Para adicionar o termo 4RW(k,p), foinecessário alterar, temporariamente, as bounding boxes dos elementos parecidos com ’I’ e ’1’.Então, os objetos que possuírem altura 3 ou mais vezes maior do que largura terão suas bounding

boxes redefinidas para uma outra com altura e posição central iguais, mas com a mudança daposição X e largura igual a mediana dos blobs sem os elementos parecidos com ’I’ e ’1’. Essamudança faz com que, além da adição do termo4RW(k,p), o termo4RX(k,p) tenha uma maiorrelevância na definição da função de distância dos 7 objetos em análise para a GRM.

j 1 2 3 4 5 6

RX( j+1, j) 0.5684 0.5912 1.1141 0.5817 0.6282 0.6049

RY( j+1, j) 0 0 0 0 0 0

RH( j+1, j) 0 0 0 0 0 0

RW( j+1, j) 0 0 0 0 0 0Tabela 5.3: Novos valores para a matriz GRM. Cada linha representa as distânciasexistentes num variável especifica, X , Y , W e H, das bounding boxes dos caracteres.

FOk = 44RX(k,p)+4RY(k,p)+44RH(k,p)+34RW(k,p)

� �5.11

Page 93: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.3. RECONHECIMENTO 92

Após essas definições, é possível, então, realizar o processo de extração dos caracteres.Inicialmente, verifica-se se existe 7 ou menos blobs a serem analisados e, em caso de confirmação,eles serão as posições dos caracteres existentes na placa. Caso a quantidade de objetos seja maiordo que 7, é preciso definir quais são os 7 símbolos existentes nas placas. Então, escolhe-se os 7primeiros objetos e calcula-se a distância utilizando a Tabela 5.3. Depois, a partir do segundoobjeto, escolhe-se o próximos 7 blobs e calcula-se FOk em

� �5.11 . Isso é realizado sempre daesquerda para a direita com deslocamento de um blob até que não seja mais possível escolheros próximos 7 objetos. Por exemplo, se há 9 objetos a serem verificados, então só existirá 3conjuntos de elementos que são: do primeiro ao sétimo, do segundo ao oitavo e do terceiroao nono. O conjunto de elementos que possuir o menor valor de FOk será dado como sendoo conjunto de caracteres existentes na placa. As Figura 5.22 e Figura 5.23 exibem os blobs

selecionados e o caracteres segmentados.

Figura 5.22: Escolhas final do objetos para a imagem em Figura 5.16

Figura 5.23: Caracteres corretamente segmentados da imagem na Figura 5.22.

5.3 Reconhecimento

Nesta etapa, o terceiro estágio do sistema OCR, utilizou-se uma estrutura de rede deKohonen (KOHONEN, 2013) para realizar o reconhecimento da imagem do caractere. Maisainda, visando ter um ganho de performance e vencer algumas limitações do Self Organizing

Map (SOM) original (KOHONEN, 1990), o Kernel SOM ((ANDRÁS, 2002); (LAU et al., 2006);(YIN, 2006)) foi efetivamente utilizado para realizar essa tarefa. Extratores de característicasforam empregados para extrair as informações mais relevantes dos padrões de entrada e facilitartanto a aprendizagem como a classificação do algoritmo inteligente aplicado. Escolheu-seutilizar a rede SOM e suas variantes, pois tais algoritmos inteligentes apresentam aprendizadonão-supervisionado, sendo, então, desnecessário a presença de um tutor e, consequentemente, ocálculo de um erro supervisionado para ajuste do aprendizado, por automaticamente absorveremos diferentes padrões existentes em um mesmo grupo durante a fase de agrupamento, pornão sofrerem com conjuntos de dados de treinamento desbalanceados e, principalmente, porapresentarem um aprendizado incremental, não sendo necessário realizar um novo treinamentocom toda a massa de dados caso aparece um novo conjunto de padrões a ser aprendido, comoocorre com o Multi-Layer Percetron (MLP).

Page 94: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.3. RECONHECIMENTO 93

5.3.1 Algoritmo Inteligente

ANDRÁS (2002) mostra em seu trabalho as limitações do SOM ao realizar um agru-pamento para problemas no espaço não-euclidiano (ver Figura 5.24). Com isso, propôs umavariação no SOM inspirada no Support Vector Machine(SVM) (CORTES e VAPNIK, 1995) enomeou de KSOM. ANDRÁS (2002) percebeu que alguns problemas possuem fronteiras dedecisão entre os grupos, que, frequentemente, são não lineares, de difícil e/ou de demoradoaprendizado por parte do SOM. Por isso, visando tornar essas fronteiras não lineares em limiteslineares e, principalmente, manter as características de preservação da topologia dos dados ede aprendizado não-supervisionado do SOM, diferentemente do SVM que é supervisionado,ANDRÁS (2002) desenvolveu o Kernel SOM baseado no gradiente descendente. Para lidar compadrões que não sejam linearmente separáveis, a teoria do SVM realiza uma transformação doatual espaço de características do problema para outro espaço de características que possuirá umadimensão maior, permitindo a separação linear dos padrões por um hiperplano. Assim, tanto asinstâncias de entrada quanto os vetores de pesos dos nodos deveriam ser transformados para umnovo espaço de características e, então, encontrar o nodo mais semelhante à instância apresentadae fazer a atualização do vencedor e seus vizinhos. Entretanto, o novo espaço de característicaspode ter dimensão infinita e, ainda mais, a maneira de realizar essa transformação é muitas vezesde difícil processamento. Soma-se a isto, o fato de não ser interessante que os elementos da redeKSOM possuam um número de atributos maior que o número de características do problema.Então, para contornar esse problema, utiliza-se uma função de Kernel. A função de Kernel

realiza de forma indireta a atualização dos pesos, ou seja, os pesos são atualizados no espaçode características original, de tal forma que os nodos sejam processados como se estivessem noespaço de dimensão maior que o original e assim consigam caracterizar melhor a instância deentrada. Portanto, a métrica de similaridade deve sofrer também um ajuste da função de Kernel,produzindo um novo espaço, o qual é não-euclidiano. A Figura 5.24 exibe uma ilustração para oespaço euclidiano e não-euclidiano.

O KSOM baseado em gradiente descendente possui as etapas de processamento do SOMcomo encontrar o vencedor, atualizar os pesos do vencedor e da vizinhança, taxa de aprendizagemdinâmica e mesmo modo de execução. Entretanto, há mudanças na métrica de similaridade ena regra de atualização dos pesos, as quais dependem do função de Kernel utilizada. ANDRÁS(2002) apresenta função de Kernel gaussiana para construir a rede KSOM:

K(x,y) = e−‖x−y‖2

2×r2� �5.12

onde x e y são os padrões de entrada e protótipo, respectivamente, que se desejam comparar e r

é o campo receptivo. Assim, a métrica de similaridade entre o vetor de pesos do protótipo e ovetor de características do padrão apresentado, após a derivação, é:

‖Ψ(x)−Ψ(y)‖2 = 2−2× e−‖x−y‖2

2×r2� �5.13

Page 95: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.3. RECONHECIMENTO 94

Figura 5.24: Exemplo de um espaço euclidiano, à esquerda, e não-euclidiano, à direita(ANDRÁS, 2002).

onde Ψ(x) é o vetor característico de entrada, x, no espaço transformado, Ψ(y) é o vetor deatributos do protótipo, y, no espaço transformado e r é o raio do protótipo. Com isso, é possívelencontrar o elemento vencedor para um determinado padrão de entrada da seguinte forma:

c = argminj‖Ψ(x)−Ψ(y)‖2

� �5.14

onde Ψ(x) é o vetor característico de entrada, x, no espaço transformado, Ψ(y) é o vetor deatributos do protótipo, y, no espaço transformado do elemento j. Com isso, devido ao Kernel

gaussiano, a regra de atualização dos pesos possui o seguinte formato:

wi(t +1) = wi(t)+2×α(t)×hci× e−‖xt−wi‖2

2×r2 × 1r2 × (xt(t)−wi(t))

� �5.15

onde wi(t +1) é o vetor de pesos da unidade para o próximo instante t +1, α(t) é a função dataxa de aprendizagem, que regula o ajuste realizado ao protótipo, e possui valores entre 0 e 1 noinstante atual t, hci é a função que identifica os vizinhos do neurônio que venceu a competição, onodo c, o mais semelhante ao padrão de entrada, e que regula o ajuste desses elementos vizinhos,i, e possui valores entre 0 e 1, xt é a entrada apresentada no instante atual, wi(t) é o vetor depesos no instante atual e r é o raio do elemento i.

A variável r em� �5.13 e

� �5.15 pode tanto possuir valores constantes como variáveis notempo, r(t)i. Com isso, faz-se necessário definir uma regra de atualização do raio, r, de umdeterminado protótipo, i, num determinado tempo, t (ANDRÁS, 2002). O método elaboradopor ANDRÁS (2002) é baseado no Learning Vector Quantization, o LVQ, (KOHONEN, 1990).Entretanto, para utilizar o LVQ, os nodos precisam estar rotulados. Por isso, ao final de cadaépoca, o conjunto de treinamento é rotulado utilizando predominância de elementos de classes

Page 96: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.3. RECONHECIMENTO 95

atraídas pelo neurônio. Após o rótulo, o conjunto de treinamento é apresentado mais uma vez ese o neurônio tem o mesmo rótulo da instância de entrada, o raio é corrigido positivamente, casocontrário, o raio é corrigido negativamente.

ri(t +1) = ri(t)+2×β (t)× e− ‖x−wi‖2

2×ri(t)2 × ‖x−wi‖2

2× ri(t)3

� �5.16

ri(t +1) = ri(t)−2×β (t)× e− ‖x−wi‖2

2×ri(t)2 × ‖x−wi‖2

2× ri(t)3

� �5.17

onde ri(t + 1) é o valor do raio no próximo instante de tempo (t + 1) e ri(t) é o raio no atualinstante de tempo, t, β (t) á função da taxa de aprendizagem para atualização do raio, ri, x é opadrão de entrada e wi é o vetor de pesos do protótipo i.

Existem, ainda, na literatura, o emprego de outros Kernels no KSOM como os de Cauchye Log. Eles foram apresentados por LAU et al. (2006) em seus estudos. As equações

� �5.18 e� �5.19 apresentam a métrica de similaridade e a regra de atualização dos pesos, respectivamente ,para o Kernel de Cauchy com raio fixo.

‖Ψ(x)−Ψ(y)‖2 =2× r2

r2 +1− 2× r2

r2 +‖x−y‖2

� �5.18

yi(t +1) = yi(t)+α(t)×hci×2× r2

(r2 +‖xt−yi(t)‖2)2 × (x(t)−yi(t))� �5.19

onde Ψ(x) é o vetor característico de entrada, x, no espaço transformado, Ψ(y) é o vetor deatributos do protótipo, y, no espaço transformado, r é o raio do protótipo, yi(t + 1) é o vetorcaracterístico do protótipo i no próximo instante de tempo t+1 e yi é no atual instante de tempo,t,α(t) é a função da taxa de aprendizagem em t e possui valores entre 0 e 1 e hci é a função queidentifica os vizinhos do neurônio que venceu a competição, o nodo c, o mais semelhante aopadrão de entrada, e que regula o ajuste desses elementos vizinhos, i, e possui valores entre 0 e 1e xt é o corrente padrão de entrada na rede.

Após testes preliminares utilizando características de tons de cinza de imagem bináriascom as classes dos dígitos de 0 a 9 presentes no grupo de boas imagens da base de dados The

Chars 74K dataset, percebeu-se que, ao utilizar uma SOM ou KSOM para todos os agrupamentos,a função de vizinhança dificultava a determinação dos 10 grupos existentes, fazendo com que ogrid de neurônios tenha que aumentar consideravelmente o tamanho, assim como, o número deépocas necessárias para o aprendizado. Por isso, criou-se um comitê de especialistas para realizara tarefa de reconhecimento da imagem de cada caractere. Assim, foram criados n redes SOM ouKSOM, sendo n igual a 10 para as classes das imagens de números extraídos da base de dadosThe Chars 74K dataset. Então, para os testes preliminares, ao ser apresentada ao sistema decomitê, a imagem do caractere é apresentada a todas as redes especialistas e, consequentemente,a todos os seus respectivos nodos. Em seguida, escolhe-se k elementos entre todos os nodos de

Page 97: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.3. RECONHECIMENTO 96

todos especialistas que mais se assemelham ao padrão de entrada e, então, realiza-se votaçãopara decidir o grupo que melhor representa a imagem de entrada.

O algoritmo utilizado no estágio de reconhecimento do sistema OCR proposto faz uso dainformação semântica da placa, sendo, para uma placa de 7 caracteres, os 3 primeiros símbolosletras e os 4 últimos números e, para uma placa de 6 caracteres, os 2 primeiros símbolos letras eos 4 últimos números. Por isso, o Algoritmo 2 recebe como entrada a imagem binarizada docaractere (X), o número de blobs extraídos na etapa de segmentação (NO) e a posição da imagemdo caractere na sequência de blobs (PO). O número de vencedores a se considerar na tomadade decisão final (K) é, também, uma entrada do Algoritmo 2. Então, inicialmente extrai-se ovetor (C) de características da imagem binária do caractere. Em seguida, verifica-se o númerototal de objetos segmentados (NO) da imagem da placa. Se NO for igual a 6 e a posição dosímbolo (PO) na string de objetos for menor ou igual a 2, o vetor N será apresentado apenasaos 26 especialistas das letras, caso contrário o N só será apresentado aos 10 especialistas dosnúmeros. Caso NO seja igual a 7 e PO for menor ou igual a 3, o vetor N só será apresentadoaos 26 especialistas das letras, caso contrário o N será apresentado, apenas, aos 10 especialistasdos números. Caso NO tenha um valor diferente de 7 e 6, a saída, C, será vazia e, para todas asoutras combinações, C será a saída do comitê de especialistas. O Algoritmo 2 ilustra os passosque compõem o estágio de reconhecimento.

Algoritmo 2: Etapa de ReconhecimentoEntrada: X ,NO,PO,K

Saída: C // Caractere no formato ASCIIinício

N = EXTRACCARAC(X);if (NO == 6) then

if (PO≤ 2) thenC = ESPECLISTASLETRAS(N,K);

elseC = ESPECLISTASNUMEROS(N,K);

endelse if (NO == 7) then

if (PO≤ 3) thenC = ESPECLISTASLETRAS(N,K);

elseC = ESPECLISTASNUMEROS(N,K);

endelse

C =′′;end

fim

Page 98: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.3. RECONHECIMENTO 97

5.3.2 Extratores de Características

Considerando que, após a etapa de segmentação, os caracteres possuem apenas doistons de cinza, preto para o background e o branco para foreground, utilizou-se extratores decaracterísticas aplicados em imagens binárias (TRIER et al., 1996). Assim, foi possível avaliar aperformance da etapa de reconhecimento com o comitê de KSOMs alimentados com diferentescaracterísticas.

A primeira característica foi o conjunto de valores dos pixels das imagens binárias decada caractere. Inicialmente, o caractere é redimensionado para uma escala fixa e um vetorcaracterístico é formado pelos n pixels existentes na imagem de resolução W ×H, onde W é alargura e H é altura da imagem do caractere. Não há necessidade de normalização dos dados,pois os pixels possuem valores iguais a 0 ou 1.

Já o segundo conjunto característica, muito utilizado na literatura (WEN et al., 2011),emprega o grupo dos primeiros n momentos de Zernick (TRIER et al., 1996; BELKASIM et al.,1991). Esses momentos são projeções da imagem de entrada num espaço ortogonal gerado pelafunção V :

Vnm(x,y) = Rmn(x,y)e( jm tan( yx ))

� �5.20

onde j =√−1 , n > 0, |m|6 n, n−|m| é par e Rmn(x,y) é calculado por

� �5.21 .

Rmn(x,y) =(n−|m|)/2

∑s=0

(−1)s(x2 + y2)(n/2)−s(n− s)!

s!(n+|m|2 − s)!(n−|m|

2 − s)!

� �5.21

onde n é a ordem do momento, m é número de repetições e x e y são as coordenadas da imagemde um caractere. Percebe-se que o termo Vnm(x,y) gera um número complexo e, portanto, omódulo e o ângulo podem ser extraídos formando as características para uma determinada ordeme repetição. Existe ainda duas restrições: x2 + y2 6 1 e a imagem deve ser quadrada, númerode linhas igual a número de colunas. A Tabela 5.4 exibe as características para os 7 primeirosmomentos, com m assumindo valores, apenas, não-negativos.

Momento Números Complexos

Primeiro V00

Segundo V11

Terceiro V20, V22

Quarto V31, V33

Quinto V40, V42, V44

Sexto V51, V53, V55

Sétimo V60, V62, V64, V66

Tabela 5.4: Os 7 primeiros momentos para m com valores não-negativos.

Page 99: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

5.3. RECONHECIMENTO 98

É possível realizar a reconstrução dos caracteres através dos momentos de Zernickutilizando:

f (x,y) = limN→∞

N

∑n=0

∑m=0

Amn(x,y)×Vmn(x,y)� �5.22

onde Amn(x,y) é a amplitude de Vmn(x,y). A Figura 5.25 exibe a imagem do caractere ’5’ e asua reconstrução com seus primeiros 13 momentos e ilustra o quão representativos são os n

primeiros momentos para descrição da forma da imagem do caractere binarizada.

Figura 5.25: Imagem original e suas imagens reconstruídas através dos seus primeiros 13momentos (TRIER et al., 1996), da esquerda para a direita e de cima para baixo.

Uma outra característica utilizada para tentar atingir uma boa performance na etapa dereconhecimento é realizar a extração do esqueleto, skeleton (TRIER et al., 1996), da imagembinária e, em seguida, calcular a distância transformada (NIXON e AGUADO, 2008) dessaimagem. A Figura 5.26 exibe o processo sofrido pela imagem do caractere. Nota-se que aimagem binária e de esqueleto possuem apenas valores 0 ou 1, enquanto que a imagem dedistância transformada pode possuir valores de ponto flutuante não-negativos.

Figura 5.26: Imagem do caractere ’0’ e suas respectivas imagens esqueleto e de distânciatransformada.

Page 100: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

999999

6Experimentos

Neste capítulo, serão apresentados todos os testes realizados para validar o algoritmo doOCR proposto. Inicialmente, escolheu-se o grupo de imagens que foram submetidas a execuçãodo algoritmo e, então, as métricas de desempenho puderam ser aferidas para as 3 etapas dosistema OCR proposto e, consequentemente, para a solução global. Para os experimentos devalidação, escolheu-se o grupo de imagens da Medialab LPR datase utilizado e rotulado emMENDES JÚNIOR et al. (2011). As imagens nele contidas possuem nitidez adequada da placapara viabilizar as etapa de segmentação e de reconhecimento. Soma-se a isso, o fato de algoritmode detecção utilizado no OCR proposto atingir boa performance (ver a Figura 3.35, a Figura 3.36e a Tabela 3.7). As imagens da base de dados adquiridas na UFOP (MENDES JÚNIOR et al.,2011) permitem bom desempenho do algoritmo de detecção, mas não foram utilizadas nos testespois além de serem borradas, inviabilizando as etapas de segmentação e reconhecimento, são deuma base pública ainda pouco referenciada. Em testes preliminares, o estágio de segmentaçãoobteve uma taxa de acerto de 55% para as imagens da UFOP.

Então, as 276 imagens de teste, e outras 69 recrutadas para treinamento, da Medialab

LPR database, que foram utilizadas para avaliar as performances dos algoritmos de detecção(Capítulo 3), foram utilizadas para avaliar a performance de todas as etapas do OCR proposto.As métricas utilizadas nesse capítulo são as usadas no trabalho de ABO SAMRA e KHALEFAH(2014) (ver Seção 3.1).

Diferentemente do que ocorre na avaliação do método de MENDES JÚNIOR et al.(2011) (ver Seção 3.4) onde a etapa final do algoritmo, o estágio de decisão da região de placa,é desprezada para avaliar as métricas de Recall, Precision e F-Score para diferentes graus decasamento, é necessário para o sistema OCR proposto incluir a etapa de decisão na avaliação noestágio de detecção. Isso se faz necessário, pois o estágio de detecção precisa extrair a placa enão só apontar regiões promissoras. A Tabela 6.1 exibe a performance do estágio de detecção doOCR proposto para as 276 imagens de teste.

Algoritmo Taxa de Acerto Falso Negativo Falso Positivo

Detecção do OCR 267(96.38%) 0(0%) 9(3.62)%Tabela 6.1: Resultados alcançados pelo estágio de detecção.

Page 101: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

100

Como todas as 276 imagens possuem veículos com suas respectivas placas de licenci-amento e o algoritmo utilizado da etapa de detecção sempre gerou uma saída, uma região deplaca, não houve nenhum caso de falso negativo e, portanto, a métrica que retrata a taxa de errodo método é o número de falso positivo. Nas 9 imagens que o algoritmo errou, pode-se verificar3 tipos de erros: detecções incorretas, regiões maiores do que a placa e regiões menores do que aplaca. O subgrupo de incorretas (ver Figura 6.1) possui 2 imagens e é fruto de erros do estágiode decisão do método de MENDES JÚNIOR et al. (2011), que faz uso da métrica em

� �3.16 . Jáo subgrupo das regiões maiores (ver Figura 6.2) do que placa possui 2 imagens e correspondeas regiões que possuem a placa de licenciamento, mas que tem a área muito maior do que aplaca, extrapolando seus limites. O subgrupo das regiões menores (ver Figura 6.3) do que a placapossui 5 imagens e compreende as regiões que o algoritmo realiza a incompleta localização daplaca. Esses dois últimos grupos são fruto do ruído luminoso existente na região da placa e/oudo ajuste paramétrico incorreto do modelo de detecção.

Figura 6.1: Exemplo de incorreta detecção.

Figura 6.2: Exemplo de região maior do que a placa.

Page 102: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

101

Figura 6.3: Exemplo de região menor do que a placa.

Após a execução do estágio de detecção, chegaram para etapa de segmentação 267imagens de placas. Então, após a execução do algoritmo de segmentação apresentado na Seção5.2, foi possível extrair os caracteres existentes nas placas e aferir as métricas de performance. ATabela 6.2 exibe os resultados alcançados pelo método.

Algoritmo Taxa de Acerto Falso Negativo Falso Positivo

Segmentação do OCR 252(94.38%) 1(0.3%) 14(5.32)%Tabela 6.2: Resultados alcançados pelo estágio de segmentação.

Como pode ser visto na Tabela 6.2, a etapa de segmentação falha ao não conseguir extrairnenhum caractere existente numa placa verdadeira, configurando a rejeição da região comoplaca (número de falsos negativos). O estágio de segmentação comete 14 erros ao individualizarerroneamente ao menos um caractere existente na placa. Esses erros devem-se, principalmente aproblemas de não uniformidade de iluminação na placa, detecções incorretas de símbolos comocaracteres, borramento da imagem da placa e placas que possuem apenas 6 caracteres.

Na etapa de reconhecimento, foram utilizados, em separado, 3 comitês de especialistas,um para cada conjunto de característica citadas na Subseção 5.3.2. Todos os comitês imple-mentados utilizam redes KSOM com kernel de Cauchy que, em testes preliminares, atingiu amelhor performance entre todas as redes SOM e KSOM implementadas (ver Tabela 6.3). Comocitado no Capítulo 5, esses testes preliminares foram realizados sobre as 10 classes das imagensde números extraídas do grupo de boa qualidade da base de dados The Chars 74K dataset.Utilizou-se a técnica de validação cruzada com k = 5 para avaliar a performance dos comitês dosdiferentes SOMs implementados e as características de valores binários dos pixels da imagemdo caractere limiarizada. A Tabela 6.3 exibe o acerto médio para os conjuntos de treinamento ede teste. É importante frisar que todas essas redes possuíam o mesmo número de especialistas,nodos, função de vizinhança, taxa de aprendizagem e critério de parada.

Page 103: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

102

Rede de Especialistas Taxa de Acerto no Treinamento Taxa de Acerto no Teste

SOM Regular 85.77%±1.21% 69.99%±4.25%

KSOM raio fixo gaussiano 84.04%±0.98% 68.49%±5.72%

KSOM raio fixo Cauchy 88.56%±0.68% 71.70%±2,17%

KSOM raio variável gaussiano 83.79%±0.81% 70.70%±3.45%

SOM com responsabilidade 86.81%±1.03% 70.60%±4.01%Tabela 6.3: Desempenho das redes implementadas em testes preliminares.

Utilizou-se, para cada especialista no comitê KSOM com raio fixo de Cauchy, uma grid

5×5 e as funções que regem a variação da vizinhança e da taxa de aprendizagem são:

α(t) = η0×γ

γ + t−1

� �6.1

γ =N−1

100−1

� �6.2

hc j(t) = e−d2

c(x) j2σ(t)

� �6.3

σ(t) = σ0 +(t−1)(σN−σ0)

N−1

� �6.4

onde α(t) é a taxa de aprendizagem no instante atual, t, N é o número máximo de interações,quantidade máxima de épocas, σ(t) é o raio da vizinhança do vencedor, c, no instante atual, σ0 eσN são os valores dos raios da vizinhança no instante início e no final do treinamento, hc j(t) é ovalor de ajuste da vizinhança para o nodo, j, dado que o c venceu a competição para instância, x,e d2

c(x) j é a distância euclidiana ao quadrado entre as posições espaciais do nodo c e nodo j. ATabela 6.4 exibe o conjunto paramétrico utilizado para o melhor comitê de KSOMs com Kernel

de Cauchy.

Parâmetros Valor

Grid 5x5

η0 0.7

σ0 1

σN 0.125

N 1000Tabela 6.4: Parâmetros utilizados na melhor configuração do comitê.

Para realizar o treinamento das redes dos comitês, parte das imagens da Medialab LPR

database utilizadas por ABO SAMRA e KHALEFAH (2014) e que não estão nas 345 imagensda Medialab LPR database utilizadas por MENDES JÚNIOR et al. (2011) foram agrupas com

Page 104: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

103

as 69 imagens do conjunto de treinamento, totalizando 217 imagens distintas das imagens deteste do OCR proposto. Com isso, uma base de dados foi construída com os caracteres existentesnas 217 placas. Para representar os dados que sairão da etapa de segmentação e chegarão àetapa de reconhecimento, todos os caracteres foram binarizados, fazendo o background preto e oforeground branco.

Então, foram treinados, com as imagens contidas na base de caracteres gerada, 3 comitêspara cada característica (características binárias, momentos de Zernick e distância transformadado esqueleto da imagem binária). Afim de avaliar a performance dos 3 comitês, as imagens doscaracteres são apresentadas aos 3 comitês paralelamente e 3 taxas de reconhecimento são geradas.Para aproveitar os posicionamentos dos caracteres existente nas placas, os 3 primeiros símbolossegmentados do estágio anterior só serão apresentados às 26 redes especialistas das letras eenquanto que os 4 últimos símbolos só serão apresentados às 10 redes especialistas dos números,sendo o número de caracteres segmentados iguais a 7. Caso a quantidade de símbolos extraídosda etapa de segmentação seja 6, apenas os 2 primeiros símbolos recortados serão apresentadosaos 26 especialistas em letras. Essa análise semântica possibilitou a resolução de conflitos entrecaracteres como ’0’ e ’O’ e ’8’ e ’B’. As Tabela 6.5 e Tabela 6.6 apresentam a performancedos comitês construídos para as 252 imagens de placas corretamente segmentadas, variando,também, o número de vencedores (K = 1 ou K = 3).

Modelo Taxa de Acerto

Comitê com BW 235(93,25%)

Comitê com ZN 212(84,12%)

Comitê com SD 205(81,34%)Tabela 6.5: Performance dos comitês utilizando as características ou binárias (BW) ou

dos momentos de Zernick (ZN) ou, ainda, da distância transformada do esqueleto (SD) daimagem para K = 1.

Modelo Taxa de Acerto

Comitê com BW 216 (85,71%)

Comitê com ZN 184 (73,01%)

Comitê com SD 182 (72,22%)Tabela 6.6: Performance dos comitês utilizando as características ou binárias (BW) ou

dos momentos de Zernick (ZN) ou, ainda, da distância transformada do esqueleto (SD) daimagem para K = 3.

Após as análises das Tabela 6.5 e Tabela 6.6, percebeu-se que o comitê de KSOMs comraio fixo de Cauchy com apenas um vencedor, K = 1, alimentado por características bináriasapresentou a melhor performance e, portanto, foi o modelo utilizado para ser o reconhecedordo sistema OCR proposto. É importante frisar, que do conjunto das 252 imagens que chegama etapa de reconhecimento, 2 placas não respeitam a semântica de 3 letras e 4 números ou 2

Page 105: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

104

letras e 4 números, impossibilitando o seu reconhecimento correto. Existem, ainda, 5 placas quepossuem 6 caracteres segmentados corretamente, mas a etapa de reconhecimento não conseguiuperceber que uma imagem era ruído e o classificou como caractere.

Na literatura, não há muitos trabalhos que propõem e associam as três etapas de umsistema OCR para identificação de veículos automotivos (SHAPIRO e GLUHCHEV, 2004;ANAGNOSTOPOULOS et al., 2006; WEN et al., 2011). SHAPIRO e GLUHCHEV (2004)e WEN et al. (2011) atingiram, respectivamente, 93,7% para um conjunto de 1061 imagense 93,54% para um conjunto de 9026 imagens, mas não disponibilizaram as bases de dadosutilizadas, dificultando uma comparação com o OCR proposto. Soma-se a isso, os formatosdas placas existentes nas imagens utilizadas nos trabalhos de SHAPIRO e GLUHCHEV (2004)e WEN et al. (2011) serem diferentes dos formatos das placas existentes na Medialab LPR

Database utilizadas para a validação do modelo de OCR proposto. Tal característica impossibilitauma comparação justa, pois as imagens apresentam, notoriamente, complexidades diferentes porserem de nacionalidades distintas.

Já ANAGNOSTOPOULOS et al. (2006), como citado anteriormente, utilizam 1334imagens de veículos com placa de licenciamento no formato grego. Entretanto, apesar de exi-bir algumas imagens da Medialab LPR Database, não é possível saber quantas e quais foramextraídas dessa base. Apesar de apresentar a performance para as etapas de segmentação ereconhecimento combinadas, o trabalho de ANAGNOSTOPOULOS et al. (2006) foi utilizadocomo modelo de comparação por, principalmente, utilizar imagens no formato grego de pla-cas. É importante frisar que na Tabela 6.7 os resultados exibidos para o modelo proposto porANAGNOSTOPOULOS et al. (2006) são os existentes no respectivo trabalho.

Algoritmos ANAGNOSTOPOULOS et al. (2006) OCR Proposto

Detecção (1287) 96.5% (267) 96.38%

Segmentação(1148) 89.1%

(252) 94.38%Reconhecimento (235) 93.25%

Sistema OCR (1148) 86.0% (235) 85.14%Tabela 6.7: Comparação entre o sistema OCR proposto e o elaborado por

ANAGNOSTOPOULOS et al. (2006).

Ao analisar a Tabela 6.7, percebe-se que o sistema OCR proposto atingiu performancebastante semelhante ao trabalho ANAGNOSTOPOULOS et al. (2006), que é bastante citado naliteratura. Mas, além do número de imagens utilizadas para validação do modelo e dos algoritmosutilizados em cada etapa, e possível realizar, ainda, 2 distinções. A primeira é que, ao apresentaros desempenhos combinados do segundo e terceiro estágio do sistema OCR, os resultadosapresentados por ANAGNOSTOPOULOS et al. (2006) não deixam evidente o quão precisos sãoseus estágios de segmentação e de reconhecimento, impossibilitando uma análise etapa a etapa.A segunda diferença é que, na etapa de detecção, ANAGNOSTOPOULOS et al. (2006) realizamuma variação paramétrica para 5 conjuntos de imagens, facilitando a tarefa de extração da placa

Page 106: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

105

e contribuindo para um maior sucesso das etapas de segmentação e reconhecimento. O sistemaOCR proposto utiliza um mesmo conjunto paramétrico de todos os métodos para todas as 276imagens de testes.

É possível, ainda, extrair o tempo médio gasto na execução do sistema OCR proposto.Tal sistema foi desenvolvido e executado utilizando a ferramenta MATLAB sobre o sistemaoperacional WINDOWS 7, sendo o processador Core i5 de 2.40 GHz e possuindo 4GB dememória RAM. A Tabela 6.8 exibe os tempos médios de execução alcançados pelo sistema OCRproposto na configuração de execução citada.

Algoritmos Tempo Médio (s)

Detecção 0.4736±0.3025

Segmentação 0.7412±0.5420

Reconhecimento 0.6788±0.4208

Sistema OCR 1.8936±0.8300Tabela 6.8: Tempos de execução médios para as 276 imagens de teste apresentadas ao

sistema OCR proposto.

A Tabela 6.8 traz um tempo médio 1.89 segundos para o sistema OCR proposto. Essetempo de execução, para um OCR comercial, é considerado alto. Entretanto, como o sistemaOCR foi desenvolvido e executado sobre o MATLAB e sem nenhuma otimização de hardware

ou software, espera-se, que com a sua tradução e otimização para a linguagem C++, o tempo deexecução médio diminua bastante, atingindo a casa dos milissegundos.

Page 107: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

106106106

7Conclusão

Ao longo desse trabalho, percebeu-se que a tarefa de construir um sistema OCR paraidentificação de veículos automotivos, principalmente em ambientes externos, é bastante desa-fiadora. As variações de luminosidade dentro da mesma cena, variação da distância do sensorde captura ao veículo, formatos das placas de licenciamento, entre outras, dificultam muito ocorreto processamento do sinal digital 2D de entrada pelo sistema OCR.

Por isso, visando superar os problemas citados anteriormente e propor um OCR com umnível maior de robustez, esse trabalho foi elaborado. Técnicas descritas na literatura nas 3 etapasdo sistema OCR foram estudadas, adaptadas e implementadas. Para representar o conjunto deadversidades citadas, um grupo de 345 imagens existentes na base de dados Medialab LPR

Database (MENDES JÚNIOR et al., 2011) foi efetivamente utilizado para validação do sistemaOCR proposto, pois possui nitidez suficiente para realizar todas as etapas do OCR e proporcionarpossíveis comparações com o modelo proposto.

Inicialmente, o estágio de detecção foi analisado. Tentou-se encontrar algoritmos queutilizassem bases públicas e/ou apresentassem soluções promissoras. Dentre os estudados, ostrabalhos descritos no Capítulo 3 apresentam uma ou ambas características citadas.

O algoritmo apresentado por MENDES JÚNIOR et al. (2011) foi escolhido para realizara tarefa de detecção do OCR proposto pois apresentou desempenho satisfatório, principalmente,para um grupo de imagens da Medialab LPR Database. Esse grupo, como citado anteriormente,possui 345 imagens, onde 69 imagens foram utilizadas para treinamento e 276 para teste domodelo. A Tabela 6.1, que exibe o desempenho alcançado pelo método sobre as 276 imagens detestes, evidencia a robustez do algoritmo de MENDES JÚNIOR et al. (2011), pois esse conjuntode imagens possui veículos com diferentes distância para o sensor de captura, placas cominclinação horizontal, não-uniformidade luminosa e ruídos suavizadores. Apesar da robustez, ométodo apresenta algumas limitações com respeito a métrica de decisão em

� �3.16 . Esse critérioutilizado faz com que o algoritmo confunda, em alguns casos, regiões com grande quantidadede bordas verticais como placas. Soma-se a isso, o fato de escolher a região com maior V

(ver� �3.16 ) impossibilita a detecção de mais de uma placa de licenciamento por cena. Esse

método possui grande quantidade, 10 no total, de parâmetros a serem ajustados, mas a maioria

Page 108: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

107

são intuitivos, como tamanho mínimo esperado para a placa e distância entre a última letra eo primeiro número. O uso de uma abordagem inteligente, como um classificador SVM, paradecidir se as regiões promissoras encontras pelo algoritmo da detecção sem o estágio decisóriotende a ser uma abordagem interessante. Tal modificação implicaria no aumento da precisão noindicativo de regiões com placas e, também, na detecção de mais de uma placa de licenciamentopor imagem.

Com a performance alcançada pelo estágio de detecção, chega-se à etapa de segmentação267 imagens de placas corretamente extraídas. Para realizar a tarefa de individualização docaractere, vários algoritmos existentes na literatura foram estudados e implementados. Entretanto,grande parte dos trabalhos da área de segmentação não usa base de dados públicas e nãodisponibiliza as imagens utilizadas. Soma-se a esse fato, as limitações existentes na maioria dostrabalhos vigentes na literatura para problemas que podem ocorrer na imagem, como inclinaçãoda placa e não-uniformidade luminosa. Após replicar alguns trabalhos, percebeu-se que paraplacas extraídas pelo estágio de detecção fazia-se necessário propor um algoritmo para atingiruma performance satisfatória. O método apresentado na Seção 5.2 realiza várias etapas depré-processamento da imagem afim de realçar os caracteres e retirar regiões de não-caracteres,possibilitando a individualização dos símbolos identificadores da placa de licenciamento ao finaldo processo. Técnicas com limiarização adaptativa, correção angular horizontal, definição deROI, segmentação por cor, merge e split de caracteres, análise de componentes conectados efunção de decisão baseada no protótipo apresentaram desempenho promissor quando combinadas.É importante frisar que, para diferentes tamanhos de placas, o mesmo conjunto paramétrico foiutilizado. Entretanto, apesar da performance, alguns problemas foram de difícil solução, comoexistência de apenas 6 caracteres na placa e não 7 como esperado, acentuada irregularidade deluminosidade existente na imagem da placa e contato entre o caractere e as bordas laterais daplaca. Por isso, faz-se necessário um estudo mais minucioso no método de binarização localadaptativa para tornar a limiarização mais eficaz e, também utilizar um algoritmo inteligentepara decidir se um blob analisado constitui um caractere ou não (TIAN et al., 2015; YOON et al.,2011).

Após o estágio segmentação, 252 placas foram segmentadas corretamente e, portanto, assequências de imagens de caracteres individualizadas por placa foram submetidos ao estágiode reconhecimento. A estratégia de extrair no máximo 7 caracteres adotada no estágio desegmentação possibilitou análise semântica da sequência de caracteres. Dependendo da ordemde apresentação da imagem do caractere e da quantidade de símbolos individualizados, oalgoritmo de reconhecimento seleciona a quais especialistas existentes no comitê apresentar ascaracterísticas extraída da imagem do objeto. Esse procedimento ajudou a contornar problemasde falsos reconhecimentos entre os caracteres ’1’ e ’I’, ’O’ e ’0’ e ’B’ e ’8’. Durante a fasede escolha de qual variante da rede SOM utilizar, percebeu-se, como reportado em LAU et al.(2006), que a rede KSOM apresenta uma capacitada maior de aprendizado, quando comparadoao SOM regular, para um número pequeno de épocas de treinamento, sendo um ponto promissor

Page 109: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

108

da rede KSOM. Entretanto, é importante frisar que, devido à introdução da função de Kernel,o custo computacional da rede KSOM é maior do que o SOM regular. A adoção do comitêproporcionou um grande ganho de performance quando comparado ao uso de uma única redeKSOM para categorização dos padrão de entrada. Os resultados encontrados para os diferentesextratores de características evidenciam a importância de entender as peculiaridades da base detreinamento. As características que são formadas pelos valores dos pixels binários da imagensse mostraram mais robustas aos problemas de rotação e degradação existentes tanto na base detreinamento gerada como nos padrões extraídos das placas do sistema OCR. Isso evidencia queo KSOM conseguiu armazenar corretamente os padrões mais relevantes de um determinadogrupo de treinamento. Outra característica importante é que o desempenho do reconhecedor parak = 1 foi bem superior ao k = 3. Entretanto, ao analisar as classificações errôneas para o comitêKSOM com 3 vencedores, sendo utilizado o voto por maioria para decidir a classe do padrãode entrada, percebeu-se, que em 24 dos 36 erros gerados, a classe correta do padrão de entradaestava entre os 3 vencedores. Tal fato possibilita, dependendo do método de escolha do elementomais representativo entre os 3 vencedores, um ganho de performance que superaria o comitêcom k = 1, saltando de 85,71% de performance para 95,23%.

Mesmo com tudo que foi realizado nas etapas que compõem um sistema OCR paraidentificação de veículos automotivos, há espaços para melhoramento desse trabalho. Então,como citado anteriormente, para a etapa de detecção, a utilização de algoritmos inteligentes,SVM, KSOM ou PCA, para detectar se uma região promissora é ou não placa, tende a gerarum ganho de performance do estágio. Já para ter um ganho de desempenho na segmentação,utilizar mais combinações de métodos de binarizações adaptativa local para realizar um realcemais efetivo do foreground sobre o background e algoritmos inteligentes para confirmar seum objeto é um caractere, são evoluções futuras do estágio de segmentação. Para etapa dereconhecimento, seria interessante realizar tanto uma combinação das características para treinarum comitê KSOM ou combinar as repostas, como um Adaboost por exemplo, dos diferentescomitês de KSOM para produzir a classificação do padrão do caractere de entrada. Mas, o passomais imediato para evolução do algoritmo de reconhecimento é elaborar um método decisóriomais eficiente para estratégias com mais de um vencedor. Uma alternativa interessante é utilizara rede Dimension Selective Self-Organizing Maps for clustering high dimensional data propostoem BASSANI e ARAÚJO (2012) para realizar a etapa de reconhecimento. Este modelo encontraa relevância que cada atributo ou característica possui para um determinado nodo da rede.

Page 110: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

109109109

Referências

ABO SAMRA, G.; KHALEFAH, F. Localization of License Plate Number Using DynamicImage Processing Techniques And Genetic Algorithms. IEEE Transactions EvolutionaryComputation, [S.l.], v.18, n.2, p.244–257, 2014.

ANAGNOSTOPOULOS, C. N. E. et al. A license plate recognition system for intelligent trans-portation system applications. IEEE Transactions on Intelligente Transportation Systems,[S.l.], v.7, n.3, p.377–392, 2006.

ANAGNOSTOPOULOS, C. N. E. et al. License plate recognition from still images and videosequences: a survey. IEEE Transactions on Intelligente Transportation Systems, [S.l.], v.9,n.3, p.377–391, 2008.

ANDRÁS, P. Kernel-Kohonen Networks. International Journal of Neural Systems, [S.l.],v.12, n.2, p.117–135, 2002.

BASSANI, H. F.; ARAÚJO, A. F. R. Dimension Selective Self-Organizing Maps for clusteringhigh dimensional data. International Joint Conference on Neural Networks (IJCNN), [S.l.],p.1–8, 2012.

BELKASIM, S. O.; SHIRDHAR, M.; AHMADI, M. Pattern recognition with moment invariants:a comparative study and new results. Pattern Recognition, [S.l.], v.24, n.12, p.1117–1138,1991.

BROUMANDNIA, A.; FATHY, M. Application of pattern recognition for Farsi license platerecognition. International Conference of Graphics, Vision and Image Processing, [S.l.],2005.

CASEY, R. G.; LECOLINET, E. A survey of methods and strategies in character segmentation.IEEE Transactions on Pattern Analysis and Machine Intelligence, [S.l.], v.18, n.7, p.690–706, 1996.

CORTES, C.; VAPNIK, V. Support-Vector Networks. Machine Learning, [S.l.], v.20, n.3,p.273–297, 1995.

DU, S. et al. Automatic License Plate Recognition (ALPR): a state-of-the-art review. IEEETransactions Circuits and Systems for Video Technology, [S.l.], v.23, n.2, p.311–325, 2013.

EIBEN, A.; SMITH, J. Introduction to Evolutionary Computing. EUA: SPRINGER Press,2004.

EPSHTEIN, B.; OFEK, E.; WEXLER, Y. Detecting text in natural scenes with stroke widthtransform. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), [S.l.],p.2963–2970, 2010.

FREIRE, F. A. N.; MAIA, J. E. B. Localização Automática de Placas de Veículos em ImagensBaseada no Detector de Viola-Jones. XI Simpósio Brasileiro de Automação Inteligente, [S.l.],2013.

Page 111: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

REFERÊNCIAS 110

GONZALEZ, R. C.; WOODS, R. E. Digital Image Processing (3rd Edition). Upper SaddleRiver, NJ, USA: Prentice-Hall, Inc., 2006.

HSIEH, C.-T.; JUAN, Y.-S.; HUNG, K.-M. Multiple license plate detection for complex back-ground. International Conference on Advanced Information Networking and Applicati-ons(AINA), [S.l.], v.2, p.389–392, 2005.

KOHONEN, T. The self-organizing map. Proceedings of the IEEE, [S.l.], v.78, n.9, p.1464–1480, 1990.

KOHONEN, T. Essentials of the Self-organizing Map. Neural Networks, [S.l.], v.37, p.52–65,2013.

LAU, K. W.; YIN, H.; HUBBARD, S. Kernel self-organising maps for classification. Neuro-computing, [S.l.], v.69, n.16-18, p.2033–2040, 2006.

LEE, B. et al. Adaptive Local Binarization Method for Recognition of Vehicle License Plates.International Journal of Computer Science & Information Technology (IJCSIT), [S.l.],v.3322, p.646–655, 2005.

LEE, H.-J.; CHEN, S.-Y.; WANG, S.-Z. Extraction and recognition of license plates of motorcy-cles and vehicles on highways. International Conference Pattern Recognition (ICPR), [S.l.],v.4, p.356–359, 2004.

MENDES JÚNIOR, P. R. et al. Towards an Automatic Vehicle Access Control System Li-cense Plate Location. International Conference Systems, Man, Cybernetics (ICSMC), [S.l.],p.2916–2921, 2011.

NIBLACK, W. An Introduction to Digital Image Processing. Birkeroed, Denmark, Denmark:Strandberg Publishing Company, 1985.

NIXON, M.; AGUADO, A. S. Feature Extraction & Image Processing, Second Edition.2nd.ed. [S.l.]: Academic Press, 2008.

PAN, M.-S.; XIONG, Q.; YAN, J.-B. A New Method for Correcting Vehicle License Plate Tilt.International Journal of Automation and Computing, [S.l.], v.6, n.2, p.210–216, 2009.

PAN, M.-S.; YAN, J.-B.; XIAO, Z.-H. Vehicle License Plate Character Segmentation. Internati-onal Journal of Automation and Computing, [S.l.], v.5, n.4, p.425–432, 2008.

PRATES, R. et al. Brazilian License Plate Detection Using Histogram of Oriented Gradients andSliding Windows. International Journal of Computer Science & Information Technology(IJCSIT), [S.l.], v.5, n.6, p.39–52, 2013.

SAUVOLA, J.; PIETIKäINEN, M. Adaptive document image binarization. PATTERN RE-COGNITION, [S.l.], v.33, p.225–236, 2000.

SEDIGH, A.; VAFADUST, M. A new and robust method for character segmentation andrecognition in license plate images. Expert Systems with Applications, [S.l.], v.38, n.11,p.13497–13504, 2011.

SHAPIRO, V.; GLUHCHEV, G. Multinational License Plate Recognition System: segmentationand classification. International Conference on Patter Recognition (ICPR), [S.l.], v.4, p.352–355, 2004.

Page 112: Dissertação de Mestrado - repositorio.ufpe.br · reconhecimento ótico de caracteres, Opitcal Character Recognition (OCR), vem sendo cada vez mais empregadas para realizar a identificação

REFERÊNCIAS 111

TIAN, J. et al. A two-stage character segmentation method for Chinese license plate. Computa-cional & Eletrical Engineering, [S.l.], v.46, p.539–553, 2015.

TRIER, O.; JAIN, A. K.; TAXT, T. Feature extraction methods for character recognition-Asurvey. Pattern Recognition, [S.l.], v.29, n.4, p.641–662, 1996.

VIOLA, P.; JONES, M. Robust real-time face detection. International Journal of ComputerVision, [S.l.], v.57, n.2, p.137–154, 2004.

WANG, R. et al. License Plate Detection Using Gradient Information and Cascade Detectors.Optik – International Journal for Light and Electron Optics, [S.l.], v.125, n.1, p.186–190,2014.

WEN, Y. et al. An Algorithm for License Plate Recognition Applied to Intelligent TransportationSystem. IEEE Transactions on Intelligente Transportation Systems, [S.l.], v.12, n.3, p.830–845, 2011.

YIN, H. On the equivalence between kernel self-organising maps and self-organising mixturedensity networks. Neural Networks, [S.l.], v.19, n.6-7, p.780–784, 2006.

YOON, Y. et al. Blob Extraction based Character Segmentation Method for Automatic LicensePlate Recognition System. International Conference Systems, Man, Cybernetics (ICSMC),[S.l.], p.2192–2196, 2011.