El reconocimiento de escritura a mano ( HWR ), también conocido como reconocimiento de texto escrito a mano ( HTR ), es la capacidad de una computadora para recibir e interpretar entradas escritas a mano inteligibles de fuentes como documentos en papel , fotografías , pantallas táctiles y otros dispositivos. [1] [2] La imagen del texto escrito se puede detectar "fuera de línea" desde una hoja de papel mediante escaneo óptico ( reconocimiento óptico de caracteres ) o reconocimiento inteligente de palabras . Alternativamente, los movimientos de la punta del lápiz pueden detectarse "en línea", por ejemplo mediante la superficie de una pantalla de computadora basada en un lápiz, una tarea generalmente más fácil ya que hay más pistas disponibles. Un sistema de reconocimiento de escritura maneja el formato, realiza una segmentación correcta en caracteres y encuentra la mayor cantidad de palabras posibles.
El reconocimiento de escritura a mano sin conexión implica la conversión automática de texto en una imagen en códigos de letras que se pueden utilizar en computadoras y aplicaciones de procesamiento de texto. Los datos obtenidos mediante este formulario se consideran una representación estática de la escritura a mano. El reconocimiento de escritura a mano sin conexión es comparativamente difícil, ya que diferentes personas tienen diferentes estilos de escritura. Y, a partir de hoy, los motores OCR se centran principalmente en texto impreso a máquina y ICR para texto "impreso" a mano (escrito en letras mayúsculas).
El reconocimiento de caracteres sin conexión a menudo implica escanear un formulario o documento. Esto significa que será necesario extraer los caracteres individuales contenidos en la imagen escaneada. Existen herramientas que son capaces de realizar este paso. [3] Sin embargo, hay varias imperfecciones comunes en este paso. Lo más común es cuando los caracteres que están conectados se devuelven como una única subimagen que contiene ambos caracteres. Esto causa un problema importante en la etapa de reconocimiento. Sin embargo, hay muchos algoritmos disponibles que reducen el riesgo de que haya caracteres conectados.
Una vez extraídos los caracteres individuales, se utiliza un motor de reconocimiento para identificar el carácter de computadora correspondiente. Actualmente se encuentran disponibles varias técnicas de reconocimiento diferentes.
La extracción de características funciona de manera similar a los reconocedores de redes neuronales. Sin embargo, los programadores deben determinar manualmente las propiedades que consideran importantes. Este enfoque le da al reconocedor más control sobre las propiedades utilizadas en la identificación. Sin embargo, cualquier sistema que utilice este enfoque requiere mucho más tiempo de desarrollo que una red neuronal porque las propiedades no se aprenden automáticamente.
Mientras que las técnicas tradicionales se centran en segmentar caracteres individuales para su reconocimiento, las técnicas modernas se centran en reconocer todos los caracteres en una línea de texto segmentada. En particular, se centran en técnicas de aprendizaje automático que son capaces de aprender características visuales, evitando la ingeniería de características limitantes utilizada anteriormente. Los métodos más modernos utilizan redes convolucionales para extraer características visuales en varias ventanas superpuestas de una imagen de línea de texto que una red neuronal recurrente utiliza para producir probabilidades de caracteres. [4]
El reconocimiento de escritura a mano en línea implica la conversión automática de texto tal como se escribe en un digitalizador especial o PDA , donde un sensor capta los movimientos de la punta del lápiz, así como el cambio de lápiz hacia arriba/abajo. Este tipo de datos se conoce como tinta digital y puede considerarse como una representación digital de la escritura a mano. La señal obtenida se convierte en códigos de letras que se pueden utilizar en aplicaciones informáticas y de procesamiento de texto.
Los elementos de una interfaz de reconocimiento de escritura a mano en línea suelen incluir:
El proceso de reconocimiento de escritura a mano en línea se puede dividir en algunos pasos generales:
El propósito del preprocesamiento es descartar información irrelevante en los datos de entrada que pueda afectar negativamente el reconocimiento. [5] Esto se refiere a la velocidad y la precisión. El preprocesamiento suele consistir en binarización, normalización, muestreo, suavizado y eliminación de ruido. [6] El segundo paso es la extracción de características. Del campo vectorial de dos o más dimensiones recibido de los algoritmos de preprocesamiento, se extraen datos de dimensiones superiores. El propósito de este paso es resaltar información importante para el modelo de reconocimiento. Estos datos pueden incluir información como la presión del lápiz, la velocidad o los cambios de dirección de escritura. El último gran paso es la clasificación. En este paso, se utilizan varios modelos para asignar las características extraídas a diferentes clases y así identificar los caracteres o palabras que representan las características.
A principios de la década de 1980 se introdujeron productos comerciales que incorporaban el reconocimiento de escritura a mano como sustituto de la entrada del teclado. Los ejemplos incluyen terminales de escritura a mano como el Pencept Penpad [7] y el terminal de punto de venta Inforite. [8] Con la llegada del gran mercado de consumo de computadoras personales, se introdujeron varios productos comerciales para reemplazar el teclado y el mouse de una computadora personal con un único sistema de puntero/escritura a mano, como los de Pencept, [9] CIC [10 ] y otros. La primera computadora portátil tipo tableta disponible comercialmente fue la GRiDPad de GRiD Systems , lanzada en septiembre de 1989. Su sistema operativo estaba basado en MS-DOS .
A principios de la década de 1990, los fabricantes de hardware, incluidos NCR , IBM y EO, lanzaron tabletas que ejecutaban el sistema operativo PenPoint desarrollado por GO Corp. PenPoint utilizó reconocimiento de escritura a mano y gestos en todo momento y proporcionó las funciones para software de terceros. La tableta de IBM fue la primera en utilizar el nombre ThinkPad y utilizó el reconocimiento de escritura a mano de IBM. Este sistema de reconocimiento fue posteriormente portado a Microsoft Windows para Pen Computing y al Pen de IBM para OS/2. Ninguno de estos tuvo éxito comercial.
Los avances en la electrónica permitieron que la potencia informática necesaria para el reconocimiento de escritura a mano encajara en un factor de forma más pequeño que las tabletas, y el reconocimiento de escritura a mano se utiliza a menudo como método de entrada para PDA portátiles . La primera PDA que proporcionó información escrita fue la Apple Newton , que expuso al público la ventaja de una interfaz de usuario optimizada. Sin embargo, el dispositivo no fue un éxito comercial debido a la falta de fiabilidad del software, que intentaba aprender los patrones de escritura del usuario. En el momento del lanzamiento de Newton OS 2.0, en el que el reconocimiento de escritura a mano había mejorado enormemente, incluidas características únicas que aún no se encuentran en los sistemas de reconocimiento actuales, como la corrección de errores no modal, se había causado una primera impresión en gran medida negativa. Después de la discontinuación de Apple Newton , la función se incorporó en Mac OS X 10.2 y posteriormente como Inkwell .
Posteriormente, Palm lanzó una exitosa serie de PDA basadas en el sistema de reconocimiento Graffiti . Graffiti mejoró la usabilidad al definir un conjunto de "unitrazos", o formas de un trazo, para cada carácter. Esto redujo la posibilidad de entradas erróneas, aunque la memorización de los patrones de trazo aumentó la curva de aprendizaje para el usuario. Se descubrió que el reconocimiento de escritura a mano de Graffiti infringía una patente de Xerox, y Palm reemplazó Graffiti con una versión con licencia del reconocimiento de escritura a mano CIC que, si bien también admitía formas unistroke, era anterior a la patente de Xerox. La decisión judicial de infracción fue revocada en apelación y luego revocada nuevamente en una apelación posterior. Posteriormente, las partes involucradas negociaron un acuerdo sobre esta y otras patentes.
Una Tablet PC es una computadora portátil con una tableta digitalizadora y un lápiz óptico, que permite al usuario escribir texto a mano en la pantalla de la unidad. El sistema operativo reconoce la escritura a mano y la convierte en texto. Windows Vista y Windows 7 incluyen funciones de personalización que aprenden los patrones de escritura o el vocabulario del usuario en inglés, japonés, chino tradicional, chino simplificado y coreano. Las características incluyen un "asistente de personalización" que solicita muestras de la escritura a mano de un usuario y las utiliza para volver a entrenar el sistema para un reconocimiento de mayor precisión. Este sistema es distinto del sistema de reconocimiento de escritura menos avanzado empleado en su sistema operativo Windows Mobile para PDA.
Aunque el reconocimiento de escritura a mano es una forma de entrada a la que el público se ha acostumbrado, no ha logrado un uso generalizado ni en las computadoras de escritorio ni en las portátiles. Todavía se acepta generalmente que la entrada por teclado es más rápida y fiable. A partir de 2006 [actualizar], muchas PDA ofrecen entrada de escritura a mano, a veces incluso aceptan escritura cursiva natural, pero la precisión sigue siendo un problema y algunas personas todavía encuentran más eficiente incluso un simple teclado en pantalla .
Los primeros software podían comprender la escritura a mano impresa donde estaban separados los caracteres; sin embargo, la escritura cursiva con caracteres conectados presentaba la paradoja de Sayre , una dificultad que implica la segmentación de caracteres. En 1962, Shelia Guberman , entonces en Moscú, escribió el primer programa aplicado de reconocimiento de patrones. [11] Los ejemplos comerciales provienen de empresas como Communications Intelligence Corporation e IBM.
A principios de la década de 1990, dos empresas (ParaGraph International y Lexicus) idearon sistemas que podían comprender el reconocimiento de escritura a mano en cursiva. ParaGraph tenía su sede en Rusia y fue fundado por el científico informático Stepan Pachikov, mientras que Lexicus fue fundado por Ronjon Nag y Chris Kortge, quienes eran estudiantes de la Universidad de Stanford. El sistema ParaGraph CalliGrapher se implementó en los sistemas Apple Newton y el sistema Lexicus Longhand estuvo disponible comercialmente para los sistemas operativos PenPoint y Windows. Lexicus fue adquirida por Motorola en 1993 y pasó a desarrollar sistemas de reconocimiento de escritura a mano en chino y sistemas de texto predictivo para Motorola. ParaGraph fue adquirida en 1997 por SGI y su equipo de reconocimiento de escritura formó una división de P&I, que posteriormente Vadem adquirió de SGI . Microsoft adquirió CalliGrapher de reconocimiento de escritura a mano y otras tecnologías de tinta digital desarrolladas por P&I de Vadem en 1999.
Wolfram Mathematica (8.0 o posterior) también proporciona una función de reconocimiento de texto o escritura a mano TextRecognize.
El reconocimiento de escritura a mano tiene una comunidad activa de académicos que lo estudian. Las conferencias más importantes para el reconocimiento de escritura a mano son la Conferencia Internacional sobre Fronteras en el Reconocimiento de Escritura a Mano (ICFHR), celebrada en años pares, y la Conferencia Internacional sobre Análisis y Reconocimiento de Documentos (ICDAR), celebrada en años impares. Ambas conferencias cuentan con el respaldo de IEEE e IAPR . En 2021, LNCS , Springer publicará las actas de ICDAR .
Las áreas activas de investigación incluyen:
Desde 2009, las redes neuronales recurrentes y las redes neuronales profundas desarrolladas en el grupo de investigación de Jürgen Schmidhuber en el laboratorio suizo de IA IDSIA han ganado varios concursos internacionales de escritura a mano. [13] En particular, la memoria bidireccional y multidimensional a largo plazo (LSTM) [14] [15] de Alex Graves et al. ganó tres concursos de reconocimiento de escritura conectada en la Conferencia Internacional sobre Análisis y Reconocimiento de Documentos (ICDAR) de 2009, sin ningún conocimiento previo sobre los tres idiomas diferentes (francés, árabe, persa ) que debía aprender. Los recientes métodos de aprendizaje profundo basados en GPU para redes feedforward de Dan Ciresan y sus colegas de IDSIA ganaron el concurso de reconocimiento de escritura a mano china fuera de línea ICDAR 2011; sus redes neuronales también fueron los primeros reconocedores de patrones artificiales en lograr un rendimiento humano competitivo [16] en el famoso problema de dígitos escritos a mano MNIST [17] de Yann LeCun y sus colegas de la Universidad de Nueva York .
Benjamin Graham de la Universidad de Warwick ganó un concurso de reconocimiento de escritura a mano china en 2013, con solo una tasa de error del 2,61%, utilizando un enfoque de redes neuronales convolucionales que evolucionaron (en 2017) hacia "redes neuronales convolucionales dispersas". [18] [19]