Skip to content
← Blog

Layouts Sintéticos, Melhor OCR Vertical para Japonês: Dentro do 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

Insira um documento governamental japonês em várias colunas em um Large Vision Language Model (LVLM), peça para transcrever a página e ele pode falhar de uma maneira muito específica. Em um exemplo do paper Synth-JDoc, um modelo lê a seção “A1”, pula o texto na próxima coluna vertical e salta diretamente para “Q2.”

Documentos japoneses podem combinar texto horizontal (yokogaki) e texto vertical (tategaki). No texto japonês vertical, os caracteres correm de cima para baixo e as linhas de direita para esquerda. O paper observa que o japonês escrito verticalmente continua sub-representado nos dados de treinamento de OCR, e que os LVLMs atuais desempenham consideravelmente pior nele do que no texto japonês horizontal.

Para abordar essa lacuna, Keito Sasagawa, Shuhei Kurita e Daisuke Kawahara desenvolveram o Synth-JDoc. Seu paper, “Synth-JDoc: Synthesizing a Japanese Document Image Dataset for OCR with Diverse Layouts and Embedded Images”, descreve um pipeline de dados sintéticos construído em torno de renderização HTML/CSS, geração de texto para imagem para figuras embutidas e degradação de imagem.

O conjunto de dados final contém 17.970 imagens de documentos curadas. Em avaliações em documentos japoneses escritos verticalmente do mundo real, modelos ajustados no Synth-JDoc alcançaram as melhores pontuações relatadas sob ambos os cenários de avaliação para quatro das cinco famílias de modelos testadas. O código do projeto é de código aberto no GitHub (llm-jp/synth-jdoc), com o conjunto de dados hospedado no Hugging Face (llm-jp/Synth-JDoc).

Aqui está uma análise técnica do problema de OCR japonês vertical, como o Synth-JDoc constrói suas páginas sintéticas e o que seus experimentos mostram.


japanese newspaper print column

Por que o Japonês Vertical é Desafiador para LVLMs

A transcrição de documentos exige mais do que o reconhecimento de caracteres individuais. Um modelo também deve seguir a ordem de leitura da página.

Os documentos japoneses verticais adicionam um desafio particular:

  • Direcionalidade Vertical: Os caracteres em uma linha vertical são lidos de cima para baixo, enquanto as linhas progridem da direita para a esquerda.
  • Layouts de Múltiplas Colunas: O artigo descreve a ordem de leitura de múltiplas colunas como progredindo sequencialmente da coluna mais alta para a mais baixa.
  • Estilos de Escrita Mistos: Documentos japoneses podem conter escrita vertical e horizontal na mesma página.

O exemplo motivador do artigo é uma página de documento real onde o modelo original Qwen3-VL omitiu a segunda coluna a partir do topo. O modelo ajustado (fine-tuned) não pulou esse texto. Os autores argumentam que um conjunto de dados de OCR japonês com texto vertical, layouts de múltiplas colunas e imagens inseridas é necessário para melhorar esse tipo de leitura de documentos.

Construir esse conjunto de dados a partir de documentos reais é caro. A anotação manual não escala facilmente, enquanto a extração de texto de treinamento com um sistema de OCR introduz erros de reconhecimento e requer a coleta de imagens dos documentos de origem. As abordagens sintéticas existentes também têm limitações: o SynthDoG pode gerar imagens de documentos japoneses, mas produz layouts menos realistas, enquanto o JSSODa suporta texto vertical e horizontal em layouts de uma a quatro colunas, mas usa texto preto em fundo branco sem imagens inseridas.

A Arquitetura Synth-JDoc: Síntese Dirigida por Código

O Synth-JDoc utiliza um pipeline de três etapas: preparação de elementos do documento, síntese de imagens do documento e aplicação de ruído.

+-------------------------------------------------------------------------+
| Etapa 1: Preparação de Elementos do Documento                           |
|   - Fonte de texto: corpus JSSODa (substantivos do dicionário JUMAN -> llm-jp-3.1) |
|   - Segmentação de parágrafos e geração de títulos                      |
|   - Correspondência de parágrafos com espaços reservados de imagem via Problema de Atribuição Linear |
|   - Geração de prompts de imagem (Qwen3-30B) -> Z-Image-Turbo           |
|   - Geração de legendas (Qwen3-VL-30B) na proporção 9:1 (curto para longo) |
+-------------------------------------------------------------------------+
                                    |
                                    v
+-------------------------------------------------------------------------+
| Etapa 2: Renderização de Documento HTML/CSS                             |
|   - 8 combinações de layout: Horizontal/Vertical x 1, 2, 3, 4 Colunas   |
|   - 49 fontes japonesas do Google Fonts                                 |
|   - Probabilidade de presença de título de 25%; figuras em coluna única ou abrangentes |
|   - Renderização em navegador web                                       |
+-------------------------------------------------------------------------+
                                    |
                                    v
