Acerca de...
El equipo
Encuestas
WinTablets

Encuesta

Si las WINTABLETs no pudiesen ejecutar aplicaciones de escritorio, ¿las seguirías usando?

Cargando ... Cargando ...

últimas entradas importantes

Categorías

Archivos

02
Ago 2014
Opiniones

Tinta electrónica (2): Hoy en “Así se hace”…

Disculpad el título, supongo que veo demasiado Discovery Max. Bueno, a lo que iba. Como terminé diciendo hace algo más de dos semanas (sí, escribo así de lento :mrgreen: ) en la primera parte de este artículo sobre tinta electrónica, el gran público suele referirse, de forma incorrecta, al reconocimiento del texto manuscrito que hacen nuestros queridos WinTablets (yo sigo prefiriendo “Tablet PC”, la verdad) como OCR, siglas para la expresión inglesa Optical Character Recognition, o en el Español nuestro de cada día Reconocimiento Óptico de Caracteres. ¿Y por qué es incorrecto? Ahora mismo os lo explico.

Como la propia expresión indica, el OCR se basa en mirar (de ahí “óptico”) la imagen (esto es importante) de un texto ya escrito y reconocer lo que dice. Vamos, lo que estás haciendo tú ahora mismo mirando la imagen que muestra tu pantalla y entendiendo lo que significan las diversas sucesiones de símbolos que en ella aparecen. Así pues, esta técnica del OCR es tan buena que nuestro propio cerebro la usa constantemente. Pero claro, en informática una imagen es un conjunto de pixeles, también conocido como bitmap o mapa de bits, que representa una imagen de forma discreta con un determinado grado de precisión (que dependerá de la resolución de la imagen) y que, en lo que nos concierne, puede provenir de un escaneo de un documento físico, de una instantánea tomada con una cámara o incluso de un texto escrito directamente en el ordenador (sea a mano o tecleando) que se ha convertido a bitmap.

Texto de imprenta y manuscrito en bitmap

Texto de imprenta y manuscrito en bitmap

Esta técnica, aunque hoy en día está muy mejorada para cualquier tipo de caracteres, suele dar mejores resultado con caracteres de imprenta que con caracteres manuscritos, ya que los primeros tienen un aspecto más uniforme, contra el sesgo personal que cada cual da a la forma de su propia escritura. Pues bien, repito, esto no es lo que hace nuestro ordenador cuando interpreta lo que escribimos con el lápiz.

El reconocimiento de texto manuscrito que hace nuestro ordenador conforme escribimos se parece más a lo que hacemos nosotros cuando alguna vez nos han hecho el juego de escribirnos algo en la espalda y tener que adivinar qué es. Es decir, no se basa en la simple imagen del texto, como el OCR, sino en los trazos (movimientos) que lo crean. Esta técnica forma parte del conocido como HWR (Handwriting Recognition, o Reconocimiento de Texto Manuscrito). Y digo “forma parte” y no “se llama” porque en realidad el HWR tiene dos modalidades, la modalidad off-line, que no es sino el reconocimiento de texto manuscrito en forma de imagen mediante técnicas de OCR, y la modalidad on-line, que es la que nos interesa y que se basa en el reconocimiento conforme se escribe, o tal vez posteriormente, pero haciendo uso de la misma información que si se estuviese escribiendo en el momento, ya que los trazos que hacemos se guardan como información vectorial y no en forma de bitmap, como se hace para OCR.

Comparación de texto en bitmap para OCR y vectorial para HWR on-line

Comparación de texto en bitmap para OCR y vectorial para HWR on-line

Como puede verse en la imagen de arriba, para un reconocimiento on-line se toman en cuenta el punto en el que el lápiz toca la pantalla, el punto en el que se levanta y los puntos intermedios por los que se va pasando. Aunque en la imagen no se aprecia, también se toman en cuenta los tiempos en los que se producen los trazos e incluso, cuando el hardware lo permite, la presión en cada parte del trazo, como lo haría un experto grafólogo.

Como decía hace un momento, toda esa información puede ser procesada conforme se produce, tal como ocurre cuando escribimos en el panel de entrada manuscrita de Windows, o ser almacenada como tinta electrónica, es decir en formato vectorial y junto con el resto de información asociada, como la temporización y presión de los trazos, para poder ser reconocido posteriormente, como ocurría en el panel de entrada manuscrita que en su día incorporamos en la desaparecida web TodoUMPC, en el que primero se escribía todo el texto y sólo al final se realizaba el reconocimiento.

 
Panel de entrada de Windows 7   Entrada de tinta en TodoUMPC

 
En cualquier caso, para hacer el reconocimiento se pasa, a groso modo, por tres fases: preprocesamiento, extracción de características y clasificación. Durante el preprocesamiento se simplifican y “suavizan” los trazos, eliminando la información superflua que puede dificultar el reconocimiento, además se puede dividir la información en conjuntos de trazos o segmentos para ser procesados pro separado. En la extracción de características es donde se tiene en cuenta esa otra información asociada, como la temporización y la presión y se extrae nueva información derivada de la información que se ha registrado, como por ejemplo la velocidad de un trazo basándose en la diferencia de tiempo entre el punto inicial y final. Por último, en la fase de clasificación es donde se aplican diferentes modelos de análisis para reconocer los caracteres y las palabras.

