• No se han encontrado resultados

Sistema automático de reconocimiento de placas vehiculares

N/A
N/A
Protected

Academic year: 2020

Share "Sistema automático de reconocimiento de placas vehiculares"

Copied!
76
0
0

Texto completo

(1)1. Facultad de Ingeniería. Proyecto de Grado para la obtención del título en Ingeniería de Telecomunicaciones Universidad Cooperativa de Colombia, Bogotá. Sistema automático de reconocimiento de placas vehiculares. Integrantes: Julián Alejandro Vásquez. Jersson Andrey Melo Morales..

(2) 2 Noviembre de 2018. Resumen. La implementación de este proyecto pretende diseñar un sistema de conteo y reconocimiento automático de placas vehiculares, para el parqueadero de la sede principal de la Universidad Cooperativa de Colombia seccional Bogotá, el cual permita el ingreso vehicular a la sede, únicamente al personal autorizado, el cual será previamente registrado en una base de datos, la cual será actualizada, con el análisis respectivo de esta investigación. Este dispositivo automatizará el ingreso y la salida de vehículos en la sede de la universidad. El proyecto se dividirá en 4 capítulos principales, en el primero, se formularán los objetivos, se planteará la pregunta de investigación, se darán a conocer la justificación, la viabilidad, el presupuesto, el cronograma de actividades, el alcance de éste. El segundo capítulo se titula: Revisión de la Literatura y en él se expondrán los diferentes sistemas de Reconocimiento Automático de Placas Vehiculares que ya se encuentran implementados en diferentes ciudades, se describirán sus aplicaciones y se hará una pequeña descripción de cada uno. El tercer capítulo titulado marco teórico definirá todos los conceptos que hay que tener claros, previo a la implementación de este proyecto. Teniendo en cuenta esto el capítulo 4 se centrará en el diseño del sistema de reconocimiento y todo lo que esto conlleva en donde estructuraremos todo el procesamiento con sus diferentes etapas. Por último, daremos una conclusión de la investigación de este proyecto enfocándonos en una futura implementación de este si es posible..

(3) 3.

(4) Tabla de contenido Capítulo 1 Planteamiento del Problema de Investigación ..................................... 6 1.1 Objetivos .................................................................................................... 6 1.1.1 Objetivo General.............................................................................. 6 1.1.2 Objetivos específicos....................................................................... 6 1.2 Pregunta de Investigación General ................................................................. 6 1.3 Justificación .................................................................................................... 7 1. 4 Viabilidad ....................................................................................................... 8 1.5 Deficiencias de la Evaluación ......................................................................... 8 1.6 Cronograma .................................................................................................... 9 1.8 Matriz DOFA ................................................................................................. 10 1.9Alcance de Investigación ............................................................................... 11 Capítulo 2 Revisión de la Literatura ................................................................... 12 2.1 Sistemas ANPR .......................................................................................... 12 2.2 Implementación de ANPR ........................................................................... 13 2.2.1 SmartLPR ........................................................................................... 13 2.2.2 Sistema de Peajes en California ......................................................... 14 2.2.3 Sistema ANPR de vehículos industriales ............................................ 15 2.2.4 Biometría Perú .................................................................................... 15 2.2.5 Zamir Recognition Systems Ltd. ......................................................... 17 2.2.6 sistema de reconocimiento de placas en un parqueadero .................. 17 2.3 Investigaciones y proyectos desarrollados en Colombia ............................ 18 2.3.1 Dyertron Tecnología ........................................................................... 18 2.3.2 Software de demostración para el reconocimiento de caracteres ...... 18 2.3.3 Sistema de Reconocimiento De placas de vehículos. ........................ 19 2.3.4 sistema de reconocimiento de placas de automóviles ........................ 19 2.4 Conclusiones del Capítulo 2 ....................................................................... 20 Capítulo 3 Marco Teórico ................................................................................... 21 3.1. Software ..................................................................................................... 21 3.1.1. Microsoft Access ................................................................................ 21 3.1.1.1. Requisitos de Hardware ................................................................. 21 3.1.2. Procesador ........................................................................................ 22 3.1.2.1. Preprocesamiento de imágenes ................................................... 22 3.1.2.1.1. Filtración espacial ........................................................................ 22 3.1.2.1.2. Binarización ................................................................................. 23 3.1.2.1.2.1. Cuadratura ................................................................................ 23 3.1.2.1.2.1.1 Histograma.............................................................................. 23 3.1.2.1.2.2. Binarización de caracteres ........................................................ 23 3.1.2.1.3. Segmentación .............................................................................. 24 3.1.2.1.3.1. Segmentación de caracteres .................................................. 25 3.1.2.1.3.2. Segmentación de Imágenes ..................................................... 25 3.1.2.1.4. Dilatación ..................................................................................... 25 3.1.2.1.4.1. Reconstrucción de Caracteres .................................................. 26. 4.

(5) 5 3.1.2.2. Procesamiento ............................................................................... 26 3.1.2.2.1. Reconocimiento de patrones ................................................ 26 3.1.2.2.1.1. OCR ........................................................................................ 27 3.1.2.2.1.2. OCRAD ................................................................................... 29 3.1.2.2.1.3. TESSERACT .......................................................................... 29 3.1.2.2.1.4. GORC ..................................................................................... 29 3.1.2.2.2. Crecimiento de regiones .............................................................. 30 3.1.2.2.2.1. Ampliación de sector ................................................................. 31 3.1.2.2.2.2. Aumento de pixeles .................................................................. 31 3.1.2.2.3. Reconstrucción de Caracteres ..................................................... 32 3.2. Hardware .............................................................................................. 32 3.2.1. Sensores ...................................................................................... 32 3.2.1.1. Cámaras ........................................................................................ 32 3.2.1.1.1. Resolución de imagen .......................................................... 33 3.2.1.1.2. Iluminación ............................................................................ 34 3.3. Formato de las Imágenes .............................................................. 34 3.3.1. Formato JPG o JPEG (Joint Photographic Experts Group) ........... 34 3.3.2. Formato Tif oTiff (Tagged Image File Format) ............................... 34 3.3.3. Formato BMP (Bit Mapped Picture) ............................................... 35 3.4. Conectividad .................................................................................. 35 3.5. Ordenadores ................................................................................... 37 3.5.1. Sistema operativo ............................................................................. 37 3.5.1.2. RAM ......................................................................................... 38 3.5.1.3. Procesador............................................................................... 38 3.5.1.4 Disco duro .................................................................................. 39 3.5.1.5. Servidores ................................................................................. 39 Capítulo 4 Diseño del Sistema de Reconocimiento de Placas Vehiculares ....... 40 4.1 Pre-Procesamiento de Imágenes ............................................................ 40 4.2 Fundamento del Procesamiento de imágenes ......................................... 42 4.2.1 Procesamiento Óptico de Imágenes ..................................................... 42 4.2.2 Procesamiento Digital de imágenes ..................................................... 43 4.3 Análisis del objeto ................................................................................. 44 4.4 Reconocimiento del Carácter ...................................................................... 61 Conclusiones ...................................................................................................... 70 Lista de referencias............................................................................................. 71.

(6) 6 Capítulo 1 Planteamiento del Problema de Investigación. 1.1 Objetivos. 1.1.1 Objetivo General Diseñar un sistema de reconocimiento automático de placas vehiculares, mediante un motor de procesamiento para la identificación óptica de caracteres, en el parqueadero de la sede principal de la universidad cooperativa de Colombia seccional Bogotá.. 1.1.2 Objetivos específicos  Analizar imágenes de placas vehiculares y tratarlas con procedimientos que permitan la identificación de caracteres.  Diseñar algoritmos de pre-procesamiento de imágenes y procesamiento de imágenes.  Agilizar la gestión de la información vehicular en el parqueadero de la sede principal de la UCC seccional Bogotá.. 1.2 Pregunta de Investigación General ¿Cómo es el funcionamiento de un sistema de reconocimiento automático de placas vehiculares (ANPR, del inglés Automatic number plate recognition)?.

