Vous êtes sur la page 1sur 5

1

RECONOCIMIENTO DE CARACTERES DE
TEXTO EN PLACAS VEHICULARES
USANDO REDES NEURONALES
ARTIFICIALES
Erika Lisbeth Maldonado Pineda, Miembro IEEE, Facultad de Ingeniera
Escuela de Ingeniera Electronica y Telecomunicaciones
Universidad de Cuenca
Cuenca, Ecuador
erika.maldonado1104@ucuenca.ec

ResumenHoy en da la necesidad de controlar el trafico

ha aumentando debido al notable crecimiento del numero


de
vehculos en las carreteras, motivo por el cual el sistema de
transporte inteligente se ha convertido en una parte esencial
de la industria del transporte. Con el fin de solucionar este
problema, se han desarrollado sistemas de control automatico
basados en computadora, un ejemplo de estos sistemas es el
reconocimiento automatico de placas vehiculares.
Este documento tiene como objetivo mostrar varios metodos de
reconocimiento de caracteres usando redes neuronales artificiales
(ANN), los cuales se describiran mas adelante.
Index TermsReconocimiento de placas vehiculares, redes
neuronales artificiales, reconocimiento de caracteres, Algoritmo
de Backpropagation, Algoritmo de Vector Cuantificador de
Aprendizaje, Algoritmo de Kohonen.

I.

I NTRODUCCI ON

Los sistemas de reconocimiento de placas son muy


populares debido a que sus aplicaciones en la congestion del
trafico, vigilancia, control de ingresos relacionados con el uso
de carreteras, sistemas de control de acceso, etc [6].
El principal desafo de la tecnologa actual consiste en la
identificacion precisa de los objetos. Pese a que existen varias
tecnicas para reconocer objetos en el campo de las Redes
Neuronales Artificiales, la precision ha sido siempre un tema
preocupante.
Han pasado 50 anos desde que surgio la idea de que las
redes neuronales biologicas pueden representarse como redes
neuronales artificiales (ANN), pero solo en los u ltimos 25 anos
ha habido mejoras en esta rama de la ciencia, as lo afirma [1].
Una ANN se compone de un grupo interconectado de neuronas
artificiales que procesa la informacion [7].Debido a su robustez
se ha utilizado para resolver un sin numero de problemas
cotidianos que son difciles de modelar matematicamente,
debido a la no-linealidad de los mismos. Las redes neuronales
artificiales se utilizan comunmente para resolver problemas
de reconocimiento, uno de ellos es el reconocimiento de
caracteres.

II.

R ECONOCIMIENTO DE PLACAS

Un eficiente sistema de reconocimiento automatico de


placas vehiculares basado en redes neuronales artificiales
debe ser disenado y entrenado para reconocer las 26 letras
que conforman el alfabeto, as como los 10 dgitos decimales.
El sistema de reconocimiento de placas esta dividido en tres
secciones principales, as lo proponen [3] [4] y [6]:
1. Localizacion de la region de la placa en la imagen del
coche,
2. Segmentacion de los patrones de la placa y
3. Reconocimiento de los caracteres segmentados.
El diagrama de bloques del sistema de reconocimiento
propuesto en [6] se muestra en la figura1. En este trabajo,
el autor utiliza dos tecnicas de redes neuronales para
el reconocimiento de caracteres: Redes Neuronales con
Back-propagation (BP NN) y Redes Neuronales de Vector
Cuantificador de Aprendizaje (VLQ NN). Los resultados son
comparados en base a su perfeccion en el reconocimiento de
caracteres.

II-A. Extraccion de la placa


La primera etapa del sistema de reconocimiento de placas
vehiculares se basa en encontrar la ubicacion de la placa en la
imagen original del vehculo. La region de la placa consiste
por lo general en fondo blanco y caracteres negros.
La deteccion correcta de la zona de la placa es el paso
primordial antes del reconocimiento final de los caracteres.
En los trabajos aqu mencionados se utilizan diferentes
metodos de procesamiento de imagenes para localizar la
placa, produciendo un a rea de interes que contiene caracteres
de la placa con alta intensidad de gradiente, la cual se
usara para el proceso de reconocimiento, ver Figura2.
Con el fin de mejorar la calidad de la imagen del vehculo
para su uso posterior se realizan varias operaciones de
preprocesamiento de imagen sobre la imagen original del

