Como extrair dados estruturados de tabelas e formas em imagens

Como extrair dados estruturados de tabelas e formas em imagens

A extração de dados de tabelas escaneadas ou formulários preenchidos é essencial para a automatização de negócios, o relatório e a conformidade. ASPOSE.OCR Table to Text for .NET simplifica este processo, detectando com precisão a estrutura celular e de campo e exportando para formatos editáveis.

Problemas do mundo real

As empresas geralmente recebem facturas, relatórios ou formulários como imagens ou scans.A entrada manual de dados de tabela ou campos de formulário é lenta, perigosa e caro em escala.

Solução Overview

Com Table to Text para .NET, você pode extrair dados estruturados – incluindo linhas, colunas e valores de campo – diretamente das imagens.

Pré-requisitos

  • Visual Studio 2019 ou posterior
  • .NET 6.0 ou posterior (ou .Net Framework 4.6.2+)
  • Aspose.OCR para .NET de NuGet
  • Competências básicas C#
PM> Install-Package Aspose.OCR

Implementação passo a passo

Passo 1: Instale e Configure Aspose.OCR

using Aspose.OCR;

Passo 2: Prepare tabelas ou imagens de formulário

OcrInput input = new OcrInput(InputType.SingleImage);
input.Add("scanned_invoice.png");
input.Add("filled_form.jpg");

Passo 3: Configure as configurações de reconhecimento para tabelas/formatos

RecognitionSettings settings = new RecognitionSettings();
settings.DetectAreasMode = DetectAreasMode.TABLE; // or DetectAreasMode.FORM
settings.Language = Language.English;

Passo 4: Extrair dados de tabela ou formulário

AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);

Etapa 5: Exportação de Produto Estruturado

foreach (RecognitionResult result in results)
{
    result.Save("output_table.xlsx", SaveFormat.Xlsx); // Spreadsheet
    result.Save("output_table.json", SaveFormat.Json); // JSON
    result.Save("output_table.txt", SaveFormat.Text);  // Text
}

Passo 6: Comprar erros e validar resultados

try
{
    AsposeOcr ocr = new AsposeOcr();
    List<RecognitionResult> results = ocr.Recognize(input, settings);
    // Further processing...
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

Passo 7: Otimizar as variações de tabela/forma

  • Testes em amostras com diferentes fronteiras, fontes ou placementos de campo
  • Instalações de pré-processamento para a melhor detecção

Passo 8: Extracção de batch automática

Processar todas as imagens relevantes em uma pasta:

foreach (string file in Directory.GetFiles("./forms", "*.jpg"))
{
    input.Add(file);
}

Etapa 9: Exemplo completo

using Aspose.OCR;
using System;
using System.Collections.Generic;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            OcrInput input = new OcrInput(InputType.SingleImage);
            input.Add("scanned_invoice.png");
            input.Add("filled_form.jpg");

            RecognitionSettings settings = new RecognitionSettings();
            settings.DetectAreasMode = DetectAreasMode.TABLE;
            settings.Language = Language.English;

            AsposeOcr ocr = new AsposeOcr();
            List<RecognitionResult> results = ocr.Recognize(input, settings);

            foreach (RecognitionResult result in results)
            {
                result.Save("output_table.xlsx", SaveFormat.Xlsx);
                result.Save("output_table.json", SaveFormat.Json);
                result.Save("output_table.txt", SaveFormat.Text);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error: {ex.Message}");
        }
    }
}

Use Casos e Aplicações

Faturamento e automação de relatórios

Extrair dados financeiros para contabilidade ou análise.

Formulários de Pesquisa e Registo

Resposta estruturada para sistemas CRM, ERP ou BI.

Conformidade e Auditoria

Extracção e validação automática de dados de formulários ou tabelas apresentados.

Desafios comuns e soluções

Título 1: Fronteiras de mesa irregulares ou layouts

** Solução:** Use o preprocessamento e a tonificação de amostra para melhorar a detecção.

Desafio 2: Conteúdo Misto (Text e Tabelas)

** Solução:** Executar com AUTO ou separar por tipo de imagem para os melhores resultados.

O desafio 3: formas complexas com muitos campos

** Solução:** Teste e reconhecimento de tweak para formas de alta densidade.

Considerações de desempenho

  • Reconhecimento de mesa é mais intenso com CPU; monitorar trabalhos de batch
  • Validação de resultados para fluxos de trabalho críticos
  • Exportação de batch para integração com outras ferramentas

Melhores Práticas

  • Validar dados estruturados em amostras antes de escalar
  • Secure e arquivando imagens de origem e resultados extraídos
  • Atualiza-se Aspose.OCR regularmente para melhorias de precisão
  • Instalações Tune para novos layouts de documentos

Os cenários avançados

Scenário 1: Exportação para bases de dados ou ferramentas BI

// Use JSON or Excel export for integration with data pipelines

Scenário 2: Extracção em Tempo Real em Aplicações Web

// Integrate extraction logic into ASP.NET or workflow API

Conclusão

O ASPOSE.OCR Table to Text para .NET permite que você automatize a extração de dados estruturados de imagens e formulários, apoiando tudo desde a automação empresarial até a conformidade e análise.

Para recursos avançados de extracção de mesa, visite o Aspose.OCR para .NET API Referência .

 Português