En el problema del Reconocimiento Off-Line de Palabras Cursivas Escritas a Mano, tenemos dos alcances para solucionarlo:
- El primero está orientado a la segmentación de las palabras en caracteres (o letras) y luego utilizar como técnica de Reconocimiento: Programación Dinámica.
- El segundo orientado a convertir la palabra en una secuencia de vectores de observación, siendo utilizado los Modelos Ocultos de Markov (HMM - Hidden Markov Models) para su reconocimiento.
Algunas de las aplicaciones ya fueron mostradas en el item Aplicaciones del presente blog.
Ahora veamos algunos de los pasos que usualmente son seguidos para llegar al proceso de Reconocimiento: Pre-procesamiento, Normalización, Segmentación, Extracción de Caracteristicas, Reconocimiento. Veamos una pequeña descripción de cada uno de ellos:
- Pre-procesamiento: es uno de los pasos iniciales para cualquier sistema de reconocimiento, el cual consiste en la eliminación de algunos elementos de distorsión, que existan en la imagenpara obtener sólo la palabra a ser reconocida. Aqui podemos encontrar procesos como: Filtrado, binarización, etc.
- Normalización: es otro de los pasos iniciales para cualquier sistema de reconocimiento, el cual consiste en adecuar la imagen a procesar deacuerdo a ciertas estructuras, de tal forma que todas las imagenes puedan ser procesadas de la misma forma. Para este caso, la normalización comprende dos aspectos respecto a los cuales se normaliza la imagen de una palabra, esto es: Slope (angulo entre la linea horizontal y la linea horizontal implicita sobre la cual se encuentra alineada la palabra) y Slant (similar al slope, pero con respecto a la vertical), ver la siguiente figura para mejor entendimiento. La normalización es invariante respecto al slope o slant de la palabra a ser procesada.
- Segmentación: este proceso sobre separar fragmentos de la palabra en unidades tales que sean de información básica para el proceso de reconocimiento. La segmentación puede ser Explicita (se refiere a separar la palabra en simples letras (caracteres), las mismas que como tales pueden ser reconocidas) o Implicita (tambien conocida como sobre-segmentacion, ya que trata de separar la palabra en sub-letras). Acá hay algo a mencionar entre ambos procesos de segmentación: la segmentación explicita es dificil de realizar y se encuentra bajo la paradoja ya menciona y es tratada para el proceso de reconocimiento por la tecnica de Programación Dinámica, por otro lado la segmentación implicita es usada en arquitecturas que involucran a los Modelos Ocultos de Markov (HMM), el mismo que trabaja con secuencias de fragmentos no necesariamente letras (caracteres), y a la vez lidiar con variaciones o ruido que pueda presentar dicha secuencia.
- Extracción de Características: para este proceso, tenemos tres grupos para extraer características: las de Alto Nivel (involucra caracteristicas de la palabra completa), Medio Nivel (refiere a caracteristicas de las letras o caracteres de la palabra, y tenemos a: vectrización de contornos, variabilidad de sus formas, etc.) y Bajo Nivel (involucra a las sub-letras, y tenemos a: forma, lineas pequeñas, curvas, distribucion de pixels, centro de masa, histograma, etc.)
- Reconocimiento: consiste en encontrar, entre las palabras del Lexicon (donde se encuentran palabras almacenadas), el que más sea compatible con el dato (palabra) escrito a mano. Tenemos dos técnicas principales: Programación Dinámica y Modelos Ocultos de Markov.
No comments:
Post a Comment