Come accumulare il processo multilingue OCR con Aspose.OCR

Come accumulare il processo multilingue OCR con Aspose.OCR

Digitalizzare archivi globali, documenti aziendali o moduli di sondaggio spesso significa lavorare con più lingue. l’estrazione manuale è lenta e non scalabile. Aspose.OCR per .NET consente di automatizzare la estrazione del testo in vari linguaggi da grandi volumi di immagini o PDF con solo poche righe di codice.

Il problema del mondo reale

Le aziende internazionali, le biblioteche e i servizi di dati si occupano spesso di documenti in lingua mista.La sorta manuale e l’estrazione specifica della lingua sono tedi e errori - specialmente quando si scalano fino a migliaia di Documenti.

Soluzione Overview

Aspose.OCR per .NET supporta più di 30 lingue.Puoi configurare le impostazioni di riconoscimento per file o pacch, quindi automatizzare l’estrazione ed esportazione al tuo formato preferito per integrazione senza segni nei flussi di lavoro aziendali o di ricerca.

Prerequisiti

  • Visual Studio 2019 o successivo
  • .NET 6.0 o successivo (o .Net Framework 4.6.2+)
  • Aspose.OCR per .NET da NuGet
  • L’esperienza di programmazione C#
PM> Install-Package Aspose.OCR

Implementazione passo dopo passo

Passo 1: Installare e configurare Aspose.OCR

using Aspose.OCR;

Passo 2: Organizzare i file di input per lingua

Organizzare le immagini o i PDF di input per lingua in cartelle separate, o utilizzare una convenzione di nomina:

// Example folders: ./input/en, ./input/fr, ./input/zh

Passo 3: Configurare le impostazioni di riconoscimento per lingua

Dictionary<string, Language> langFolders = new Dictionary<string, Language>
{
    { "en", Language.English },
    { "fr", Language.French },
    { "zh", Language.ChineseSimplified }
};

Passo 4: Batch Process Input File

foreach (var pair in langFolders)
{
    string folder = "./input/" + pair.Key;
    RecognitionSettings settings = new RecognitionSettings();
    settings.Language = pair.Value;

    OcrInput input = new OcrInput(InputType.SingleImage);
    foreach (string file in Directory.GetFiles(folder, "*.png"))
    {
        input.Add(file);
    }

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

    foreach (RecognitionResult result in results)
    {
        string output = Path.Combine("./output/", pair.Key + "_" + Path.GetFileNameWithoutExtension(result.FileName) + ".txt");
        result.Save(output, SaveFormat.Text);
    }
}

Passo 5: Aggiungi gestione degli errori e automazione

try
{
    // batch processing code
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

Passo 6: Ottimizzare la velocità e l’accuratezza

  • Eseguire il trattamento in parallelo (con cura della memoria/CPU)
  • Utilizzare immagini di alta qualità per i migliori risultati
  • Tune le impostazioni di riconoscimento per le caratteristiche di layout comuni in ogni lingua
// Example: Parallel batch processing
Parallel.ForEach(langFolders, pair =>
{
    // per-language processing logic
});

Passo 7 - Esempio completo

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

class Program
{
    static void Main(string[] args)
    {
        try
        {
            Dictionary<string, Language> langFolders = new Dictionary<string, Language>
            {
                { "en", Language.English },
                { "fr", Language.French },
                { "zh", Language.ChineseSimplified }
            };

            foreach (var pair in langFolders)
            {
                string folder = "./input/" + pair.Key;
                RecognitionSettings settings = new RecognitionSettings();
                settings.Language = pair.Value;

                OcrInput input = new OcrInput(InputType.SingleImage);
                foreach (string file in Directory.GetFiles(folder, "*.png"))
                {
                    input.Add(file);
                }

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

                foreach (RecognitionResult result in results)
                {
                    string output = Path.Combine("./output/", pair.Key + "_" + Path.GetFileNameWithoutExtension(result.FileName) + ".txt");
                    result.Save(output, SaveFormat.Text);
                }
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error: {ex.Message}");
        }
    }
}

Utilizzare casi e applicazioni

Digitalizzazione archivio globale

L’estrazione automatica del testo da archivi multilingue, giornali o registri aziendali.

Automazione aziendale internazionale

Feed OCR risultati da contratti di lingua mista, fatturati o documenti di risorse umane nel vostro ERP globale o flusso di lavoro.

Conformità multilingue e ricerca

Permette la ricerca di testo completo e verifiche di conformità su documenti in molte lingue.

Sfide e soluzioni comuni

Titolo originale: Mixed Language Documents

Soluzione: Eseguire la rilevazione e il trattamento per pagina, o utilizzare il modo linguistico AUTO se disponibile.

Titolo: Differenza nella qualità dell’immagine

Soluzione: Standardizzare la scansione e eseguire la pre-processione per normalizzare la qualità dell’immagine.

Sito ufficiale: Performance Bottlenecks

**Soluzione: ** Processare in parallelo se possibile, e ottimizzare l’utilizzo delle risorse.

Considerazioni di prestazioni

  • Organizzare lavori di batch per lingua per efficienza delle risorse
  • Monitorare la memoria/CPU con lavori paralleli
  • Validare la produzione su ogni pacchetto

Migliori pratiche

  • Mantenere le cartelle linguistiche organizzate per facile risoluzione dei problemi
  • Validare un pacchetto di campioni per ogni lingua
  • Aggiornare Aspose.OCR per le ultime miglioramenti linguistici
  • Assicurare entrambi i dati di input e output

Scenari avanzati

Scenario 1: Esportare risultati multilingue a JSON

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

Scenario 2: rileva il linguaggio automaticamente (se supportato)

settings.Language = Language.Auto;

conclusione

Aspose.OCR per .NET ti consente di automatizzare l’estrazione di testo da collezioni di immagini diverse e multilingue – accelerando la digitalizzazione globale e rendendo i tuoi archivi ricercabili, scoperti e pronti per la integrazione del flusso di lavoro.

Per una lista completa di lingue supportate e suggerimenti avanzati, visitare il Aspose.OCR per .NET API Reference .

 Italiano