Reconocimiento óptico de caracteres

5
Reconocimiento óptico de caracteres 1 Reconocimiento óptico de caracteres El Reconocimiento Óptico de Caracteres (ROC), o generalmente como reconocimiento de caracteres, es un proceso dirigido a la digitalización de textos, los cuales identifican automáticamente a partir de una imagen símbolos o caracteres que pertenecen a un determinado alfabeto, para luego almacenarlos en forma de datos, así podremos interactuar con estos mediante un programa de edición de texto o similar. Con frecuencia es abreviado en textos escritos en el idioma español, utilizando el acrónimo a partir del inglés OCR. En los últimos años la digitalización de la información (textos, imágenes, sonido, etc ) ha devenido un punto de interés para la sociedad. En el caso concreto de los textos, existen y se generan continuamente grandes cantidades de información escrita, tipográfica o manuscrita en todo tipo de soportes. En este contexto, poder automatizar la introducción de caracteres evitando la entrada por teclado, implica un importante ahorro de recursos humanos y un aumento de la productividad, al mismo tiempo que se mantiene, o hasta se mejora, la calidad de muchos servicios. Problemas con el Reconocimiento Óptico de Caracteres (PLAY) El proceso básico que se lleva a cabo en el Reconocimiento Óptico de Caracteres es convertir el texto que aparece en una imagen en un archivo de texto que podrá ser editado y utilizado como tal por cualquier otro programa o aplicación que lo necesite. Partiendo de una imagen perfecta, es decir, una imagen con sólo dos niveles de gris, el reconocimiento de estos caracteres se realizará básicamente comparándolos con unos patrones o plantillas que contienen todos los posibles caracteres. Ahora bien, las imágenes reales no son perfectas, por lo tanto el Reconocimiento Óptico de Caracteres se encuentra con varios problemas: El dispositivo que obtiene la imagen puede introducir niveles de grises al fondo que no pertenecen a la imagen original. La resolución de estos dispositivos puede introducir ruido en la imagen, afectando los píxeles que han de ser procesados. La distancia que separa a unos caracteres de otros, al no ser siempre la misma, puede producir errores de reconocimiento. La conexión de dos o más caracteres por píxeles comunes también puede producir errores. Esquema básico de un algoritmo de Reconocimiento Óptico de Caracteres Todos los algoritmos de Reconocimiento Óptico de Caracteres tienen la finalidad de poder diferenciar un texto de una imagen cualquiera. Para hacerlo se basan en 4 etapas: Binarización, Fragmentación o segmentación de la imagen, Adelgazamiento de los componentes y Comparación con patrones. Binarización La mayor parte de algoritmos de ROC parten como base de una imagen binaria (dos colores) por lo tanto es conveniente convertir una imagen de escala de grises, o una de color, en una imagen en blanco y negro, de tal forma que se preserven las propiedades esenciales de la imagen. Una forma de hacerlo es mediante el histograma de la imagen donde se muestra el número de pixeles para cada nivel de grises que aparece a la imagen. Para binarizarla tenemos que escoger un umbral adecuado, a partir del cual todos los pixeles que no lo superen se convertirán en negro y el resto en blanco. Mediante este proceso obtenemos una imagen en blanco y negro donde quedan claramente marcados los contornos de los caracteres y símbolos que contiene la imagen. A partir de aquí podemos aislar las partes de la imagen que contienen texto (más transiciones entre blanco y negro).

description

Reconocimiento óptico de caracteres

Transcript of Reconocimiento óptico de caracteres

Page 1: Reconocimiento óptico de caracteres

Reconocimiento óptico de caracteres 1

Reconocimiento óptico de caracteresEl Reconocimiento Óptico de Caracteres (ROC), o generalmente como reconocimiento de caracteres, es unproceso dirigido a la digitalización de textos, los cuales identifican automáticamente a partir de una imagen símboloso caracteres que pertenecen a un determinado alfabeto, para luego almacenarlos en forma de datos, así podremosinteractuar con estos mediante un programa de edición de texto o similar. Con frecuencia es abreviado en textosescritos en el idioma español, utilizando el acrónimo a partir del inglés OCR.En los últimos años la digitalización de la información (textos, imágenes, sonido, etc ) ha devenido un punto deinterés para la sociedad. En el caso concreto de los textos, existen y se generan continuamente grandes cantidades deinformación escrita, tipográfica o manuscrita en todo tipo de soportes. En este contexto, poder automatizar laintroducción de caracteres evitando la entrada por teclado, implica un importante ahorro de recursos humanos y unaumento de la productividad, al mismo tiempo que se mantiene, o hasta se mejora, la calidad de muchos servicios.

