Como extrair tabelas e dados tabulares de imagens com Aspose.OCR

Como extrair tabelas e dados tabulares de imagens com Aspose.OCR

A extração de tabelas de imagens, formulários ou relatórios escaneados é desafiadora – a retipagem manual é lenta e pronta a erros. ASPOSE.OCR Tabela para texto para .NET automatiza a extracção e estruturalização de dados da tabela das imagens e fotos.

Problemas do mundo real

As declarações financeiras, os formulários de pesquisa e os resultados científicos são frequentemente capturados em tabelas ou imagens escaneadas.Recreando manualmente esses dados desperdiça horas e riscos de introduzir erros.

Solução Overview

Aspose.OCR para .NET pode detectar, extrair e converter com precisão tabelas de imagens ou PDFs escaneados em formatos de leitura por máquina – perfeito para Excel, relatórios ou automação de fluxo de trabalho.

Pré-requisitos

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

Implementação passo a passo

Passo 1: Instale e Configure Aspose.OCR

using Aspose.OCR;

Passo 2: Escanear ou fotografar imagens contendo tabelas

OcrInput input = new OcrInput(InputType.SingleImage);
input.Add("table1.jpg");
input.Add("report_page.png");

Passo 3: Configure as configurações de reconhecimento da tabela

RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.TABLE; // Key for tables

Passo 4: execute o processo de extração de mesa

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

Etapa 5: Dados da tabela de exportação

foreach (RecognitionResult result in results)
{
    result.Save("table_data.xlsx", SaveFormat.Xlsx); // Excel output
    result.Save("table_data.csv", SaveFormat.Csv);   // CSV output
    result.Save("table_data.txt", SaveFormat.Text);  // Plain text output
}

Passo 6: Adicionar Error Handling e Validação

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

Passo 7: Optimize para tabelas complexas, rotadas ou multi-páginas

  • Imagens pré-processadas para desquew ou crop
  • Use scans de alta resolução ou fotos
  • Para PDFs multipáginas, adicione cada página como uma entrada separada
foreach (string file in Directory.GetFiles("./scans", "*.png"))
{
    input.Add(file);
}

Passo 8: Exemplo completo

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

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

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

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

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

Use Casos e Aplicações

Relatórios financeiros e científicos

Extrair tabelas de relatórios financeiros, resultados de laboratório ou documentos de pesquisa para análise instantânea no Excel.

Pesquisa e Forma de Processamento

Digitize tabelas de formulários escaneados, listas de verificação ou registros de censura.

Automatização de fluxo de trabalho

Faça dados de tabela estruturados diretamente em seus aplicativos de negócios, ferramentas de BI ou bases de dados.

Desafios comuns e soluções

1o desafio: má qualidade ou tabelas complexas

** Solução:** Use imagens de alta resolução e teste em conjuntos de amostras. Preprocesso para melhorar a clareza.

Título 2: Tabelas rotadas ou esquecidas

** Solução:** Descreva imagens antes do processamento; use DetectAreasMode.TABLE.

Título III: Reportações multi-páginas

** Solução:** Adicione cada página como uma entrada separada para o processamento de batch.

Considerações de desempenho

  • Processos de batch para velocidade
  • Use escaneamento de alta qualidade / fotos
  • Dispõe de objetos OCR após grandes corridas

Melhores Práticas

  • Validação do produto antes da integração
  • Instalações de reconhecimento de tabela Tune conforme necessário
  • Backup de dados originais e digitalizados
  • Teste com amostras reais antes de implantar

Os cenários avançados

Escenário 1: Extracção de mesa de várias línguas

settings.Language = Language.German;

Scenário 2: Exportação para JSON para Pipelines de Dados

foreach (RecognitionResult result in results)
{
    result.Save("table_data.json", SaveFormat.Json);
}

Conclusão

ASPOSE.OCR Table to Text for .NET transforma imagens e scans em dados de tabela executáveis e estruturados – prontos para análise, relatório e automação.

Veja mais amostras de código de reconhecimento da tabela no Aspose.OCR para .NET API Referência .

 Português