Hvordan man kombinerer Multilingual OCR-processer med Aspose.OCR
Digitalisering af globale arkiver, forretningsdokumenter eller undersøgelsesformularer betyder ofte at arbejde med flere sprog. Manual ekstraktion er langsom og ikke skalerbar. Aspose.OCR for .NET giver dig mulighed for at automatisere ekstraktionen af tekst på forskellige sprog fra store volumer af billeder eller PDF’er med kun få linjer af kode.
Det virkelige problem
Internationale virksomheder, biblioteker og datatjenester håndterer ofte blandede sprogdokumenter. Manuel sortering og sprogspecifik ekstraktion er kedelige og fejlfarlige - især når man skalerer op til tusindvis af dokumenter .
Oversigt over løsning
Aspose.OCR for .NET understøtter mere end 30 sprog. Du kan konfigurere genkendelsesindstillinger pr. fil eller pakke, og derefter automatisere udvinding og eksport til dit foretrukne format for sømløs integration i forretnings- eller forskningsarbejde.
Forudsætninger
- Visual Studio 2019 eller senere
- .NET 6.0 eller nyere (eller .Net Framework 4.6.2+)
- Aspose.OCR til .NET fra NuGet
- Grundlæggende C# programmeringserfaring
PM> Install-Package Aspose.OCR
Step-by-Step gennemførelse
Trin 1: Installation og konfiguration af Aspose.OCR
using Aspose.OCR;
Trin 2: Indtast filer efter sprog
Organiser dine indtastede billeder eller PDF’er efter sprog i separate mapper, eller brug en navnekonvention:
// Example folders: ./input/en, ./input/fr, ./input/zh
Trin 3: Konfigurer genkendelsesindstillinger efter sprog
Dictionary<string, Language> langFolders = new Dictionary<string, Language>
{
{ "en", Language.English },
{ "fr", Language.French },
{ "zh", Language.ChineseSimplified }
};
Trin 4: Batch Process Input filer
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);
}
}
Trin 5: Tilføj fejlbehandling og automatisering
try
{
// batch processing code
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
Trin 6: Optimer for hastighed og præcision
- At køre processen parallelt (med hukommelse/CPU)
- Brug billeder af høj kvalitet for de bedste resultater
- Tune genkendelsesindstillinger for fælles layoutfunktioner i hvert sprog
// Example: Parallel batch processing
Parallel.ForEach(langFolders, pair =>
{
// per-language processing logic
});
Næste skridt: Et komplet eksempel
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}");
}
}
}
Brug af tilfælde og applikationer
Digitalisering af arkiver
Automatisk udvinding af tekst fra flersprogede arkiver, aviser eller virksomhedsregistreringer.
Internationale forretningsautomatisering
Feed OCR-resultater fra blandede sprogkontrakter, fakturaer eller HR-dokumenter til din globale ERP eller arbejdsproces.
Flersprogede overensstemmelse og søgning
Tilladelse til fuldt tekst søgning og overensstemmelseskontrol gennem dokumenter på mange sprog.
Fælles udfordringer og løsninger
Udfordring 1: Blandede sprogdokumenter
Løsning: Run detection and processing per page, eller brug AUTO-sprogmodus, hvis det er tilgængeligt.
Udfordring 2: Varieret billedkvalitet
Løsning: Standardisere scanningen og køre forarbejdningen for at normalisere billedkvaliteten.
Udfordring 3: Performance Bottlenecks
Løsning: Processer parallelt, hvor det er muligt, og optimerer brugen af ressourcer.
Performance overvejelser
- At organisere pakkearbejde pr. sprog for ressourceeffektivitet
- Overvågning af hukommelse/CPU med parallelle jobs
- Validering af udkast på hver batch
Bedste praksis
- Hold sprogmapperne organiseret for let problemløsning
- Validerer et prøvepakke for hvert sprog
- Opdater Aspose.OCR for de seneste sprogforbedringer
- Sikre både input- og outputdata
Avancerede scenarier
Scenario 1: Eksport af flersprogede resultater til JSON
foreach (RecognitionResult result in results)
{
result.Save(output.Replace(".txt", ".json"), SaveFormat.Json);
}
Scenario 2: Detekterer sprog automatisk (hvis det støttes)
settings.Language = Language.Auto;
Konklusion
Aspose.OCR for .NET giver dig mulighed for at automatisere tekstudvinding fra forskellige, flersprogede billedsamlinger – fremskynde global digitalisering og gøre dine arkiver søgbare, opdagelige og klar til integration af arbejdsprocessen.
For en fuld liste over understøttede sprog og avancerede tips, besøg Aspose.OCR til .NET API Reference .