Comment extraire des données structurées des tables et des formes dans les images

Comment extraire des données structurées des tables et des formes dans les images

L’extraction de données des tables scanées ou des formulaires remplis est essentielle pour l’automatisation des affaires, le rapport et la conformité. Aspose.OCR Table to Text for .NET simplifie ce processus, détectant avec précision la structure cellulaire et des champs et exportant à des formats éditables.

Problème du monde réel

Les entreprises reçoivent souvent les factures, les rapports ou les formulaires comme des images ou des scans. L’entrée manuelle des données tabulaires ou champs de formulaire est lente, trompeuse et coûteuse à l’échelle.

Vue de la solution

Avec Table to Text pour .NET, vous pouvez extraire des données structurées – y compris les rangs, les colonnes et les valeurs de champ – directement des images.

Principaux

  • Visual Studio 2019 ou ultérieur
  • .NET 6.0 ou ultérieur (ou .Net Framework 4.6.2+)
  • Aspose.OCR pour .NET de NuGet
  • Les compétences C#
PM> Install-Package Aspose.OCR

La mise en œuvre étape par étape

Étape 1 : Installer et configurer Aspose.OCR

using Aspose.OCR;

Étape 2: Préparez des tableaux ou des images de formulaire

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

Étape 3: Configurez les paramètres de reconnaissance pour les tables/formules

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

Étape 4 : extraire des données de table ou de formulaire

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

Étape 5 : Les exportations structurées

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
}

Étape 6: Traiter les erreurs et valider les résultats

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

Étape 7 : Optimiser les variations de table/formule

  • Test sur des échantillons avec différentes frontières, fonts ou placements de champ
  • Tune des paramètres de pré-traitement pour la meilleure détection

Étape 8 : Extraction de batch automatique

Traiter toutes les images pertinentes dans un dossier :

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

Étape 9 : Exemple complet

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}");
        }
    }
}

Utiliser les cas et les applications

L’automatisation des factures et des rapports

Extrait de données financières pour la comptabilité ou l’analyse.

Formulaire de recherche et d’enregistrement

Des réponses structurées pour les systèmes CRM, ERP ou BI.

Conformité et audit

Extraction automatique et validation des données des formulaires ou des tables soumis.

Défis communs et solutions

Défi 1 : Les limites de table irrégulières ou les layouts

Solution: Utilisez la pré-traitement et le tonage de l’échantillon pour améliorer la détection.

Défi 2 : contenu mixte (texte et tableaux)

** Solution: ** Exécuter avec AUTO ou séparer par type d’image pour les meilleurs résultats.

Défi 3 : Formes complexes avec de nombreux champs

Solution: Teste et reconnaissance de tweak pour les formes à haute densité.

Considérations de performance

  • La reconnaissance de table est plus CPU-intensive ; les tâches de moniteur
  • Valider les sorties pour les flux de travail critiques
  • Batch exportation pour l’intégration avec d’autres outils

Migliori pratiche

  • Valider les données structurées sur les échantillons avant d’échanger
  • Sécuriser et enregistrer les images source et les outils extraits
  • Mettre à jour Aspose.OCR régulièrement pour des améliorations de précision
  • Les paramètres Tune pour les nouveaux layouts de documents

Scénarios avancés

Scénario 1: Exportation vers les outils de base de données ou BI

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

Scénario 2: Extraction en temps réel dans les applications Web

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

Conclusion

Aspose.OCR Table to Text pour .NET vous permet d’automatiser l’extraction structurée de données des images et des formulaires, en soutenant tout, de la automatisation des affaires à la conformité et à l’analyse.

Pour les fonctionnalités d’extraction de table avancées, visitez le Aspose.OCR pour la référence API .NET .

 Français