Benchmark de Gety OCR: precisión OCR multilingüe líder, funciona en un portátil común

Petard Jonson Xinyi 大 K
·

Seguro que te ha pasado en el trabajo: haces capturas de conversaciones y páginas web para consultarlas más tarde, pero cuando de verdad las necesitas descubres que el texto dentro de esas imágenes no se puede buscar. O un contrato importante, firmado y sellado, tiene que escanearse como PDF para conservar el documento original, pero cuando quieres localizar algo o citar un fragmento, no puedes buscar dentro de él, no puedes copiar el texto y terminas pasando páginas y tecleándolo a mano.

Ese es el problema que el OCR integrado de Gety busca resolver.

Para ver qué tan bien lo hace, probamos el OCR integrado de Gety frente a las opciones locales que los usuarios tienen más probabilidades de usar: PaddleOCR (PP-OCRv6), el competidor open source más fuerte; Tesseract, la referencia clásica; y el OCR integrado en macOS y Windows. La prueba utiliza imágenes de documentos de dos conjuntos de datos públicos: MDPBench y OmniDocBench.

Los servicios de OCR en la nube y los modelos en la nube como Gemini no están incluidos aquí. Requieren subir archivos, hacer llamadas de API, tener conexión a internet y, a menudo, pagar por uso. Por eso pertenecen a una categoría distinta del OCR que se ejecuta localmente en tu propia máquina.

Los resultados muestran dos ventajas claras del OCR integrado de Gety:

  • Entre los motores OCR locales que se ejecutan en el dispositivo, Gety ocupa el primer lugar en precisión multilingüe, con el mejor resultado global en 17 idiomas.
  • Utiliza alrededor de una quinta parte de la memoria de modelos comparables que se ejecutan en el dispositivo, lo que hace viable mantener OCR en segundo plano e indexar en tiempo real.

1. Multilingüe: donde Gety saca más ventaja

Muchos motores OCR manejan bastante bien idiomas de escritura latina como el inglés y el francés. Los problemas empiezan cuando cambia el sistema de escritura. Al pasar al coreano, el ruso, el tailandés o el hindi, muchas puntuaciones caen de más de 0.9 a 0.2 o incluso 0.1, un nivel demasiado bajo para ser útil. Así se comportan los distintos motores en los 17 idiomas, usando las imágenes de documentos de MDPBench:

Idioma / MétricaGety OCR (built-in)Apple Vision (built-in)PP-OCRv6(small)PP-OCRv6(tiny)Windows OCRTesseract
General (F1)0.9030.8810.7240.6860.6090.541
 Alfabetos latinos (prom.)0.9660.9400.9670.9570.8470.901
  Inglés0.9780.9620.9720.9720.8820.919
  Alemán0.9590.9670.9920.9910.9230.962
  Francés0.9470.7990.9820.9770.7950.940
  Español0.9200.9230.9270.9230.8190.872
  Italiano0.9800.9760.9850.9790.8870.932
  Portugués0.9780.9830.9800.9720.7970.840
  Neerlandés0.9940.9240.9950.9950.9670.974
  Indonesio0.9740.9660.9870.9870.8920.959
  Vietnamita0.9670.9580.8840.8140.6610.716
 Alfabetos no latinos (prom.)0.8320.8140.4520.3820.3430.136
  Chino (simplificado)0.9460.9120.9650.9570.8000.180
  Chino (tradicional)0.9240.8050.9390.8620.8530.142
  Japonés0.9160.8040.9240.5250.4540.173
  Coreano0.9700.9610.2760.2480.2110.190
  Ruso0.9540.9600.1550.1060.0960.102
  Tailandés0.9510.9740.1550.1370.1500.125
  Hindi0.9580.1360.1910.1780.1400.147
  Árabe0.0390.9620.0110.0460.0370.031

La fila que hay que mirar es el promedio de alfabetos no latinos. Mientras muchos motores locales caen al rango de 0.1 a 0.4, Gety se mantiene en 0.832. En la práctica, eso significa que los documentos con texto en chino, japonés, coreano o ruso tienen muchas menos probabilidades de volverse invisibles para la búsqueda solo porque cambió el sistema de escritura.