(7) 7 1.3 Justificación Considerando los avances tecnológicos actuales y con el fin de aumentar la competitividad tecnológica y el nivel de seguridad de la UCC, se plantea el proyecto “Sistema automático de reconocimiento de placas vehiculares” el cual pretende brindar una mayor agilidad en el ingreso vehicular de la comunidad académica a la sede principal de la UCC seccional Bogotá. Actualmente el sistema de parqueo en la sede principal de la UCC seccional Bogotá es Vulnerable debido a que la autorización de los vehículos que ingresan a la sede se realiza de forma manual y el único criterio para dejar o No ingresar a los vehículos, es a través del carnet de la Universidad, el cual actualmente no cuenta con mecanismos de autenticación que permitan verificar su veracidad. El sistema planteado contribuye a la mejora de la calidad de servicio que presta la UCC a la comunidad académica, tanto tecnológicamente como a nivel de seguridad ya que contribuye a tener un control sobre flujo de vehículos que ingresan a la sede, impidiendo así el acceso a personas no autorizadas o ajenas a la universidad. Este proyecto pretende diseñar un sistema de reconocimiento automático de placas vehiculares, orientado a la posible futura implementación de un parqueadero inteligente, (previa autorización y financiamiento por parte de la UCC)..

(8) 8 1. 4 Viabilidad Para ejecutar este proyecto es necesario actualizar una base de datos, que incluya a todos los usuarios autorizados de la comunidad académica que pueden ingresar al parqueadero de la sede principal de la UCC seccional Bogotá. Adicional a esto se requerirá de un tiempo de aproximadamente 9 meses para realizar la investigación, dentro de la cual se necesitarán los siguientes elementos:. . 2 computadores para los desarrolladores del proyecto.. . software de reconocimiento óptico de caracteres.. . 2 cámaras HD.. . 1 computador para administrar el sistema de reconocimiento.. . Cableado de alimentación y transmisión de datos.. . Licenciamiento de software.. . Recursos humanos: 2 personas creadoras y desarrolladoras del proyecto. NOTA: Los recursos para financiar esta investigación correrán por cuenta de los desarrolladores del proyecto.. 1.5 Deficiencias de la Evaluación . Este es un estudio preliminar y de diseño, NO contempla Implementación.. . Se abre la posibilidad a la implementación, con previa autorización y financiamiento por parte de la UCC..

(9) . 9 Las personas encargadas del control de acceso al parqueadero necesitarían una capacitación para el manejo y monitoreo del sistema de reconocimiento. . Si el sistema es adaptado, se deberá tener en cuenta los costos de mantenimiento, las revisiones periódicas y el consumo de energía de todos los elementos del sistema.. 1.6 Cronograma Cronograma de actividades Sistema automático de reconocimiento de placas vehiculares. CALENDARIO. N° Actividades. Julio. Agosto. Septiembre. Octubre. Noviembre Diciembre. 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 I Fase de Investigación 1 planteamiento del problema de Investigación y Justificación 2 planteamiento de Objetivos 3 estado del Arte y Análisis del proyecto. II. Fase de Diseño 4. Construcción del presupuesto y análisis comparativo del sistema para determinar viabilidad 5. Análisis del sistema seleccionado 6. Programación y Diseño de la Solución III. Fase de Pruebas 7. Simulación y validación 8. Montaje y ejecución de prototipo 9. Susceptibilidad para cambios, mejoras y tiempo de adaptación al prototipo.. 4 1 2 3 4.

(10) 10 1.7 Presupuesto. 1.8 Matriz DOFA.

(11) 11 1.9 Alcance de Investigación El alcance de este proyecto es Correlacional, debido a que la formulación del mismo pretende encontrar una o varias relaciones entre las variables de tiempo, espacio, y capacidad de almacenamiento que involucran el diseño del sistema de reconocimiento de placas vehiculares en la sede principal de la UCC seccional Bogotá, en pro a una optimización de la capacidad del parqueadero, a la seguridad de la Universidad y a lograr una automatización en el ingreso vehicular a la sede por parte de la comunidad académica. El proyecto es un estudio preliminar y de diseño, el cual NO contempla su implementación. Para la implementación del mismo (si se llegara dar), se deberá tener en cuenta que las personas encargadas del control de acceso al parqueadero, necesitarán de una o varias capacitaciones para el manejo y monitoreo del sistema de reconocimiento; con esto, se deberá tener en cuenta los costos de mantenimiento, las revisiones periódicas y el consumo de energía de todos los elementos del sistema los cuales correrán por la parte de la UCC. El proyecto brinda la posibilidad de ser implementado en cualquier otro parqueadero, por lo cual existe la probabilidad de convertir el proyecto en la creación de una empresa que preste los servicios de control de acceso de vehículos y conteo de cupos en cualquier parqueadero..

(12) 12 Capítulo 2 Revisión de la Literatura. En este capítulo se expondrán Los diferentes sistemas de Reconocimiento Automático de Placas Vehiculares (ANPR, por sus siglas en inglés) que ya se encuentran implementados en diferentes ciudades, se describirán sus aplicaciones y se hará una pequeña descripción de cada uno de estos.. 2.1 Sistemas ANPR El primer ANPR fue creado en 1976 por la rama de desarrollo de la Policía Científica, en el Reino Unido. Pero no fue hasta 1979 en que se pone en funcionamiento el primer prototipo, y la consecución de los primeros contratos para su producción como sistema industrial en EMI Electronics, y luego en Informática de Sistemas de Reconocimiento (SRC) en Wokingham, Reino Unido. Los primeros sistemas de prueba fueron desplegados en la carretera A1 de Londres y en el túnel de Dartford. La tecnología utilizada en el reconocimiento automático de matrículas (Automatic Number Plate Recognition o ANPR en inglés) es un método de vigilancia en masa que utiliza reconocimiento óptico de caracteres en imágenes para leer las matrículas de los vehículos. Ya a partir de 2005, los sistemas pueden escanear las matrículas con una frecuencia aproximada de una por segundo en vehículos con velocidades de hasta 160 km/h. Pueden utilizar un circuito cerrado de televisión existente o radares, o redes de cámaras diseñadas específicamente para dicha tarea. El software del.

(13) 13 sistema se ejecuta sobre un hardware de PC estándar y puede ser enlazado con otras aplicaciones o bases de datos. Primero utiliza una serie de técnicas de manipulación de la imagen para detectar, normalizar y realzar la imagen del número de la matrícula, y finalmente reconocimiento óptico de caracteres para extraer los alfanuméricos de la matrícula. (Garea LLano, 2010).. 2.2 Implementación de ANPR Los sistemas ANPR se pueden utilizar de dos modos; uno permite que el proceso sea realizado en su totalidad en el lugar de la toma en tiempo real, mientras que el otro transmite todas las imágenes de muchas cámaras a un ordenador remoto en que se realiza el proceso de OCR más tarde. Los ANPR utilizan el reconocimiento óptico de caracteres (OCR) en las imágenes tomadas por las cámaras fotográficas. Los sistemas ANPR deben poder hacer frente a estas diferencias para ser verdaderamente eficaces. A continuación, mostraremos algunos ejemplos que ya se han implementado en diferentes ciudades:. 2.2.1 Smart LPR De la firma Quercus Technologies, integran en un solo dispositivo a la cámara, el procesador, la fuente de iluminación y la de alimentación. Este sistema, según expresan sus fabricantes reconoce más del 98% de las matrículas siendo el 2% restante de matrículas con un deplorable estado de conservación. El tiempo de reconocimiento es inferior a 100 milisegundos, confunde menos de 3 caracteres de.

(14) 14 cada 7000 procesados, puede situarse en un ángulo de hasta 60 grados respecto a la posición tanto horizontal como cenital del vehículo y puede reconocer vehículos que se desplacen a velocidades de hasta 200 kilómetros por hora. Estos sistemas incluyen un OCR propio desarrollado por sus propios ingenieros (especialistas en visión artificial y en reconocimiento de matrículas vehiculares). Las tecnologías de lectura de matrículas desarrollada por Quercus tienen en cuenta diferentes factores que pueden afectar la correcta adquisición y procesamiento de la amplia variedad de matrículas, tales como: . Ubicación de las unidades lectoras: en función del tipo de instalación (interior/exterior) y el tipo de carril. . Ajuste de la lente: ajustar el zoom y el enfoque para obtener una imagen nítida. . Configuración del software OCR: configuración de parámetros internos para obtener el máximo rendimiento. . Estado de conservación de las matrículas: las unidades de lectura de matrículas de Quercus reconocen todo tipo de matrículas, sin tener en cuenta su estado de conservación. (Quercus, 2010). 2.2.2 Sistema de Peajes en California.