la region mas oscura. La erosion y la dilatacion combinados


permiten, borrar agujeros blancos en objetos oscuros (apertura
o combinacion de erosiondilation con SE) y eliminar los
agujeros negros en los objetos blancos (cierre o combinacion
de dilationerosion con SE). [4]

Figura 1. Esquema de un sistema de reconocimiento de placas usando redes


neuronales artificiales.

coche, entre las que se encuentran:


II-A1. Operador de Canny de deteccion de bordes:
Las transiciones entre el blanco y negro es muy intensiva
en la region de la placa, por lo que encontrar la region que
incluye la mayora de los puntos de transicion es suficiente
para localizar la region de la placa. Para esto, el operador
Canny de deteccion de bordes aplicado en [3], utiliza un filtro
basado en la primera derivada de una gaussiana suavizada.

La imagen resultante de la morfologa matematica muestra


la posicion de la placa del vehculo, es decir, el objeto en la
imagen que tiene la mayor composicion de blanco se define
como placa.

Despues de suavizar la imagen y eliminar el ruido, el


siguiente paso es encontrar las aristas tomando el gradiente
de la imagen. Para este proceso, este operador utiliza matrices
de dimension 3x3. A continuacion se calcula la resistencia del
borde de la pendiente. Esta informacion nos da los puntos de
borde, por lo que la region intensiva de puntos de transicion
se puede determinar.

La localizacion de la placa se realiza mediante la aplicacion


de correlacion de imagenes que se basa en tomar una imagen
en blanco como plantilla. La plantilla se movera sobre toda
la imagen y contara el valor de correlacion en cada pxel.
Entonces, los pxeles con el mas alto valor de correlacion
se decidiran como la posicion de la placa y la imagen se
recortara en esa posicion.

II-A2. Metodo Top hat-Bot hat y lnea de barrido: El


Metodo de Localizacion Basado en Top hat-Bot hat y lnea
de barrido mejora el constraste de la imagen, pues convierte
las imagenes capturadas a formato digital y posteriormente
las transforma a una escala de grises con el fin de facilitar el
proceso siguiente y disminuir el tiempo de procesamiento. [6].
Despues de la mejora de imagen, la deteccion de
la matrcula se realiza mediante diversas operaciones
morfologicas.
II-A3. Morfologa Matematica: Es un metodo para el
analisis de imagen basado en el funcionamiento no lineal del
vecindario o elemento estructurante (SE). Tiene como objetivo
borrar el ruido mediante el uso de metodos de apertura y de
cierre mediante operaciones basicas de erosion y dilatacion.
La Dilatacion realiza un maximo en la SE que produce un
crecimiento de la region mas brillante, mientras que la Erosion
realiza un mnimo en la SE que produce un crecimiento de

Figura 2. Localizacion y Extraccion de la Placa del vehculo

II-B. Segmentacion de patrones


Antes de realizar el proceso de segmentacion las imagenes
obtenidas deben ser mejoradas mediante la aplicacion de
tecnicas de filtrado, para eliminar el ruido y as evitar
alteraciones durante el reconocimiento. Las tecnicas de
filtrado propuestas en [3] son:
1. Extension Contraste: La extension del contraste de
una imagen significa que se realiza la ecualizacion del
histograma de esa imagen. En otras palabras, hacer que
la imagen se agudice. La ecualizacion de histograma es
una tecnica para mejorar la apariencia de una imagen
contrastada pobre.
2. Filtro de media: Se utiliza para la eliminacion de
las regiones ruidosos no deseadas. En este metodo
de filtrado, las matrices de 3x3 se hacen pasar
alrededor de toda la imagen. La dimension de este

matrices se puede ajustar de acuerdo con el nivel de