Los documentos fotografiados son un problema más difícil. Cuando la entrada es una foto de un documento, no un archivo digital limpio, y aparece borrosa, torcida o con reflejos, todos los modelos tienen dificultades:

ModeloNativo digital (F1)Fotografiado (F1)
Gety OCR (built-in)0.9030.322
Apple Vision (built-in)0.8810.421
PP-OCRv6(small)0.7240.301
PP-OCRv6(tiny)0.6860.289
PP-OCRv5 mobile0.7070.278
PaddleOCR (PP-OCRv4)0.6300.172
Windows OCR0.6090.185
Tesseract0.5410.192

Todavía no hay ningún modelo fuerte en este caso. Las puntuaciones caen del rango de 0.9 a la franja de 0.2 a 0.4 en todos los casos. Apple Vision lidera este escenario con 0.421, mientras que Gety queda ligeramente por delante de los modelos open source. Para la búsqueda cotidiana, sin embargo, importa más la columna de la izquierda: la mayoría de los archivos que la gente espera buscar son capturas y escaneos limpios, no fotos torcidas de documentos.

2. Diseños complejos: en el mismo primer nivel que el mejor modelo open source

El idioma es un eje. El diseño es el otro. Las páginas a varias columnas, las tablas, los encabezados, los pies de página y las estructuras mixtas son donde los modelos más débiles empiezan a omitir líneas o a desordenarlas. OmniDocBench está diseñado para poner a prueba justamente eso:

ModeloPrecisión de diseño (F1)
Gety OCR (built-in)0.963
PP-OCRv6(small)0.968
PP-OCRv6(tiny)0.963
Apple Vision (built-in)0.948
Windows OCR0.855
Tesseract0.538

El 0.963 de Gety queda solo medio punto porcentual por detrás de PP-OCRv6 small (0.968), una diferencia que los usuarios difícilmente notarán en la práctica. Ambos están en el primer nivel y quedan claramente por delante de las opciones OCR integradas en el sistema.

3. La misma precisión, una fracción del consumo

Leer bien es una cosa. Leer bien con un coste lo bastante bajo como para dejarlo funcionando todo el día es otra. En la misma máquina, con las mismas entradas, en CPU:

ModeloPrecisión multilingüe (F1)Tiempo medio por páginaMemoria máxima por página
Gety OCR (built-in)0.903862 ms908 MB
PP-OCRv6(tiny)0.686607 ms4736 MB
PP-OCRv6(small)0.7242594 ms6304 MB

Gety necesita unos 908 MB por página. Las versiones tiny y small de PP-OCRv6 necesitan 4.7 GB y 6.3 GB, entre cinco y siete veces más. Esa es la diferencia entre un modelo que puede permanecer residente y otro más adecuado para trabajos bajo demanda. Como Gety es ligero, puede seguir ejecutándose en segundo plano, detectar archivos nuevos en cuanto llegan e indexarlos sin que muevas un dedo.

(Apple Vision y Windows OCR se ejecutan dentro de sus propias plataformas, así que una comparación de memoria o velocidad no sería equiparable. Solo aparecen en las tablas de precisión.)

4. En qué y contra qué probamos

Los conjuntos de datos

Usamos imágenes de documentos de dos conjuntos de datos públicos, cada uno pensado para responder una pregunta distinta:

Conjunto de datosLa pregunta que responde
MDPBench¿Se mantiene la precisión en 17 idiomas, tanto en páginas limpias como fotografiadas?
OmniDocBench¿Sigue siendo preciso cuando el diseño se complica?

Los dos conjuntos de datos miden cosas distintas, así que reportamos los resultados por separado en lugar de mezclarlos en una sola puntuación. Para dejar claro lo que es esto: usamos estos conjuntos de datos como fuente de imágenes de documentos. El método de evaluación, las métricas y el conjunto de modelos son nuestros, y difieren de las evaluaciones oficiales publicadas por los autores de los conjuntos de datos.

Cómo puntuamos

Puntuamos la salida del OCR con un F1 a nivel de carácter, independiente del diseño. Mide únicamente si el texto se reconoció correctamente, no el diseño, los saltos de línea, la estructura de párrafos ni dónde se ubica el texto en la página.