(15) 15 La autopista. FasTrack1. usa un sistema de OCR para reconocer a los vehículos. que pasan por el peaje y le facturan automáticamente a una tarjeta asociada a la placa del vehículo. (Quercus, 2010) .. 2.2.3 Sistema ANPR de vehículos industriales La Universidad Politécnica de Madrid, España, desarrolló para una empresa privada entre los años 1990 y 1991, un sistema ANPR de vehículos industriales. Este proyecto dio como resultado una alta efectividad en el reconocimiento, obteniendo alrededor de 90% de reconocimiento. Mencionan que se puede llegar a un 100 % de reconocimiento si las matrículas se encuentran en buen estado. (Zamir, 2011). 2.2.4 Biometría Perú Es un grupo empresarial que representa una. línea de Productos Biométricos. (Huella Digital, Rostro, Geometría de la mano), Conectividad, Control de acceso, Video Vigilancia Digital, impresoras de foto check y Lectores OMR. Entre los productos que ofrecen se encuentra un sistema de Reconocimiento de placas GV-LPR2, esta es una aplicación que utiliza Tecnología de Redes. 1. FasTrak permite que conducir su auto sea una experiencia más grata - al pagar el peaje rápidamente, al recibir descuentos en el peaje, al viajar sin tener que pagar peaje, al usar carriles rápidos de peaje y al pagar el estacionamiento. Empiece a disfrutar todas estas ventajas. Abra hoy mismo una cuenta de FasTrak y reciba su dispositivo electrónico de peaje. www.bayareafastrak.org 2. GeoVision's License Plate Recognition is an effective and low-maintenance solution to ensure the security of parking lots, which are prone to crimes due to isolated and unstaffed corners. http://www.geovision.com.tw/product/GV-LPR.

(16) 16 Neuronales de Inteligencia Artificial para la identificación de placas de matrícula de vehículos, comprende una tarjeta de captura de video, un software basado en un motor inferencia para reconocer caracteres, un conjunto de módulos I/O. 3. para integración con alarmas y sensores, y una base de datos para. almacenar imágenes de eventos para análisis retroactivo. Características: . Alto porcentaje de reconocimiento: 99%. . Alta velocidad de reconocimiento: < 0.3 segundos. . Con contador de vehículos para administrar la cantidad de lotes de parque disponibles en el área de estacionamiento. Llevando cuenta de vehículos que salen o entran.. . Capacidad de enfoque al vehículo o al conductor. . Los datos de reconocimiento son guardados en una BD de Access para fácil integración con otras aplicaciones.. . Múltiples tecnologías de reconocimiento son aplicadas hasta encontrar un resultado confiable. . Pueden activarse alarmas cuando un vehículo irreconocible o no autorizado es enfocado.. . 3. Inside/Outside. Proporciona visualización cuadro x cuadro..

(17) . 17 Marcas de agua en los clips de video para garantizar la autenticidad de estos.. . Superposición textual del número de placa en los videos grabados. (Biometria, 2009). 2.2.5 Zamir Recognition Systems Ltd. Creó el primer sistema compacto “TODO-en-UNO” para el reconocimiento de placas vehiculares, el cual elimina la necesidad de gastos de instalación, ya que tiene implementado un completo Sistema ANPR en una única y compacta unidad. Su instalación es muy sencilla, simplemente se conecta a la fuente y la red. La técnica consiste en una captura continua de Imagen, iluminación día y noche de larga duración, detección Virtual del Vehículo (Virtual Vehicle Detector) Software, placa de reconocimiento y digitalización. (Zamir, 2011) 2.2.6 sistema de reconocimiento de placas en un parqueadero En la universidad de Cambridge (una de las Principales Universidades del reino unido), un sistema ANPR basado en OCR, permite la entrada a los profesores y buses que van entre varios sitios del campus, los cuales han sido registrados previamente, sin tener que presentar permisos o registrarse a la entrada, por otra parte, los vehículos que no han sido autorizados esperan en un sitio predeterminado para ser inscritos en forma manual. El sistema controla las barreras de entrada, cuenta el número de carros parqueados y le permite a un guarda situado en una caseta ver qué vehículos están autorizados para ingresar al parqueadero y quien debe conducirlo. (APIACE S.A, 2013).

(18) 18 2.3 Investigaciones y proyectos desarrollados en Colombia En Colombia existen distintas investigaciones y proyectos relacionados con el procesamiento y análisis de imágenes aplicados al reconocimiento de placas vehiculares:. 2.3.1 Dyertron Tecnología Es una empresa colombiana que se dedica a crear soluciones integrales de tecnología para la sistematización de procesos con el fin de incrementar la productividad de empresas en diversas áreas, uno de sus productos es el sistema PX3, el cual cuenta con una Cámara de Video para clasificación de placas que permite el control de vehículos de categoría y/o tarifas especiales de manera automática y evita inconvenientes o demoras por errores de clasificación. Una vez ingresada la información del vehículo al sistema (incluyendo la placa, la categoría y alguna condición especial, entre otra información), el sistema al leer la placa, verificará la información y realizará la clasificación automáticamente, evitando errores en el registro por información mal ingresada por el operador. (DYETRON TECNOLOGIA S.A, 2008) 2.3.2 Software de demostración para el reconocimiento de caracteres En 1992 estudiantes de ingeniería electrónica de la Pontificia Universidad Javeriana desarrollaron un software de demostración para el reconocimiento de caracteres impresos en Turbo C++. El sistema tiene un funcionamiento de adquisición de.

(19) 19 imágenes por escáner y otras fueron generadas directamente de las fuentes del Mac tales como couner, new york y times utilizando un sistema de binarización. Este grupo de estudiantes basados en la investigación concluyeron que el uso de un formato grafico binario incrementa el tamaño de los archivos, pero facilita la manipulación de la información y permite mayor contabilidad con otros programas. (Universidad Pontificia Javeriana, 1992). 2.3.3 Sistema de Reconocimiento De placas de vehículos. La Pontificia Universidad Javeriana en el año 2005 por medio de un grupo de estudiantes realizó una investigación para proyecto de grado, la cual da como resultado un sistema capaz de identificar, procesar y almacenar placas vehiculares. Este proyecto fue desarrollado en la plataforma Microsoft.net con base en las funciones y clases del conjunto de librerías Open source Computer Visionpor. (Galindo, 2012). 2.3.4 sistema de reconocimiento de placas de automóviles La Universidad de los Andes lo desarrolló, el sistema utiliza el tratamiento de imágenes en sistemas de visión artificial para la automatización de este proceso, debido a que requirió la toma de decisiones basadas en características físicas de un objeto. Para esto se realizó un sistema de detección y reconocimiento de dichas características por medio de herramientas de análisis computacional. (Universidad de los Andes, 2011)..

(20) 20 2.4 Conclusiones del Capítulo 2. Al ver todas estas implementaciones de sistemas ANPR en diferentes ciudades, concluimos que para la implementación de este proyecto es muy importante conocer y entender la tecnología OCR, la cual es vital para el proceso. También es importante aclarar que el proceso de reconocimiento empieza desde la digitalización del objeto, es decir, que previó al reconocimiento de patrones ya se debe tener la imagen digital “apta” para ser procesada, y que de su calidad dependerá bastante el éxito del procesamiento. Es importante ver, como en otras ciudades esta implementación puede ser utilizada en diversas aplicaciones, las cuales, dependiendo de su función ayudan a realizar procesos de manera automática y segura, ayudando así a mejorar los índices de seguridad no solo en sitios cerrados como parqueaderos, si no en sitios abiertos como lo son las carreteras de un país. Una aplicación importante de la tecnología OCR, que es objeto de investigación y será desarrollado en este proyecto son los sistemas ANPR..

