MICR-Scheck lesen mit IronOCR in C

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

Das manuelle Verarbeiten von Schecks ist langsam und fehleranfällig. IronOCR rationalisiert diesen Arbeitsablauf mit einer spezialisierten Engine, die die MICR-Zeile (Magnetic Ink Character Recognition) genau liest und es Ihnen ermöglicht, die Extraktion von Routing-Nummern, Kontonummern und anderen wichtigen Daten zu automatisieren.

Schnellstart: OCR MICR aus Scheckbild lesen

Mit IronOCR lässt sich die MICR-Zeile schnell erfassen – einfach Language auf MICR setzen, den rechteckigen Bereich angeben, in dem der MICR-Text erscheint, Read() ausführen und sofort die Zeichenkette result.Text erhalten. Perfekt für Entwickler, die zuverlässige Finanzdatenerfassung mit minimalem Aufwand wünschen.

  1. Installieren Sie IronOCR mit NuGet Package Manager

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

    string micrText = new IronOcr.IronTesseract { Language = IronOcr.OcrLanguage.MICR }.Read(new IronOcr.OcrInput().LoadImage("micr.png", new System.Drawing.Rectangle(125, 240, 310, 15))).Text;
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

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

    arrow pointer

Wie lese ich MICR-Daten aus einem Scheckbild?

Das Einlesen einer MICR-Zeile mit IronOCR ist einfach und intuitiv. Setzen Sie zunächst die Eigenschaft Language der Instanz IronTesseract auf OcrLanguage.Micr. Um sicherzustellen, dass die Engine den richtigen Bereich liest, geben Sie die Position der MICR-Zeile an, indem Sie eine rechteckige Begrenzung auf OcrInput festlegen.

Dies wird erreicht, indem man die x- und y-Koordinaten sowie die Höhe und Breite des Begrenzungsrahmens auswählt und dann das Rechteck als zweiten Parameter beim Aufruf der Methode Load übergibt. Durch den Aufruf der Methode Read wird dann nur dieser definierte Bereich verarbeitet. Diese Kombination aus der MICR-Spracheneinstellung und einem bestimmten Bereich stellt sicher, dass IronOCR die relevanten Finanzinformationen genau extrahiert.

Die MICR-Technologie verwendet spezielle magnetische Tinte und eine einzigartige Schriftart (E-13B in Nordamerika), die genau 14 Zeichen enthält: die Ziffern 0-9 und vier Sonderzeichen. Zu diesen Symbolen gehört das Transit-Symbol (⑆), das die Grenzen der Leitzahl markiert; das on-us-Symbol (⑈), das die Kontonummer von anderen Daten trennt; das Betragssymbol (⑊), das für kodierte Beträge verwendet wird; und das Bindestrichsymbol (⑉), das als Trennzeichen dient. Die magnetischen Eigenschaften dieser Tinte ermöglichen ein zuverlässiges Lesen, selbst wenn Schecks gefaltet, gestempelt oder leicht beschädigt sind, wodurch sich MICR ideal für die Verarbeitung großer Mengen von Schecks eignet.

Wie sieht ein MICR-Scheck aus?

Beispielcheck mit MICR-Zeile, die Bankleitzahl, Kontonummer und Schecknummer für eine MICR-Lesedemonstration zeigt

Welche Informationen enthält die MICR-Zeile?

Schecknummer: Diese Nummer identifiziert den spezifischen Scheck eindeutig aus dem Scheckbuch des Kontoinhabers. Er dient als klare Referenz zur Verfolgung einzelner Zahlungen und zur Aufrechterhaltung von Transaktionsaufzeichnungen. In automatisierten Verarbeitungssystemen hilft die Prüfnummer dabei, eine doppelte Verarbeitung zu vermeiden und unterstützt die Abgleichsverfahren.

