IRONOCR VERWENDEN

Wie man Text aus einer Rechnung in C# Tutorial

Aktualisiert 18. Dezember 2023
Teilen Sie:

1. IronOCR, eine API für die optische Zeichenerkennung

IronOCR ist eine OCR-Bibliothek, die zur Erkennung von Textdaten aus Bildern für die Informationsextraktion, einschließlich der OCR von Belegen, verwendet werden kann. Es basiert auf der Tesseract OCR-Engine, die als eine der genauesten OCR-Engines gilt, die bis heute für die Erkennung von Belegen verfügbar sind. IronOCR kann Text mit Schlüsselinformationen aus verschiedenen Dokumenttypen lesen, einschließlich PNG, JPG, TIFF, JSON-Format und PDF, und kann Text in mehreren Sprachen erkennen.

Eines der wichtigsten Merkmale oder Dienste von IronOCR, die es für die OCR von Quittungen besonders nützlich machen, ist seine Fähigkeit automatische Erkennung der Textausrichtungauch wenn das Bild gedreht oder verzerrt wurde. Dies ist für eine genaue Texterkennung auf hochgeladenen Quittungen und für die Datenextraktion unerlässlich, da Quittungen oft viele Informationen enthalten und gefaltet oder zerknittert sein können, wodurch der Text verzerrt wird.

2. IronOCR Merkmale

  • C# OCR nutzt Deep Learning zum Scannen und Erkennen von Texten aus Bildern, gescannten Dokumenten und PDFs.
  • .NET OCR unterstützt mehr als 127 Sprachen weltweit.
  • IronOCR kann Text aus Bildern in vielen Dateiformaten lesen, darunter PNG, JPG, TIFF und PDF.
  • Text, strukturierte DatenjSON-Ausgabe, oder durchsuchbare PDFs aus extrahierten Informationen erstellt werden können.
  • IronOCR unterstützt .NET 5, 6 und 7 (Kern, Rahmen und Standard).
  • IronOCR unterteilt die Eingabe auf der Grundlage von Textbereichen in verschiedene Bilder. Sie verwendet Computer Vision um Bereiche zu identifizieren, die Textelemente enthalten.

3. Erstellen eines neuen Projekts in Visual Studio

Öffnen Sie Visual Studio und wählen Sie das Menü Datei. Wählen Sie "Neues Projekt" und dann "Konsolenanwendung".

Geben Sie den Projektnamen ein und wählen Sie den Pfad in dem entsprechenden Textfeld aus. Klicken Sie dann auf die Schaltfläche Erstellen. Wählen Sie das gewünschte .NET-Framework, wie in der folgenden Abbildung dargestellt:

Wie man Text aus einer Rechnung in C# Tutorial, Abbildung 1: Erstellen eines neuen Projekts in Visual Studio

Erstellen eines neuen Projekts in Visual Studio

Das Visual Studio-Projekt wird nun die Struktur für die Konsolenanwendung generieren. Danach wird die Datei Program.cs geöffnet, in der Sie den Quellcode schreiben und ausführen können.

How to Get Text From Invoice in C# Tutorial, Abbildung 2: Die program.cs-Datei aus dem Visual Studio New Project Wizard generiert

**Die vom Visual Studio-Assistenten für neue Projekte generierte Datei program.cs

4. IronOCR installieren

In Visual Studio können Sie IronOCR problemlos in Ihr C#-Projekt integrieren. IronOCR bietet mehrere Möglichkeiten zur Integration in ein C# .NET-Projekt. Hier werden wir eine davon besprechen: die Installation von IronOCR mit dem NuGet Package Manager.

Gehen Sie in Visual Studio zu Tools > NuGet Package Manager > Package Manager Console

How to Get Text From Invoice in C# Tutorial, Abbildung 3: Die Visual Studio NuGet Package Manager Konsole

Die Visual Studio NuGet-Paketmanager-Konsole

Nach dem Klicken erscheint eine neue Konsole am unteren Rand des Visual Studio-Fensters. Geben Sie den folgenden Befehl in die Konsole ein und drücken Sie die Eingabetaste.