(21) 21 Capítulo 3 Marco Teórico. 3.1. Software Conjunto de programas, instrucciones y reglas informáticas que permiten ejecutar distintas tareas en una computadora. El software es desarrollado mediante distintos lenguajes de programación, que permiten controlar el comportamiento de una máquina. Estos lenguajes consisten en un conjunto de símbolos y reglas sintácticas y semánticas, que definen el significado de sus elementos y expresiones. Un lenguaje de programación permite a los programadores del software especificar, en forma precisa, sobre qué datos debe operar una computadora. (Porto, 2008). 3.1.1. Microsoft Access Es un sistema de gestión de bases de datos incluido en el paquete ofimático denominado Microsoft Office. Access es un gestor de datos que recopila información relativa a un asunto o propósito particular, como el seguimiento de pedidos de clientes o el mantenimiento de una colección de música, etc. Está pensado en recopilar datos de otras utilidades y manejarlos por medio de las consultas e informes. (Microsoft Access, s.f.). 3.1.1.1. Requisitos de Hardware Procesador de x32 o x64 bits a 1 GHz o más rápido con instrucciones SSE2. Memoria RAM de 1 GB (Windows de 32 bits) o 2 GB (Windows de 64 bits). 5 GB de disco. (Microsoft Access, s.f.).

(22) 22 3.1.2. Procesador El procesamiento, el análisis y la interpretación de imágenes es un campo de especialización muy importante de la visión artificial, que hace posible que un ordenador procese imágenes o fotografías bidimensionales (aisladas o bien conectadas en secuencias dinámicas o temporales) (Vicomtech-IK4., 2017). 3.1.2.1. Preprocesamiento de imágenes El preprocesamiento es el tratamiento que se le realiza a la imagen antes de iniciar con la identificación de caracteres para que sea más fácil la detección de letras y números. Para este preprocesamiento se realizan diferentes tratamientos de imágenes los cuales se mencionarán y definirán más adelante.. 3.1.2.1.1. Filtración espacial. El filtrado de las imágenes se puede realizar en el dominio de la frecuencia o en el dominio espacial. En el dominio de la frecuencia la operación de filtrado se reduce a una simple multiplicación de las transformadas mientras que en el dominio espacial es una operación de convolución. El teorema de convolución permite interpretar el filtrado desde dos puntos de vista: el resultado del filtrado puede ser la convolución de la imagen de entrada con la respuesta impulso del filtro o la transformada inversa del producto de la función de transferencia del filtro y la transformada de la imagen de entrada. Cada punto de vista se evalúa dependiendo las diferentes condiciones de las imágenes, sin embargo, la convolución es la.

(23) 23 técnica comúnmente utilizada. (Johanna Gonzalez Díaz; Mabel López Díaz, Diego Gonzalez Castillo., 2008). 3.1.2.1.2. Binarización. La Binarización de una imagen es un proceso de reducción de la información de la misma, en la que sólo persisten dos valores: verdadero y falso.. 3.1.2.1.2.1. Cuadratura. Desde el punto de vista del tratamiento de imágenes, un umbral se identifica como un valor de intensidad a partir del cual un grupo determinado de píxeles serán considerados como pertenecientes a un subconjunto determinado y catalogados como blancos, mientras que el resto se asignan a un segundo subconjunto, siendo en este caso etiquetados como negros (Ajenjo, 1993). 3.1.2.1.2.1.1 Histograma El histograma de la imagen constituye el punto de partida para la detección de un umbral, ya que es bien sabido que un histograma se define como la frecuencia relativa de los niveles de intensidad de una imagen. (Alegre Gutiérrez, Pajares Martinsanz, & de la Escalera Hueso, 2016) 3.1.2.1.2.2. Binarización de caracteres. La Binarización de una imagen es un proceso de reducción de la información de la misma, en la que sólo persisten dos valores: verdadero y falso. En una imagen digital estos valores se representan como: el color negro con valor de 0 y el blanco.

(24) 24 de 255. En el proceso y análisis de imagen, la binarización se emplea para separar las regiones u objetos de interés en una imagen del resto. Las imágenes binarias se usan en. operaciones booleanas o. lógicas para. identificar. individualmente objetos de interés o para crear máscaras sobre regiones. En muchos casos, una imagen binaria es el resultado de una segmentación por niveles de gris o de una segmentación por selección de un rango de color determinado. En otros casos, una imagen binaria es simplemente el resultado de una selección interactiva de regiones de interés, las cuales se utilizarán como mascaras de comparación o referencia. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008). 3.1.2.1.3. Segmentación Es un proceso orientado a la partición de la imagen digital en zonas disjuntas (clases) o en sus partes constituyentes. Para realizar dicho procedimiento, se organiza en 3 pasos: Etiquetado, Agrupación y Modelado. La segmentación de imágenes se puede clasificar en cinco grupos: Por valor de los píxeles, Por áreas, Por bordes, Basados en el color y la técnica orientada a la física. Debido a la velocidad de procesamiento que brindan los cuatro primeros grupos, son los más idóneos para el desarrollo del sistema. El quinto grupo, por su misma connotación, exige un desarrollo algorítmico más robusto y por ende más exigente en el procesamiento. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008).

(25) 25 3.1.2.1.3.1. Segmentación de caracteres. Este proceso se centra en la asignación de distintos valores a la intensidad de los diferentes puntos que componen las imágenes. Dicho valor de intensidad se selecciona de una gama de 256 niveles de grises. Estos niveles van desde 0, para el nivel más claro, hasta 255, para el nivel más oscuro. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008). 3.1.2.1.3.2. Segmentación de Imágenes. En el campo de la visión artificial es el proceso de dividir una imagen digital en varias partes (grupos de píxeles) u objetos. El objetivo de la segmentación es simplificar y/o cambiar la representación de una imagen en otra más significativa y más fácil de analizar. La segmentación se usa tanto para localizar objetos como para encontrar los límites de estos dentro de una imagen. Más precisamente, la segmentación de la imagen es el proceso de asignación de una etiqueta a cada píxel de la imagen de forma que los píxeles que compartan la misma etiqueta también tendrán ciertas características visuales similares. (Fundación Wikimedia, 2017) 3.1.2.1.4. Dilatación. Es la operación que da como resultado un conjunto de puntos, formado por todas las posibles sumas de pares de puntos, en las que uno pertenece al conjunto X y otro al elemento estructurante desplazado. Esta operación es también conocida como adición de Minkowski, es una operación de crecimiento progresivo: sobre.

(26) 26 cada uno de los puntos de la imagen se traslada el origen del EE, si la intersección del conjunto X con los píxeles a 1 del EE desplazado sobre el punto en estudio es no vacía, entonces el punto en cuestión pertenece a la dilatación de X. (Alegre Gutiérrez, Pajares Martinsanz, & de la Escalera Hueso, 2016) 3.1.2.1.4.1. Reconstrucción de Caracteres. La reconstrucción es una tecnología importante dentro del procesamiento de imágenes, y uno de sus resultados es la reconstrucción de objetos en dos y tres dimensiones. Por ejemplo, la reconstrucción 3D de datos de puntos escaneados. (Vicomtech-IK4., 2017). 3.1.2.2. Procesamiento. 3.1.2.2.1.. Reconocimiento de patrones. El objetivo del reconocimiento de patrones es la clasificación de un objeto basado en sus características. Señales, características y clases pueden ser de cualquier forma, por ejemplo, se puede clasificar imágenes digitales de letras en las clases «A» a «Z» dependiente de sus píxeles. Lo fundamental es clasificar patrones con base en un conocimiento previo e información estadística extraída de los patrones. Los patrones por clasificar suelen ser grupos de medidas u observaciones, definiendo puntos en un espacio multidimensional apropiado. Un sistema de reconocimiento de patrones completo consiste en un sensor que recoge las observaciones a clasificar, un sistema de extracción de características.

(27) 27 que transforma la información observada en valores numéricos o simbólicos, y un sistema de clasificación o descripción que, basado en las características extraídas, clasifica la medición. La clasificación utiliza habitualmente uno de los siguientes procedimientos: clasificación estadística (o teoría de la decisión) y clasificación estructural. El reconocimiento estadístico de patrones está basado en las características estadísticas de los patrones, asumiendo que han sido generados por un sistema probabilístico. El reconocimiento estructural de patrones está basado en las relaciones estructurales de las características. Para la clasificación se puede usar un conjunto de aprendizaje, del cual ya se conoce la clasificación de la información a priori y se usa para entrenar al sistema, siendo la estrategia resultante conocida como aprendizaje supervisado. El aprendizaje puede ser también no supervisado, el sistema no tiene un conjunto para aprender a clasificar la información a priori, sino que se basa en cálculos estadísticos para clasificar los patrones. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008). 3.1.2.2.1.1. OCR El reconocimiento óptico de caracteres (Optic Character Recognition OCR) realiza una simulación de la habilidad humana para el reconocimiento automático de patrones entre los diferentes caracteres alfanuméricos existentes mediante la creación y uso de modelos físicos y matemáticos..

