Skip to content
← Blog

Diseños sintéticos, mejor OCR vertical japonés: dentro de Synth-JDoc

Based on: Synth-JDoc: Synthesizing a Japanese Document Image Dataset for OCR with Diverse Layouts and Embedded Images — Keito Sasagawa, Shuhei Kurita, Daisuke Kawahara

Problemas de OCR en documentos japoneses con texto vertical y cómo Synth-JDoc los resuelve

Si insertas un documento gubernamental japonés de varias columnas en un Modelo de Lenguaje Visual Grande (LVLM) y le pides que transcriba la página, es posible que falle de una manera muy específica. En un ejemplo del paper Synth-JDoc, un modelo lee la sección “A1”, omite el texto de la siguiente columna vertical y salta directamente a “Q2”.

Los documentos japoneses pueden combinar texto horizontal (yokogaki) y texto vertical (tategaki). En el texto vertical japonés, los caracteres se leen de arriba hacia abajo y las líneas de derecha a izquierda. El paper señala que el japonés escrito verticalmente sigue estando subrepresentado en los datos de entrenamiento de OCR, y que los LVLMs actuales funcionan considerablemente peor con él que con el texto japonés horizontal.

Para abordar esta brecha, Keito Sasagawa, Shuhei Kurita y Daisuke Kawahara desarrollaron Synth-JDoc. Su paper, “Synth-JDoc: Synthesizing a Japanese Document Image Dataset for OCR with Diverse Layouts and Embedded Images”, describe una canalización de datos sintéticos basada en renderizado HTML/CSS, generación de texto a imagen para figuras incrustadas y degradación de imagen.

El conjunto de datos final contiene 17.970 imágenes de documentos curadas. En evaluaciones sobre documentos japoneses escritos verticalmente del mundo real, los modelos ajustados con Synth-JDoc lograron las mejores puntuaciones reportadas bajo ambos entornos de evaluación para cuatro de las cinco familias de modelos probadas. El código del proyecto es de código abierto en GitHub (llm-jp/synth-jdoc), y el conjunto de datos está alojado en Hugging Face (llm-jp/Synth-JDoc).

A continuación, presentamos un análisis técnico del problema de OCR en japonés vertical, cómo Synth-JDoc construye sus páginas sintéticas y qué muestran sus experimentos.


columna de periódico japonés

Por qué el japonés vertical es difícil para los LVLM

La transcripción de documentos requiere más que reconocer caracteres individuales. Un modelo también debe seguir el orden de lectura de la página.

Los documentos japoneses verticales añaden un desafío particular:

  • Direccionalidad vertical: Los caracteres en una línea vertical se leen de arriba hacia abajo, mientras que las líneas avanzan de derecha a izquierda.
  • Diseños de varias columnas: El artículo describe el orden de lectura de varias columnas como una progresión secuencial desde la columna superior hasta la inferior.
  • Estilos de escritura mixtos: Los documentos japoneses pueden contener escritura vertical y horizontal en la misma página.

El ejemplo motivador del artículo es una página de documento real donde el modelo original Qwen3-VL omitió la segunda columna desde arriba. El modelo afinado no omitió ese texto. Los autores argumentan que se necesita un conjunto de datos de OCR japonés con texto vertical, diseños de varias columnas e imágenes insertadas para mejorar este tipo de lectura de documentos.

Construir ese conjunto de datos a partir de documentos reales es costoso. La anotación manual no escala fácilmente, mientras que extraer texto de entrenamiento con un sistema de OCR introduce errores de reconocimiento y requiere recopilar imágenes de documentos fuente. Los enfoques sintéticos existentes también tienen limitaciones: SynthDoG puede generar imágenes de documentos japoneses, pero produce diseños menos realistas, mientras que JSSODa admite texto vertical y horizontal en diseños de una a cuatro columnas, pero utiliza texto negro sobre fondo blanco sin imágenes insertadas.

La Arquitectura de Synth-JDoc: Síntesis Impulsada por Código

Synth-JDoc utiliza una tubería de tres etapas: preparación de elementos del documento, síntesis de imágenes del documento y aplicación de ruido.

