IRONSOFTWAREHOME
UTILIZANDO O IRONOCR

Como extrair dados de recibos usando OCR em C#

Kannaopat Udonpant
Kannapat Udonpant
Updated: 28 de junho de 2026

IronOCR fornece uma poderosa biblioteca C# para extrair texto de imagens de recibos usando tecnologia OCR avançada, permitindo o rastreamento automatizado de despesas e análise de dados com suporte para 125 idiomas e pré-processamento de imagem embutido.

Recibos e Automação

Recibos são essenciais no mundo acelerado de hoje. Seja comprando mantimentos ou jantando fora, os recibos ajudam a rastrear gastos e auxiliam no orçamento. Enquanto isso, as lojas usam scanners de recibos para analisar dados de vendas, ajudando-os a prever a demanda e gerenciar o inventário através de técnicas de extração de dados.

No entanto, os recibos podem ser difíceis de ler e os cálculos nem sempre são claros. A entrada manual de dados para orçamento é tediosa e propensa a erros, especialmente com muitos itens. Perder um recibo pode de repente tornar seus gastos excessivos mensais um mistério. Recibos tradicionais de papel frequentemente têm qualidade de impressão ruim, tinta desbotada e degradação do papel térmico, tornando a otimização de imagem OCR crucial para extração precisa.

Para resolver isso, aplicativos de orçamento e financeiros adotaram a tecnologia OCR (Reconhecimento Óptico de Caracteres). Ao digitalizar recibos em formato digital, o OCR minimiza erros, automatiza a entrada de dados, rastreia despesas e revela padrões de compra. Soluções modernas de OCR lidam com vários formatos de recibos, de impressões tradicionais do ponto de venda a recibos digitais com capacidade de leitura de código de barras e QR code.

OCR usa aprendizado de máquina para identificar e extrair texto de imagens. O processo inclui pré-processamento de imagem, segmentação de caracteres, reconhecimento de padrões e validação. No entanto, o OCR não é perfeito—desfoque ou manchas podem levar a erros. Sistemas avançados utilizam técnicas de visão computacional para aumentar a precisão. Escolher uma biblioteca OCR confiável que processe e otimize a leitura de forma eficiente é crucial para a automação bem-sucedida de documentos.

Por que Devo Escolher o IronOCR para Processamento de Recibos?

IronOCR é uma biblioteca C# construída sobre um mecanismo OCR Tesseract personalizado. Ao contrário do Tesseract padrão, o IronOCR inclui otimizações do Tesseract 5 e recursos projetados especificamente para desenvolvedores .NET. Aqui está o que o destaca:

  1. Compatibilidade Cruzada: Funciona com .NET 8, 7, 6, 5, e Framework 4.6.2+. Funciona no Windows, macOS, Azure, e Linux. Implanta-se perfeitamente no Docker, AWS Lambda, e Azure Functions.

  2. Flexibilidade e Escalabilidade: Lida com formatos JPG, PNG e GIF. Integra-se com objetos System.Drawing. Processa TIFFs de múltiplas páginas e fluxos de PDFs. Suporta multithreading para cenários de alto volume.

  3. Facilidade de Uso e Suporte: Bem documentado com API robusta e suporte 24/5. Oferece operações simples de uma linha e opções de configuração detalhadas. Inclui guias abrangentes de solução de problemas.

  4. Capacidades Multilíngues: Suporta 125 idiomas internacionais. Reconhece efetivamente nomes de produtos e preços. Lida com múltiplos idiomas por documento. Suporta arquivos traineddata personalizados.

  5. Processamento Avançado de Imagens: Filtros embutidos melhoram automaticamente a qualidade do recibo. Inclui redução de ruído, correção de orientação e otimização de DPI. Assistente de Filtro determina as configurações ideais automaticamente.

Como Implemento OCR de Recibos no Meu Aplicativo?

Qual Licença Eu Preciso para Começar?

Antes de usar o IronOCR, você precisará de uma chave de licença. Obtenha uma versão de teste gratuita aqui. As opções de licenciamento incluem níveis Lite, Plus e Professional para diferentes tamanhos de equipes e implantações. Veja a documentação para aplicação de chaves de licença.

// Replace the license key variable with the trial key you obtained
IronOcr.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";

Para aplicativos web, defina a chave de licença em Web.config para uma configuração centralizada. O sistema de licenciamento suporta extensões e upgrades à medida que você cresce.

Como Posso Ler um Recibo de Supermercado com o IronOCR?

Vamos explorar o uso do IronOCR em um aplicativo que escaneia recibos de supermercado com smartphones, extraindo nomes de produtos e preços para premiar pontos de fidelidade com base nas compras. Isso envolve captura de imagem, pré-processamento, execução de OCR e validação de dados usando pontuações de confiança dos resultados.

Como é a Aparência de uma Imagem de Recibo Típica?

Sample supermarket receipt showing Lorem ipsum placeholder text with items, prices, subtotal of $107.60, and payment details - demonstrating typical receipt layout with header, item list, totals, and barcode

Desafios comuns em recibos incluem qualidade de papel térmico, fontes variadas, layouts lotados e danos por dobra ou umidade. O pré-processamento do IronOCR lida com isso através de correção de qualidade de imagem e técnicas de correção de cor.

Qual Código C# Eu Preciso para Extrair Dados de Recibos?

using IronOcr;