Por supuesto, durante la fase de clasificación, se hace uso tanto del contexto como de la experiencia que el sistema de reconocimiento va adquiriendo con la forma de escribir del usuario para dar con la interpretación correcta cuando cabe alguna duda.

En fin, ya está. No entro en más detalles porque ni soy experto en la materia ni pretendo que nadie lo sea. Mi intención es simplemente acabar con el error de llamar OCR a lo que hacen nuestros Tablets PC y dejaros las nociones básicas de cómo funciona realmente, así que sólo espero que os haya resultado medianamente interesante.

Enlaces a las imágenes originales:
Comparación de texto bitmap y vectorial,
Por Hal9000 | 11 Comentarios | Enlaza esta entrada

11 Comentarios

Juan Quijano
Enviado el 02/08/2014 a las 19:30 | Permalink

Muy buen articulo. Gracias.

Enviado el 02/08/2014 a las 19:44 | Permalink

Excelente como siempre!

Quique
Enviado el 02/08/2014 a las 20:28 | Permalink

Excelente artículo. Me ha encantado.

Ya comprendíe el por qué de una de las confusiones que tuve durante varios años. Vuelvo sobre eso enseguida.

En el Newton se utilizaba HWR pero con dos pequeñas variantes respecto a OneNote. . La primera y más importante, cuando se terminaba de escribir una palabra inmediatamente se hacía el “preprocesamiento” del que usted ha hablado. Por tanto, quedaba grabada esa palabra preprocesada. No era imprenta. Continuaba siendo el trazo manuscrito que uno había llevado a cabo, pero de una forma simplificada. Esto facilitaba el almacenamiento del trazo usando un el mínimo de memoria y, evidentemente, facilitaba el reconocimiento posterior de “extracción” y “clasificación” que conducía, esta vez sí, a las letras de imprenta.
Todo esto suponiendo que no se tenía activado el reconocimiento automático de caracteres. Cuando este estaba activado llevaba a cabo el preprocesamiento, extracción y clasificación automáticamente, sin necesidad de tener que presionar ningún botón adicional.
Cuando estaba activado el reconocimiento automático existía una característica adicional. Si se dibujaba una letra encima de un carácter donde había cometido un error de reconocimiento, automáticamente sustituía el carácter erróneo por el carácter correcto. Muy parecido a cómo se corrigen los errores de reconocimiento en el panal de escritura de Windows 8 ¡pero en 1993!

La segunda variante en el HWR del Newton, es que no sólo operaba sobre las palabras y letras, sino también sobre los dibujos. Por tanto, si dibujábamos lineas, cuadrados, círculos y triángulos, el HWR lo reconocía como tales y los transformaba en lineas, cuadrados, círculos y triángulos vectoriales perfectos. Algo que no he vuelto a ver desde ese entonces.

