utilidad tipos telecomunicaciones software que paridad para metodos informatica errores digito deteccion correccion control calcular algorithm ocr error-correction

algorithm - tipos - que es paridad informatica



Algoritmos de corrección de errores OCR (2)

Estoy trabajando en la digitalización de una gran colección de documentos escaneados, trabajando con Tesseract 3 como mi motor de OCR. La calidad de su salida es mediocre, ya que a menudo produce caracteres de basura antes y después del texto real y faltas de ortografía en el texto.

Para el problema anterior, parece que debe haber estrategias para determinar qué texto es realmente texto y qué texto no lo es (gran parte de este texto son cosas como los nombres de las personas, así que estoy buscando otras soluciones que no sean buscar palabras en una diccionario).

Para el problema del error tipográfico, la mayoría de los errores provienen de algunas clasificaciones erróneas de letras (sustituyendo l , 1 y I por la otra, por ejemplo), y parece que debería haber métodos para adivinar qué palabras están mal escritas (ya que no demasiado muchas palabras en inglés tienen un "1" en medio de ellas), y adivinar cuál es la corrección apropiada.

¿Cuáles son las mejores prácticas en este espacio? ¿Hay implementaciones de algoritmos libres / de código abierto que hacen este tipo de cosas? Google ha producido muchos papeles, pero no mucho concreto. Si no hay implementaciones disponibles, ¿cuál de los muchos documentos sería un buen punto de partida?


Algo que podría ser útil para usted es probar este OCR en línea gratuito y comparar sus resultados con los suyos para ver si al jugar con la imagen (por ejemplo, aumentar o disminuir la escala) podría mejorar los resultados.

Lo estaba usando como un "límite superior" de los resultados que debería obtener al usar tesseract (después de usar OpenCV para modificar las imágenes).


Para "determinar qué texto es realmente texto y qué texto no lo es" es posible que desee consultar rmgarbage del mismo departamento que desarrolló Tesseract (el ISRI). He escrito una implementación de Perl y también hay una implementación de Ruby. Para el problema 1 contra 1, estoy experimentando con ocrspell (también del mismo departamento), para el cual está disponible su fuente original .

Solo puedo publicar dos enlaces, por lo que los que faltan son:

  • ocrspell : ingrese "10.1007 / PL00013558" en dx.doi.org]
  • rmgarbage : busque "Eliminación automática de cadenas de basura en el texto de OCR: una implementación"
  • implementación ruby : busque "docsplit textcleaner"