Wie man bestimmte Dokumente mit OCR in C# liest

How to Read Specialized Documents with C# and IronOCR

This article was translated from English: Does it need improvement?
Translated
View the article in English

Das genaue Lesen spezifischer Dokumente wie Standardtextdokumente, Nummernschilder, Pässe und Fotos mit einer allgemeinen einheitlichen Methode ist sehr schwierig. Diese Herausforderungen ergeben sich aus den unterschiedlichen Formaten, Layouts und Inhalten der einzelnen Dokumenttypen sowie aus Variationen in der Bildqualität, Verzerrung und spezialisierten Inhalten. Darüber hinaus wird es komplexer, ein kontextuelles Verständnis zu erreichen und Leistung und Effizienz im Rahmen eines breiteren Spektrums von Dokumenttypen in Einklang zu bringen.

IronOCR führt spezifische Methoden ein, um OCR an besonderen Dokumenten wie Standardtextdokumenten, Nummernschildern, Pässen und Fotos durchzuführen, um optimale Genauigkeit und Leistung zu erzielen.

Schnellstart: Einen Reisepass in einer Zeile lesen

Nutzen Sie die IronOCR-Erweiterung ReadPassport, um alle wichtigen Passdaten mit minimalem Aufwand zu extrahieren. Mit nur einer Codezeile – vorausgesetzt, Sie haben IronOCR und AdvancedScan installiert – erhalten Sie schnell und mühelos strukturierte Ergebnisdaten wie Namen, Passnummer, Land und mehr.

  1. Installieren Sie IronOCR mit NuGet Package Manager

    PM > Install-Package IronOcr
  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    var result = new IronTesseract().ReadPassport(new OcrInput().LoadImage("passport.jpg"));
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronOCR in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion

    arrow pointer


Über das Paket

Die Methoden ReadLicensePlate, ReadPassport, ReadPhoto und ReadScreenShot sind Erweiterungsmethoden des Basispakets IronOCR und erfordern die Installation des Pakets IronOcr.Extensions.AdvancedScan .

Die Methoden funktionieren mit OCR-Engine-Konfigurationen wie Blacklist und Whitelist. Mehrere Sprachen, darunter Chinesisch, Japanisch, Koreanisch und das lateinische Alphabet, werden von allen Methoden außer der Methode ReadPassport unterstützt. Bitte beachten Sie, dass jede Sprache ein zusätzliches Sprachpaket erfordert, IronOcr.Languages.

Die erweiterte Abtastung auf dem .NET Framework erfordert, dass das Projekt auf der x64-Architektur ausgeführt wird. Navigieren Sie zur Projektkonfiguration und deaktivieren Sie die Option "Bevorzugt 32-Bit", um dies zu erreichen. Erfahren Sie mehr im folgenden Leitfaden zur Fehlersuche: "Erweiterte Abtastung auf dem .NET Framework".

Dokumentbeispiel lesen

Die ReadDocument-Methode ist eine robuste Dokumentenlesemethode, die sich auf gescannte Dokumente oder Fotos von Papierdokumenten mit viel Text spezialisiert hat. Die Konfiguration PageSegmentationMode ist sehr wichtig beim Lesen von Textdokumenten mit unterschiedlichen Layouts.

Zum Beispiel könnten die Typen SingleBlock und SparseText viel Informationen aus einem Tabellenlayout abrufen. Dies liegt daran, dass SingleBlock davon ausgeht, dass der Text als Block bleibt, während SparseText davon ausgeht, dass der Text im gesamten Dokument verstreut ist.

:path=/static-assets/ocr/content-code-examples/how-to/read-specific-document-document.cs
using IronOcr;
using System;

// Instantiate OCR engine
var ocr = new IronTesseract();

// Configure OCR engine
ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.SingleBlock;

using var input = new OcrInput();

input.LoadPdf("Five.pdf");

// Perform OCR
OcrResult result = ocr.ReadDocument(input);

