Como usar uma linguagem personalizada com o Tesseract em C

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronOCR permite OCR para idiomas personalizados, scripts especializados ou cifras carregando arquivos Tesseract .traineddata através do método UseCustomTesseractLanguageFile, permitindo extrair texto de qualquer modelo de idioma treinado sob medida.

Início rápido: Carregar idioma personalizado para OCR

  1. Instale IronOCR com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronOcr
  2. Copie e execute este trecho de código.

    using IronOcr;
    
    // Initialize OCR engine
    var ocr = new IronTesseract();
    
    // Load custom language file
    ocr.UseCustomTesseractLanguageFile("custom.traineddata");
    
    // Process document
    using var input = new OcrInput();
    input.LoadImage("document.png");
    
    // Extract text
    var result = ocr.Read(input);
    Console.WriteLine(result.Text);
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronOCR em seu projeto hoje com uma avaliação gratuita

    arrow pointer
  1. Instale o IronOCR através do Gerenciador de Pacotes NuGet
  2. Carregue seu arquivo .traineddata personalizado com UseCustomTesseractLanguageFile
  3. Crie um OcrInput e carregue seu documento
  4. Chame Read() para extrair texto no seu idioma personalizado
  5. Salvar ou processar o texto extraído

O reconhecimento óptico de caracteres (OCR) às vezes exige o processamento de idiomas personalizados, scripts especializados ou cifras. Para ler uma imagem de entrada que contenha um idioma personalizado, o mecanismo Tesseract precisa receber dados de treinamento para esse idioma específico. Esses dados são armazenados em um arquivo especial .traineddata.

Embora o complexo processo de criação (treinamento) desse arquivo seja feito usando as próprias ferramentas do Tesseract, o IronOCR oferece suporte completo ao uso desses arquivos de idioma personalizados. Isso permite que você aplique seu modelo treinado para decifrar e ler texto de qualquer entrada. Este guia demonstra como carregar e usar um arquivo .traineddata personalizado com IronOCR.


Como implementar OCR de idioma personalizado com o Tesseract?

Para usar um idioma personalizado com o Tesseract, primeiro carregue seu arquivo .traineddata chamando o método UseCustomTesseractLanguageFile. Esta é uma etapa essencial, pois este arquivo contém todos os dados de treinamento que permitem ao Tesseract reconhecer os caracteres exclusivos do idioma personalizado.

O suporte a idiomas personalizados no IronOCR vai além dos idiomas padrão. Quer você esteja trabalhando com escritas históricas, línguas inventadas ou sistemas de notação especializados, o processo é o mesmo. Para projetos que exigem vários idiomas, consulte nosso guia sobre leitura em vários idiomas ou saiba mais sobre os 125 idiomas internacionais de OCR suportados nativamente.

Em seguida, carregue o documento de entrada da mesma forma que faria para uma operação de OCR normal. Estamos carregando um PDF contendo parágrafos em idioma personalizado usando LoadPdf. O IronOCR suporta vários formatos de entrada, incluindo imagens (jpg, png, gif, tiff, bmp) e PDFs .

Por fim, use o método Read para extrair o texto da entrada. O resultado pode então ser impresso no console ou salvo em um arquivo de texto para referência.

Quais dados de treinamento eu preciso para idiomas personalizados?

Usaremos este PDF de exemplo, que contém texto em nosso idioma personalizado, como entrada.

Usaremos este idioma personalizado .traindata para nosso exemplo.

A qualidade e a abrangência dos seus dados de treinamento impactam diretamente a precisão do OCR. Ao preparar dados de treinamento de idioma personalizados:

  1. Cobertura de caracteres : Certifique-se de que seus dados de treinamento incluam todos os caracteres e símbolos.
  2. Variações de fonte : Inclua vários estilos de fonte se seus documentos apresentarem variações tipográficas.
  3. Qualidade da imagem : Treine com imagens semelhantes às que você processará na produção.
  4. Padrões de Contexto : Incluem combinações de palavras e frases comuns.

Para opções de configuração avançadas, consulte nosso guia de configuração detalhado do Tesseract .

Como faço para carregar e processar documentos em idiomas personalizados?

:path=/static-assets/ocr/content-code-examples/how-to/ocr-custom-language.cs
using IronOcr;
using System;
using System.IO;

var ocrTesseract = new IronTesseract();

// Load the traineddata file for the custom language
ocrTesseract.UseCustomTesseractLanguageFile("AMGDT.traineddata");

using var ocrInput = new OcrInput();
// Load the PDF containing text in the custom language
ocrInput.LoadPdf("custom.pdf");

var ocrResult = ocrTesseract.Read(ocrInput);

// Print text to the console
Console.WriteLine("--- OCR Result ---");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("------------------");

// Pipe text to a .txt file
string outputFilePath = "ocr_output.txt";
File.WriteAllText(outputFilePath, ocrResult.Text);

Console.WriteLine($"\nSuccessfully saved text to {outputFilePath}");
$vbLabelText   $csharpLabel

O código acima demonstra o fluxo de trabalho básico para OCR em idiomas personalizados. Para cenários mais complexos, considere estas melhorias:

Otimização de desempenho : Para documentos grandes ou processamento em lote, implemente suporte a multithreading e processamento assíncrono para melhorar o desempenho.

Pré-processamento de imagens : Se os seus documentos de origem apresentarem problemas de qualidade, aplique filtros de correção de imagem antes do processamento OCR. O Assistente de Filtros pode ajudá-lo a encontrar as configurações ideais de pré-processamento.

OCR específico para cada região : Para documentos com conteúdo misto, use a técnica de OCR por região em uma imagem para focar em áreas específicas que contenham seu idioma personalizado.

Que resultados posso esperar do OCR de idioma personalizado?

Saída do OCR do Tesseract mostrando o texto extraído sobre os recursos do jogo Apex Legends na interface do terminal.

Esta saída mostra o resultado do nosso modelo de linguagem personalizado. Ao fornecer os dados de treinamento corretos, o IronOCR decifrou o texto com sucesso, e o resultado está em inglês claro. Além disso, este é o arquivo de texto (txt) gerado pelo código.

A precisão do OCR em linguagem personalizada depende de vários fatores:

  • Qualidade dos dados de treinamento : melhores dados de treinamento geram melhores resultados.
  • Consistência dos documentos : Documentos que correspondem aos dados de treinamento apresentam o melhor desempenho.
  • Resolução da imagem : Imagens com DPI mais alto produzem resultados mais precisos - consulte nosso guia sobre configurações de DPI.

Melhores práticas para implementação de idiomas personalizados

Ao implementar OCR de idioma personalizado em ambientes de produção, considere estas boas práticas:

Manipulação de Erros e Validação: Sempre valide se seu arquivo .traineddata existe e está acessível antes de tentar carregá-lo. Implemente um tratamento de erros adequado para os casos em que o arquivo de idioma personalizado possa estar ausente ou corrompido.

Otimização de desempenho : os modelos de linguagem personalizados podem ser maiores do que os pacotes de idiomas padrão. Para um desempenho ideal:

  • Armazene em cache o modelo de linguagem carregado ao processar vários documentos.
  • Utilize o rastreamento de progresso para monitorar operações de OCR de longa duração.
  • Considere implementar tempos limite para o processamento de documentos grandes.

Combinando com idiomas padrão : Se seus documentos contiverem idiomas personalizados e padrão, você poderá carregar vários idiomas simultaneamente. Isso é particularmente útil para documentos com conteúdo misto.

Testes e Validação : Estabeleça uma estrutura de testes para validar a precisão do OCR:

Casos de uso avançados

O OCR de idioma personalizado abre inúmeras possibilidades:

Preservação de Documentos Históricos : Digitalização de manuscritos antigos ou textos escritos em escritas obsoletas.
Sistemas de Notação Especializados : Processam equações matemáticas, notação musical ou diagramas técnicos - consulte nosso guia de solução de problemas de equações.
Aplicações de segurança : Decodificar sistemas de codificação ou cifras proprietárias.
Acessibilidade : Converter sistemas especializados de escrita em braille ou tátil em texto padrão.

Para cenários mais avançados, explore nossos exemplos de código abrangentes que demonstram várias funcionalidades do IronOCR com o Tesseract 5.

Perguntas frequentes

Como posso realizar OCR em documentos com idiomas ou scripts personalizados?

O IronOCR permite OCR em idiomas personalizados carregando arquivos .traineddata do Tesseract através do método UseCustomTesseractLanguageFile. Isso possibilita extrair texto de qualquer modelo de linguagem treinado pelo usuário, incluindo scripts especializados, textos históricos ou cifras.

Qual o formato de arquivo necessário para o reconhecimento de idioma personalizado?

O IronOCR requer um arquivo .traineddata contendo os dados de treinamento para o seu idioma personalizado. Este arquivo é carregado usando o método UseCustomTesseractLanguageFile e contém todas as informações necessárias para que o Tesseract reconheça os caracteres exclusivos do seu idioma personalizado.

Posso usar vários idiomas personalizados em uma única operação de OCR?

Sim, o IronOCR suporta o reconhecimento de vários idiomas. Você pode carregar vários arquivos de idioma personalizados ou combinar idiomas personalizados com qualquer um dos 125 idiomas internacionais suportados nativamente pelo IronOCR.

Que tipos de scripts personalizados podem ser reconhecidos?

O IronOCR consegue reconhecer qualquer escrita personalizada que tenha sido devidamente treinada em um arquivo .traineddata, incluindo escritas históricas, línguas inventadas, sistemas de notação especializados e cifras. A flexibilidade se estende a qualquer sistema de escrita que possa ser treinado usando as ferramentas do Tesseract.

Como posso implementar OCR em idioma personalizado no meu aplicativo C#?

Para implementar OCR de idioma personalizado com o IronOCR: 1) Inicialize uma instância do IronTesseract, 2) Carregue seu arquivo .traineddata personalizado usando UseCustomTesseractLanguageFile, 3) Crie um objeto OcrInput e carregue seu documento, 4) Chame o método Read() para extrair o texto e 5) Processe o texto extraído conforme necessário.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 5,525,971 | Versão: 2026.3 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronOcr
executar um exemplo Veja sua imagem se transformar em texto pesquisável.