class ReceiptScanner
{
    static void Main()
    {
        // Set the license key for IronOCR
        IronOcr.License.LicenseKey = "YOUR-KEY";
        
        // Instantiate OCR engine with optimal settings for receipts
        var ocr = new IronTesseract();
        
        // Configure for receipt-specific text
        ocr.Configuration.WhiteListCharacters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.$,- ";
        ocr.Configuration.BlackListCharacters = "~`@#%^*_+={}[]|\\:;\"'<>?";
        
        using var inputPhoto = new OcrInput();
        inputPhoto.LoadImage("supermarketexample.jpg");
        
        // Apply preprocessing for better accuracy
        inputPhoto.DeNoise();
        inputPhoto.ToGrayScale();
        inputPhoto.Contrast(1.2);
        
        // Perform OCR on the loaded image
        OcrResult result = ocr.Read(inputPhoto);
        
        // Output the text extracted from the receipt
        string text = result.Text;
        Console.WriteLine(text);
        
        // Extract specific data using OcrResult features
        foreach (var line in result.Lines)
        {
            if (line.Text.Contains("TOTAL"))
            {
                Console.WriteLine($"Total Found: {line.Text}");
            }
        }
    }
}

O código demonstra:

  1. Importar a biblioteca IronOCR.
  2. Instancie o motor de OCR (IronTesseract) com opções de configuração.
  3. Crie um novo OcrInput para carregar a imagem do recibo.
  4. Aplique pré-processamento para melhor precisão.
  5. Use o método Read para extrair texto.
  6. Processe resultados usando a classe OcrResult para dados estruturados.

Para diferentes formatos de recibo, o IronOCR suporta leitura de fotos, capturas de tela e documentos digitalizados. Também pode extrair dados de tabelas de recibos estruturados.

Como Posso Verificar a Precisão dos Dados Extraídos?

Para garantir consistência, verifique o nível de confiança dos dados extraídos. O IronOCR fornece métricas abrangentes de confiança em múltiplos níveis:

OcrResult result = ocr.Read(inputPhoto);
string text = result.Text;
Console.WriteLine(text);
Console.WriteLine($"Overall Confidence: {result.Confidence}%");

// Check confidence for individual elements
foreach (var word in result.Words)
{
    if (word.Confidence < 80)
    {
        Console.WriteLine($"Low confidence word: '{word.Text}' ({word.Confidence}%)");
    }
}

// Validate numeric values
foreach (var block in result.Blocks)
{
    if (block.Text.Contains("$"))
    {
        Console.WriteLine($"Price detected: {block.Text} (Confidence: {block.Confidence}%)");
    }
}

A propriedade Confidence mede a precisão estatística de 0 (baixa) a 100 (alta). Use esses níveis de confiança para determinar como lidar com os dados. Para sistemas de produção, implemente rastreamento de progresso para monitorar operações de OCR.

Como Melhorar a Precisão do OCR com Pré-processamento de Imagem?

Antes de processar, use esses métodos para preparar imagens para melhores resultados:

using var inputPhoto = new OcrInput();
inputPhoto.LoadImage("receipt.jpg");

// Basic preprocessing
inputPhoto.DeNoise();           // Removes noise from the image
inputPhoto.ToGrayScale();       // Converts image to grayscale
inputPhoto.Contrast(1.5);       // Enhance contrast for faded receipts
inputPhoto.Sharpen();           // Improve text clarity

// Advanced preprocessing for challenging receipts
inputPhoto.Rotate(2.5);         // Correct slight rotation
inputPhoto.Deskew();            // Automatically straighten receipt
inputPhoto.Scale(200);          // Upscale low-resolution images

// Handle specific receipt issues
if (receiptIsDamaged)
{
    inputPhoto.Dilate();        // Thicken thin text
    inputPhoto.Erode();         // Reduce text bleeding
}

// For colored or patterned backgrounds
inputPhoto.Binarize();          // Convert to pure black and white
inputPhoto.Invert();            // Handle white text on dark background

Essas etapas de pré-processamento aumentam a precisão da extração. O Assistente de Filtro automaticamente encontra a melhor combinação de filtros para seus recibos. Para recibos com fundos coloridos, a correção de cor é essencial.

Cenários avançados podem precisar de OCR específico por região para focar em totais ou informações fiscais. Para recibos com códigos de barras, habilite a leitura de códigos de barras junto com a extração de texto.

Quais São os Principais Benefícios de Usar o IronOCR para Processar Recibos?

A tecnologia OCR de recibos ajuda empresas e indivíduos com orçamento, prevenção de fraude e coleta automatizada de dados. O IronOCR oferece precisão, velocidade e fácil integração com plataformas existentes, tornando-o ideal para soluções de digitalização de recibos.

Os principais benefícios incluem:

  1. Otimização de Desempenho: Multithreading e ajuste de velocidade para processar milhares de recibos de forma eficiente.

  2. Flexibilidade de Exportação: Converta recibos em PDFs pesquisáveis ou hOCR HTML para integração web.

  3. Recursos Empresariais: Implante em Azure, Docker e servidores Linux para escalabilidade.

  4. Reconhecimento Especializado: Leia notas manuscritas em recibos e extraia estruturas de tabelas.

  5. Ferramentas de Depuração: Visualização de texto em destaque e recursos de exportação de resultados ajudam na solução de problemas.

Experimente a licença de teste do IronOCR para explorar suas capacidades. A documentação completa e exemplos de código ajudam você a implementar OCR de recibos rapidamente.

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.