Console.WriteLine(result.Text);
$vbLabelText   $csharpLabel

Die unten aufgeführten Methoden sind Erweiterungsmethoden des grundlegenden IronOCR-Pakets und erfordern die Installation des IronOcr.Extensions.AdvancedScan-Pakets.

Nummernschild-Beispiel

Die Methode ReadLicensePlate ist für das Auslesen von Kfz-Kennzeichen anhand von Fotos optimiert. Die speziellen Informationen, die von dieser Methode zurückgegeben werden, sind die Licenseplate-Eigenschaft, die die Informationen über den Standort des Nummernschilds im bereitgestellten Dokument enthält.

:path=/static-assets/ocr/content-code-examples/how-to/read-specific-document-license-plate.cs
using IronOcr;
using IronSoftware.Drawing;
using System;

// Instantiate OCR engine
var ocr = new IronTesseract();

using var inputLicensePlate = new OcrInput();

inputLicensePlate.LoadImage("LicensePlate.jpeg");

// Perform OCR
OcrLicensePlateResult result = ocr.ReadLicensePlate(inputLicensePlate);

// Retrieve license plate coordinates
Rectangle rectangle = result.Licenseplate;

// Retrieve license plate value
string output = result.Text;
$vbLabelText   $csharpLabel

Passexempel lesen

Die Methode ReadPassport ist für das Lesen optimiert und extrahiert Passinformationen aus Passfotos durch Scannen des Inhalts der maschinenlesbaren Zone (MRZ). Eine MRZ ist eine speziell definierte Zone in offiziellen Dokumenten wie Pässen, Personalausweisen und Visa. Die MRZ enthält typischerweise wesentliche persönliche Informationen, wie den Namen des Inhabers, das Geburtsdatum, die Nationalität und die Dokumentennummer. Derzeit unterstützt diese Methode nur die englische Sprache.

:path=/static-assets/ocr/content-code-examples/how-to/read-specific-document-passport.cs
using IronOcr;
using System;

// Instantiate OCR engine
var ocr = new IronTesseract();

using var inputPassport = new OcrInput();

inputPassport.LoadImage("Passport.jpg");

// Perform OCR
OcrPassportResult result = ocr.ReadPassport(inputPassport);

// Output passport information
Console.WriteLine(result.PassportInfo.GivenNames);
Console.WriteLine(result.PassportInfo.Country);
Console.WriteLine(result.PassportInfo.PassportNumber);
Console.WriteLine(result.PassportInfo.Surname);
Console.WriteLine(result.PassportInfo.DateOfBirth);
Console.WriteLine(result.PassportInfo.DateOfExpiry);
$vbLabelText   $csharpLabel

Ergebnis

Reisepass auslesen

Bitte stellen Sie sicher, dass das Dokument nur das Passbild enthält. Jeglicher Kopf- und Fußzeilentext könnte die Methode verwirren und ein unerwartetes Ergebnis hervorrufen.

Foto-Beispiel lesen

Die Methode ReadPhoto ist für das Lesen von Bildern mit schwer lesbarem Text optimiert. Diese Methode gibt die TextRegions-Eigenschaft zurück, die nützliche Informationen über den erkannten Text enthält, wie Region, TextInRegion und FrameNumber.

:path=/static-assets/ocr/content-code-examples/how-to/read-specific-document-photo.cs
using IronOcr;
using IronSoftware.Drawing;

// Instantiate OCR engine
var ocr = new IronTesseract();

using var inputPhoto = new OcrInput();
inputPhoto.LoadImageFrame("photo.tif", 2);

// Perform OCR
OcrPhotoResult result = ocr.ReadPhoto(inputPhoto);

// index number refer to region order in the page
int number = result.TextRegions[0].PageNumber;
string textinregion = result.TextRegions[0].TextInRegion;
Rectangle region = result.TextRegions[0].Region;
$vbLabelText   $csharpLabel