Dicho esto, puedo regresar a la confusión de la que hablaba al principio. En OneNote no existe el “prereconocimiento automático” de Newton por lo que todo queda grabado exactamente igual a cómo lo hemos dibujado. Las líneas no se simplifican en ningún momento. Es por eso que yo estaba confundido y creía, erróneamente, que OneNote no utilizaba HWR.

    Enviado el 02/08/2014 a las 21:38 | Permalink

    Pues, respecto a esa segunda modalidad de reconocimiento de formas que comentas, ya se podía hacer en Windows 3.1 for Pen Computing 1.0, como puede verse en el vídeo que puse en la primera parte.

    En cuanto a que en OneNote no se realiza ese preprocesamiento, en realidad sí que existe, y fijandose muy bien puede llegar a percibirse, pero en poquísimas ocasiones. Lo que ocurre es que si, por ejemplo, se graban 20 puntos a lo largo de una curva, la potencia de los ordenadores actuales permite calcular splines, reduciendo la curva a un par o pocos más puntos más la información de curvatura. Después esa información se usa para recomponer con gran fidelidad el grafico que antes estaba compuesto por esos 20 puntos.

      Quique
      Enviado el 02/08/2014 a las 21:42 | Permalink

      Yo no puedo ver el video porque no tengo banda ancha en estos días.
      ¿Me dices que Windows 3.1 for Pen Computing 1.0 podía reconocer cuando hacíamos rallas, cuadrados, círculos y triángulos y transformarlos en rayas, cuadrados, círculos y triángulos perfectos? si es así ¿por qué se perdió eso?

      Por lo demás, hoy estoy aprendiendo mucho.

        Enviado el 02/08/2014 a las 21:53 | Permalink

        Bueno, tengo que decir que no sé si era una característica del sistema o de una aplicación concreta, pero sí, podía. ¿Por qué se perdió? Seguro que lo puede contestar estupendamente RFOG. :twisted: :mrgreen: :mrgreen: :mrgreen: :mrgreen:

          Quique
          Enviado el 02/08/2014 a las 21:58 | Permalink

          A esa característica del Newton la extraño mucho. Por más de que no era posible exportarla.

          Era genial poner la pantalla con otra persona y plantear una explicación que incluía un organigrama, un genograma o algún tipo de diagrama simple. Mientras ibas dibujando automáticamente todo se veía como se suponía.
          No era posible exportarla (hubiese sido genial poder hacer una captura de pantalla y enviarla por e-mail, como es común hoy en día), pero igual era útil, rápido, intuitivo y visualmente atractivo.

          En fin, a pesar de ser una tecnología genial, por lo que veo tanto Microsoft como Apple la asesinaron ¿quién la reinventara?

          RFOG
          Enviado el 03/08/2014 a las 11:11 | Permalink

          Hasta donde yo sé, eso no ha estado nunca integrado en Windows. Me refiero a la conversión de trazos en vectores y la identificación de formas reales a partir de lo escrito.

          Eso se añadía con los paquetes de escritura a mano que vienen existiendo desde Windows 3.1… y tampoco sé dónde ni cómo nació el tema, lo que sí sé es que la primera vez que lo vi fue con Microsoft y su XP Tablet PC. Yo lo estuve usando una temporada con una tableta Bamboo pequeñita hasta que se la pasé a mi hermana porque mi letra es demasiado mala para que me la reconozca Windows (aparte de que a veces el panel de escritura manual desaparecía de XP y la única solución era reinstalar el sistema… hasta que se volviera a ir :roll: ).

          De todos modos algo tiene que tener esa tecnología que parece que nadie quiere que se use de forma generalizada. Lo mismo tiene alguna patente por usuario, y usuario que la toca, MS tiene que soltar pasta (igual que pasaba con un códec de reproducción de audio que al final quitó de sus sistemas). Digo esto porque Apple también lo tenía y no lo publicita mucho. De hecho ahora creo que ni las iCosas ni OS X traen nada de eso)…

          Respecto a lo del reconocimiento de curvas… nacería en el MIT en los años 50/60 para el reconocimiento de lanzamientos de misiles y su punto de entrada… igual que casi todo nació allí o en Palo Alto. No sé, es un tema que nunca me ha atraído mucho para meterme en detalles.

          Enviado el 03/08/2014 a las 21:16 | Permalink

          Bueno, cuando dije que no sé si formaba parte del sistema me refería a que no sé si forma parte del paquete de Pen Computing, como una característica general que estaba a disposición de cualquier aplicación que usase las librerías, o si lo hacía una aplicación concreta.

ender2004 flozanoc
Enviado el 02/08/2014 a las 22:36 | Permalink

Muy buen artículo e ilustrativo.!!!

Enviado el 02/08/2014 a las 23:43 | Permalink

Entre este artículo y el anterior, las cosas quedan meridianamente claras para quien se quiera informar sobre la tinta-e de Microsoft. Gran trabajo!

He alucinado viendo el vídeo de Frank enseñando tu herramienta. Menuda pasada, y máxime para la época.

Una vez más, la historia de la tinta-e es la historia del fracaso de la comunicación de Microsoft con el usuario final. A distintos tipos de usuarios básicos la tinta-e les vendría de vicio (desde artistas a gente que le gusta escribir a mano… y no saben que pueden hacerlo desde 2004). Diría que para un usuario de windows es mucho, mucho, MUCHO más sencillo dar el salto a la tinta-e que cambiar de sistema operativo. Y, sin embargo, diría que el switching de SO ha ocurrido mucho más a menudo que la adopción de la tinta. La explicación, por parcial que sea, es que la tinta sigue siendo invisible (aunque el surface 3 es un empujón, eso es indudable), mientras que la manzana bien se cuida de poner de su parte para que la adopción sea, si no indolora, si factible.

Nadie tiene en el mercado algo parecido a la eink de microsoft. Pero si hasta samsung le ha sacado más partido a su versión mucho más limitada, ha sido por el sencillo expediente de visibilizarlo y anunciarlo

Deja un comentario  

Tu email nunca se publica o se comparte. Los campos obligatorios están marcados con *

*
*
:wink: :-| :-x :twisted: :) 8-O :( :roll: :-P :oops: :-o :mrgreen: :lol: :idea: :-D :evil: :cry: 8) :arrow: :-? :?: :!:
Puedes usar las siguientes etiquetas y atributos HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

contacto@wintablet.info tema WinTablet.info por Ángel García (Hal9000)