OPENEDU Seu Conhecimento Cresce a Cada Questão Resolvida

Treinamento De Caligrafia

Treinamento De Caligrafia

Como treinar um modelo de reconhecimento de caligrafia do zero

Vou direto ao ponto porque já vi muita gente começar um projeto de treinamento de caligrafia e travar na segunda semana sem saber o porquê. O processo básico envolve três coisas: reunir dados manuscritos, preparar o conjunto de treino e ajustar um modelo de deep learning. A parte que ninguém conta é que a maior parte do tempo você vai passar limpando dados, não treinando. Treinamento de caligrafia significa ensinar um modelo de machine learning a reconhecer ou reproduzir escrita à mão. No Brasil, o termo aparece com mais força quando se trata de OCR para documentos manuscritos, que é onde a coisa fica complicada de verdade. Um modelo genérico como o Tesseract funciona bem para texto impresso. Para manuscrito, você precisa de um dataset próprio ou de fine-tuning agressivo. Quando eu comecei meu primeiro projeto, pensei que bastava coletar algumas imagens e jogar no CRNN. Errado. O primeiro modelo que treinei com 500 amostras teve 34% de precisão no teste. O problema não era o modelo. Era a qualidade dos dados.

Coletando dados que realmente funcionam

Aqui vai o pulo do gato que todo mundo ignora: a variabilidade da amostra importa mais do que a quantidade. Um dataset com 10 mil amostras todas escritas pela mesma pessoa com caneta azul em papel branco é pior do que 3 mil amostras com diferentes escritores, lápis, caneta, papel amarelado e iluminação desigual. No meu caso, tinha um cliente que precisava transcrever formulários médicos antigos dos anos 90. O papel estava amarelado, alguns textos tinham sido riscados com caneta preta por cima, e havia marcas de café. Passei duas semanas só tentando levantar imagens desses documentos antes mesmo de pensar em treinar qualquer coisa. A solução foi criar um pipeline de pré-processamento com equalização de histograma adaptativo e remoção de ruído via filtragem gaussiana. Isso sozinho elevou a acurácia do modelo de 34% para 61%.

Estrutura do dataset

Organize seus dados em uma árvore simples. Cada linha do seu corpus deve ter três elementos: a imagem manuscrita, a transcrição correta e, se possível, as coordenadas de bounding box de cada caractere ou palavra. Anotações no formato CT-C (Connectionist Text Classification) são o padrão da indústria para reconhecimento sequencial. Ferramentas como o LabelImg ou o CVAT fazem esse trabalho, mas exigem paciência. Anotar 500 linhas leva entre 4 e 6 horas dependendo da complexidade. Uma coisa que aprendi na marra: nunca use apenas letras minúsculas no treino se o seu domínio tem números, siglas ou maiúsculas frequentes. Meu modelo treinado só com texto em minúsculas falhava completamente em reconhecer "CPF" ou "R$". Adicionei exemplos variados de caracteres especiais e a taxa de erro caiu de 18% para 7% na validação.

Caligrafia para Imprimir – Click Escolar
Caligrafia para Imprimir – Click Escolar

Escolhendo a arquitetura

Para caligrafia, as duas arquiteturas que realmente funcionam no Brasil são CRNN (Convolutional Recurrent Neural Network) e Transformer-based como o TrOCR. O CRNN é mais leve e roda em CPU com Latência aceitável. O TrOCR é mais preciso mas exige GPU e muito mais poder computacional. Se você está começando e não teminfraestrutura robusta, comece com CRNN usando CTC loss. Treinei um modelo base com 12 camadas convolucionais e duas LSTM com aproximadamente 8 milhões de parâmetros. Rodou em uma RTX 3060 em cerca de 14 horas com batch size de 32. O resultado final foi 89,2% de WER (Word Error Rate) invertido, o que significa 10,8% de erro em palavras completas. Para um projeto interno de triagem documental, isso já é suficiente.

Pitfalls que você vai encontrar

O maior problema prático é overfitting silencioso. Seu modelo pode ter 95% de acurácia nos dados de treino e 60% nos de teste. A causa quase sempre é sobreposição entre train e test set. Se você coletou amostras de uma mesma fonte, como um livro didático específico, o modelo aprende o estilo daquele autor e não a língua em si. Separe os dados por escritor, não aleatoriamente. Divida os autores em treino, validação e teste. Assim você testa generalização real entre escritores diferentes. Outro problema comum é o dataset desbalanceado. Letras como "O" e "Q" aparecem muito mais frequentemente que "Z" e "K". Use data augmentation com rotação, distorção elástica e variação de espessura de stroke para compensar. Eu uso a biblioteca albumentations e aplico augmentation aleatória durante o treino, o que reduziu o gap de performance entre classes raras e comuns de 22% para 6%.

Alternativas quando o treinamento não funciona

Há cenários em que treinar do zero não vale a pena. Se seu domínio for muito específico, como fórmulas químicas ou partituras musicais, um modelo generalista vai falhar sistematicamente. Nesses casos, a alternativa é usar transfer learning a partir de um modelo pré-treinado em grandes corpora como o RIM-WEBAIST ou oiam Big Handwriting Dataset, e fazer fine-tuning apenas com seus dados. Isso reduz o tempo de treino de dias para horas e melhora a generalização porque o modelo já carregua padrões visuais de larga escala. Também existe a opção de contratar serviços de OCR com API, como Amazon Textract ou Google Document AI, que já reconhecem caligrafia sem você configurar nada. O custo por documento processado varia entre US$ 0,001 e US$ 0,005 dependendo do volume. Para processamento esporádico, faz mais sentido econômico do que manter uma infraestrutura de treino rodando 24 horas.

BLOG PROFESSOR ZEZINHO: 57 ATIVIDADES DE CALIGRAFIA - TREINO DA CALIGRAFIA
BLOG PROFESSOR ZEZINHO: 57 ATIVIDADES DE CALIGRAFIA - TREINO DA CALIGRAFIA

Checklist rápido antes de começar

Antes de dedicar semanas a um projeto de treinamento de caligrafia, verifique se você já tem pelo menos 2 mil amostras diversificadas, um pipeline de anotação funcionando, e uma métrica de avaliação definida desde o início. Sem métrica clara, você não sabe se está melhorando ou só mudando o tipo de erro. Defina WER ou CER antes do primeiro epoch. É a única forma de comparar resultados de verdade.

[Step-by-Step] How to Improve Your Handwriting QUICK AND EASY
[Step-by-Step] How to Improve Your Handwriting QUICK AND EASY