Bankleitzahl: Dieser neunstellige Code, umschlossen vom ⑆ Transitsymbol, identifiziert das Finanzinstitut, das das Konto führt. Es ist die erste Information, die eine Abwicklungsstelle verwendet, um den Scheck an die richtige Bank zur Zahlung zu leiten. Die Leitzahl folgt einem bestimmten Format: Die ersten vier Ziffern bezeichnen das Leitzahlensymbol der Federal Reserve, die nächsten vier das Institut und die letzte Ziffer ist eine Prüfsumme zur Validierung.

Kontonummer: Diese identifiziert das spezifische Kundenkonto, von dem die Mittel abgezogen werden. Die Länge des Textes kann von Bank zu Bank variieren und liegt in der Regel zwischen 10 und 12 Ziffern. Banken können interne Codes oder Filialkennungen in die Kontonummernstruktur aufnehmen.

Welchen Code benötige ich, um MICR-Daten zu extrahieren?

:path=/static-assets/ocr/content-code-examples/how-to/read-micr-cheque.cs
using IronOcr;
using IronSoftware.Drawing;
using System;

// Create a new instance of IronTesseract for performing OCR operations
IronTesseract ocr = new IronTesseract();

// Set the OCR language to MICR to recognize magnetic ink characters
// Must have MICR (IronOcr.Languages.MICR) installed beforehand
ocr.Language = OcrLanguage.MICR;

// Specify the file path of the input image containing MICR text
using (var input = new OcrInput())
{
    // Specify the MICR of the image to focus on for OCR (coordinates in pixels)
    var contentArea = new Rectangle(x: 215, y: 482, width: 520, height: 20);
    input.LoadImage("micr.png", contentArea);

    // Optional: Save the cropped area for verification
    input.StampCropRectangleAndSaveAs(contentArea, Color.Aqua, "cropped.png");

    // Run the OCR engine to read the MICR text from the input image
    var result = ocr.Read(input);
    // Output the recognized text to the console
    Console.WriteLine(result.Text);

    // Transit number is the first 7 characters of the MICR string
    string transitNum = result.Text.Substring(0, 7);
    // Routing number starts from the 8th character and is 11 characters long
    string routingNum = result.Text.Substring(7, 11);
    // Account number starts from the 22nd character to the end of the string
    string accountNum = result.Text.Substring(22);
}
$vbLabelText   $csharpLabel

Der Code demonstriert den kompletten Arbeitsablauf für die MICR-Scheckverarbeitung. Bevor Sie diesen Code ausführen, stellen Sie sicher, dass Sie das MICR-Sprachpaket über NuGet installiert haben. Die Klasse OcrInput bietet leistungsstarke Methoden zum Laden und Vorverarbeiten von Bildern, während der Parameter Rectangle eine präzise Ausrichtung der MICR-Zeilenposition ermöglicht.

Welche Ergebnisse kann ich erwarten?

Debug-Konsole mit MICR-Parsing-Ergebnissen mit Transit-, Routing- und Kontonummern, die aus dem Scheck extrahiert wurden

Die obige Ausgabe zeigt die drei Abschnitte, die aus dem MICR-Scheck gewonnen wurden: die Transitnummer, die Routingnummer und die Kontonummer. Beachten Sie, wie die speziellen MICR-Symbole in der Ausgabe dargestellt werden. Dies ist ein normales Verhalten, da diese Symbole spezifische Unicode-Darstellungen haben, die in der Konsolenausgabe unterschiedlich erscheinen können.

MICR OCR Ergebnisse

Das Objekt OcrResult liefert detaillierte Informationen über den Scan:

Text : Der extrahierte Text aus OcrInput. Dazu gehören alle Zeichen und Symbole der MICR-Zeile, wobei die ursprüngliche Reihenfolge beibehalten wird.

Konfidenz: Gibt die statistische Genauigkeitskonfidenz eines Durchschnittswerts für jedes Zeichen an, wobei 1 der höchste und 0 der niedrigste Wert ist. Für MICR-Lesungen sind aufgrund des standardisierten Schriftdesigns Konfidenzniveaus über 0,9 typisch. Erfahren Sie mehr über Vertrauensbildung in OCR-Ergebnissen.