(28) 28 Existen diferentes enfoques a la hora de generar modelos matemáticos para el reconocimiento de patrones. Los más populares son: . Redes Neuronales: Es un sistema inspirado en el funcionamiento del cerebro humano, que expresa la solución de un problema, no como una secuencia de pasos, sino como la evolución de un sistema dotado de cierta "inteligencia".. . Método Lógico: La resolución debe ser lo más cercano posible a la realidad de este, sin hacer suposiciones que no estén fundamentadas. Se utiliza conjuntos. difusos. y. lógica. simbólica,. circuitos. combinacionales. y. secuenciales, etc. . Método Evolutivo: En este método se define una estructura de datos que admite todas las posibles soluciones a un problema. Cada uno de los conjuntos de datos admitidos por esa estructura será un resultado. Las soluciones al problema son capaces de reproducirse entre sí, combinando sus características y generando nuevos resultados.. . Método Probabilista: Se basan en la teoría de la probabilidad y la estadística,. utiliza. análisis. de. varianzas,. covarianzas,. dispersión,. distribución, etc; para encontrar la solución que mejor resuelve un problema específico. . Método Geométrico (Clustering): Es un método de agrupación de una serie de vectores de acuerdo con un criterio de cercanía. Esta cercanía se define.

(29) 29 en términos de una determinada función de distancia, geometría de formas, vectores numéricos, puntos de atracción, etc. (Richard Gutierrez, 2015). 3.1.2.2.1.2. OCRAD Creado por Antonio Díaz, es un método de extracción de características geométrico. Es muy rápido, sensible al ruido y difícil de adaptar a nuevos símbolos. (Richard Gutierrez, 2015). 3.1.2.2.1.3. TESSERACT Desarrolla originalmente por Hewlett Packard, luego liberado por Google, considerado uno de los softwar’s libres de OCR más preciso, incluso mucho más potente que algunos softwar’s de propietario, es multiplataforma y tiene un tiempo de ejecución aceptable, sin embargo, presentan problemas para la depuración en el caso de que haya un fallo en la segmentación. El formato único que procesa es un TIFF y; se compila y ejecuta en Linux, Windows y Mac OS X. (Richard Gutierrez, 2015). 3.1.2.2.1.4. GORC Desarrollada por Joerg Schulenburg, se basa en un conjunto de reglas, es portable a diferentes sistemas operativos, el tamaño de las fuentes que soporta esta técnica.

(30) 30 es entre 20 - 60 píxeles y acepta muchos formatos de imágenes, como. pnm 4,. PBM5, pgm6, ppm7, pcx8, tga9. Sin embargo, tiene inconvenientes con letras cursivas, texto escrito a mano, adicionalmente es muy sensible a imágenes que contenga ruido y grandes ángulos de inclinación, por lo que se necesita de un gráfico de alta calidad para conseguir buenos resultados. (Richard Gutierrez, 2015). 3.1.2.2.2. Crecimiento de regiones El crecimiento de regiones consiste en separar elementos que tienen características en común. Está orientado a buscar regiones uniformes en la imagen, basándose en la idea de conectividad y similitud de los píxeles. En el proceso de crecimiento de regiones la entrada es una imagen g (i,j) en donde cada región se forma a partir de uno o más píxeles considerados semillas y evoluciona por incorporación de aquellos vecinos que satisfacen las condiciones de similitud establecidas. El proceso finaliza cuando no hay más elementos que cumplan la condición y se obtiene como salida. 4. Bitmap image created in the Portable Any Map format, which was designed to handle several types of portable monochrome, grayscale, and color images; may include raster graphic data in a .PBM, .PGM, or .PPM format; may be stored using binary data or ASCII text. 5 1-bit black and white image; formatted in text format; basic raster image format in which each pixel is represented by a byte that contains a 1 or 0; 1 represents black and 0 represents white pixels. 6 A PGM file is a grayscale image file saved in the portable gray map (PGM) format and encoded with one or two bytes (8 or 16 bits) per pixel. It contains header information and a grid of numbers that represent different shades of gray from black (0) to white (up to 65,536). PGM files are typically stored in ASCII text format, but also have a binary representation. 7 A PPM file is a 24-bit color image formatted using a text format. It stores each pixel with a number from 0 to 65536, which specifies the color of the pixel. PPM files also store the image height and width, whitespace data, and the maximum color value. 8 Raster image format developed by ZSoft; became one of the original bitmap image formats for the DOS/Windows platform; supports 24-bit color images, 8-bit grayscale and indexed color images, and 1-bit black and white images; compressed using RLE encoding. 9 A TGA file is a file saved in the raster graphic format designed by Truevision. It supports 8, 16, 24, or 32 bits per pixel at a maximum of 24 bits for RGB colors and 8-bit alpha channel. TGA files are often used to store texture files referenced by 3D video games..

(31) 31 una o varias matrices donde surgen las regiones de interés separadas de la imagen original. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008). 3.1.2.2.2.1. Ampliación de sector. Se utiliza la técnica de crecimiento de regiones del crecimiento de regiones por píxeles blancos, pero en este caso se utilizan como semillas píxeles negros y se hacen crecer hasta conformar el contorno de cada carácter. Para conocer las capas donde se ubican los caracteres se calcula la cantidad de píxeles negros existentes en cada capa y se escogen los seis mayores ya que las regiones de mayor tamaño serán las que contienen las letras y los números.. 3.1.2.2.2.2. Aumento de pixeles. La técnica del crecimiento de regiones consiste en agrupar píxeles o subregiones con características en común, para luego ubicarlas en diferentes matrices. El método más sencillo es la adición de píxeles, en donde se comienza con un conjunto de puntos denominados semillas y se hacen crecer las regiones añadiendo a cada semilla aquellos píxeles vecinos que tengan propiedades similares. En el caso de la placa y los residuos de ruido la propiedad similar es el color blanco de sus píxeles. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008).

(32) 32 3.1.2.2.3. Reconstrucción de Caracteres. Para reconstruir los caracteres afectados y lograr recuperar su forma original, se realiza una operación de dilatación con un elemento estructurante rectangular de 5x2. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008). 3.2. Hardware La palabra hardware en informática se refiere a las partes físicas tangibles de un sistema informático; sus componentes eléctricos, electrónicos, electromecánicos y mecánicos. Cables, gabinetes o cajas, periféricos de todo tipo y cualquier otro elemento físico involucrado componen el hardware; contrariamente, el soporte lógico e intangible es el llamado software. (Hardware, s.f.). 3.2.1.. Sensores. Un sensor es un objeto capaz de detectar magnitudes físicas o químicas, llamadas variables de instrumentación, y transformarlas en variables eléctricas. Las variables de instrumentación pueden ser, por ejemplo: intensidad lumínica, temperatura, distancia, aceleración, inclinación, presión, desplazamiento, fuerza, torsión, humedad, movimiento, pH, etc. Una magnitud eléctrica puede ser una resistencia eléctrica, una capacidad eléctrica, una tensión eléctrica, una corriente eléctrica, etc. (Sensor, s.f.) 3.2.1.1. Cámaras.

(33) 33 Una cámara fotográfica o cámara de fotos es un dispositivo utilizado para capturar imágenes o fotografías. Es un mecanismo antiguo para proyectar imágenes, en el que una habitación entera desempeñaba las mismas operaciones que una cámara fotográfica actual por dentro, con la diferencia que en aquella época no había posibilidad de guardar la imagen a menos que esta se trazara manualmente. Las cámaras actuales se combinan con elementos sensibles al espectro visible o a otras porciones del espectro electromagnético, y su uso principal es capturar la imagen que se encuentra en el campo visual. (Cámara fotográfica, s.f.) 3.2.1.1.1.. Resolución de imagen. Es el grado de detalle o calidad de una imagen digital ya sea escaneada, fotografiada o impresa. Este valor se expresa en ppp (píxeles por pulgada) o en inglés dpi (dots per inch). Cuantos más píxeles contenga una imagen por pulgada lineal, mayor calidad tendrá. La resolución de un monitor se refiere al número de píxeles por pulgada que es capaz de mostrar. La resolución de una pantalla de ordenador PC es de 72 ppp. En una impresora se habla del número de puntos por pulgada que puede imprimir: 600, 1200, etc. Algunos escáneres suelen producir imágenes con una resolución por defecto de 200 ppp. Las cámaras digitales prestan una calidad que se expresa en MegaPíxels; así por ejemplo una cámara de 8 MP es aquella capaz de tomar una fotografía con 8 millones de píxeles. (Ministerio de Educación, Política Social y Deporte., 2018).