+-------------------------------------------------------------------------+
| Etapa 1: Preparación de Elementos del Documento                         |
|   - Fuente de texto: corpus JSSODa (sustantivos del diccionario JUMAN -> llm-jp-3.1) |
|   - Segmentación de párrafos y generación de títulos                    |
|   - Asignación lineal que empareja párrafos con marcadores de posición de imágenes |
|   - Generación de prompts de imagen (Qwen3-30B) -> Z-Image-Turbo        |
|   - Generación de leyendas (Qwen3-VL-30B) en proporción 9:1 corto a largo |
+-------------------------------------------------------------------------+
                                    |
                                    v
+-------------------------------------------------------------------------+
| Etapa 2: Renderizado de Documentos HTML/CSS                             |
|   - 8 combinaciones de diseño: Horizontal/Vertical x 1, 2, 3, 4 Columnas |
|   - 49 fuentes japonesas de Google Fonts                                |
|   - 25% de probabilidad de presencia de título; figuras de una columna o que abarcan varias |
|   - Renderizado en navegador web                                        |
+-------------------------------------------------------------------------+
                                    |
                                    v
+-------------------------------------------------------------------------+
| Etapa 3: Tubería de Ruido (17,970 Imágenes Curadas)                     |
|   - 40% renderizados limpios programáticos                              |
|   - 30% ruido tipo escaneo                                              |
|   - 30% degradación con Augraphy                                        |
+-------------------------------------------------------------------------+

1. Preparación de Elementos del Documento

La tubería comienza con texto de JSSODa. El texto de ese conjunto de datos se generó extrayendo sustantivos del diccionario JUMAN y solicitando a llm-jp-3.1-13b-instruct4 que generara oraciones relacionadas con cada sustantivo. Synth-JDoc utiliza el mismo modelo para generar un título para cada texto.

A continuación, el texto se divide en párrafos en los saltos de línea dobles (\n\n). Para crear documentos ilustrados, la tubería inserta marcadores de posición de imagen:

  • El número de imágenes por documento se elige aleatoriamente, desde cero hasta la mitad del número de párrafos.
  • Los marcadores de posición se insertan aleatoriamente antes o después de los párrafos.
  • El sistema empareja los marcadores de posición con los párrafos minimizando la suma de las distancias cuadradas entre ellos mediante un problema de asignación lineal.

Para cada marcador de posición emparejado, Qwen3-30B-A3B-Instruct-2507 produce un prompt de generación de imagen basado en el párrafo asociado. Z-Image-Turbo genera entonces la imagen. Finalmente, Qwen3-VL-30B-A3B-Instruct genera una leyenda de imagen. Se utilizan leyendas concisas y leyendas más largas de varias oraciones en una proporción de 9:1.

2. Síntesis de Diseño Basado en Navegador

Con el texto, títulos, imágenes y leyendas preparados, Synth-JDoc construye páginas HTML/CSS y las renderiza como imágenes en un navegador web.

  • Combinaciones de Diseño: El conjunto de datos se distribuye uniformemente en ocho combinaciones: escritura horizontal o vertical, cada una con una a cuatro columnas.
  • Diversidad Tipográfica: Las fuentes se seleccionan aleatoriamente entre 49 opciones japonesas disponibles a través de Google Fonts.
  • Variación de Diseño: Los títulos aparecen con una probabilidad del 25%. En diseños con dos o más columnas, las imágenes pueden permanecer dentro de una columna o abarcar todas las columnas. Los estilos de leyenda de figura, incluidos “Figure N:” y “Fig. N:”, también se aleatorizan.

Dado que el texto se renderiza directamente en los documentos sintéticos, la tubería evita los errores de reconocimiento OCR que surgen cuando las etiquetas se extraen de imágenes de documentos existentes.

3. Ruido y Simulación de Escáner

El conjunto de entrenamiento final combina imágenes sintéticas limpias, imágenes tipo escaneo e imágenes procesadas con Augraphy.

  • Renderizados Limpios (40%): Documentos sintéticos antes de la aplicación de ruido.
  • Ruido Tipo Escaneo (30%): Ruido gaussiano, rotación, transformaciones de perspectiva, sombras verticales y horizontales, efectos de viñeta y desenfoque global ocasional.
  • Procesamiento con Augraphy (30%): Una tubería de degradación de documentos con tres etapas:
    • Fase de Tinta: InkBleed y InkMottling.
    • Fase de Papel: Patrones de color y textura añadidos.
    • Fase Posterior: Mayor degradación como manchas, garabatos, sombras y pliegues simulados.