ruido que se presente en la imagen con la que se trabaja.
3. El metodo de coloracion blob: El algoritmo de coloracion blob (Binary Large Object) utiliza una plantilla
especial en forma de L para escanear la imagen de
izquierda a derecha y de arriba a abajo. Este proceso
de digitalizacion determina las regiones independientes
mediante la obtencion de las conexiones en las cuatro
direcciones.
Para la etapa de Segmentacion de patrones en este
documento se presentan dos metodos u tiles para coseguir
segmentar la imagen de la placa obtenida en la etapa de
extraccion.
II-B1. Funcion de lnea y enmarcado: La imagen
obtenida es convertida a imagen binaria. Entonces cada
caracter de la placa se separa mediante una funcion de lneas
para luego enmarcar cada caracter (de color negro) con fondo
blanco detectado, esto es posible realizar, debido a que la
imagen esta en escala de grises. [6], el resultado se puede
observar en la Figura3 (a).

(OCR) [6].
En los tres sistemas de reconocimiento de placas propuestos,
los numeros y las letras se clasificaron mediante el uso de
dos redes neuronales por separado para aumentar la tasa
de e xito de la fase de reconocimiento. Ambas redes tienen
misma arquitectura pero la una se usa para los 10 numeros y
otra para las 26 letras, con el fin de evitar confusion durante
el reconocimiento [3].
En el enfoque propuesto por Kocer y Cevik, se utilizo un
modelo de red neuronal de perceptron multicapa (MLP ANN),
con una capa oculta para la clasificacion de los patrones. La
red neuronal disenada para utilizar este metodo tiene tres
capas: capa de entrada, una capa oculta y la capa de salida
como se muestra en la Figura4. El numero de neuronas de
la capa oculta dependera de experiencias de aprendizajes de
la red, permitiendo aumentar el numero de neuronas segun
convenga.

II-B2. Metodo de escaneo de ventanas finas: En [4] el


autor propone el metodo de escaneo de ventanas finas para
extraer los caracteres de la placa, mostrado en la Figura3 (b).
Este metodo se lleva a cabo mediante la comprobacion de la
media de cada particion en la imagen. Al revisar la media de
cada particion, se puede decidir que la particion es una parte
del caracter o del fondo. En este proceso, el fondo se define
como blanco (1) y el caracter se define como negro (0).

Figura 4. Arquitectura de una red de retroalimentacion [7].

Figura 3. Segmentacion de Patrones (a). Funcion Lneas y enmarcado (b).


Metodo escaneo de ventanas finas

II-C.

Reconocimiento de caracteres

Es la parte mas importante del sistema, pues es aqu donde


se realiza el reconocimiento de los caracteres segmentados en
la seccion anterior. Al Reconocimiento de Caracteres tambien

se lo conoce como Reconocimiento Optimo


de Caracteres

Para el ejemplo propuesto en [1] y [2] cada letra tiene


un tamano de 5x7 respresentada con valores booleanos, por
lo tanto la red recibe 35 valores booleanos como vector
de entrada, los cuales son requeridos para identificar los
26 elementos del vector de salida que representan a cada
letra del abecedario. Para que funcione correctamente,
la red debe responder con un 1 en la posicion de la
letra que se presento a la red y todos los demas valores en
el vector de salida deben ser 0, como se muestra en la Figura5
Ademas, la red debe ser capaz de manejar el ruido, ya que
en la practica la red neuronal no recibe un vector booleano
perfecto como entrada. En concreto, la red debe cometer la
menor cantidad de errores posible en la clasificacion de los
caracteres.
Existen muchos algoritmos de entrenamiento de una red
neuronal artificial, a continuacion se detallaran tres:

las caractersticas de cada caracter, 36 nodos ocultos y 36


nodos de salida ( se hace uso de una solo red neuronal para
reconocer letras y numeros).
II-C2. Vector Cuantificador de Aprendizaje: Es una red
hbrida. En [6], LVQ utiliza aprendizaje supervisado para
realizar la clasificacion de caracteres. En la red LVQ cada
neurona en la primera capa se le asigna a una clase, cada
clase se asigna a una neurona en la segunda capa. Hay tres
pasos basicos en el algoritmo LVQ:
1. Inicializacion,
2. Competencia y
3. Aprendizaje.