Screenshot-Beispiel lesen

Die Methode ReadScreenShot ist für das Lesen von Screenshots mit schwer lesbarem Text optimiert. Ähnlich wie bei der ReadPhoto-Methode gibt es auch die TextRegions-Eigenschaft zurück.

:path=/static-assets/ocr/content-code-examples/how-to/read-specific-document-screenshot.cs
}
using IronOcr;
using System;
using System.Linq;

// Instantiate OCR engine
var ocr = new IronTesseract();

using var inputScreenshot = new OcrInput();
inputScreenshot.LoadImage("screenshot.png");

// Perform OCR
OcrPhotoResult result = ocr.ReadScreenShot(inputScreenshot);

// Output screenshoot information
Console.WriteLine(result.Text);
Console.WriteLine(result.TextRegions.First().Region.X);
Console.WriteLine(result.TextRegions.Last().Region.Width);
Console.WriteLine(result.Confidence);
}
$vbLabelText   $csharpLabel

Häufig gestellte Fragen

Wie kann ich Nummernschilder mit OCR in C# lesen?

Sie können die Methode ReadLicensePlate von IronOCR verwenden, um Nummernschilder auf Fotos genau zu lesen. Diese Methode gibt den Text des Nummernschilds und dessen Standortdetails zurück.

Was ist der beste Weg, um Informationen aus Passfotos zu extrahieren?

Die Methode ReadPassport von IronOCR ist dazu entwickelt, die maschinenlesbare Zone (MRZ) in Passfotos zu scannen und wesentliche Informationen wie Name, Geburtsdatum und Dokumentnummer zu extrahieren.

Kann IronOCR Text aus Fotos mit schwer lesbarem Text lesen?

Ja, die Methode ReadPhoto in IronOCR ist optimiert, um Bilder mit schwer lesbarem Text zu lesen und detaillierte Daten über den erkannten Text und dessen Regionen zu liefern.

Ist es möglich, IronOCR zu verwenden, um Text von Screenshots zu lesen?

Absolut, die Methode ReadScreenShot von IronOCR ist speziell für die Verarbeitung von Text in Screenshots optimiert und liefert detaillierte Informationen zu den Textregionen.

Wie kann ich die OCR-Genauigkeit für Dokumente mit komplexen Layouts verbessern?

Um die OCR-Genauigkeit für komplexe Dokumentenlayouts zu verbessern, konfigurieren Sie den PageSegmentationMode in IronOCR. Optionen wie SingleBlock und SparseText sind besonders nützlich, um Informationen aus Tabellenlayouts zu extrahieren.

Was soll ich tun, wenn die erweiterten Scan-Funktionen von IronOCR in meinem .NET Framework-Projekt nicht funktionieren?

Stellen Sie sicher, dass Ihr Projekt für die Ausführung auf x64-Architektur eingestellt ist, indem Sie die Option 'Bevorzuge 32-Bit' in Ihren Projekteinstellungen deaktivieren, um Probleme mit erweiterten Scan-Funktionen in IronOCR auf .NET Framework zu beheben.

Gibt es Sprachunterstützungseinschränkungen in IronOCR?

IronOCR unterstützt mehrere Sprachen, darunter Chinesisch, Japanisch, Koreanisch und Lateinisches Alphabet. Die Methode ReadPassport unterstützt jedoch derzeit nur Dokumente in Englisch.

Was benötige ich, um erweiterte Scan-Funktionen in IronOCR zu verwenden?

Um erweiterte Scan-Funktionen in IronOCR zu verwenden, wird das Paket IronOcr.Extensions.AdvancedScan benötigt, das exklusiv auf Windows verfügbar ist.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 5,556,263 | Version: 2026.3 gerade veröffentlicht
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronOcr
Führen Sie ein Beispiel aus und beobachten Sie, wie Ihr Bild zu durchsuchbarem Text wird.