Blöcke, Absätze, Zeilen und Wörter: Die hierarchische Struktur des erkannten Textes, der bei MICR typischerweise aus einer einzigen Zeile mit mehreren durch Symbole getrennten Wortsegmenten besteht.

BarCode-Daten: Während der Verarbeitung von MICR kann IronOCR gleichzeitig alle Barcodes oder QR-Codes auf dem Scheck erkennen.

Wie kann ich die korrekte OCR-Region überprüfen?

Um sicherzustellen, dass Sie die korrekten Koordinaten für die MICR-Linie ausgewählt haben, können Sie den von Ihnen definierten ContentArea visualisieren. Eine einfache Möglichkeit hierfür ist, das Rechteck auf das Eingabebild zu zeichnen und es als neue Datei mit StampCropRectangleAndSaveAs zu speichern. Dies hilft Ihnen, die Koordinaten zu debuggen und für eine optimale Leistung zu optimieren.

Um die Koordinaten für Ihr Rechteck zu finden, verwenden Sie einen einfachen Bildeditor wie MS Paint. Öffnen Sie das Bild Ihres Schecks, bewegen Sie den Mauszeiger über die obere linke und die untere rechte Ecke der MICR-Zeile und notieren Sie sich die Pixelkoordinaten (x,y). Anschließend können Sie die Eigenschaften des Rechtecks ​​berechnen: (x1, y1, width, height), wobei width = x2-x1 und height = y2-y1.

Weitere fortgeschrittene Techniken zur Auswahl von Regionen finden Sie unter OCR Region Targeting und Inhaltsbereiche mit PDFs.

Hier ist das Ausgabebild nach dem Zeichnen des angegebenen Begrenzungsrahmens auf unserem Beispielscheck.

Ausgabe

MICR-Zeile eines Schecks mit Bankleitzahl, Kontonummer und Schecknummer, die in einem roten Kasten hervorgehoben sind

Das hellblaue Rechteck bestätigt, dass wir die MICR-Linie korrekt für die Verarbeitung isoliert haben.

Tipps zur Optimierung der Leistung

Bei der Verarbeitung mehrerer Prüfungen sollten Sie die Implementierung von Multithreading für eine bessere Leistung in Betracht ziehen. IronOCR handhabt gleichzeitige Operationen effizient:

// Process multiple cheques in parallel
var chequeFiles = Directory.GetFiles("cheques/", "*.png");
Parallel.ForEach(chequeFiles, file =>
{
    using (var ocr = new IronTesseract { Language = OcrLanguage.MICR })
    using (var input = new OcrInput())
    {
        input.LoadImage(file, micrRegion);
        var result = ocr.Read(input);
        ProcessMicrData(result.Text);
    }
});
// Process multiple cheques in parallel
var chequeFiles = Directory.GetFiles("cheques/", "*.png");
Parallel.ForEach(chequeFiles, file =>
{
    using (var ocr = new IronTesseract { Language = OcrLanguage.MICR })
    using (var input = new OcrInput())
    {
        input.LoadImage(file, micrRegion);
        var result = ocr.Read(input);
        ProcessMicrData(result.Text);
    }
});
$vbLabelText   $csharpLabel

Gängige Fehlerbehebungsszenarien

Low Quality Scans: Wenn Sie mit qualitativ schlechten Prüfbildern arbeiten, wenden Sie Bildvorverarbeitungsfilter an, um die Lesbarkeit zu verbessern. Die unverwechselbare Form der MICR-Schriftart trägt dazu bei, dass die Genauigkeit auch bei verschlechterten Bildern erhalten bleibt.

Fehlerhafte Zeichenerkennung: Stellen Sie sicher, dass Sie das neueste MICR-Sprachpaket installiert haben. Die spezialisierte MICR-Sprachkonfiguration ist speziell für die Erkennung von E-13B-Schriften trainiert.

