Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Durch den Einsatz von Bibliotheken wie IronOCR und Tesseract erhalten Entwickler Zugang zu fortschrittlichen Algorithmen und maschinellen Lerntechniken für die Extraktion von Textinformationen aus Bildern und gescannten Dokumenten. Dieses Tutorial zeigt den Lesern, wie man die Tesseract-Bibliothek zur Textextraktion aus Bildern verwendet, und stellt abschließend den einzigartigen Ansatz von IronOCR vor.
Geben Sie in der NuGet-Paketmanager-Konsole den folgenden Befehl ein.
Install-Package Tesseract
Oder laden Sie das Paket über den NuGet Package Manager herunter.
**Installieren Sie das Paket "Tesseract" im NuGet Package Manager
Sie müssen die Sprachdateien nach der Installation des NuGet-Pakets manuell installieren und im Projektordner speichern. Dies kann als ein Manko dieser speziellen Bibliothek angesehen werden.
Besuchen Sie die folgendenwebsite um die Sprachdateien herunterzuladen. Nach dem Herunterladen entpacken Sie die Dateien und fügen den Ordner "tessdata" dem Debug-Ordner Ihres Projekts hinzu.
OCR für ein bestimmtes Bild kann mit dem unten stehenden Quellcode durchgeführt werden:
using Tesseract;
var ocrEngine = new TesseractEngine(@"tessdata", "eng", EngineMode.Default);
var img = Pix.LoadFromFile("Demo.png");
var res = ocrEngine.Process(img);
Console.WriteLine(res.GetText());
Console.ReadKey();
using Tesseract;
var ocrEngine = new TesseractEngine(@"tessdata", "eng", EngineMode.Default);
var img = Pix.LoadFromFile("Demo.png");
var res = ocrEngine.Process(img);
Console.WriteLine(res.GetText());
Console.ReadKey();
Imports Tesseract
Private ocrEngine = New TesseractEngine("tessdata", "eng", EngineMode.Default)
Private img = Pix.LoadFromFile("Demo.png")
Private res = ocrEngine.Process(img)
Console.WriteLine(res.GetText())
Console.ReadKey()
Zuerst muss ein TerreractEngine
Objekt erstellt werden und die Sprachdaten in die Engine geladen werden. Dann wird die gewünschte Bilddatei mit Hilfe von Tesseract Pix geladen. Anschließend wird dieses Bild an die "TerreactEngine" weitergegeben, um den korrekt erkannten Text mit Hilfe der Methode "GetText" zu extrahieren, die in der "TesseractEngine" verfügbar ist. Dies ist die Ausgabe des Codes.
Extrahierter Text aus dem Bild
Tesseract unterstützt ab Version 3.00 die Formatierung von Ausgabetext, OCR-Positionsdaten und die Analyse des Seitenlayouts.
Tesseract ist für Windows, Linux und Mac OS X verfügbar. Es wurde jedoch bestätigt, dass Tesseract aufgrund der begrenzten Entwicklungsunterstützung nur unter Windows und Ubuntu wie vorgesehen funktioniert.
Tesseract kann zwischen monospaced und proportional spaced Text unterscheiden.
Durch die Verwendung eines Front-Ends wie OCRopus ist Tesseract ideal für den Einsatz als Back-End und kann für anspruchsvollere OCR-Aufgaben, wie z. B. Layout-Analysen, verwendet werden.
Einige der Unzulänglichkeiten von Tesseract:
Die neuesten Builds wurden nicht für die Kompilierung unter Windows entwickelt
Um mehr über Tesseract in C# zu erfahren, besuchen Sie bittedas Tesseract-Tutorial.
Geben Sie den folgenden Befehl in die NuGet-Paketmanager-Konsole ein.
Install-Package IronOcr
Sie können die IronOCR-Bibliothek auch über den NuGet Package Manager installieren, zusammen mit zusätzlichen Paketen für andere Sprachen, die einfach und bequem zu verwenden sind.
IronOCR und Sprachpakete über den NuGet Package Manager installieren
Nachfolgend finden Sie einen Beispielcode zur Erkennung des Textes aus dem angegebenen Bild.
var ocr = new IronTesseract();
ocr.Language = OcrLanguage.EnglishBest;
ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5;
using (var input = new OcrInput())
{
input.LoadImage(@"Demo.png");
var result = ocr.Read(input);
Console.WriteLine(result.Text);
Console.ReadKey();
}
var ocr = new IronTesseract();
ocr.Language = OcrLanguage.EnglishBest;
ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5;
using (var input = new OcrInput())
{
input.LoadImage(@"Demo.png");
var result = ocr.Read(input);
Console.WriteLine(result.Text);
Console.ReadKey();
}
Dim ocr = New IronTesseract()
ocr.Language = OcrLanguage.EnglishBest
ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5
Using input = New OcrInput()
input.LoadImage("Demo.png")
Dim result = ocr.Read(input)
Console.WriteLine(result.Text)
Console.ReadKey()
End Using
Der obige Code instanziiert eineeisen-Tesserakt objekt. Zusätzlich wird eineocrInput objekt erstellt wird, um eine oder mehrere Bilddateien hinzuzufügen, wird der lokale Dateipfad mitbild laden methode. Sie können so viele Bilder hochladen, wie Sie möchten. Die Funktionalitätlesen im Objekteisen-Tesserakt parst die Bilddatei und extrahiert das Ergebnis in das OCR-Ergebnis.
Extrahierte Textausgabe mit IronOCR-Bibliothek
IronOCR ist eine Erweiterung der Tesseract-Bibliothek, die für mehr Stabilität und höhere Genauigkeit sorgt.
IronOCR kann Textinhalte lesen vonPDFs und Fotos kann IronOCR auch mehr als 20 verschiedene Arten vonbarcodes und QR-Codes.
Die Ausgabe kann entweder als reiner Text, als strukturierte Daten, als Barcodes oder als QR-Codes erfolgen.
Die Bibliothek erkennt an127 Sprachen weltweit.
IronOCR arbeitet flexibel in allen .NET-Umgebungen(konsole, Web, Desktop, etc)und unterstützt auch die neuesten mobilen Frameworks wie Mono, Xamarin,AzurblauundMAUI.
IronOCR bietet einekostenloser Test und hat eine preisgünstigere Entwicklungsversion. Lernen Siemehr über Lizenzierung.
Ein ausführliches IronOCR-Tutorial finden Sie in diesemartikel zum Lesen von Text aus einem Bild in C#.
9 .NET API-Produkte für Ihre Bürodokumente