Problemas con el Reconocimiento Óptico de Caracteres (PLAY)El proceso básico que se lleva a cabo en el Reconocimiento Óptico de Caracteres es convertir el texto que aparece enuna imagen en un archivo de texto que podrá ser editado y utilizado como tal por cualquier otro programa oaplicación que lo necesite.Partiendo de una imagen perfecta, es decir, una imagen con sólo dos niveles de gris, el reconocimiento de estoscaracteres se realizará básicamente comparándolos con unos patrones o plantillas que contienen todos los posiblescaracteres. Ahora bien, las imágenes reales no son perfectas, por lo tanto el Reconocimiento Óptico de Caracteres seencuentra con varios problemas:•• El dispositivo que obtiene la imagen puede introducir niveles de grises al fondo que no pertenecen a la imagen

original.•• La resolución de estos dispositivos puede introducir ruido en la imagen, afectando los píxeles que han de ser

procesados.•• La distancia que separa a unos caracteres de otros, al no ser siempre la misma, puede producir errores de

reconocimiento.•• La conexión de dos o más caracteres por píxeles comunes también puede producir errores.

Esquema básico de un algoritmo de Reconocimiento Óptico de CaracteresTodos los algoritmos de Reconocimiento Óptico de Caracteres tienen la finalidad de poder diferenciar un texto deuna imagen cualquiera. Para hacerlo se basan en 4 etapas: Binarización, Fragmentación o segmentación de laimagen, Adelgazamiento de los componentes y Comparación con patrones.

BinarizaciónLa mayor parte de algoritmos de ROC parten como base de una imagen binaria (dos colores) por lo tanto esconveniente convertir una imagen de escala de grises, o una de color, en una imagen en blanco y negro, de tal formaque se preserven las propiedades esenciales de la imagen. Una forma de hacerlo es mediante el histograma de laimagen donde se muestra el número de pixeles para cada nivel de grises que aparece a la imagen. Para binarizarlatenemos que escoger un umbral adecuado, a partir del cual todos los pixeles que no lo superen se convertirán ennegro y el resto en blanco.Mediante este proceso obtenemos una imagen en blanco y negro donde quedan claramente marcados los contornosde los caracteres y símbolos que contiene la imagen. A partir de aquí podemos aislar las partes de la imagen quecontienen texto (más transiciones entre blanco y negro).

Page 2: Reconocimiento óptico de caracteres

Reconocimiento óptico de caracteres 2

Fragmentación o segmentación de la imagenEste es el proceso más costoso y necesario para el posterior reconocimiento de caracteres. La segmentación de unaimagen implica la detección mediante procedimientos de etiquetado determinista o estocástico de los contornos oregiones de la imagen, basándose en la información de intensidad o información espacial.Permite la descomposición de un texto en diferentes entidades lógicas, que han de ser suficientemente invariables,para ser independientes del escritor, y suficientemente significativas para su reconocimiento.No existe un método genérico para llevar a cabo esta segmentación de la imagen que sea lo suficientemente eficazpara el análisis de un texto. Aunque, las técnicas más utilizadas son variaciones de los métodos basados enproyecciones lineales.Una de las técnicas más clásicas y simples para imágenes de niveles de grises consiste en la determinación de losmodos o agrupamientos (“clusters”) a partir del histograma, de tal forma que permitan una clasificación oumbralización de los pixeles en regiones homogéneas.

Adelgazamiento de las componentesUna vez aisladas las componentes conexas de la imagen, se les tendrá que aplicar un proceso de adelgazamiento paracada una de ellas. Este procedimiento consiste en ir borrando sucesivamente los puntos de los contornos de cadacomponente de forma que se conserve su tipología.La eliminación de los puntos ha de seguir un esquema de barridos sucesivos para que la imagen continúe teniendolas mismas proporciones que la original y así conseguir que no quede deforme.Se tiene que hacer un barrido en paralelo, es decir, señalar los píxeles borrables para eliminarlos todos a la vez. Esteproceso se lleva a cabo para hacer posible la clasificación y reconocimiento, simplificando la forma de lascomponentes.