Figura 5. Datos de entrada observados.

II-C1. Algoritmo de backpropagation: Este es un


algoritomo de entrenamiento supervisado. Cuyo diseno se
basa en que cada neurona en la capa de entrada se alimenta
directamente a las neuronas de la capa oculta a traves de una
serie de pesos. La suma de los productos de los pesos y las
entradas se calcula en cada nodo haciendo pasar dicha suma
a traves de una funcion de activacion. Los valores calculados
se alimentan directamente a las neuronas de la capa de salida
a traves de una serie de pesos nuevamente. Al igual que en la
capa oculta, la suma de los productos de los pesos y las salidas
de las neuronas de la capa oculta se calculan en cada nodo en
la capa de salida. Una vez concluido este proceso, si el error
entre la salida calculada y la salida deseada es mayor que la
relacion de error, se procede a cambiar los pesos y calcular
la nueva salida, convirtiendose en un proceso iterativo.
Este proceso puede ser terminado por la obtencion de la
tasa de error deseado para todas las combinaciones de entrada.
Para el proceso de entrenamiento de la ANN en [3] el
algoritmo de entrenamiento utiliza la funcion sigmoide cono
funcion de activacion para hallar las salidas, ademas que
usa el valor de la funcion de error cuadratico medio para
determinar el grado de ajuste de la salida de la red a la salida
deseada.

La red neurona artificial de Vector Cuantificador de


Aprendizaje combina aprendizaje competitivo con aprendizaje
supervisado. El Vector Objetivo esta en forma de un
registro sigmoide (matriz de identidad). La Tabla 2 muestra
los resultados del reconocimiento de caracteres usando
Volver Red Propagacion Neural (BPNN) y Aprendizaje
Cuantificacion Vectorial Red Neural (LVQ NN).
II-C3. Mapa Autoorganizado (SOM): Desarrollado por
Kohonen (1995), tambien llamado red neuronal de Kohonen,
el cual es una red eficaz para el analisis de datos multidimensionales. SOM es una ANN, adecuada para la agrupacion de
datos. La red SOM presentada en [5] consta de dos capas de
neuronas: una capa de entrada, donde se aplican las entradas
a la ANN, y una capa de salida de las neuronas llamados capa
competitiva, donde se forman la agrupacion de las entradas.
SOM es un algoritmo de aprendizaje no supervisado, es decir,
aqu no hay salida deseada , la red tiene que descubrir por
s sola la funcion, modelo, cluster, y la regulacion de los datos
de entrada de forma automatica. La idea de este algoritmo es
encontrar la unidad ganadorade cada vector de entrada, y
la modificacion de los coeficientes se realiza para la unidad
ganadora y tambien para todas las unidades de la vecindad de
la unidad ganadora. Esta red es como un mapa de un conjunto
de datos de entrada que se muestra en la figura II-C3.

En [4] el autor tambien propone un algoritmo de backpropagation y recomienda utilizar 10 neuronas en la capa
oculta para el reconocimiento de numeros y 20 para el
reconocimiento de letras. El valor de los elementos de
cada uno de las salidas son todos cero, excepto uno de los
elementos de la posicion especfica que representan el numero
o letra reconocido. Por ejemplo, el primer elemento es 1 en
la salida de las letras lo cual representa la A.
[6] usa algoritmo de backpropagation pero con la funcion
de transferencia tansigmoide. El diseno de la red BP NN
realizada por el autor tiene 540 nodos de entrada para

Figura 6. Estructura basica de un mapa auto-organizado.

III.

C ONCLUSION

Las aplicaciones de las redes neuronales artificiales tiene