(34) 34 3.2.1.1.2.. Iluminación. La luz es la materia prima imprescindible para la fotografía. La fotografía no puede existir sin la luz ya que se vale de ella para ser creada. Podemos tomar fotos sin objetivos e incluso sin cámaras, pero nunca podríamos hacerlo sin tener iluminación en la escena o en el objeto. Es por este motivo por el cual el control y el conocimiento de la iluminación fotográfica se convierten en algo imprescindible si queremos mejorar nuestras imágenes. (FotoNostra Fotografía y diseño gráfico digital, 2017) 3.3.. Formato de las Imágenes. 3.3.1. Formato JPG o JPEG (Joint Photographic Experts Group) JPG es un formato en el cual cada píxel posee 8 bits en cada canal del espacio de color RGB es decir cada píxel posee una profundidad de 24 bits. La compresión JPG es excelente a pesar de ser una compresión con pérdidas, su grado de compresión es ajustable, pero está directamente relacionado con el tamaño del archivo. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008) 3.3.2. Formato Tif oTiff (Tagged Image File Format) El formato TIFF permite almacenar archivos comparativamente grandes (más de 4 GB comprimidos), así como imágenes en colores verdaderos (hasta 32 bits por píxel) e imágenes blanco y negro. El formato TIFF es usado como un formato de almacenamiento sin perdidas y sin ninguna compresión, por esta razón los archivos.

(35) 35 de este formato suelen ser demasiado grandes, pero con una calidad de imagen excelente. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008) 3.3.3. Formato BMP (Bit Mapped Picture). El formato BMP es uno de los más simples. Un archivo BMP es un archivo de mapa de bits, es decir, un archivo de imagen de gráficos, con píxeles almacenados en forma de tabla de puntos que administra los colores como colores reales o usando una paleta indexada. El formato BMP ha sido estudiado de manera tal que permite obtener un mapa de bits independiente del dispositivo de visualización periférico. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008). 3.4.. Conectividad. Conexiones para periféricos: Los puertos de una PC son sus puntos de contacto con el mundo exterior, llámense dispositivos periféricos u otras computadoras. En la parte posterior de la PC se hallan por lo menos seis puertos, dos seriales y uno paralelo o uno serial, otro paralelo y uno PS/2. El resto son utilizados por el ratón, el teclado y el monitor. El puerto serial sirve para conectar periféricos lentos como el módem y el ratón. Los datos se transmiten sucesivamente sólo en una línea de datos. Las conexiones se realizan con enchufes de 9 o 25 pins. En DOS y Windows los puertos seriales se conocen como puertos COM (Communication) COM1 y COM2, y el máximo son cuatro puertos seriales en una PC..

(36) 36 A fin de que la PC registre la llegada de datos a los puertos se usan las interrupciones, es decir señales que indican que un dispositivo quiere transferir datos. Esto sirve para que el CPU no consulte innecesariamente los puertos no utilizados. Cuando llega una IRQ (Interrupt Request line) el CPU se ocupa de esta, siempre y cuando disponga de tiempo. El puerto paralelo tiene una velocidad de transferencia de datos superior (300 KB/segundo) a la del puerto serial, en él se conectan dispositivos que suministran o necesitan muchos datos rápidamente, como la impresora, unidades externas de disco, escáneres, etc. Estos puertos también se conocen como puertos LPT (Line Printer) los datos se envían a través de ocho líneas de datos. La conexión se lleva a cabo con un enchufe de 25 pins (hembra) Cuando se agregan nuevos dispositivos surgen los problemas, pues a veces no hay suficientes portes para hacer las conexiones, esto se soluciona con tarjetas de expansión. La PC le asigna a cada dispositivo incluyendo puertos, una dirección de entrada y salida (Input/Output address) y una dirección de interrupción (IRQ, Interrupt Request Line) Con un adaptador SCSI (Small Computer System Interface) se puede aumentar el número de dispositivos en la PC. La conexión de los dispositivos USB (Universal Serial Bus) tiene lugar a través de un sistema de bus con un pequeño conector de 4 polos, lo que permite conectar a la PC hasta 127 dispositivos a la vez, permitiendo también la conexión entre ellos. (Johanna Gonzalez Diaz; Mabel Lopez Diaz, Diego Gonzalez Castillo., 2008).

(37) 37 3.5.. Ordenadores. Máquina electrónica capaz de recibir, procesar y devolver resultados en torno a determinados datos y que para realizar esta tarea cuenta con un medio de entrada y uno de salida. Por otro lado, que un sistema informático se compone de dos subsistemas que reciben los nombres de software y hardware, el primero consiste en la parte lógica de la computadora (programas, aplicaciones, etc) el segundo en la parte física (elementos que la forman como mother, ventilador, memoria RAM). Para su funcionamiento, la computadora requiere de programas informáticos (software) que aportan datos específicos, necesarios para el procesamiento de información. Una vez obtenida la información deseada, ésta puede ser utilizada internamente o transferida a otra computadora o componente electrónico. (Julián Pérez Porto, 2008). 3.5.1. Sistema operativo. Un sistema operativo puede ser definido como un conjunto de programas especialmente hechos para la ejecución de varias tareas, en las que sirve de intermediario entre el usuario y la computadora. Este conjunto de programas que manejan el hardware de una computadora u otro dispositivo electrónico. Provee de rutinas básicas para controlar los distintos dispositivos del equipo y permite administrar, escalar y realizar interacción de tareas. Un sistema operativo, tiene también como función, administrar todos los periféricos de una computadora. Es el encargado de mantener la integridad del sistema..

(38) 38 Podemos decir que el sistema operativo es el programa más importante de la computadora. (Cámara fotográfica, s.f.). Características:. 3.5.1.2.. RAM. La memoria principal o RAM (Random Access Memory, Memoria de Acceso Aleatorio) es donde el computador guarda los datos que está utilizando en el momento presente. El almacenamiento es considerado temporal por que los datos y programas permanecen en ella mientras que la computadora este encendida o no sea reiniciada. (Monografias.com S.A., 2017) 3.5.1.3.. Procesador. El procesador, también conocido como CPU o micro, es el cerebro del PC. Sus funciones principales incluyen el manejo del sistema operativo, la ejecución de las aplicaciones y la coordinación de los diferentes dispositivos que componen el equipo. En el aspecto físico, no es más que una pequeña pastilla de silicio la cual está recubierta de lo que llamamos encapsulado. Este se inserta en la placa base sobre un conector que se denomina socket, aunque esto no siempre es así, en un laptop o portátil lo normal es que se suelde directamente. (Sanchez, 2016).

(39) 39 3.5.1.4. Disco duro. El disco duro es el dispositivo del sistema de memoria del PC que usamos para almacenar todos los programas y archivos ya que es el único capaz de guardar datos incluso aunque no esté alimentado por corriente eléctrica. Esto es lo que lo diferencia de otras memorias de tu equipo, como por ejemplo la RAM, que es la usada para hacer funcionar los programas ya que estas pierden la información en caso de falta de energía. (Sanchez, 2016). 3.5.1.5.. Servidores. Un servidor es una aplicación en ejecución capaz de atender las peticiones de un cliente y devolverle una respuesta en concordancia. Los servidores se pueden ejecutar en cualquier tipo de computadora, incluso en computadoras dedicadas a las cuales se les conoce individualmente como «el servidor». En la mayoría de los casos una misma computadora puede proveer múltiples servicios y tener varios servidores en funcionamiento. La ventaja de montar un servidor en computadoras dedicadas es la seguridad. Por esta razón la mayoría de los servidores son procesos diseñados de forma que puedan funcionar en computadoras de propósito específico. (Servidor, s.f.).