+-------------------------------------------------------------------------+
| Etapa 3: Pipeline de Ruído (17.970 Imagens Curadas)                     |
|   - 40% renders programáticos limpos                                    |
|   - 30% ruído estilo digitalização                                      |
|   - 30% degradação Augraphy                                             |
+-------------------------------------------------------------------------+

1. Preparação de Elementos do Documento

O pipeline começa com texto do JSSODa. O texto desse conjunto de dados foi gerado extraindo substantivos do dicionário JUMAN e solicitando ao llm-jp-3.1-13b-instruct4 que gerasse frases relacionadas a cada substantivo. O Synth-JDoc usa o mesmo modelo para gerar um título para cada texto.

Em seguida, o texto é dividido em parágrafos nas quebras de linha duplas (\n\n). Para criar documentos ilustrados, o pipeline insere espaços reservados para imagens:

  • O número de imagens por documento é escolhido aleatoriamente, de zero até metade do número de parágrafos.
  • Os espaços reservados são inseridos aleatoriamente antes ou depois dos parágrafos.
  • O sistema emparelha os espaços reservados com os parágrafos minimizando a soma das distâncias quadradas entre eles por meio de um problema de atribuição linear.

Para cada espaço reservado emparelhado, o Qwen3-30B-A3B-Instruct-2507 produz um prompt de geração de imagem com base no parágrafo associado. O Z-Image-Turbo então gera a imagem. Por fim, o Qwen3-VL-30B-A3B-Instruct gera uma legenda para a imagem. Legendas concisas e legendas mais longas, com várias frases, são usadas na proporção de 9:1.

2. Síntese de Layout Baseada em Navegador

Com o texto, títulos, imagens e legendas preparados, o Synth-JDoc constrói páginas HTML/CSS e as renderiza como imagens em um navegador web.

  • Combinações de Layout: O conjunto de dados é distribuído uniformemente entre oito combinações: escrita horizontal ou vertical, cada uma com uma a quatro colunas.
  • Diversidade Tipográfica: As fontes são selecionadas aleatoriamente entre 49 opções japonesas disponíveis no Google Fonts.
  • Variação de Layout: Os títulos aparecem com probabilidade de 25%. Em layouts com duas ou mais colunas, as imagens podem permanecer dentro de uma coluna ou abranger todas as colunas. Os estilos de legenda de figura, incluindo “Figure N:” e “Fig. N:”, também são randomizados.

Como o texto é renderizado diretamente nos documentos sintéticos, o pipeline evita os erros de reconhecimento de OCR que surgem quando os rótulos são extraídos de imagens de documentos existentes.

3. Simulação de Ruído e Digitalizador

O conjunto de treinamento final combina imagens sintéticas limpas, imagens estilo digitalização e imagens processadas pelo Augraphy.

  • Renders Limpos (40%): Documentos sintéticos antes da aplicação de ruído.
  • Ruído Estilo Digitalização (30%): Ruído gaussiano, rotação, transformações de perspectiva, sombras verticais e horizontais, efeitos de vinheta e desfoque global ocasional.
  • Processamento Augraphy (30%): Um pipeline de degradação de documentos com três etapas:
    • Fase de Tinta: InkBleed e InkMottling.
    • Fase de Papel: Adição de padrões de cor e textura.
    • Fase Pós: Degradação adicional, como manchas, rabiscos, sombras e dobra simulada.

Após filtrar manualmente imagens com erros de síntese ou potenciais problemas de direitos autorais, o conjunto de treinamento final do Synth-JDoc contém 17.970 imagens.


Resultados Experimentais: O Benchmark VJRODa

Os pesquisadores avaliaram os modelos no VJRODa, um conjunto de dados composto por 100 imagens de documentos japoneses escritos verticalmente do mundo real e seus textos correspondentes. O artigo descreve o VJRODa como construído a partir de páginas PDF reais; a seção de limitações observa que os PDFs foram publicados por agências governamentais e são relativamente limpos.

Cinco LVLMs de código aberto foram totalmente ajustados (fine-tuned), com todos os parâmetros dos módulos atualizados:

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

O treinamento utilizou um tamanho de lote (batch size) de 32, o otimizador AdamW e uma taxa de aprendizado de 2e-05. O prompt solicitava a cada modelo que produzisse todo o texto da imagem na ordem de leitura padrão do japonês. O artigo manteve a configuração de treinamento e o volume de dados de treinamento consistentes entre as configurações de ajuste fino.

Métricas de Avaliação e a Armadilha da Repetição