Comparación con patronesEn esta etapa se comparan los caracteres obtenidos anteriormente con unos teóricos (patrones) almacenados en unabase de datos. El buen funcionamiento del ROC se basa en gran medida a una buena definición de esta etapa. Existendiferentes métodos para llevar a cabo la comparación. Uno de ellos es el Método de Proyección, en el cual seobtienen proyecciones verticales y horizontales del carácter por reconocer y se comparan con el alfabeto decaracteres posibles hasta encontrar la máxima coincidencia.Existen otros métodos como por ejemplo: Métodos geométricos o estadísticos, Métodos estructurales, MétodosNeuro-miméticos, Métodos Markovianos o Métodos de Zadeh.

AplicacionesDesde la aparición de los algoritmos de Reconocimiento Óptico de Caracteres han sido muchos los servicios que hanintroducido estos procesos para aumentar su rendimiento y otros que se basan completamente en estas tecnologías. Acontinuación se muestran algunas de las más destacables aplicaciones que utilizan el ROC.

Reconocimiento de texto manuscritoLas dificultades que podemos encontrar a la hora de reconocer un texto tipografiado, no se pueden comparar con lasque aparecen cuando queremos reconocer un texto manuscrito.El reconocimiento de un texto manuscrito continúa siendo un desafío. Aunque el texto se compone básicamente decaracteres individuales, la mayoría de algoritmos ROC no consiguen buenos resultados, ya que la segmentación detexto continuo es un procedimiento complejo.

Page 3: Reconocimiento óptico de caracteres

Reconocimiento óptico de caracteres 3

En el caso de reconocimiento de escritura manuscrita a la hora de corrección de exámenes, existe la posibilidad,añadiendo un listado de léxico (nombres y apellidos)  de acercarse al 100% de acierto. A través de las casillas derespuesta  ICR se pueden reconocer palabras, como nombres de países, nombres de regiones, marcas comerciales, enresumen, todo aquello que pueda ser integrado en una lista de palabras –Lexico- este puede ir aumentándose segúnnecesidades.Por otro lado, se puede llegar a comprender una frase cuando la hemos terminado de leer. Esto implica una operaciónde niveles morfológicos, léxico y sintáctico que se consigue mediante el reconocimiento del habla continua. Parallevar a cabo esa metodología, se utilizan algoritmos robustos que utilizan una segmentación previa, debido a que seobtiene automáticamente con la descodificación.

Reconocimiento de matrículasUna de las aplicaciones son los radares. Estos deben ser capaces de localizar una matrícula de un vehículo concondiciones de iluminación, perspectiva y entorno variables.En la etapa de segmentación, se buscan texturas similares a la de una matrícula y se aísla el área rectangular queforma la matrícula.Finalmente, se aplica un proceso de clasificación múltiple sobre el conjunto de píxeles pertenecientes a la matrícula,proporcionando una cadena de caracteres que se tienen que ajustar a un modelo conocido: el formato de unamatrícula. Si aparece algún error, es corregido.

Indexación en bases de datosCon el gran aumento de información publicada que ha tenido lugar en los últimos años, cada vez son más losmétodos que se utilizan para organizar todo este material almacenado en bases de datos. Uno de estos contenidos sonlas imágenes. Una de las formas más corrientes de buscar imágenes es a partir de metadato introducidosmanualmente por los usuarios. Actualmente han aparecido buscadores que proporcionan la posibilidad de buscarimágenes mediante el texto que aparecen en ellas, como el buscador DIRS(Document Image Retrieval System) que,mediante un algoritmo de Reconocimiento Óptico de Caracteres, extrae el texto que aparece en la imagen y lo utilizacomo metadato que podrá ser utilizado en las búsquedas. Esta tecnología proporciona una posibilidad en la búsquedade imágenes y demuestra que el ROC aún puede dar mucho de sí.