Después de filtrar manualmente las imágenes con errores de síntesis o posibles problemas de derechos de autor, el conjunto de entrenamiento final de Synth-JDoc contiene 17,970 imágenes.


Resultados Experimentales: El Conjunto de Datos VJRODa

Los investigadores evaluaron los modelos en VJRODa, un conjunto de datos compuesto por 100 imágenes de documentos japoneses escritos verticalmente del mundo real y sus textos correspondientes. El artículo describe VJRODa como construido a partir de páginas PDF reales; su sección de limitaciones señala que los PDFs fueron publicados por agencias gubernamentales y son relativamente limpios.

Se realizó un ajuste fino completo de cinco LVLMs de código abierto, actualizando todos los parámetros de los módulos:

  • Qwen2.5-VL-7B-Instruct
  • Qwen3-VL-8B-Instruct
  • InternVL3-8B-hf
  • InternVL3.5-VL-8B-hf
  • Gemma 3 12B IT

El entrenamiento utilizó un tamaño de lote (batch size) de 32, el optimizador AdamW y una tasa de aprendizaje (learning rate) de 2e-05. El prompt solicitaba a cada modelo que generara todo el texto de la imagen siguiendo el orden de lectura estándar del japonés. El artículo mantuvo la configuración de entrenamiento y el volumen de datos de entrenamiento consistentes en todos los ajustes finos.

Métricas de Evaluación y la Trampa de la Repetición

Los autores reportan dos métricas:

  • Tasa de Error de Caracteres (CER $\downarrow$): Distancia de edición entre la salida del modelo y el texto de referencia (ground-truth), dividida por el número de caracteres de referencia y multiplicada por 100. Menor es mejor.
  • SacreBLEU (BLEU $\uparrow$): BLEU a nivel de carácter después de la tokenización a nivel de carácter. Mayor es mejor.
  • Preprocesamiento de Texto: Normalización Unicode NFKC y eliminación de espacios en blanco antes de calcular las puntuaciones.

Los resultados se reportan bajo dos configuraciones de salida:

  • Salida Cruda (Raw Output): Puntuaciones calculadas sobre la salida del modelo tal como fue generada.
  • Eliminar Repetición: Puntuaciones calculadas después de eliminar cadenas repetitivas al final.

La segunda configuración es importante porque los LVLMs pueden repetir la misma cadena de texto. El artículo utiliza ambas configuraciones para separar los cambios en la generación repetitiva de los cambios en el rendimiento central del reconocimiento de caracteres.

Desglose del Rendimiento

Modelo Conjunto de Datos de Entrenamiento CER Crudo ($\downarrow$) BLEU Crudo ($\uparrow$) CER sin Repetición ($\downarrow$) BLEU sin Repetición ($\uparrow$)
Qwen2.5-VL-7B Base Zero-Shot 154.0 20.1 88.5 22.0
+ JSSODa 65.1 51.5 40.5 61.1
+ Nano Banana Pro 161.0 20.9 135.0 24.4
+ Synth-JDoc (Nuestro) 34.5 66.8 32.0 69.5
Qwen3-VL-8B Base Zero-Shot 116.0 32.6 45.6 52.5
+ JSSODa 130.0 29.9 65.5 49.4
+ Nano Banana Pro 177.0 16.1 138.0 17.3
+ Synth-JDoc (Nuestro) 43.9 57.4 25.0 70.8
InternVL3-8B Base Zero-Shot 121.0 26.0 66.5 40.8
+ JSSODa 251.0 26.1 73.5 54.9
+ Nano Banana Pro 173.0 15.3 140.0 19.3
+ Synth-JDoc (Nuestro) 70.9 47.8 38.9 68.1
InternVL3.5-VL-8B Base Zero-Shot 121.0 29.2 56.1 41.0
+ JSSODa 57.9 62.3 37.2 71.9
+ Nano Banana Pro 173.0 15.6 117.0 18.8
+ Synth-JDoc (Nuestro) 36.8 66.7 25.9 78.3
Gemma 3 12B IT Base Zero-Shot 125.0 17.5 67.9 23.3
+ JSSODa 77.6 27.9 67.4 27.2
+ Nano Banana Pro 196.0 8.5 145.0 9.3
+ Synth-JDoc (Nuestro) 128.0 18.7 96.3 26.5