(40) 40 Capítulo 4 Diseño del Sistema de Reconocimiento de Placas Vehiculares. 4.1. Pre-Procesamiento de Imágenes. La primera etapa del sistema permite inicialmente identificar si el sensor ha captado una placa vehicular, esta consiste en detectar y segmentar la placa que contiene los caracteres a reconocer como se muestra en la siguiente secuencia de imágenes:. Luego de la segmentación. Esta etapa es una de la más importantes para el sistema, puesto que solo si se obtiene una correcta detección y segmentación de la placa se podría llegar a alcanzar un exitoso reconocimiento posterior.. Luego de esta segmentación es necesario dar un acondicionamiento a la imagen para poder dar un correcto procesamiento, para esto, es necesario resaltar brillos para luego dar aplicar un énfasis monocromático a blanco y negro como se muestra en la siguiente secuencia de imágenes:. El siguiente es el diagrama de flujo desarrollado para el preprocesamiento de la imagen:.

(41) 41.

(42) 42 4.2. Fundamento del Procesamiento de imágenes. El procesamiento de imágenes tiene como objetivo mejorar el aspecto y resaltar ciertos detalles de ellas que se requieran hacer notar. Una imagen puede ser generada de diversas formas, entre ellas a través de fotografías. El procesamiento de una imagen se puede hacer por medio de métodos ópticos, o por métodos digitales. La teoría de Fourier10 afirma que una gráfica o función, cualquiera que sea su forma, se puede representar con alta precisión dentro de un intervalo dado, mediante la suma de una familia de funciones senoidales, con diferentes frecuencias. Es así como por ejemplo la variación de la irradiación o brillo de una imagen, medida a lo largo de una dirección cualquiera es entonces una función que se puede representar mediante el teorema de Fourier, con una suma de distribuciones senoidales de varias frecuencias. La calidad de la imagen puede ser mejorada (o empeorada) si se refuerzan o atenúan algunos de los componentes senoidales de la imagen a tratar.. 4.2.1 Procesamiento Óptico de Imágenes En la teoría de la difracción de la luz se establecen los principios del procesamiento óptico de las imágenes. El procesamiento óptico se basa en el hecho de que la imagen de difracción de Fraunhofer11 de una transparencia colocada en el plano focal frontal de una lente es una distribución luminosa que representa la distribución de las frecuencias de Fourier que componen la imagen (transformada de Fourier).. 10. La transformada de Fourier, denominada así por Joseph Fourier, es una transformación matemática empleada para transformar señales entre el dominio del tiempo (o espacial) y el dominio de la frecuencia, que tiene muchas aplicaciones en la física y la ingeniería. 11 Una forma práctica de lograr la difracción de Fraunhofer en condiciones de laboratorio es utilizando lentes convergentes y divergentes para lograr el campo lejano y las ondas planas. La Difracción de Fraunhofer o también difracción del campo lejano es un patrón de difracción de una onda electromagnética cuya fuente (al igual que la pantalla) se encuentran infinitamente alejadas del obstáculo, por lo que sobre éste y sobre la pantalla incidirán ondas planas..

(43) 43 Cada porción de la transformada de Fourier corresponde a una frecuencia especial diferente sobre el objeto. Por lo tanto, mediante diagramas adecuados se pueden eliminar ciertas frecuencias (de Fourier) que se requieran quitar.. Imagen 1. Procesamiento Óptico de imágenes: (a) imagen original, imagen de televisión (con líneas de barrido); (b) transformada de Fourier del objeto; (c) transformada de Fourier modificada, después de filtrar y (d) imagen procesada, sin las líneas de barrido.12. 4.2.2 Procesamiento Digital de imágenes. Con la aparición de las computadoras de alta capacidad y memoria se empezó a desarrollar este tipo de procesamiento en imágenes (Procesamiento Digital).. 12. Imagen 1, tomada de : http://bibliotecadigital.ilce.edu.mx/sites/ciencia/volumen2/ciencia3/084/htm/sec_9.htm.

(44) 44 El procesamiento digital de imágenes se efectúa dividiendo la imagen en un arreglo rectangular de elementos denominados pixeles. Se asigna un valor numérico a la luminosidad de los pixeles mediante las operaciones o transformaciones matemáticas necesarias, a fin de hacer que resalten los detalles de la imagen que sean convenientes. Al finalizar se alteran estos valores de luminosidad de los pixeles mediante las operaciones o transformaciones matemáticas necesarias, para resaltar los detalles de la imagen que sean convenientes. La visualización de estos pixeles (la imagen ya procesada) se sugiere sea a través de un monitor de televisión de alta definición.. Imagen 2. Procesamiento digital de imágenes. Cefalograma en el que se han reforzado las componentes de Fourier de alta frecuencia. (Tomado de S. W. Oka y H. J. Trussell, The Angle Ortodontist, 48, núm. 1, 80, 1978). (a) Imagen original y (b) imagen procesada.13. 4.3. Análisis del objeto. El desarrollo de este proyecto se formula en el software matemático MATLAB, debido a que la caja de herramientas (toolbox) de procesamiento de imágenes. 13. Imagen 2 tomada de: http://bibliotecadigital.ilce.edu.mx/sites/ciencia/volumen2/ciencia3/084/htm/sec_9.htm.

(45) 45 contiene un conjunto de funciones de los algoritmos más conocidos para trabajar con imágenes binarias, transformaciones geométricas, morfología y manipulación de color que junto con las funciones ya integradas en MATLAB permite realizar análisis y transformaciones de imágenes den el dominio de la frecuencia.. Inicialmente se necesita diferenciar si la imagen está en escala de grises o en RGB14 para poder hacer la conversión correspondiente; para esto se utiliza el siguiente Código: I=imread(‘C:\’nombre_de_la_foto.jpg’); info=imfinfo(‘nombre_de_la_foto.jpg’); if info.ColorType==’truecolor’ I=rgb2gray(I); else. I=I; End. El siguiente paso es recortar la imagen para poder eliminar zonas en las que la información no sea útil para el procesamiento de la placa; por lo general se descartan los bordes superiores y externos.. 14. RGB: RGB (sigla en inglés de Red, Green, Blue, en español «rojo, verde y azul»).

(46) 46. Después del recorte se debe calcular el gradiente de la imagen, lo cual nos ayudar a determina el umbral óptimo de la imagen; en nuestro caso a través de la técnica de Sobel15, con el fin de hallar picos en la imagen, se hará uso de las siguientes Ecuaciones: 𝑆𝑢𝑚𝑄 = 𝑆𝑢𝑚𝑄 + 𝐿 (La suma de valores para cada estado) 𝑁𝑢𝑚𝑏𝑒𝑟𝑄 = 𝑁𝑢𝑚𝑏𝑒𝑟𝑄 + 1 (El número de valores para cada estado) 𝑀𝑒𝑎𝑛𝑄 = 𝑆𝑢𝑚𝑄 /𝑁𝑢𝑚𝑏𝑒𝑟𝑄 (La medida para cada estado) 𝑈 = (𝑀𝑒𝑎𝑛0 𝑁𝑢𝑚𝑏𝑒𝑟1 + 𝑀𝑒𝑎𝑛1 𝑁𝑢𝑚𝑏𝑒𝑟0 )/(𝑁𝑢𝑚𝑏𝑒𝑟0 + 𝑁𝑢𝑚𝑏𝑒𝑟1 ) Para definir una función que calcule el Umbral Optimo de una fotografía, se desarrolló el siguiente código:. umbra1=UmbralOptimo(imagen, filaslmagen, columnasImagen, gradiente); % Algoritmo para calcular el umbral óptimo para la binarización.. 15. El operador Sobel es utilizado en procesamiento de imágenes, especialmente en algoritmos de detección de bordes. Técnicamente es un operador diferencial discreto que calcula una aproximación al gradiente de la función de intensidad de una imagen. Para cada punto de la imagen a procesar, el resultado del operador Sobel es tanto el vector gradiente correspondiente como la norma de éste vector..

(47) 47 function umbra1=UmbralOptimo(imagen, filaslmagen, columnaslmagen, gradiente) % Creo una variable que me dice de que color era el ultimo grupo que guarde % de esta forma se que la cola del final de la fila pertenece al otro color % la variable se llama ultimoColor, si vale cero fue oscuro y si vale uno % fue claro. numOscuros=0; numClaros=0; oscuros=0; claros=0; cont=0; acum=0;. % Este if es para solucionar el problema que ocurre si no hay bordes en la % primera fila entonces no se sabe si es clara o oscura. % Supongo continuidad en los colores, si en la segunda fila tampoco hay bordes % estos los supongo del mismo color que la primera.. if imagen(1,1)<(max(max(imagen))/2) % Como es oscuro pongo que el ultimo color fue claro. ultimoColor=l; else. % Como es claro pongo que el ultimo color fue oscuro. ultimoColor=0; end. for i=1:filasimagen.