Lo mantenemos independiente del diseño porque, para los usos que importan (búsqueda, copia, indexación), lo que cuenta es si cada carácter se leyó correctamente, no si se reconstruyó el diseño. Un texto totalmente correcto pero en un orden distinto o con saltos de línea diferentes no debería penalizarse. Esta es una prueba de OCR, no una prueba de diseño.

Para cada página, comparamos la salida del OCR con el texto etiquetado a mano y calculamos:

F1 = 2 × Precision × Recall / (Precision + Recall)
donde:
Precision = caracteres coincidentes / caracteres de salida del OCR
Recall    = caracteres coincidentes / caracteres de referencia

Antes de puntuar, tanto la referencia como la salida del OCR pasan por la misma normalización: normalización Unicode, eliminación de caracteres invisibles, unificación de los espacios en blanco y eliminación de elementos de página como encabezados, pies de página y números de página.

La coincidencia de caracteres usa un conteo por multiconjunto: un carácter que aparece varias veces se cuenta cada vez. Esto evita que las diferencias en el orden de lectura, los saltos de línea y la división de párrafos afecten la puntuación, de modo que la métrica se mantiene centrada en si el OCR leyó correctamente los caracteres de la página.

Las cifras finales son el F1 por página, con macropromedio entre idiomas y grupos de datos; el informe completo también ofrece un intervalo de confianza bootstrap del 95%.

Contra qué comparamos

Para el conjunto de comparación, intentamos cubrir las opciones principales que los usuarios probablemente encuentren en flujos de trabajo reales:

  • PaddleOCR (PP-OCRv6), la opción OCR open source más fuerte en la actualidad. Viene en versiones tiny, small y medium; nosotros ejecutamos las dos versiones para el dispositivo, tiny y small. Medium es un modelo de 34.5M de parámetros pensado para GPU de servidor, y meterlo en una prueba de CPU en el dispositivo sería comparar cosas equivocadas.
  • Tesseract, un motor open source de larga trayectoria, muy instalado y conocido como referencia.
  • Apple Vision y Windows OCR, el OCR que ya tienes si no instalas nada en absoluto.

5. La precisión es la base. La usabilidad es el objetivo.

Los números muestran que Gety lee con precisión. Pero la precisión no es la meta final; es la base de una experiencia OCR útil.

El flujo de trabajo habitual de una herramienta OCR se parece a esto:

Encontrar la imagen -> Abrirla o arrastrarla a una herramienta OCR -> Iniciar el reconocimiento manualmente -> Esperar el resultado -> Obtener texto utilizable

La mayoría de las veces, esa cadena ni siquiera empieza. Las capturas y los escaneos se convierten en puntos ciegos en cuanto llegan a tu computadora, y siguen siendo invisibles para la búsqueda hasta que recuerdas procesarlos.

Ese vacío es el problema que Gety se propuso cerrar. El OCR se ejecuta en segundo plano, así que en cuanto llega un archivo de imagen, Gety puede reconocerlo e indexarlo automáticamente. Nada que convertir, nada que pulsar. Cuando lo necesitas, escribes en el buscador global y el texto dentro de la imagen está ahí.

La precisión decide la calidad del reconocimiento. El consumo de recursos decide si ese reconocimiento puede estar siempre activo. No nos propusimos lanzar un motor de OCR más; nos propusimos hacer que «las palabras de esta imagen no se pueden buscar» sea un problema que deje de ocurrir en tu computadora.


Estos son nuestros propios resultados internos. Usamos las imágenes de documentos de los conjuntos de datos públicos MDPBench y OmniDocBench como material de prueba, pero el método de evaluación y las métricas son nuestros y difieren de las evaluaciones oficiales publicadas por los autores de los conjuntos de datos. Cada conjunto de datos conlleva su propia licencia y sus propios términos de uso, algunos solo para investigación; aquí informamos de hallazgos, no redistribuimos ninguna muestra.

Mejora tu flujo de trabajo con AI

Descargar para macOSDescargar para WindowsDescargar para LinuxDescargar