Para Qwen2.5-VL, Qwen3-VL, InternVL3 e InternVL3.5, la fila de ajuste fino con Synth-JDoc presenta las mejores puntuaciones de CER y BLEU tanto en Salida Cruda como en Eliminar Repetición.

  • En Qwen3-VL-8B, el CER sin repetición cayó de 45.6 a 25.0, mientras que el BLEU aumentó de 52.5 a 70.8.
  • En InternVL3.5-8B, el CER sin repetición cayó de 56.1 a 25.9, mientras que el BLEU aumentó a 78.3.
  • El ajuste fino con JSSODa mejoró algunos modelos, pero no mejoró todas las configuraciones. Por ejemplo, el CER crudo de Qwen3-VL aumentó de 116.0 a 130.0.

Estudio de Caso del Mundo Real

El ejemplo cualitativo del artículo utiliza un documento relacionado con avisos de la Pensión Nacional (Nenkin Tokubetsubin).

El modelo base Qwen3-VL-8B produjo “A1” en la primera sección y luego omitió el texto en la segunda columna desde arriba antes de continuar en “Q2” en la tercera. Su CER fue de 47.4. El modelo ajustado con Synth-JDoc no omitió esa columna y su CER fue de 3.84.

Dos Resultados Experimentales Instructivos

El artículo también evalúa dos límites importantes del enfoque.

1. La Línea Base Nano Banana Pro

Los investigadores generaron un conjunto de datos de referencia utilizando Nano Banana Pro (gemini-3-pro-image-preview). Los prompts especificaban el mismo texto, títulos, leyendas de figuras, dirección de escritura y número de columnas utilizados para Synth-JDoc. Cuando había leyendas, los prompts también solicitaban las figuras correspondientes.

Las imágenes podían parecer realistas, con detalles como escritorios de madera y dobleces en las páginas. Sin embargo, el artículo informa varios fallos en la generación de documentos:

  • Caracteres Distorsionados: Los caracteres japoneses generados podían estar malformados.
  • Desajuste de Texto: El texto de la imagen podía diferir del prompt.
  • Fallo en el Diseño Vertical: El modelo no creaba de manera fiable documentos multicanal con texto escrito verticalmente. En un ejemplo, un prompt que solicitaba un diseño de dos columnas escrito verticalmente produjo dos páginas separadas escritas verticalmente en su lugar.

La configuración de ajuste fino de Nano Banana Pro generalmente degradaba los resultados en comparación con los modelos originales. El artículo señala una excepción: el BLEU de Qwen2.5-VL mejoró ligeramente, aunque su CER empeoró sustancialmente.

2. La Restricción de Resolución de Gemma 3

Synth-JDoc no mejoró Gemma 3. Los autores atribuyen este resultado a cómo Gemma 3 maneja las imágenes de entrada.

Qwen2.5-VL y Qwen3-VL utilizan Resolución Dinámica Nativa, mientras que InternVL3 e InternVL3.5 utilizan una Estrategia de Mosaico Dinámico. Estos enfoques pueden procesar imágenes con diferentes relaciones de aspecto y resoluciones. En cambio, el artículo afirma que Gemma 3 redimensiona las imágenes de entrada a una resolución fija de 1:1.

Synth-JDoc contiene imágenes de documentos con una variedad de resoluciones. Por lo tanto, los autores hipotetizan que el redimensionamiento fijo de Gemma 3 le impidió aprender eficazmente del conjunto de datos. Presentan esto como evidencia de que el rendimiento de OCR depende tanto del diseño del conjunto de datos como de la arquitectura del modelo.


archivo de documentos de papel escaneados

Estudio de Ablación: Imágenes y Leyendas

Los autores también probaron el efecto de las imágenes incrustadas y sus leyendas. Antes de aplicar ruido, enmascararon las imágenes, las leyendas o ambas con el color de fondo, y luego entrenaron a Qwen3-VL-8B e InternVL3.5-VL-8B en esas variantes.

