2010-04-14 4 views
5

Soy muy nuevo en OCR y casi no sé nada sobre los algoritmos utilizados para reconocer palabras. Me estoy familiarizando con eso.Cuál es el método típico para separar letras conectadas en una palabra usando OCR

¿Podría alguien aconsejarme sobre el método típico usado para reconocer y separar caracteres individuales en forma conectada (quiero decir en una palabra donde todas las letras están unidas)? Olvídese de la escritura a mano, suponiendo que las letras se conectan juntas utilizando una fuente conocida, ¿cuál es el mejor método para determinar cada carácter individual en una palabra? Cuando los caracteres se escriben por separado no hay ningún problema, pero cuando se unen, debemos saber dónde comienza y dónde termina cada personaje para avanzar al siguiente paso y unirlos individualmente a una letra. ¿Hay algún algoritmo conocido para eso?

Respuesta

3

El término estándar para este proceso es "segmentación de caracteres": la segmentación es el término de procesamiento de imágenes para dividir imágenes en áreas agrupadas para su reconocimiento. "Segmentación de caracteres en árabe" throws up a lot of hits in google scholar si desea obtener más información.

Te animo a que mires a Tesseract - an open source OCR implementation, especialmente the documents.

Característica como se define en the glossary tiene un poco de esto, pero hay un montón de información aquí.

Básicamente, Tesseract resuelve el problema (desde How Tesseract Works) mirando blobs (no letras) y luego combina esos blobs en palabras. Esto evita el problema que describes, al crear nuevos problemas.

Para árabe (como usted señala) Tesseract no funciona. No sé mucho sobre esta área, pero this paper parece implicar que Dynamic Time Warping (DTW) es una técnica útil. Esto intenta estirar las palabras para que coincidan con las palabras conocidas, y de nuevo funciona en palabras en lugar de espacio de letras.

+0

Es poco probable que Tesseract pueda manejar scripts conectados como el árabe. Tomará algunos algoritmos especializados para manejar este caso, y en este momento no los tiene. code.google.com/p/tesseract-ocr/wiki/ TrainingTesseract – Meysam

+0

Bastante justo. Supuse que hablabas de inglés conectado (ir Cursive). Esperemos que las ideas sean útiles sin embargo. Agregaré otra respuesta para árabe. –

Cuestiones relacionadas