Os autores relatam duas métricas:

  • Taxa de Erro de Caracteres (CER $\downarrow$): Distância de edição entre a saída do modelo e o texto de referência (ground-truth), dividida pelo número de caracteres de referência e multiplicada por 100. Menor é melhor.
  • SacreBLEU (BLEU $\uparrow$): BLEU em nível de caractere após a tokenização em nível de caractere. Maior é melhor.
  • Pré-processamento de Texto: Normalização Unicode NFKC e remoção de espaços em branco antes da pontuação.

Os resultados são relatados sob duas configurações de saída:

  • Saída Bruta (Raw Output): Pontuações calculadas na saída do modelo conforme gerada.
  • Remoção de Repetição: Pontuações calculadas após a remoção de strings repetitivas de cauda.

A segunda configuração é importante porque os LVLMs podem repetir a mesma string. O artigo utiliza ambas as configurações para separar as mudanças na geração repetitiva das mudanças no desempenho central de reconhecimento de caracteres.

Detalhamento do Desempenho

Modelo Conjunto de Dados de Treinamento CER Bruto ($\downarrow$) BLEU Bruto ($\uparrow$) CER Repetição Removida ($\downarrow$) BLEU Repetição Removida ($\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 (Nosso) 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 (Nosso) 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 (Nosso) 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 (Nosso) 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 (Nosso) 128.0 18.7 96.3 26.5

Para Qwen2.5-VL, Qwen3-VL, InternVL3 e InternVL3.5, a linha de ajuste fino do Synth-JDoc apresenta as melhores pontuações de CER e BLEU tanto na Saída Bruta quanto na Remoção de Repetição.

  • No Qwen3-VL-8B, o CER com repetição removida caiu de 45.6 para 25.0, enquanto o BLEU subiu de 52.5 para 70.8.
  • No InternVL3.5-8B, o CER com repetição removida caiu de 56.1 para 25.9, enquanto o BLEU subiu para 78.3.
  • O ajuste fino no JSSODa melhorou alguns modelos, mas não melhorou todas as configurações. Por exemplo, o CER bruto do Qwen3-VL aumentou de 116.0 para 130.0.

Estudo de Caso do Mundo Real

O exemplo qualitativo do artigo utiliza um documento referente a notificações da Pensão Nacional (Nenkin Tokubetsubin).

O modelo base Qwen3-VL-8B produziu “A1” na primeira seção e, em seguida, pulou o texto na segunda coluna a partir do topo antes de continuar em “Q2” na terceira. Seu CER foi de 47.4. O modelo ajustado com Synth-JDoc não pulou aquela coluna, e seu CER foi 3.84.

Dois Resultados Experimentais Instrutivos

O artigo também testa dois limites importantes da abordagem.

1. A Linha de Base do Nano Banana Pro

Os pesquisadores geraram um conjunto de dados de linha de base usando o Nano Banana Pro (gemini-3-pro-image-preview). Os prompts especificavam o mesmo texto, títulos, legendas de figuras, direção de escrita e número de colunas usados para o Synth-JDoc. Quando havia legendas, os prompts também solicitavam as figuras correspondentes.

As imagens podiam parecer realistas, com detalhes como mesas de madeira e dobras nas páginas. Mas o artigo relata várias falhas na geração de documentos:

  • Caracteres Distorcidos: Os caracteres japoneses gerados podiam estar malformados.
  • Inconsistência de Texto: O texto da imagem podia diferir do prompt.
  • Falha no Layout Vertical: O modelo não criava de forma confiável documentos em várias colunas com texto escrito verticalmente. Em um exemplo, um prompt solicitando um layout de duas colunas com texto escrito verticalmente produziu duas páginas separadas com texto escrito verticalmente, em vez disso.

A configuração de ajuste fino do Nano Banana Pro geralmente degradou os resultados em relação aos modelos originais. O artigo nota uma exceção: o BLEU do Qwen2.5-VL melhorou ligeiramente, embora seu CER tenha piorado substancialmente.

2. A Restrição de Resolução do Gemma 3

O Synth-JDoc não melhorou o desempenho do Gemma 3. Os autores atribuem esse resultado à maneira como o Gemma 3 lida com imagens de entrada.

O Qwen2.5-VL e o Qwen3-VL usam Resolução Dinâmica Nativa, enquanto o InternVL3 e o InternVL3.5 usam uma Estratégia de Tile Dinâmica. Essas abordagens podem processar imagens com diferentes proporções e resoluções. Em contraste, o artigo afirma que o Gemma 3 redimensiona as imagens de entrada para uma resolução fixa de 1:1.

O Synth-JDoc contém imagens de documentos com uma variedade de resoluções. Os autores, portanto, hipotetizam que o redimensionamento fixo do Gemma 3 impediu que ele aprendesse efetivamente com o conjunto de dados. Eles apresentam isso como evidência de que o desempenho de OCR depende tanto do design do conjunto de dados quanto da arquitetura do modelo.


arquivo de documentos de papel digitalizados

Estudo de Ablação: Imagens e Legendas

Os autores também testaram o efeito das imagens incorporadas e de suas legendas. Antes de aplicar ruído, eles mascararam as imagens, as legendas ou ambas com a cor de fundo, e então treinaram os modelos Qwen3-VL-8B e InternVL3.5-VL-8B nessas variantes.

Configuração de Ablação (Qwen3-VL-8B) CER Bruto ($\downarrow$) BLEU Bruto ($\uparrow$) CER sem Repetições ($\downarrow$) BLEU sem Repetições ($\uparrow$)
Synth-JDoc Completo 43.9 57.4 25.0 70.8
Imagens Mascaradas (w/o image) 60.5 48.1 36.8 67.4
Legendas Mascaradas (w/o caption) 120.0 30.2 51.2 54.5
Ambos Mascarados (w/o image + caption) 55.7 48.9 39.3 64.8
Configuração de Ablação (InternVL3.5-8B) CER Bruto ($\downarrow$) BLEU Bruto ($\uparrow$) CER sem Repetições ($\downarrow$) BLEU sem Repetições ($\uparrow$)
Synth-JDoc Completo 36.8 66.7 25.9 78.3
Imagens Mascaradas (w/o image) 45.5 58.8 38.6 65.2
Legendas Mascaradas (w/o caption) 54.3 57.9 39.9 72.7
Ambos Mascarados (w/o image + caption) 59.3 57.6 47.1 66.4

A remoção de ambas as imagens e legendas elevou o CER sem repetições do Qwen3-VL de 25,0 para 39,3. Para o InternVL3.5, o índice subiu de 25,9 para 47,1.

Para ambos os modelos, o conjunto de dados Synth-JDoc completo superou as variantes com imagens ou legendas mascaradas. Os autores atribuem isso ao fato de que páginas sintéticas com ambos os elementos representam documentos visualmente mais diversos e realistas.

Limitações e Trabalhos Futuros

O artigo identifica várias restrições em aberto:

  • Diversidade de Layout: O Synth-JDoc cobre layouts horizontais e verticais com uma a quatro colunas, mas documentos reais, como jornais, podem ter ordens de leitura mais complexas.
  • Elementos Estruturados: Os autores identificam gráficos e tabelas como alvos futuros para o pipeline de síntese.
  • Repetição no Decodificador: A decodificação gulosa ainda produziu saídas repetitivas em alguns casos. Os autores sugerem que hiperparâmetros de decodificação podem ajudar a suprimir esse comportamento.
  • Diversidade do Conjunto de Teste: O VJRODa consiste em imagens de PDFs governamentais relativamente limpas, portanto, não pode medir totalmente o valor da augmentação de ruído do pipeline.
  • Filtragem de Conteúdo NSFW: O pipeline de construção não inclui filtragem de conteúdo NSFW. Os autores observam que isso poderia ser introduzido durante a preparação de texto, geração de prompts, geração de imagens ou legendagem de imagens, e que tanto textos quanto imagens devem ser filtrados em cada etapa.

Por que isso importa para equipes de Document AI

Para equipes que trabalham com OCR de documentos em japonês, o artigo oferece várias lições baseadas em evidências.

1. Controle programático do layout preserva o texto pretendido

Synth-JDoc renderiza o texto preparado diretamente por meio de HTML e CSS. Isso evita erros de rótulos derivados do OCR e dá aos autores controle explícito sobre a direção da escrita, colunas, títulos, fontes, posicionamento de figuras e estilos de legendas.

A comparação com o Nano Banana Pro não estabelece que todos os métodos de texto para imagem são inadequados para geração de dados de OCR. Ela mostra que, neste experimento, uma linha de base de texto para imagem de alto desempenho teve dificuldade com caracteres exatos e layouts de múltiplas colunas escritos verticalmente.

2. Imagens e legendas mudaram o resultado do treinamento

O estudo de ablação descobriu que a máscara de imagens incorporadas ou legendas reduziu o desempenho tanto para o Qwen3-VL-8B quanto para o InternVL3.5-VL-8B. Neste conjunto de dados, esses elementos melhoraram os resultados em relação às variantes correspondentes mascaradas.

3. Design do conjunto de dados e arquitetura do modelo interagem

O resultado do Gemma 3 do artigo é uma cautela útil. Os autores hipotetizam que o redimensionamento fixo de imagem 1:1 tornou mais difícil para esse modelo se beneficiar das resoluções de documento variadas do Synth-JDoc, enquanto modelos com Resolução Dinâmica Nativa ou Dinamic Tiling melhoraram substancialmente.

Ao liberar código e dados, Sasagawa, Kurita e Kawahara fornecem um recurso público para treinamento e estudo de OCR em imagens de documentos japoneses escritos verticalmente.