Ocrfeeder

2,053 views
1,963 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,053
On SlideShare
0
From Embeds
0
Number of Embeds
269
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ocrfeeder

  1. 1. static void _f_do_barnacle_install_properties(GObjectClass *gobject_class) { OCRFeeder GParamSpec *pspec; /* Party code attribute */ pspec = g_param_spec_uint64 (F_DO_BARNACLE_CODE, "Barnacle code.", "Barnacle code", 0, G_MAXUINT64, G_MAXUINT64 /* default value */, Conversión de documentos en GNOME G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_PRIVATE); g_object_class_install_property (gobject_class, F_DO_BARNACLE_PROP_CODE, Joaquim Rocha jrocha@igalia.com GUADEC ES 7
  2. 2. ¿Qué es? Análisis de Documentos y Reconocimiento Óptico de Caracteres para GNOME Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  3. 3. ¿Porqué? El papel tiene varios problemas Sin aplicaciones para GNU/Linux que hagan un buen trabajo Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  4. 4. Problemas del papel: Seguridad Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7 CC Photo by: http://www.flickr.com/photos/badwsky/
  5. 5. Problemas del papel: Preservación Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7 CC Photo by: http://www.flickr.com/photos/98469445@N00/
  6. 6. Problemas del papel: Procesamiento de datos Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7 CC Photo by: http://www.flickr.com/photos/hugovk/
  7. 7. Problemas del papel: Ecología Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7 CC Photo by: http://www.flickr.com/photos/pranavsingh/
  8. 8. Hay motores de OCR para GNU/Linux pero... Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  9. 9. OCR != Conversión de Documentos (sólo tiene en cuenta los caracteres) (no considera la estructura) (no distingue contenidos) Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  10. 10. Lo que se quiere es Análisis y Reconocimiento de Documentos (conversión de documentos para formato electrónico) (primeros proyectos en los 80s) Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  11. 11. ¿Done estamos estábamos? * Algunas soluciones cerradas * Sólo para sistemas proprietarios * Precios variados * y todavía... resultados discutibles Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  12. 12. ¿Cómo? Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  13. 13. Cómo Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  14. 14. Concepto base: 1. Recortar los contenidos 2. Clasificarlos 2.1. Son gráficos → se pegan en el documento 2.2. Son texto → Se calcula el tamaño de letra; se pegan en el documento Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  15. 15. Tantas estructuras... Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7 CC Photo by: http://www.flickr.com/photos/uber-tuber/
  16. 16. Las estructuras varían con el tipo de documento Lo que funciona para detectar un documento, no funcionará para otros Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  17. 17. OCRFeeder se enfoca en contenidos, no en estructuras! Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  18. 18. Concepto clave: Si una imagen de un documento puede ser dividida en ventanas de 1 (contenido) o 0 (sin contenido), entonces es posible agrupar todos los 1s y delinear los contenidos Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  19. 19. Hay contenido = Hay puntos cuyo color es diferente del fondo Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  20. 20. Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  21. 21. Bloques: Se llama bloques a los grupos de 1s Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  22. 22. Juntando bloques: Los bloques se comparan con los demás y se juntan cuando sea adecuado Cuando ya no se pueden juntar más bloques, la parte del análisis está acabada Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  23. 23. Reconocimiento: Se usan motores OCR del sistema Los motores se configuran desde la GUI o mediante ficheros XML Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  24. 24. Configuración de un motor OCR: <?xml version="1.0" encoding="UTF-8"?> <engine> <name>Tesseract</name> <image_format>TIFF</image_format> <engine_path>/usr/bin/tesseract</engine_path> <arguments>$IMAGE $FILE; cat $FILE.txt; rm $FILE.txt</arguments> </engine> Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  25. 25. Clasificación: Después de obtener el texto se utilizan heurísticas para determinar si el contenido representa gráficos o texto Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  26. 26. Exportación a ODT: Usa ODFPy (abstrae la creación de ODF) (justo por encima de XML) Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  27. 27. Últimas funcionalidades * Mejorar la a11y * Mejorar la detección de columnas * Enderezar las imágenes * Mejorar el reconocimiento de texto Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  28. 28. Otras funcionalidades: * Importación de PDF * Uso del pre-procesador Unpaper * Selección de fuente * Exportación a HTML * Grabar/cargar proyectos Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  29. 29. Interacción con el usuario: Los usuarios pueden editar y revisar los resultados de los algoritmos Entonces, la UI puede funcionar en modo automático o “manual” El ILC sólo funciona en el modo automático Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  30. 30. ABBY Finereader test Nuance Omnipage test Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  31. 31. Finereader's results Omnipage's results Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  32. 32. ¡Demo! Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  33. 33. Futuro: * Integración de Ocropus como método de análisis alternativo * Más formatos de exportación: HOCR, txt, PDF * Mejor integración con GNOME y sus aplicaciones Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  34. 34. GNOME: Usa la infrastructura de GNOME desde Enero Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  35. 35. Página web: http://live.gnome.org/OCRFeeder git: http://git.gnome.org/ocrfeeder Bugzilla: http://bugzilla.gnome.org product: OCRFeeder Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7
  36. 36. ¡Gracias! Joaquim Rocha (Igalia) · OCRFeeder · GUADEC ES 7

×