3 Strukturelle forskjeller av betydning for forskningsvilkår
3.3 Høyere utdanning i Finland
Várias adaptações podem ser desenvolvidas tendo como base os métodos propostos, em todas as etapas do sistema.
Para a etapa de localização são observadas as seguintes possibilidades de trabalhos futuros: • estudo de outras técnicas de realce para melhorar a qualidade da imagem, tanto para a
etapa de localização pelo método da correlação máxima, quanto na imagem obtida pela etapa de localização da placa;
• estudo de outras topologias de redes, objetivando aumentar a taxa de localização; • estudo de outros métodos de localização, para comparação e evolução dos métodos
estudados;
• utilização de outras características presentes na imagem, como a cor, em conjunto com a rede objetivando melhorar a taxa de localização.
Para o enquadramento da placa pode-se identificar as seguintes sugestões:
• estudo de novas técnicas de enquadramento com o objetivo de aumentar a taxa de sucesso;
• inclusão de uma etapa para correção de distorção de perspectiva.
Conclusões, Contribuições e Trabalhos Futuros 62 • estudos de outras abordagens para a separação de caracteres para fins de melhoria da
qualidade e da taxa de separação dos caracteres;
• adaptações nos métodos apresentados visando melhorar a taxa de separação.
Para a etapa de reconhecimento dos caracteres são identificadas as seguintes possibilidades de trabalhos futuros:
• treinamento executado com imagens de caracteres obtidos das imagens de entrada, ou com caracteres artificiais que possuem características mais próximas às encontradas no conjunto de imagens, diminuindo a possibilidade de overfitting da rede;
• implementação de outras topologias, objetivando melhorar os índices de identificação do caractere;
• estudo de métodos que identifiquem os caracteres a partir da imagem da região da placa, evitando os problemas encontrados nas etapas de separação e binarização.
Bibliografia
[Abdullah et al. (2006)] Abdullah, S. N. H. S., Khalid, M., Yusof. R., Omar, K, License Plate Recognition Using Multi-Cluster and Multilayer Neural Networks. ICTTA Information and Communication Technologies. Vol. 1, (2006) 1818-1823.
[Anagnostopoulos et al. (2006)] Anagnostopoulos, C. N. E., Anagnostopoulos, I. E., Loumos, V., Kayafas, E., A License Plate-Recognition Algorithm for Intelligent Transportation System Applications. IEEE Trans. on Intelligent Transportation Systems. Vol. 7(3), (2006) 377-392.
[Bremananth et al. (2005)] Bremananth, R., Chitra, A., Seetharaman, V., Nathan, V. S. L., A Robust Vídeo Based License Plate Recognition System. ICSIP Second International Conference on Intelligent Sensing and Information Processing, (2005) 175-180.
[Chalidabhongs & Rattanathammawat (2006)] Chalidabhongs, T. H., Rattanathammawat, P., License Plate Localization of Moving Vehicles in Complex Scene. APCCAS IEEE Asia Pacific Conference on Circuits and Systems, (2006) 1136-1139.
[Comelli et al. (1995)] Comelli, P., Ferragina, P., Stabile, M. N., Stabile, F., Optical Recognition of Motor Vehicle License Plates. IEEE Trans. on Vehicular Technology. Vol. 44(4), (1995) 790-799.
[Cui & Huang (1997)] Cui, Y., and Huang., Q, Automatic License Extraction from Moving Vehicles. ICIP International Conference on Image Processing, (1997) 126-129.
[DENATRAN (2004)] Trânsito, D. N., Código de Trânsito Brasileiro, “http://www.denatran.gov.br/Legislacao.htm”, 2004.
[Dias (2005)] Dias, F. G., Melhorias para Sistemas de Reconhecimento da Placa de Licenciamento Veicular. Dissertação de Mestrado em Engenharia Elétrica e de Computação. Universidade Estadual de Campinas (25/10/2005).
[Gesualdi (2001)] Gesualdi, A., Sistema Neuronal de Reconhecimento de Placas em Veículos Automotores Particulares. Dissertação de Mestrado em Engenharia Elétrica. Universidade Federal do Rio de Janeiro (08/2001).
[Gonzalez & Wood (1993)] Gonzalez, R. C., Woods, R. E., Digital Image Processing. Massachusetts: Addison-Wesley, 1993.
[Haykin (1999)] Haykin, Simon. Neural Networks: A Comprehensive Foundation. Prentice- Hall. 2a Ed, 1999.
Bibliografia 64 [Jianzhuang et al. (1991)] Jianzhuang, L., Wenqing, L., Yupeng, T., Automatic Thresholding
of Gray-Level Pictures Using Two-Dimensional Otsu Method. International Conference on Circuits and Systems, (1991) 325-327.
[Li et al. (2006)] Li, G., Zeng, R., Ling, L., Research on Vehicle License Plate Location Based on Neural Network. ICICIC First International Conference on Innovative Computing, Information and Control, (2006) 174-177.
[Lu et al. (2006)] Lu, X., Guanghua, Z., Liu, B., Localization of Vehicle License Plate Based on Gray Level Variation. Sixth International Conference on ITS Telecommunications Proceedings, (2006) 1220-1223.
[Malladi & Sethian (1996)] Malladi, R., Sethian, J. A., Image Processing: Flows under Min/Max Curvature and Mean Curvature. Graphical Models and Image Processing. Vol. 59 (2), (1996) 127-141.
[Marques et al. (2003)] Marques, R. C. P., Laprano, C. M., Silva, J. L., Medeiros, F. N. S., Locating License Vehicle Plates in Enhanced Binary Images, in Proceedings of XV Brazilian Symposium on Computer Graphics and Image Processing, 12-15 de outubro, São Carlos-SP, 2003.
[Marques et al. (2004a)] Marques, R. C. P., Medeiros, F. N. S., Silva, J. L., Laprano, C. M., License Vehicle Plates Localization Using Maximum Correlation. Lecture Notes in Computer Science, Springer-Verlag, v. 3138, (2004) 470-476.
[Marques (2004b)] Marques, R. C. P., Filtragem de Ruído Speckle em Imagens de Radar de Abertura Sintética e seus Efeitos sobre a Segmentação. Dissertação de Mestrado em Engenharia Elétrica, Universidade Federal do Ceará, (2004).
[Naito et al. (2000)] Naito, T., Tsukada, T., Yamada, K., Kozuka, K., Yamamoto, S.: Robust License-Plate Recognition Method for Passing Vehicles Under Outside Environment. IEEE Trans. on Vehicular Technology. Vol. 49(6), (2000) 2309-2319.
[Nukano et al. (2004)] Nukano, T., Fukumi, M., Khalib, M., Vehicle License Plate Character Recognition by Neural Networks. Intelligent Signal Processing and Communication Systems, 2004. ISPACS 2004. (2004) 771-775.
[Otsu (1979)] Otsu, N., A Threshold Selection Method from Gray-Level Histogram. IEEE Trans. Systems, Man, Cybernetics. (9), (1979) 62-88.
Bibliografia 65 [Pan et al. (2005)] Pan, X., Ye, X., Zhang, S., A Hybrid Method for Robust Car Plate
Character Recognition. Engineering Applications of Artificial Intelligence, 18, (2005) 963-972.
[Parker & Federl (1997)] Parker, J. R., Federl, P., An Approach to License Plate Recognition, Vision Interface '97, Kelowna, B.C. Relatório do Departamento de Ciência da Computação, 1997.
[Shapiro et al. (2006)] Shapiro, V., Gluhchev, G., Dimov, D., Towards a Multinational Car License Plate Recognition System. Machine Vision and Applications, 17, (2006) 173– 183.
[Sethian, (1996)] Sethian, J. A., Level Set Methods and Fast Marching Methods: Evolving Interfaces in Computational Geometry-Fluid Mechanics, Computer Vision, and Materials Science, 2a Ed. Cambridge University Press, Nova York (1996).
A. Apêndice A – Redes Neurais
Este apêndice apresenta os fundamentos de redes neurais MLP com o objetivo de auxiliar o entendimento na implementação e justificar seu uso nesta dissertação. Os fundamentos e definições descritos baseiam-se [Haykin (1999)] e [Gesualdi (2001)].
As redes neurais estão assumindo um papel importante como ferramentas no processamento de imagens na área de reconhecimento de padrões. Elas apresentam-se como um modo alternativo no reconhecimento de padrões de natureza não estruturada, cuja solução é de difícil tratamento pelos paradigmas tradicionais da computação, já que estas têm a capacidade de aprender características fundamentais do problema generalizando-as para padrões inéditos.
Tanto para a localização da placa quanto para o reconhecimento dos caracteres foi utilizada uma rede com arquitetura perceptron multicamadas MLP. Apesar de existirem inúmeras arquiteturas, esta é a mais encontrada na literatura e a mais explorada nos artigos estudados, devido à sua simplicidade de entendimento e implementação.
Também será descrito o algoritmo de retropropagação do erro, uma vez que, baseando-se na flexibilidade apresentada pela arquitetura escolhida, fez-se uso deste algoritmo, na etapa de treinamento, tanto para localização da placa, quanto para o reconhecimento dos caracteres.
Os estudos das redes neurais visam aproximar o desempenho da máquina a do ser humano na solução de um problema, uma vez que o cérebro humano soluciona determinados problemas com uma eficiência bem superior a um computador convencional. Esta eficiência superior é originária de componentes que são desejáveis no desenvolvimento de uma rede neural, como a capacidade de aprendizado, generalização para variações das características investigadas, como posição e iluminação, e robustez para que sejam evitadas grandes perdas na qualidade do reconhecimento quando houver saturação de neurônios.
Os neurônios artificiais foram desenvolvidos em acordo com o funcionamento dos neurônios em redes neurais biológicas utilizando generalizações de modelos matemáticos da cognição humana, sendo seu modelo simples apresentado na Figura A.1.
Apêndice A – Redes Neurais 67
Figura A.1: modelo matemático de um neurônio.
Na Figura A.1, a variável xi representa o valor da i-ésima entrada, transmitida ao neurônio
pela sinapse ou peso wi. Este neurônio realiza o somatório dos M valores recebidos
armazenando o resultado em uma variável v. A saída y é o resultado que a função de ativação
( )
vϕ apresenta para a variável v. Este processo é representado pela Equação (A.1) e Equação (A.2). A entrada x0 representa uma polarização com valor constante utilizada com o objetivo de
aumentar a flexibilidade da rede e aproximá-la do modelo biológico. As arquiteturas que utilizam esse modelo são chamadas de perceptron.
∑
= = M i i ix w v 0 A.1( )
v y=ϕ A.2Para cada neurônio da rede, existe uma função de ganho não-linear, comumente chamada de função de ativação que normalmente possui uma não-linearidade suave, possibilitando sua diferenciação e facilitando o tratamento matemático. Esta função é na maioria dos casos monotonicamente crescente e associada ao efeito de saturação, sendo as mais utilizadas as funções lineares, arco-tangente e logística. Nesta dissertação escolhemos como função de ativação ϕ
( )
v a função logística sigmóide, descrita na Equação (A.3) e apresentada na Figura A.2. Esta escolha foi motivada pelo desejo de que a saída da rede fosse semelhante à matriz de correlação máxima apresentada pelo método proposto em Marques et al. (2004a), necessitando assim de apenas dois pólos de saída, um para a região da placa, e outro para as demais regiões.( )
v e v y − + = = 1 1 ϕ A.3Apêndice A – Redes Neurais 68
Figura A.2: função de ativação sigmóide.
Uma das arquiteturas mais utilizadas e conhecidas utiliza o modelo de neurônio perceptron em várias camadas, sendo chamadas de perceptron multicamadas ou originalmente em inglês como Multi layer Perceptron (MLP). Esta arquitetura é composta por neurônios que formam uma camada de entrada, uma ou mais camadas intermediárias ou ocultas e uma camada de saída.
Neste trabalho foi utilizada em todas as redes desenvolvidas a arquitetura MLP sem realimentação (feedforward). A MLP é composta de uma estrutura não recorrente, em que os neurônios estão em camadas e um neurônio de uma camada i recebe informação apenas de neurônios da camada i-1 e fornece informação somente para neurônios da camada i+1. As informações são ponderadas por pesos. A Figura 2.20 apresenta um exemplo dessa arquitetura.
A capacidade de aprendizado da rede é a sua característica mais importante e este se dá por um processo iterativo de adequação, que pode ser expresso através de um algoritmo e dos pesos que compõe a rede. Por aprendizado, entende-se, segundo Haykin, “Aprendizado é um processo pelo qual os parâmetros livres de uma rede são adaptados por um processo de estímulo do ambiente em que a rede está inserida”. Dessa forma, o processo de aprendizagem da rede inicia- se pela apresentação das características do ambiente computacional que a contém, alterando sua estrutura interna, e adaptando a resposta desta a estas características.
Nesta dissertação foi adotado o treinamento supervisionado, que é caracterizado pela existência de um professor, cuja função é suprir a rede com a resposta desejada para cada estímulo apresentado a ela. É definido um erro como sendo a diferença entre a resposta fornecida e a saída apresentada pela rede. Os pesos da rede são adaptados de acordo com o
Apêndice A – Redes Neurais 69 valor desse erro utilizando-se de um algoritmo, que nesta dissertação foi o de retropropagação (backpropagation) do erro.
O algoritmo de retropropagação utiliza-se do sinal de erro definido na Equação(A.4), em que
( )
nej é o erro do neurônio j para um enésimo estímulo, dado pela diferença entre a saída desejada para este neurônio dj
( )
n e a apresentada pela rede yj( )
n .( )
n d( )
n y( )
nej = j − j A.4
Nesta dissertação foram utilizados dois critérios de parada por convergência, que é quando o erro apresentado pela rede não ultrapassa um valor pré-definido, sendo dessa forma considerado que ela acertou o resultado de todos os estímulos apresentados. O primeiro critério de convergência foi o erro máximo e o segundo foi o erro quadrático médio.
Os dois erros utilizados foram computados por épocas. Uma época representa uma iteração de treinamento, em que todos os estímulos existentes foram apresentados à rede, sendo computados todos os erros de todos os neurônios de saída. O valor do erro máximo é dado pela Equação (A.7) e do erro quadrático pela Equação (A.8), para um estímulo apresentado à rede, em que M é o número de neurônios na camada de saída.
( )
n( )
ej( )
n j(
M)
M =max , ∀ ∈ 1, ε A.5( )
∑
( )
= = M j j m n e n 1 2 2 1 ε A.6Os erros máximo e médio quadrático para uma época são então definidos pela Equação (A.7) e Equação (A.8), respectivamente, em que N representa a quantidade de estímulos apresentados à rede.
( )
(
n)
n( )
N M =maxε , ∀ ∈ 1, ε A.7( )
∑
= = N n m n N 1 1 ε ε A.8Apêndice A – Redes Neurais 70 Os erros utilizados representam uma medida do desempenho do algoritmo de treinamento, cujo objetivo é minimizar o valor desses erros, tornando-os menores que o erro definido para convergência.
G. Glossário
Abertura: consiste da operação de erosão seguida por uma dilatação com o mesmo elemento estruturante. Esta operação pode eliminar pequenos objetos claros em um fundo escuro. Um objeto será eliminado se o elemento estruturante não encaixar dentro dele.
Alargamento de contraste: consiste no aumento da escala dinâmica dos níveis de cinza atuando no histograma da imagem de forma não linear. Uma técnica bastante utilizada para isso é a equalização de histograma, que redistribui os valores de nível de cinza de forma que os mesmos ocupem todos os valores possíveis. A função de transformação utilizada deve ser univariada e monotonicamente crescente. A função de distribuição cumulativa (FDC) atende às condições acima e é mostrada na Figura G.1.
Figura G.1: função de distribuição cumulativa (FDC). Área: é a quantidade de pixels de um componente conexo.
Binarização global automática: calcula o limiar (threshold) com base na função densidade de probabilidade dos níveis de cinza. O método mais utilizado é o de Otsu [Otsu (1979)].
Binarização global manual: define o valor do limiar de separação empiricamente, com base na amostragem das imagens a serem utilizadas.
Binarização iterativa: muda o valor do limiar iterativamente tentando binarizar corretamente os componentes conexos dos caracteres da placa.
Binarização local adaptativa: binariza cada pixel de acordo com sua vizinhança.
Caminho: é uma seqüência de pixels distintos com coordenadas (x0, y0), (x1, y1), ..., (xn, yn),
em que p0 localizado em (x0, y0) é o pixel inicial e pn localizado em (xn, yn) é o pixel final. O
0 1
255
f(x)
Glossário 72 pixel pi localizado em (xi, yi) é vizinho do pixel pi-1 localizado em (xi−1, yi−1), em que 1 < i < n. O
comprimento do caminho é dado por n e diz-se então que este é um caminho-4 (ou caminho-8) dependendo da vizinhança.
Componente conexo: dois pixels p e q de um subconjunto de pixels da imagem são ditos conexos se existir um caminho de p a q.
Componentes de nível: é o conjunto dos componentes conexos com mesmo valor de nível de cinza.
Dilatação: consiste em marcar a forma do elemento estruturante em todas as regiões da imagem onde pelo menos um pixel dele esteja inserido.
Elemento estruturante: imagem com características geométricas e/ou topológicas relacionadas com a informação que pretendemos extrair da imagem de interesse.
Erosão: consiste em marcar o centro do elemento estruturante em todas as regiões da imagem onde ele está inserido por completo.
Fechamento: consiste da operação de dilatação seguida por uma erosão com o mesmo elemento estruturante. Esta operação elimina pequenos objetos escuros em fundo claro. Um objeto será eliminado se o elemento estruturante não encaixar dentro dele.
Imagem colorida: consiste em uma imagem colorida composta pela sobreposição de 3 camadas monocromáticas, denominadas de RGB (Red, Green e Blue).
Imagem digital: é uma imagem que possui tanto as coordenadas espaciais quanto o brilho discretos. É semelhante a uma matriz em que os índices de linhas e colunas identificam a localização do pixel e o valor identifica a resolução em níveis de cinza do mesmo.
Imagem monocromática: é uma função bidimensional f(x,y), em que x e y denotam as coordenadas espaciais e o valor de f(x,y) é proporcional ao brilho (ou nível de cinza) da imagem.
Limiarização: separa os objetos do fundo por um limiar (threshold), que pode ser calculado automático ou manualmente.
Glossário 73 Negativo de imagens: reverte a ordem dos níveis de cinza, para imagens monocromáticas, e das matrizes R, G e B para imagens coloridas. A Figura G.2 apresenta a função utilizada para esta técnica.
Figura G.2: função para obter o negativo da imagem.
Padrão: descrição quantitativa ou estrutural de um objeto em uma imagem. Geralmente, um padrão é representado pelo vetor de características.
Passa-altas: Estes filtros atenuam ou eliminam os componentes de baixa freqüência no domínio de Fourier. Como as baixas freqüências são responsáveis pelas características que variam lentamente em uma imagem, tais como o contraste total e a intensidade média, o efeito resultante dessa filtragem normalmente é a redução dessas características, correspondendo a um aparente realce das bordas e outros detalhes finos.
Passa-baixas: Estes filtros atenuam ou eliminam os componentes de alta freqüência no domínio de Fourier. Como as altas freqüências caracterizam bordas e detalhes da imagem, o efeito resultante dessa filtragem normalmente é o borramento da imagem.
Pixel: é a abreviação de picture element, que é o nome dado a cada ponto da imagem.
Projeção horizontal: consiste da soma dos valores de tons de cinza de cada linha da imagem, ou seja, soma dos elementos da imagem na direção horizontal (eixo x), conforme a equação G.1:
( )
[ ]
∑
= ∈ = M x y f x y y N P 1 , 1 para , , , G.1 em que: N: é a altura da imagem f ; 0 255 255Glossário 74 M: é a largura da imagem f ;
f(x, y) corresponde a um elemento da imagem f com abscissa x e ordenada y.
Projeção vertical: consiste da soma dos valores de tons de cinza dos pixels de cada coluna da imagem, ou seja, soma dos elementos da imagem na direção vertical (eixo y), conforme a equação G.2:
( )
[ ]
∑
= ∈ = N y x f x y x M P 1 , 1 para , , , G.2 em que: N: é a altura da imagem f ; M: é a largura da imagem f.Protótipo: é o representante de uma classe, sendo, em geral, definido pela média dos padrões de uma classe.
Reconhecimento de padrões: também denominado de classificação de padrões, consiste na atribuição dos padrões a suas respectivas classes automaticamente e com a mínima intervenção humana possível.
Resolução espacial: indica a quantidade de linhas e colunas. Como o pixel não tem área, somente um valor, todas as linhas e colunas são igualmente espaçadas e arranjadas na forma de uma matriz NxM.
Resolução nos níveis de cinza: indica a quantidade discreta da luminância (brilho) que pode ser armazenada em cada pixel. Normalmente esta resolução é composta pelas combinações possíveis de um conjunto de 8 bits, ou seja, varia de 0 a 255.
Retângulo envolvente: é definido pela coordenada superior esquerda e inferior direita do menor retângulo que contém o componente conexo.
Rotulação de componentes conexos: atribui um valor diferente, denominado rótulo, para cada componente conexo da imagem.
Glossário 75 Subtração de imagens: utiliza várias imagens de um mesmo objeto captadas em momentos diferentes e as subtrai, de tal modo que as mudanças que ocorreram entre os vários momentos são identificadas.
Vetor de características: é um vetor composto pelas características extraídas da imagem. Vetor de pesos: este vetor é utilizado para ponderar o vetor de características, de modo a valorizar aquelas que melhor descrevam as classes.
Vizinhança-N4: um pixel p localizado em (x,y) tem uma vizinhança 4 constituída daqueles pixels a unidade de distância nas direções horizontal e vertical. A Figura G.3 apresenta a localização dos vizinhos N4 destacados em cor escura.
p
Figura G.3: vizinhos N4 do pixel p.
Vizinhança-N8: um pixel p localizado em (x,y) tem uma vizinhança 8 constituída daqueles pixels a unidade de distância nas direções horizontal, vertical e diagonal. A Figura G.4 apresenta a localização dos vizinhos N8 destacados em cor escura.
p
Figura G.4: vizinhos N8 do pixel p.
Volume: é o somatório dos valores de todos os pixels de um componente conexo. Zona plana: é o máximo componente conexo com mesmo valor de nível de cinza.