Reconocimiento de datos estructurados con ROC ZonalSe usa para digitalizar de forma masiva grandes cantidades de documentos estructurados o semiestructurados(facturas, nóminas, albaranes, pólizas, justificantes bancarios, etc.), catalogando automáticamente los documentoscon los metadatos obtenidos y archivándolos en formato digital de forma indexada para facilitar su posteriorbúsqueda. Tiene el inconveniente de que es necesario diseñar previamente las plantillas, pero con una buenaconfiguración se ahorra mucho tiempo en el proceso de digitalización.

Page 4: Reconocimiento óptico de caracteres

Reconocimiento óptico de caracteres 4

Software para el ROC• Captricity [1] (Unix, Windows, Mac OS) ROC Zonal Solamente• ABBYY FineReader [2] (Unix, Windows, Mac OS)• Adobe Acrobat Professional (Windows, Mac OS)• BIT-Alpha (Windows)• ExactScan Pro [3] (Mac OS)• Office Gemini [4] Software de Digitalización (Mac OS)• Neoptec (Windows, Mac OS, Unix)• Nicomsoft OCR [5] (Windows, Unix)• OCRKit [6] (Mac OS)• Readiris (Unix, Windows, Mac OS)• Scansoft Omnipage (Windows)• GEXCAT (Windows, Mac OS, Unix)

Bibliografía• Acerca de ROC (tecnología y software) [7]

• Soluciones OCR en la nube (Cloud Computing) [8]

• Instituto Tecnológico de Informática [9]

• Instituto Tecnológico de Informática: ITI OCR: Investigación de Nuevas Técnicas para ROC/ICR de FormulariosImpresos y Manuscritos [10]

• Instituto Tecnológico de Informática: ITIOCR: Nuevas Funcionalidades en el Reconocimiento de FormulariosImpresos y Manuscritos Dirigido [11]

• Instituto Tecnológico de Informática: ITI- ROC Proyecto de I+D para la Mejora de los Procesos de laDigitalización Masiva [12]

Referencias[1] http:/ / info. captricity. com[2] http:/ / latam. abbyy. com/ finereader/[3] http:/ / exactscan. de/[4] http:/ / www. baseside. com/ software-producto/ diamond-vision[5] http:/ / www. nicomsoft. com/ products/ ocr/[6] http:/ / ocrkit. com/[7] http:/ / latam. abbyy. com/ finereader/ ocr?source=products[8] http:/ / latam. abbyy. com/ Default. aspx?DN=d2740918-c2fd-4fe6-a8b1-f0bd2816b561[9] http:/ / www. iti. es/ media/ about/ docs/ tic/ 13/ articulo2. pdf[10] https:/ / observatorio. iti. upv. es/ resources/ project/ 58[11] http:/ / www. iti. es/ lineas-i-d-i/ proyectos-de-investigacion/ 2010/ itiocr/ index. html[12] https:/ / observatorio. iti. upv. es/ resources/ new/ 12088

Page 5: Reconocimiento óptico de caracteres

Fuentes y contribuyentes del artículo 5

Fuentes y contribuyentes del artículoReconocimiento óptico de caracteres  Fuente: http://es.wikipedia.org/w/index.php?oldid=73039229  Contribuyentes: -jem-, 1appleaday, Abrahamsoigay, Aescolano, Airwolf, Alejandrocaro35,Axentria, Ayudandowiki2, BetoCG, Cgcalam, Comae, DPini, Dodo, Edoarado, Emijrp, Enric Naval, Esanchezg, FAR, Farisori, Fixertool, GM83, GermanX, Gulliberto, Héctor Guido Calvo,Infoviews, Isha, IsmaelLuceno, JMPerez, Jatt, Javierito92, Kaprak, Lema, Lluisanunez, Lucien leGrey, Mariola 18, Matdrodes, Mikel Gómez, Millars, Ninrouter, Pasa gay, Periku, Piju,Platonides, Pólux, Sabbut, Sanbec, Snakefang, SuperBraulio13, Tano4595, Technopat, Tomatejc, Triku, Vlajet, 165 ediciones anónimas

LicenciaCreative Commons Attribution-Share Alike 3.0//creativecommons.org/licenses/by-sa/3.0/