IronOCR Merkmale
IronOCR ist eine .NET-Bibliothek, die es Entwicklern ermöglicht, Text oder Barcodes von Bildern zu scannen und zu lesen.
Kompatibilität
.NET-Sprachen
- C# (Anleitung API-Referenz
- Scannen und lesen Sie Texte oder Barcodes aus Bildern (jpg, png, gif, tiff, bmp) in C#.
- VB.NET
- Scannen und lesen Sie Texte oder Barcodes aus Bildern (jpg, png, gif, tiff, bmp) in VB.NET.
F#
- Scannen und Lesen von Text oder Barcodes aus Bildern (jpg, png, gif, tiff, bmp) in F#.
Plattformen
- .NET 5, 6, 7 und 8 (Tutorial)
- IronOCR for .NET ist für .NET 5, 6, 7 und 8 verfügbar.
.NET Core 2 und 3 (Tutorial)
IronOCR ist für .NET Core 2 und 3 verfügbar.
- Die aktuelle Version unterstützt .NET Core auf Linux-, Unix- und macOS-Client-Betriebssystemen sowie Mono.
- Eine zukünftige Version wird MAUI und Xamarin unterstützen
- .NET Standard 2+ (API-Referenz)
- IronOCR ist kompatibel mit .NET-Standard 2 und aufwärts.
.NET Framework 4.6.2+ (Beispielcode API-Referenz
- Scannen und Lesen von Texten oder Barcodes aus Bildern mit .NET-Framework 4.6.2 und höher.
App-Typen
Konsole, Web und Desktop (Tutorial API-Referenz
- Erstellen Sie mit IronOCR Anwendungen für Web, Desktop und Konsole.
Betriebssysteme
IDEs
- Microsoft Visual Studio (Tutorial)
- Jetbrains ReSharper und Rider
Zertifizierung
Microsoft Authenticode
- DigiCert Trusted G4 Code Signing RSA4096 SHA384 2021 CA1
OCR-Engine
Zugrunde liegende OCR-Engine
- Tesseract 5 (Tutorial Codebeispiel)
- Tesseract ist eine Open-Source-Texterkennungs-Engine (OCR), die unter der Apache 2.0-Lizenz verfügbar ist. Eine der genauesten und schnellsten Bibliotheken ist für C#.NET verfügbar. Derzeit ist Tesseract 5 die stabilste Version.
Detaillierte Konfiguration (Code-Beispiel)
Das
IronTesseract.Configuration
-Objekt bietet Zugriff auf die zugrunde liegende Tesseract-API in C# / .NET, um die Einrichtung für fortgeschrittene Benutzer zu konfigurieren.Die Einrichtung kann dazu beitragen, die Ausgabe nach der OCR zu verbessern.
- Um die OCR-Geschwindigkeit zu verbessern, prüfen Sie bitte dieses Codebeispiel für die schnelle OCR-Konfiguration.
Internationale Sprachen
- 125 Sprachen (Liste Codebeispiel
- Hohe, mittlere und schnelle Qualität für die meisten Sprachen (Codebeispiel)
- Benutzerdefinierte Sprachen (Codebeispiel)
- Benutzerdefiniertes Schriftart-Training (Anleitung)
Lesen von Text und Barcode
- Text und Zahlen (Beispielcode)
- Mehrere Sprachen auf einmal (Anleitung Beispielcode
- Barcode (über 20 Formate) und QR-Code (Anleitung Codebeispiel)
Fachspezifische Dokumente
Diese Methode nutzt maschinelles Lernen, um die Texterkennung zu verbessern.
- Gescanntes Dokument (Anleitung Codebeispiel)
- Optimiert für das Lesen von gescannten Dokumenten oder Fotos von Papierdokumenten mit viel Text.
- Tabelle im Dokument (Anleitung) Codebeispiel)
- Optimiert für Dokumente, die Tabellen mit klaren Umrissen enthalten.
- Kennzeichen (Anleitung Codebeispiel
- Optimiert für das Lesen von Nummernschildern aus Fotos.
- Reisepass (Anleitung Codebeispiel)
- Optimiert für das Lesen und Extrahieren von Passinformationen aus Fotos durch Scannen der Inhalte der maschinenlesbaren Zone (MRZ).
- Foto (Anleitung Codebeispiel
- Optimiert für das Lesen von Bildern, die schwer zu lesenden Text enthalten.
Screenshot (Anleitung Codebeispiel
- Optimiert für das Lesen von Screenshots, die schwer zu lesenden Text enthalten.
Gleichzeitigkeit
- Einzel- und Mehrfachthreads (Anleitung Codebeispiel
- Asynchrone Unterstützung (Anleitung API-Referenz)
- Abbruch-Token (Code-Beispiel)
- Ermöglicht es den Benutzern, den aktuellen Thread für einen bestimmten Zeitraum in Millisekunden zu unterbrechen, wenn eine große Eingabedatei gelesen wird und das Programm oder die Anwendung nicht weiterläuft.
Timeout (Code-Beispiel)
- Angabe eines optionalen Timeouts in Millisekunden, nach dem die OCR-Lesung abgebrochen wird.
Computer Vision
- Verwenden Sie Computer Vision, um Text basierend auf unseren fortschrittlich trainierten Modellen zu finden. IronOCR nutzt OpenCV, um mit Hilfe von Computer Vision Bereiche zu erkennen, in denen Text in einem Bild vorhanden ist. Dies ist nützlich für Bilder, die viel Rauschen enthalten, Bilder mit Text an vielen verschiedenen Stellen und Bilder, bei denen der Text verzerrt ist. Die Verwendung von Computer Vision in IronOCR wird ermitteln, wo sich Textbereiche befinden, und dann Tesseract verwenden, um zu versuchen, diese Bereiche zu lesen.
OCR-Eingabe
Lesen von vielen Formaten
- Bilder (jpg, png, gif, tiff, bmp) (Anleitung Codebeispiel)
- Mehrseitige und Frame-TIFF- und GIF-Dateien (Anleitung Code-Beispiel
- System.Drawing Objekte (Anleitung Codebeispiel
- Streams (Anleitung Beispielcode
- PDFs (Anleitung Codebeispiel)
Filter
- Filter-Assistent (Codebeispiel API-Referenz
- Wenn Sie nicht wissen, welcher Filter auf das Bild angewendet werden soll, stellt der Filter-Assistent eine Liste von Filtern zur Verfügung, die für OcrInput geeignet sind, wobei ein Brute-Force-Ansatz verwendet wird, der die Kombination mit dem höchsten Vertrauen liefert.
OCR-Bildfilter (Anleitung Tutorial Codebeispiel
Sharpen
(API-Referenz)* Schärft unscharfe OCR-Dokumente. Verflacht Alphakanäle zu Weiß.
EnhanceResolution
(API-Referenz)* Verbessert die Auflösung von Bildern niedriger Qualität.
Denoise
(API-Referenz)* Entfernt digitales Rauschen. Dieser Filter sollte nur verwendet werden, wenn Rauschen zu erwarten ist. Verflacht Alphakanäle zu Weiß.
Dilate
(API-Referenz)* Morphologie für Fortgeschrittene. mit _Dilatation_ werden Pixel zu den Grenzen von Objekten in einem Bild hinzugefügt. Gegenüber von Erode
Erode
(API-Referenz)
- Morphologie für Fortgeschrittene. mit Erosion werden Pixel an Objektgrenzen entfernt. Gegenteil von Dilatieren
Bildausrichtung korrigieren (Anleitung Tutorial Codebeispiel
Drehen
(Tutorial API-Referenz* Dreht Bilder um eine bestimmte Gradzahl im Uhrzeigersinn. Für eine Drehung gegen den Uhrzeigersinn verwenden Sie negative Zahlen.
Deskew
(Tutorial API-Referenz)* Dreht ein Bild so, dass es richtig herum und orthogonal ist. Dies ist für OCR sehr nützlich, da die Toleranz von Tesseract für schiefe Scans bis zu 5 Grad betragen kann
Scale
(Tutorial API-Referenz
- Skaliert OcrInput-Seiten proportional.
Bildfarben korrigieren (Anleitung Tutorial Codebeispiel
Binarize
(Tutorial API-Referenz)* Dieser Bildfilter macht jedes Pixel schwarz oder weiß, ohne einen Mittelweg zu finden. Kann die OCR-Leistung in Fällen mit sehr geringem Kontrast zwischen Text und Hintergrund verbessern.
ToGrayscale
(API-Referenz)* Dieser Bildfilter verwandelt jedes Pixel in einen Graustufenwert. Es ist unwahrscheinlich, dass die OCR-Genauigkeit verbessert wird, aber es kann die Geschwindigkeit erhöhen.
Invert
(Tutorial API-Referenz* Invertiert jede Farbe. Z. B. Weiß wird schwarz: Schwarz wird weiß.
ReplaceColor
(API-Referenz)* Ersetzt eine Farbe innerhalb eines Bildes durch eine andere Farbe mit einem bestimmten Schwellenwert.
SelectTextColor
(API-Referenz)* Ersetzt eine Farbe innerhalb eines Bildes durch eine andere Farbe mit einem bestimmten Schwellenwert.
Anlegen einer Anbauregion
CropRectangle (Code-Beispiel API-Referenz
- Zeichnen eines Rechtecks mit der angegebenen Koordinate über einen OcrInput.
OCR-Ergebnis
Einfache Datenausgabe
- .NET-Textzeichenfolgen
- Barcode- und QR-Daten
- Bilder
Strukturierte Datenausgabe
- Seiten
- Blöcke
- Absätze
- Zeilen
- Wörter
- Zeichen
Dokumente exportieren
Durchsuchbare PDFs (Anleitung Tutorial)
- PDF in durchsuchbares PDF (Codebeispiel)
- TIFF zu durchsuchbarem PDF (Codebeispiel)
- hOCR-Export (Anleitung Tutorial
- HTML-Export
- Bild einer beliebigen Seite oder Textelement
- Barcode oder QR-Code als Bild
Text auf einer Seite zur Fehlersuche hervorheben
- Zeichnen von roten Kästen um Zeichen/Wörter/Zeilen/Absätze, die als Hervorhebung erkannt werden, und Speichern als .png für die Fehlersuche.
Status und Analytik
- OCR-Fortschrittsverfolgung (Codebeispiel)
- Ergebnis Zuverlässigkeit (Anleitung)