(48) 48 if ultimoColor==0 numClaros=numClaros+cont; cont=O; claros=claros+acum; acum=0; else numOscuros=numOscuros+cont; cont=0; oscuros=oscuros+acum; acum=0; end. for j=1:columnasImagen if gradiente(i,j)==0 cont=cont+1; acum=acum+imagen(i,j); else. if gradiente(i,j)==-1 numOscuros=numOscuros+cont; cont=1; oscuros=oscuros+acum; acum=imagen(i,j); ultimoColor=0; else. numClaros=numClaros+cont;. cont=1; claros=claros+acum;.

(49) 49 acum=imagen(i,j); ultimoColor=1; end end end end if ultimoColor==0 numClaros=numClaros+cont; claros=claros+acum; else. numOscuros=numOscuros+cont; oscuros=oscuros+acum; end. % Media de los claros. mediaClaros=claros/numClaros; % Media de los oscuros. mediaOscuros=oscuros/numOscuros; % Umbral optimo para la binarizacion. umbral=(mediaOscuros*numClaros+mediaClaros*numOscuros)/(numClaros +numOscuros);. Para calcular el gradiente de Sobel utilizamos el siguiente código:. gradienteSobel=Sobel(imagen, filaslmagen, columnasImagen, X_Porciento);.

(50) 50 function gradienteSobel=Sobel(imagen, filasimagen, columnasimagen, X_Porciento). % Kernel Sobel pare calcular el gradiente en la direccion horizontal. kernel=(1/8)*[-1 0 1; -2 0 2; -1 0 1]; gradiente=Filtro(imagen, filasImagen, columnasimagen, kernel);. % Calculo del umbral para clasificar la respuesta del Sobel, este es tal que % solo un X (porcientro) de los gradientes van a superar el umbral.. moduloGradiente=abs(gradiente(:));. maximoModuloGradiente=round(max(moduloGradiente));. minimoModuloGradiente=round(min(moduloGradiente));. nivelesGradiente=maximoModuloGradiente-minimoModuloGradiente;. histogramaGradiente=hist(moduloGradiente, nivelesGradiente);. histogramaGradienteAcumulado=cumsum(histogramaGradiente);. umbralSobel=nivelesGradiente;. while (umbralSobel >0)&(histogramaGradienteAcumulado(umbralSobel) (filasImagen*columnasImagen*(1-(X_Porciento/100)))). umbralSobel=umbralSobel-l;. end.

(51) 51 umbralSobel=minimoModuloGradiente+umbralSobel;. % Clasificacion de la respuesta del Sobel en 1, 0 o -1.. gradienteSobel=[];. for i=1:filasImagen. for j=1:columnasImagen if gradiente(i,j) > umbralSobel gradienteSobel(i,j)=1; else if gradiente(i,j) < -umbralSobel gradienteSobel(i,j)=-1; else gradienteSobel(i,j)=0; end end end end. Para el Recorte y la definición del umbral se utiliza el siguiente código:. [R C]=size(I);. %Halla el tamaño de la imagen. cropsize=[(R*0.25) (C*0.15) (C*0.625) (R*0.6)];. %Determina la. sección a cortar Ic=imcrop(I,cropsize);. %Recorta la imagen para eliminar fondo. innecesario figure; imshow(Ic). %Grafica Zona recortada.

(52) 52 Id=double(Ic); [R C]=size(Ic). %Convierte imagen a doble para. operaciones I2=sobel (Id,R,C,2.5);. %Halla Gradiente de Sobel. umbral=umbraloptimo (Id,R,C,I2); . %Halla umbral optimo. Se utilizará un elemento circular de radio 10 pixeles para realzar una transformación bottom-hat16 , que primero hace una operación de dilatación y erosión (closing) y luego resta la imagen obtenida de la Original para resaltar la placa y ciertos bordes.. Top Hat . Se aplica el umbral hallado anteriormente. Umbral. 16. Top-Hat: resalta objetos brillantes en fondos oscuros. Bottom-Hat: lo opuesto.

(53) . 53 Para eliminar el ruido se vuelve a realizar una operación de closing utilizando un elemento estructurante horizontal hallado basado en la separación que existe entre los caracteres de la placa.. Closing Horizontal . Después se realiza la operación contraría a la de closing es decir de erosión y luego dilatación (opening) con un elemento estructurante vertical hallado basado en la altura de los caracteres de la placa.. Closing Vertical . Por último, se realizan dilataciones verticales y horizontales para expandir la zona de la placa..

(54) 54 Dilatación Para esto se debe implementar el siguiente código:. st=strel('dis10,10); IM2=imbothat(Ic,st);. %Elemento estructurante de 10 pixeles de radio %Hace Bottom-Hat. I3=IM2>umbral;. %Aplica Umbral. LH=strel('line',60,0);. %Elemento estructurante lineal horizontal. IM3=imclose(I3,LH);. %Closing con elemento estructurante. LV=strel('line',20,90);. %Elemento estructurante lineal vertical. IM4=imopen(IM3,LV);. %Hace opening con elemento. estructurante figure;imshow(IM4). %Muestra imagen. DIV=strel('Iine',35,90);. %Elemento estrucutrante lineal vertical. DIH=strel('line',20,0);. %Elemento estrucutrante lineal horizontal. IM5=imdilate(IM4,DIV);. %Dilata con E.E. vertical. IM6=imdilate(IM5,DIH):. %Dilata con E.E. Horizontal. Figure;imshow(IM6). %Muestra imagen. Con este último código se obtiene la imagen binarizada de la zona en la placa..

(55) 55 Para hallar la ubicación de la placa y sus dimensiones para hacer un recorte de la imagen original de la zona de placa se utiliza el siguiente código:. L=bwlabel(IM6);. %Crea regiones. stats=regionprops(L,'all');. %Estadisticas de las regiones. Idx=find([stats.Area]>(7000));. %Diferencia las regiones con Area. > 7000 IM6=ismember(L,Idx);. %Crea una imagen con dichas. regiones. L=bwlabel(IM6);. %Crea regiones. stats = regionprops(L,'all');. %Estadisticas de las regiones. E=stats(1).BoundingBox;. %Toma tamaño de la region. X=E.*[[1] [0] [0] [0]]; X=max(X);. %Determina eje X esquina superior Izq.. Placa Y=E.*[[0] [1] [0] [0]]; Y=max(Y);. %Determina eje Y esquina superior Der.. Placa W=E.*[[0] [0] [I] [0]]; W=max(W); %Determina Ancho Placa H=E.*[[0] [0] [0] [1]]; H=max(H);. %Determina Altura placa. Corte=[X Y W H];. %Determina coordenadas de corte. IMF=imcrop(Ic,Corte);. %Realiza el corte. figure; imshow(IMF). %Muestra imagen de la zona de la. placa. Ahora para el proceso de binarización de la imagen hay que recortar aún más la placa con un umbral de 120, con la finalidad de borrar las líneas y elementos que producen ruido..

(56) 56. Recorte para eliminación de ruido. se realiza entonces un proceso mediante una estadística de la región tomada, y aplicando un porcentaje de recorte posible por las características estándar que tiene las placas.. Se realiza un filtro para depurar la imagen. Recorte para depuración.. Se binariza la imagen obtenida y por último se aplica una propiedad de región para que solo las áreas mayores al 1.5% del total queden presentes.. Propiedad de región.. Todo esto se realiza a través del siguiente código:. umbral=120;. %Se aplica un Umbral de 120.

Referencias

Documento similar

The 'On-boarding of users to Substance, Product, Organisation and Referentials (SPOR) data services' document must be considered the reference guidance, as this document includes the

In medicinal products containing more than one manufactured item (e.g., contraceptive having different strengths and fixed dose combination as part of the same medicinal

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)

Package Item (Container) Type : Vial (100000073563) Quantity Operator: equal to (100000000049) Package Item (Container) Quantity : 1 Material : Glass type I (200000003204)

Debido al riesgo de producir malformaciones congénitas graves, en la Unión Europea se han establecido una serie de requisitos para su prescripción y dispensación con un Plan

Como medida de precaución, puesto que talidomida se encuentra en el semen, todos los pacientes varones deben usar preservativos durante el tratamiento, durante la interrupción