En los últimos tiempos ha aumentado la tendencia de digitalizar todo tipo de contenido. Contar con datos como sonido, texto, imágenes, videos y otros, en formato digital ha sido un punto de sumo interés en el desarrollo tecnológico mundial. Esto ha traído algunos problemas aparejados, como la imposibilidad de editar e interactuar con algunas de estas digitalizaciones. En el caso específico de los textos, muchos libros importantes han sido digitalizados con simples procesos de escaneado.
Este proceso en realidad lo que hace es tomar una fotografía del documento. A consecuencia, es imposible interactuar o editar este texto. Es importante contar con un mecanismo que automatice la conversión de estos textos gráficos en entradas de texto sin necesidad de utilizar el teclado. Aquí es donde entra la tecnología para el reconocimiento óptico de caracteres OCR.
Si quieres conocer cuáles son las características de la tecnología de reconocimiento óptico de caracteres OCR. Y sus aplicaciones, te invito a que continúes leyendo. Ya comenzamos.
Tabla de contenidos
- Qué es OCR
- Principales problemas en el reconocimiento óptico de caracteres OCR
- Funcionamiento de los algoritmos para el reconocimiento óptico de caracteres OCR
- Aplicaciones del reconocimiento óptico de caracteres OCR
- Artículos relacionados que te podrían resultar interesantes:
Qué es OCR
Reconocimiento óptico de caracteres OCR (del inglés Optical Character Recognition) es un proceso orientado hacia la digitalización de texto. En ocasiones llamado reconocimiento de caracteres, esta tecnología identifica de manera automática caracteres de textos a partir de una imagen.
Una vez leída esta imagen o símbolo, el texto es guardado en formato de datos digitales. De esta manera es posible interactuar con el texto digitalizado mediante los editores de texto comunes, como las herramientas de Microsoft Office o Libre Office.
Principales problemas en el reconocimiento óptico de caracteres OCR
Como ya explicamos, la principal tarea del reconocimiento óptico de caracteres OCR es la de convertir el texto que se encuentra en una imagen a un texto editable. Este texto debe ser posible ser editado y transformado por cualquier software dedicado a esta tarea.
En un ambiente perfecto, donde una imagen solo tenga dos tonos de grises el proceso es relativamente sencillo. El algoritmo compara los gráficos extraídos de la imagen con plantillas predeterminadas que representan todos los posibles caracteres.
Pero en la realidad las imágenes están formadas por miles de tonalidades de diferentes colores. Esto plantea una serie de retos al reconocimiento de caracteres.
En primer lugar, pueden ser leídos tonos de grises que en realidad no pertenecen a la imagen original, añadiendo en el proceso caracteres que no existen en la imagen. Por otro lado, la resolución usada por los dispositivos de reconocimiento de caracteres puede distorsionar la imagen original. Siendo así se afectarían los pixeles necesarios para procesar la imagen.
Otros errores de reconocimiento pueden estar dados por las distancias no homogéneas entre los diferentes caracteres gráficos. De esta manera se podría interpretar de manera errónea la imagen a escanear. También ocurren errores de interpretación, cuando dos o más caracteres comparten píxeles. Esto puede hacer que el algoritmo los interprete como un único carácter.
Funcionamiento de los algoritmos para el reconocimiento óptico de caracteres OCR
Los algoritmos usados en el reconocimiento óptico de caracteres OCR tiene como objetivo diferenciar el texto en una imagen cualquiera. Este proceso ocurre en cuatro etapas específicas. En primer lugar, realizan un binarización o caracterización del gráfico escaneado. A continuación, se realiza una segmentación de la imagen. Después se realiza un proceso de limpieza conocido como adelgazamiento de componentes. Para finalizar, el algoritmo compara el resultado obtenido con los patrones de caracteres que este tiene definidos.
Caracterización de la imagen
Este primer proceso lo que hace es transformar la imagen a un patrón de colores de dos colores. Se toma una imagen en escala de grises o a color y se transforma en una imagen en blanco y negro. Este proceso se realiza tratando de preservar las propiedades de la imagen.
Uno de los mecanismos usados en el proceso de binarización es empleando el histograma de la imagen. En este histograma se muestra para cada nivel de gises de la imagen el número de píxeles que lo conforman. Se establecen un límite que define el umbral de tonalidad de cada pixel. Los píxeles que superan este umbral se convierten en negro y los que no lo superen en blanco, o viceversa.
Como resultado de la caracterización obtenemos una imagen en blanco y negro. En esta imagen quedan definidos los contornos de los caracteres que están dentro de la imagen.
Segmentación de la imagen
Este es el proceso de mayor costo computacional del proceso. Aquí se realiza un proceso de etiquetado determinista o estocástico en los contornos de la imagen. De esta manera se descompone el texto en entidades lógicas.
Los métodos utilizados en este proceso no se han estandarizado, y la mayoría no son lo suficientemente eficaces en el análisis del texto. La mayoría de técnicas empleadas se basan en proyecciones lineales.
Adelgazamiento de los componentes de la imagen
Este es un proceso de limpieza de los componentes conexos encontrados en la imagen. Mediante este proceso se borran los puntos de los contornos sin que el componente pierda su tipología original.
Comparación de patrones
Este es el último paso del algoritmo usado para el reconocimiento óptico de caracteres OCR. Aquí se realiza una comparación de los caracteres obtenidos al procesar la imagen, con patrones de caracteres guardados en una base de datos.
Uno de los métodos usados para este paso es el método de proyección. Mediante este se obtiene proyecciones verticales y horizontales del carácter que se va a reconocer. Estas proyecciones se comparan con el diccionario de caracteres almacenados hasta encontrar la mejor coincidencia posible.
Otros métodos posibles son los métodos geométricos o estadísticos, estructurales, neuro miméticos, markovianos y métodos de Zadeh.
Aplicaciones del reconocimiento óptico de caracteres OCR
Las aplicaciones del reconocimiento óptico de caracteres se ha introducido en diferentes servicios o dispositivos que dependen totalmente de él. Algunas de las aplicaciones más destacables de esta tecnología son:
Reconocimiento óptico de caracteres OCR en textos manuscritos
Digitalizar un texto manuscrito puede ser un proceso sumamente complejo. Esto se debe a la cantidad diferentes de estilos a la hora de escribir. Por esto es difícil contar con la mayor cantidad posibles de patrones de escritura.
El principal problema del OCR en este tipo de textos es que los caracteres están enlazados formando un texto continuo. Para solucionar este problema se han creado técnicas basadas en OCR llamadas Reconocimiento inteligente de caracteres ICR.
Una de las formas de ayudar en algún sentido a que la aplicación de OCR tenga éxito en textos manuscritos, es crear el soporte de texto con recuadros. De esta manera, aunque el texto sea continuo, debe ser escrito cada carácter dentro de ese recuadro. De esta manera es más sencillo la detección de caracteres.
Reconocimiento de matrículas de coches
La tecnología OCR es ampliamente usada en el ámbito policial para el control de carreteras. Cámaras instaladas encima de los coches patrulla incorporan la tecnología OCR para identificar las matrículas de los coches en circulación.
De esta manera es posible conocer los datos del coche, así como del dueño del mismo. Estas cámaras tienen que poder reconocer las matrículas en condiciones de poca iluminación y entornos complejos.
Indexación de imágenes en bases de datos
Con el aumento de la información digital acumulada, es muy común que se guarden cientos de miles de imágenes en centros de datos a las cuales es bastante complejo acceder en ocasiones. Para clasificar y organizar estas imágenes en el sistema se emplean los metadatos de la misma.
Existen sistemas informáticos que incorporan mecanismo OCR para extraer texto de imágenes e incluirlos en los metadatos de las mismas. De esta forma se pueden tener una mayor organización e información para el acceso y extracción de la imagen de las bases de datos.
Reconocimiento óptico de caracteres OCR de datos estructurados
En este caso se emplea para la obtención de texto a partir de documentos estructurados como facturas, nóminas y pólizas. En el proceso se catalogan de manera automática los documentos a partir de los metadatos extraídos del mismo.
Estos documentos se archivan e indexan en formato digital, facilitando de esta manera su posterior búsqueda y consulta. Como principal inconveniente tenemos que las plantillas deben ser previamente diseñadas. No obstante, configurando previamente estas plantillas se puede ahorrar mucho tiempo en la digitalización posterior del documento.