Install-Package IronOcr

IronOCR wird in nur wenigen Sekunden installiert.

5. Datenextraktion aus Belegen mit IronOCR

IronOCR ist eine leistungsstarke OCR-Bibliothek, die zum Extrahieren und Abrufen von Daten mit Details aus Quittungen verwendet werden kann. Mit IronOCR können Sie eine Quittung abfotografieren und in maschinenlesbaren Text umwandeln, der leicht analysiert und verarbeitet werden kann, ohne den Datenschutz zu gefährden.

Das folgende Beispiel zeigt, wie Sie IronOCR verwenden können, um Text aus einer Quittung zu extrahieren und wie die OCR von Quittungen funktioniert.

using IronOcr;
using System;

IronTesseract ocrTesseract = new IronTesseract();

using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
    OcrResult ocrResult = ocrTesseract.Read(ocrInput);
    string RecognizedText = ocrResult.Text;

    Console.WriteLine(RecognizedText);
}
using IronOcr;
using System;

IronTesseract ocrTesseract = new IronTesseract();

using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
    OcrResult ocrResult = ocrTesseract.Read(ocrInput);
    string RecognizedText = ocrResult.Text;

    Console.WriteLine(RecognizedText);
}
Imports IronOcr
Imports System

Private ocrTesseract As New IronTesseract()

Using ocrInput As New OcrInput("ocr.png")
	Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
	Dim RecognizedText As String = ocrResult.Text

	Console.WriteLine(RecognizedText)
End Using
VB   C#

Bitte beachten Sie die Text aus Bild lesen Tutorial für weitere Einzelheiten darüber, wie IronOCR mit Hilfe der Programmiersprache C# Text aus Bildern liest.

Die Ausgabe des oben dargestellten Codes ist unten zu sehen:

- LOGO SHOP
- LOREM IPSUM
- DOLOR SITAMET CONSECTETUR
- ADIPISCING ELIT
- 1 LOREM IPSUM $3.20
- 2 ORNARE MALESUADA $9.50
- 3 PORTA FERMENTUM $5.90
- 4 SODALES ARCU $6.00
- 5 ELEIFEND $9.00
- 6 SEMNISIMASSA $0.50
- 7 DUIS FAMES DIS $7.60
- 8 FACILISIRISUS $810
- TOTAL AMOUNT $49.80
- CASH $50.00

6. Spezifische Datenextraktion aus dem Bild einer Quittung mit IronOCR

IronOCR ist eine leistungsstarke OCR-Bibliothek, die es Entwicklern ermöglicht, wichtige Informationen aus gescannten Quittungen zu gewinnen, z. B. den Steuerbetrag und den Händlernamen.

Hier ein Beispiel, wie Sie IronOCR verwenden können, um den Gesamtbetrag aus einem Quittungsbild zu extrahieren:

using IronOcr;
using System;

IronTesseract ocrTesseract = new IronTesseract();

ocrTesseract.Language = OcrLanguage.English;

// Code line to load the receipt image
using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
    // Optimize the input image for OCR
    ocrInput.DeNoise(true);
    ocrInput.Contrast();
    ocrInput.EnhanceResolution();
    ocrInput.ToGrayScale();

    OcrResult ocrResult = ocrTesseract.Read(ocrInput);

    // Search for the total price in the OCR result
    var totalPrice = ocrResult.Text.Contains("Total:") ? ocrResult.Text.Split("Total:")[1].Split("\n")[0] : "";
    Console.WriteLine("Total Price: " + totalPrice);
}
using IronOcr;
using System;

IronTesseract ocrTesseract = new IronTesseract();

ocrTesseract.Language = OcrLanguage.English;

// Code line to load the receipt image
using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
    // Optimize the input image for OCR
    ocrInput.DeNoise(true);
    ocrInput.Contrast();
    ocrInput.EnhanceResolution();
    ocrInput.ToGrayScale();

    OcrResult ocrResult = ocrTesseract.Read(ocrInput);

    // Search for the total price in the OCR result
    var totalPrice = ocrResult.Text.Contains("Total:") ? ocrResult.Text.Split("Total:")[1].Split("\n")[0] : "";
    Console.WriteLine("Total Price: " + totalPrice);
}
Imports Microsoft.VisualBasic
Imports IronOcr
Imports System

