Melhorando Resultados OCR Insatisfatórios

Curtis Chau
Curtis Chau
Updated: 29 de junho de 2026

A qualidade do OCR depende muito da entrada. Uma configuração, filtro ou ajuste que lê um documento claramente pode falhar em outro, deixando você com texto confuso ou incompleto. Quando a leitura padrão decepciona, o pacote IronOcr.Extensions.AdvancedScan geralmente fecha a lacuna de precisão.

A diferença se resume ao motor. IronOCR padrão opera no motor Tesseract, enquanto IronOcr.Extensions.AdvancedScan é alimentado por PaddleOCR e adiciona capacidades de aprendizado de máquina. Isso o torna bem adequado para entradas ruidosas como capturas de tela, e para fontes estruturadas como passaportes e placas de licença.

O pacote expõe métodos de leitura projetados para esses casos:

Solução

1. Comece com ReadDocumentAdvanced() e EnhanceResolution()

Antes de recorrer a qualquer outra configuração, emparelhe o método ReadDocumentAdvanced() com o filtro de pré-processamento EnhanceResolution(). Esta combinação resolve a maioria dos problemas de precisão que os usuários encontram com a leitura padrão.

Aplique o filtro ao OcrInput, depois passe a mesma entrada para ReadDocumentAdvanced():

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadPdf("document.pdf");
// Upscale and sharpen low-resolution input before reading
input.EnhanceResolution();
var result = ocr.ReadDocumentAdvanced(input);
Console.WriteLine(result.Text);

ReadDocumentAdvanced() executa o motor de aprendizado de máquina PaddleOCR para analisar documentos pesados em texto, conscientes de layout, enquanto EnhanceResolution() aumenta e aprimora a entrada de baixa resolução antes da leitura. Baixa resolução é uma causa raiz comum de resultados ruins, então este passo de pré-processamento geralmente importa tanto quanto a troca de motor.

2. Alvo x64 no .NET Framework

Configure projetos .NET Framework para compilar como x64. AdvancedScan requer uma quantidade significativa de memória, e executá-lo sob uma arquitetura diferente pode desencadear erros de execução. Consulte o guia Advanced Scan on .NET Framework para o conjunto completo.

Limitações

AdvancedScan oferece forte precisão, mas algumas restrições se aplicam hoje:

  • Menos recursos de resultado: Objetos de resultados do AdvancedScan expõem menos propriedades do que o objeto padrão OcrResult.
  • Tipos de retorno diferentes: cada método de leitura retorna um tipo de objeto de resultado diferente, então verifique a Referência de API para os detalhes específicos do que você chamar.
  • Sem PDFs pesquisáveis: construir PDFs pesquisáveis a partir da saída do AdvancedScan ainda não é suportado, embora o recurso esteja em desenvolvimento.
  • Idiomas limitados: o pacote atualmente suporta inglês, chinês, japonês, coreano e alfabetos latinos.
Observe: A saída PDF pesquisável não está disponível a partir de leituras AdvancedScan por agora. Se você depende desse recurso, continue no caminho de leitura padrão do IronOCR.

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 bem estruturados e visualmente atraentes.

Leia mais

Pronto para começar?

Nuget Downloads 6,357,159Versão:2026.11recém-lançado