Configuración de Ablación (Qwen3-VL-8B) CER Bruto ($\downarrow$) BLEU Bruto ($\uparrow$) CER sin Repeticiones ($\downarrow$) BLEU sin Repeticiones ($\uparrow$)
Synth-JDoc Completo 43.9 57.4 25.0 70.8
Imágenes Enmascaradas (w/o image) 60.5 48.1 36.8 67.4
Leyendas Enmascaradas (w/o caption) 120.0 30.2 51.2 54.5
Ambos Enmascarados (w/o image + caption) 55.7 48.9 39.3 64.8
Configuración de Ablación (InternVL3.5-8B) CER Bruto ($\downarrow$) BLEU Bruto ($\uparrow$) CER sin Repeticiones ($\downarrow$) BLEU sin Repeticiones ($\uparrow$)
Synth-JDoc Completo 36.8 66.7 25.9 78.3
Imágenes Enmascaradas (w/o image) 45.5 58.8 38.6 65.2
Leyendas Enmascaradas (w/o caption) 54.3 57.9 39.9 72.7
Ambos Enmascarados (w/o image + caption) 59.3 57.6 47.1 66.4

Eliminar tanto las imágenes como las leyendas aumentó el CER sin repeticiones de Qwen3-VL de 25.0 a 39.3. Para InternVL3.5, aumentó de 25.9 a 47.1.

Para ambos modelos, el conjunto de datos Synth-JDoc completo superó a las variantes con imágenes o leyendas enmascaradas. Los autores atribuyen esto a que las páginas sintéticas con ambos elementos representan documentos visualmente más diversos y realistas.

Limitaciones y trabajo futuro

El artículo identifica varias limitaciones abiertas:

  • Diversidad de diseño: Synth-JDoc cubre diseños horizontales y verticales con una a cuatro columnas, pero los documentos reales, como los periódicos, pueden tener órdenes de lectura más complejos.
  • Elementos estructurados: Los autores identifican gráficos y tablas como objetivos futuros para la tubería de síntesis.
  • Repetición del decodificador: La decodificación codiciosa aún produjo salidas repetitivas en algunos casos. Los autores sugieren que los hiperparámetros de decodificación podrían ayudar a suprimir este comportamiento.
  • Diversidad del conjunto de prueba: VJRODa consta de imágenes de PDF gubernamentales relativamente limpias, por lo que no puede medir completamente el valor de la aumentación de ruido de la tubería.
  • Filtrado de contenido NSFW: La tubería de construcción no incluye filtrado de contenido NSFW. Los autores señalan que esto podría introducirse durante la preparación del texto, la generación de prompts, la generación de imágenes o la generación de subtítulos de imágenes, y que tanto el texto como las imágenes deben filtrarse en cada etapa.

Por Qué Importa para los Equipos de Document AI

Para los equipos que trabajan en OCR de documentos japoneses, el artículo ofrece varias lecciones basadas en evidencia.

1. El Control Programático del Diseño Preserva el Texto Pretendido

Synth-JDoc renderiza el texto preparado directamente a través de HTML y CSS. Esto evita errores de etiquetas derivados del OCR y otorga a los autores un control explícito sobre la dirección de escritura, columnas, títulos, fuentes, colocación de figuras y estilos de pie de foto.

La comparación con Nano Banana Pro no establece que todos los métodos de texto a imagen sean inadecuados para la generación de datos de OCR. Sí muestra que, en este experimento, una línea base de texto a imagen de alto rendimiento tuvo dificultades con caracteres exactos y diseños multicolumna escritos verticalmente.

2. Las Imágenes y los Pies de Foto Cambiaron el Resultado del Entrenamiento

El estudio de ablación encontró que enmascarar imágenes incrustadas o pies de foto redujo el rendimiento tanto para Qwen3-VL-8B como para InternVL3.5-VL-8B. En este conjunto de datos, esos elementos mejoraron los resultados en relación con las variantes enmascaradas correspondientes.

3. La Interacción entre el Diseño del Conjunto de Datos y la Arquitectura del Modelo

El resultado de Gemma 3 del artículo es una advertencia útil. Los autores hipotetizan que el redimensionamiento fijo de imagen 1:1 dificultó que ese modelo se beneficiara de las resoluciones de documento variadas de Synth-JDoc, mientras que los modelos con Resolución Dinámica Nativa o Búsqueda Dinámica mejoraron sustancialmente.

Al liberar código y datos, Sasagawa, Kurita y Kawahara proporcionan un recurso público para entrenar y estudiar OCR en imágenes de documentos japoneses escritos verticalmente.