Private ocrTesseract As New IronTesseract()

ocrTesseract.Language = OcrLanguage.English

' Code line to load the receipt image
Using ocrInput As New OcrInput("ocr.png")
	' Optimize the input image for OCR
	ocrInput.DeNoise(True)
	ocrInput.Contrast()
	ocrInput.EnhanceResolution()
	ocrInput.ToGrayScale()

	Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)

	' Search for the total price in the OCR result
	Dim totalPrice = If(ocrResult.Text.Contains("Total:"), ocrResult.Text.Split("Total:")(1).Split(vbLf)(0), "")
	Console.WriteLine("Total Price: " & totalPrice)
End Using
VB   C#

Dank der zahlreichen Einstellungen, die das Programm ocrInput klasse ist es möglich, das Eingabebild zu optimieren, um die Genauigkeit des OCR-Prozesses zu verbessern.

Eingabe

How to Get Text From Invoice in C# Tutorial, Abbildung 4: Das Eingabebild, das zur Demonstration der Extraktion bestimmter Daten aus Quittungen verwendet wird

Das Eingangsbild, das zur Demonstration der Extraktion bestimmter Daten aus Quittungen verwendet wird

Ausgabe

- Total 16.5

7. Barcodes auf Quittungen lesen

IronOCR kann sowohl Barcodes auf Quittungen als auch Text lesen. Um Barcodes auf Quittungen mit IronOCR zu lesen, müssen Sie die barcodeLeser klasse in Kombination mit der readBarCodes methode.

Hier ein Beispiel dafür, wie Sie IronOCR zum Lesen von Strichcodes auf einem Quittungsbild verwenden können.

using IronOcr;
using System;

var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
using (var ocrInput = new OcrInput("b.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);
    foreach (var barcode in ocrResult.Barcodes)
    {
        Console.WriteLine(barcode.Value);
    }
}
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
using (var ocrInput = new OcrInput("b.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);
    foreach (var barcode in ocrResult.Barcodes)
    {
        Console.WriteLine(barcode.Value);
    }
}
Imports IronOcr
Imports System

Private ocrTesseract = New IronTesseract()
ocrTesseract.Configuration.ReadBarCodes = True
Using ocrInput As New OcrInput("b.png")
	Dim ocrResult = ocrTesseract.Read(ocrInput)
	For Each barcode In ocrResult.Barcodes
		Console.WriteLine(barcode.Value)
	Next barcode
End Using
VB   C#

Eingabe Bild

How to Get Text From Invoice in C# Tutorial, Abbildung 4: Input for Reading Barcode

Eingang für das Lesen von Barcodes

Text ausgeben

How to Get Text From Invoice in C# Tutorial, Abbildung 5: Das Ergebnis der Verarbeitung des Barcode-Bildes

Das Ergebnis der Verarbeitung des Barcode-Bildes

8. Schlussfolgerung

Der obige Artikel erklärt die Installation und Verwendung von IronOCR in einem C#-Projekt, um Daten aus Quittungen zu extrahieren, und enthält ein Beispiel-Code-Snippet.

Bitte lesen Sie die Anleitung auf lesen von Text aus Bildern.

IronOCR ist ein Teil des Iron Suitedie fünf verschiedene .NET-Bibliotheken zur Bearbeitung von Dokumenten und Bildern enthält. Sie können kaufen Sie die gesamte Iron Suite für den Preis von nur zwei IronOCR-Lizenzen.

Testen Sie IronOCR in Ihren Produktionsanwendungen mit einer kostenloser Test.

< PREVIOUS
OCR von Nummernschildern in C# (Anleitung)
NÄCHSTES >
Wie OCR Text aus einem Screenshot in C# abrufen kann

Sind Sie bereit, loszulegen? Version: 2024.10 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 2,561,036 Lizenzen anzeigen >