Variable MICR-Zeilenpositionen: Verschiedene Banken können die MICR-Zeile an leicht unterschiedlichen Stellen positionieren. Ziehen Sie in Erwägung, eine dynamische Regionserkennung zu implementieren oder eine Konfigurationsdatei mit Koordinaten für verschiedene Prüfformate zu pflegen.

Verwandte Finanzdokumentenverarbeitung

Die Fähigkeiten von IronOCR gehen über die Prüfungsverarbeitung hinaus. Entdecken Sie diese verwandten Funktionen für eine umfassende Automatisierung von Finanzdokumenten:

Wenn Sie das MICR-Lesen mit IronOCR beherrschen, haben Sie den ersten Schritt zur vollautomatischen Verarbeitung von Finanzdokumenten getan, die manuellen Eingabefehler reduziert und Ihren Workflow erheblich beschleunigt.

Häufig gestellte Fragen

Was ist MICR und warum ist es für die Scheckverarbeitung wichtig?

MICR (Magnetic Ink Character Recognition) ist eine Technologie, die spezielle magnetische Tinte und einzigartige Schriftarten verwendet, um Finanzinformationen auf Schecks zu kodieren. Die spezialisierte MICR-Engine von IronOCR kann diese kodierten Daten, einschließlich Routing-Nummern, Kontonummern und Schecknummern, genau lesen und automatisiert damit einen ansonsten langsamen und fehleranfälligen manuellen Prozess.

Wie konfiguriere ich die OCR-Engine für das Lesen von MICR-Text?

Um MICR-Text mit IronOcr zu lesen, müssen Sie die Eigenschaft Language der IronTesseract-Instanz auf OcrLanguage.MICR setzen. Dadurch wird die Engine angewiesen, die speziellen MICR-Zeichenerkennungsalgorithmen zu verwenden, die speziell für das Lesen der auf Schecks verwendeten Schriftart E-13B entwickelt wurden.

Kann ich genau angeben, wo auf dem Scheck nach MICR-Daten zu suchen ist?

Ja, IronOCR ermöglicht es Ihnen, die genaue Position der MICR-Linie zu bestimmen, indem Sie eine rechteckige Begrenzung auf dem OcrInput festlegen. Sie definieren dies, indem Sie die x- und y-Koordinaten sowie die Höhe und Breite des Begrenzungsrechtecks auswählen und es dann als zweiten Parameter beim Aufruf der Load-Methode übergeben.

Welche Sonderzeichen werden bei der MICR-Kodierung verwendet?

MICR verwendet insgesamt 14 Zeichen: die Ziffern 0-9 und vier Sonderzeichen. Dazu gehören das Transit-Symbol (⑆) für Leitzahlgrenzen, das Onus-Symbol (⑈) zur Trennung von Kontonummern, das Betragssymbol (⑊) für kodierte Beträge und das Bindestrich-Symbol (⑉) als Trennzeichen. IronOCR kann alle diese MICR-spezifischen Zeichen erkennen.

Wie schnell kann ich MICR-Daten aus einem Scheckbild extrahieren?

Mit IronOCR können Sie MICR-Daten in nur einer Codezeile extrahieren. Erstellen Sie einfach eine IronTesseract-Instanz mit der Sprache MICR, laden Sie Ihr Bild mit der angegebenen MICR-Region, rufen Sie Read() auf und greifen Sie auf die Eigenschaft result.Text zu, um die extrahierte MICR-Zeichenkette sofort zu erhalten.

Welche Arten von Finanzinformationen können aus der MICR-Zeile extrahiert werden?

IronOCR kann alle wichtigen Finanzdaten extrahieren, die in der MICR-Zeile kodiert sind, einschließlich der Routing-Nummer (zur Identifizierung der Bank), der Kontonummer (zur Identifizierung des spezifischen Kontos) und der Schecknummer (zur eindeutigen Identifizierung des einzelnen Schecks). Diese automatische Extraktion rationalisiert die Verarbeitung von Finanzdokumenten.

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.