una extensa lista, una de ellas y con gran relevancia en el
reconocimiento de caracteres aplicando al reconocimiento
de placas vehiculares, el cual tiene un proposito importante
que es permitir a quienes controlan el trafico, realizar su
trabajo de manera mas eficiente debido a que los resultados
obtenidos mediante este sistema son buenos si consideramos
todos los requisitos necesarios para el correcto diseno de
la red neuronal entre ellos: numero de neuronas entradas,
numero de salidas deseadas, numero de neuronas en la capa
oculta, funcion de activacion, valor de umbral y mejorar los
patrones de entrada para que la red pueda lidiar con el ruido
que se presente.
Con el fin de evaluar el rendimiento del sistema propuesto
en [3], se emplearon 259 imagenes de vehculos. Funcion de
activacion sigmoide, un valor maximo de 5.000 iteraciones
para cada conjunto de entrada, tasa de error mnimo definido
en 0,001. Solo una de las imagenes de entrada se utilizo para
probar el sistema, el resto se realizo en fase de entrenamiento.
Como resultado se obtuvo un porcentaje de reconocimiento
del sistema igual a 93,36 %.
El e xito de proceso de reconocimiento fue del 71 % para
el diseno de la red propueto en [4], este bajo rendimiento se
debe a errores de consideracion tanto en el diseno de la red
como de los parametros usados.

Figura 7. Algoritmo LVQNN vs BP.

R EFERENCIAS
[1] Rokus Arnold and Poth Miklos. Character recognition using neural
networks. In Computational Intelligence and Informatics (CINTI), 2010
11th International Symposium on, pages 311314. IEEE, 2010.
[2] S Chetan. Character recognition using artificial neural networks, 2009.
[3] H Erdinc Kocer and K Kursat Cevik. Artificial neural networks based
vehicle license plate recognition. Procedia Computer Science, 3:1033
1037, 2011.
[4] Haris Al-Qodri Maarif and Sar Sardy. Plate number recognition by using
artificial neural network. Prosiding Semiloka Teknologi Simulasi dan
Komputasi setra Aplikasi, 2006.
[5] Hann Meng and Daniel Morariu. Khmer character recognition using artificial neural network. In Asia-Pacific Signal and Information Processing
Association, 2014 Annual Summit and Conference (APSIPA), pages 18.
IEEE, 2014.
[6] Anuja P Nagare. License plate character recognition system using neural
network. International Journal of Computer Applications,(09758887)
Volume, 2011.
[7] B Vani, M Shyni Beaulah, and R Deepalakshmi. High accuracy optical
character recognition algorithms using learning array of ann. In Circuit,
Power and Computing Technologies (ICCPCT), 2014 International Conference on, pages 14741479. IEEE, 2014.

En [6], el autor propuso dos tecnicas para el reconocimiento


de caracteres BackPropagation y Aprendizaje Cuantificacion
Vectorial, los resultado pueden ser observados en la Figura7,
por lo que se concluye que la precision de reconocimiento
de LVQNN es mayor que BPNN obteniendo una precision
global del 67 % para BPNN vs una precision del 94 % para
LVQNN.
El sistema de reconocimiento de caracteres Khmer
propuesto en [5] trata la tecnica de mapa autoorganizacion
(SOM), el cual trabaja junto con modulos clasificadores que
podran mejorar el rendimiento del sistema, la velocidad y la
precision del reconocimiento. Como resultado, su uso podra
reducir la complejidad y permite mas rapido se reconoce el
caracter ya que el resultado de preclasificacion se activa un
modulo especfico de clasificadores perceptron multicapa. El
reconocimiento promedio de conjunto de datos formado como
resultado 65 % de predicciones correctas y sin entrenamiento
conjunto de datos es de aproximadamente solo el 30 % de
prediccion correcta con tasa de ruido.
Observando los porcentajes mostrados anteriormente
con respecto a la precision de reconocimiento de las tres
diferentes tecnicas de reconocimiento de caracteres propuestas,
se concluye que la red que mejor resultado presento fue la
tecnica de Aprendizaje Cuantificacion Vectorial, propuesta en
[6] .

Erika Lisbeth Maldonado Pineda (A1992,


M4, D11) Nacio en la cuidad de Machala en
la provincia de El Oro - Ecuador, el 11 de Abril de
1992. Se graduo en la Unidad Educativa La Inmaculada como Bachiller en Ciencias con especialidad
Fsico Matematico. Actualmente es coordinadora
WIE de la Rama IEEE de la Universidad de Cuenca
y cursa sus estudios de Ingeniera Electronica y
Telecomunicaciones en la misma.