Chinese OCR in C#; und .NET

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

Andere Versionen dieses Dokuments:

IronOCR ist eine C#-Softwarekomponente, die es Entwicklern von .NET ermöglicht, Text aus Bildern und PDF-Dokumenten in 126 Sprachen, einschließlich Chinesisch, zu lesen. Das chinesische Sprachpaket enthält sowohl vereinfachte chinesische als auch traditionelle chinesische Zeichen.

Es ist eine fortgeschrittene Abzweigung von Tesseract, die exklusiv für .NET-Entwickler entwickelt wurde und regelmäßig andere Tesseract-Engines sowohl in Geschwindigkeit als auch in Genauigkeit übertrifft. Die Bibliothek ermöglicht die Erkennung von Bildern und Dokumenten in verschiedenen Formaten und in verschiedenen Sprachen, einschließlich Chinesisch. Es unterstützt über 125 Sprachen und bietet ein hohes Maß an Erkennungsgenauigkeit im Vergleich zur Konkurrenz. Die API von IronOCR wurde mit Blick auf Erweiterbarkeit und Anpassung entworfen. Sie können IronOCR dabei helfen, einen hohen Durchsatz und eine hohe Genauigkeit zu erreichen, indem Sie Ihre Tuning-Daten oder Funktionen zum Tracker hinzufügen. IronOCR verwendet viele optische Zeichenerkennungsverfahren. Wir können sie auf einem Windows-PC, Linux, macOS und anderen bekannten Plattformen verwenden.

Inhalt von IronOcr.Languages.Chinese

Dieses Paket enthält 352 OCR-Sprachen für .NET:

  • ChineseSimplified
  • ChineseSimplifiedBest
  • ChineseSimplifiedFast
  • ChineseSimplifiedVertical
  • ChineseSimplifiedVerticalBest
  • ChineseSimplifiedVerticalFast
  • ChineseTraditional
  • ChineseTraditionalBest
  • ChineseTraditionalFast
  • ChineseTraditionalVertical
  • ChineseTraditionalVerticalBest
  • ChineseTraditionalVerticalFast

Download

Wir können das chinesische Sprachpaket [中文 (Zhōngwén)] von den folgenden Links herunterladen:

Verwendung von IronOCR für die chinesische Sprache

Ein C# Projekt erstellen oder öffnen

Um mit IronOCR zu beginnen, müssen wir ein C# .NET-Projekt erstellen. Wir verwenden Visual Studio 2022 hierfür. Sie können eine Version wählen, die Ihren Bedürfnissen entspricht. Für ein reibungsloses Arbeiten wird die neueste Version von Visual Studio empfohlen. Wir werden eine GUI-Schnittstelle erstellen, um das Bild auszuwählen. Wir können IronOCR auch in einer Konsolenanwendung verwenden, indem wir den direkten Pfad des Bildes angeben. Befolgen Sie die folgenden Schritte, um ein C# Projekt in Visual Studio 2022 zu erstellen:

  • Öffnen Sie Visual Studio 2022.
  • Klicken Sie auf die Schaltfläche "Ein neues Projekt erstellen".
Chinese Ocr 1 related to Ein C# Projekt erstellen oder öffnen
  • Schreiben Sie "Windows" in die Suchleiste, wählen Sie die "Windows Form" Applikation aus den Suchergebnissen und klicken Sie auf die Schaltfläche "Weiter".
Chinese Ocr 2 related to Ein C# Projekt erstellen oder öffnen
  • Geben Sie dem Projekt einen Namen. Ich weise dem Projekt den Namen "ChineseOCR" zu. Klicken Sie nach dem Namen auf die Schaltfläche "Weiter".
Chinese Ocr 3 related to Ein C# Projekt erstellen oder öffnen
  • Wählen Sie das .NET-Framework auf dem nächsten Bildschirm. Wählen Sie das .NET Framework entsprechend den Anforderungen Ihres Projekts. Wir wählen die .NET 5.0 Version für dieses Tutorial.
Chinese Ocr 4 related to Ein C# Projekt erstellen oder öffnen
  • Nach der Auswahl klicken Sie auf die Schaltfläche "Erstellen". Es wird das C# Windows Form-Projekt in Visual Studio mühelos erstellen.

Das Projekt wurde erstellt und kann nun in der IronOCR-Bibliothek verwendet werden. Wir können auch das bereits vorhandene C#-Projekt verwenden. Öffnen Sie das Projekt und starten Sie die Installation der IronOCR-Bibliothek. Im folgenden Abschnitt werden die Methoden zur Installation der IronOCR-Bibliothek in C#-Projekten untersucht.

Installation

Verwendung des NuGet Package Managers

Um die IronOCR Bibliothek mit dem NuGet Package Manager zu installieren, müssen wir die NuGet Package Manager-Oberfläche öffnen. Befolgen Sie die folgenden Schritte, um die IronOCR-Bibliothek zu installieren:

  • Klicken Sie im Hauptmenü auf "Tools", wählen Sie im Dropdown-Menü den Punkt "NuGet Package Manager" und wählen Sie "Manage NuGet Package Manager for Solution"
Chinese Ocr 5 related to Verwendung des NuGet Package Managers
  • Dies öffnet die NuGet Package Manager-Oberfläche. Gehen Sie auf die Registerkarte Durchsuchen und suchen Sie nach IronOCR Chinese. Wählen Sie das richtige Paket aus den Suchergebnissen und klicken Sie auf die Schaltfläche "Installieren", um es zu installieren.
Chinese Ocr 6 related to Verwendung des NuGet Package Managers
  • Sie wird mit der Installation der Bibliothek beginnen. Nach der Installation können Sie die IronOCR-Bibliothek in Ihrem Projekt verwenden.

Verwendung der Package Manager Console

Die Verwendung einer Konsole ist immer eine einfache Option. Wir können die IronOCR-Bibliothek auch über die Paketmanager-Konsole installieren. Folgen Sie den angegebenen Schritten, um die IronOCR-Bibliothek zu installieren:

  • Öffnen Sie die Package Manager Console in Visual Studio. Sie befindet sich normalerweise unten in Visual Studio.
  • Schreiben Sie den folgenden Befehl in die Konsole:

    Install-Package IronOCR.Languages.Chinese
  • Sie sehen den Installationsfortschritt der Bibliothek in der Konsole. Es wird die Bibliothek automatisch installieren. Nach der Installation wird unser Projekt für die IronOCR-Bibliothek bereit sein.

Code-Beispiel: OCR für die chinesische Sprache

Jetzt ist es an der Zeit, den Code für die Implementierung der IronOCR-Bibliothek für die chinesische Sprache zu schreiben. Zunächst müssen wir das Frontend für die Auswahl der Bilddatei entwickeln. Schauen wir uns an, wie wir dies tun können.

Entwicklung des Frontends

Wir werden die "Toolbox"-Elemente verwenden, um das Frontend zu entwerfen. Wir werden eine Schaltfläche, eine Picture Box, eine Rich Textbox und zwei Beschriftungen erstellen. Wir werden diese Elemente per Drag & Drop aus der Toolbox ziehen und im Fensterformular platzieren. Wir werden diese Elemente stilgerecht behandeln.

Die Schaltfläche wird für die Auswahl der Bilddatei auf dem PC verwendet. Picture Box lädt die ausgewählte Bilddatei, und Rich Textbox zeigt den Ausgabetext an. Sie können die Größe der einzelnen Elemente nach Ihren Bedürfnissen anpassen. Das endgültige Frontend-Design wird so aussehen:

Chinese Ocr 7 related to Entwicklung des Frontends

Dieses Fenster wird erscheinen, wenn Sie das Projekt ausführen. Wir haben die Ausrichtung der Fenster so festgelegt, dass sie in der Mitte des Bildschirms erscheinen. Dieser Bildschirm wird also in der Mitte erscheinen.

Unser Frontend ist bereit. Als Nächstes ist es an der Zeit, die Backend-Funktionalität der Schaltfläche hinzuzufügen.

Backend-Code für IronOCR

Wir müssen zunächst den IronOCR-Namensraum importieren, um ihn in unserem Code verwenden zu können. Schreiben Sie die folgende Zeile an den Anfang der Datei:

using IronOCR;
using IronOCR;
Imports IronOCR
$vbLabelText   $csharpLabel

Wir werden die Schaltfläche "Bild auswählen" für die Auswahl des Bildes und das Laden des Bildes in die Picture Box verwenden. IronOCR verarbeitet das vereinfachte chinesische Textbild und zeigt den Ausgabetext in der Rich Text Box an. Fügen wir die Funktionalität der Schaltfläche durch einen Doppelklick auf die Schaltfläche hinzu. Schreiben Sie die folgenden Codezeilen, um die beschriebene Funktionalität hinzuzufügen:

private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
Private Sub btn_image_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim open As New OpenFileDialog()
	If open.ShowDialog() = DialogResult.OK Then
		' display image in picture box  
		img_image.Image = New Bitmap(open.FileName)

		Dim Ocr = New IronTesseract()

Ocr.Language = OcrLanguage.ChineseTraditional

Using Input = New OcrInput(open.FileName)
			Dim Result = Ocr.Read(Input)

			txt_output.Text = Result.Text
End Using
	End If
End Sub
$vbLabelText   $csharpLabel

Wenn ein Benutzer auf den Button klickt, erscheint ein Dialog, um das Bild auszuwählen. Wenn der Benutzer das Bild auswählt, wird es automatisch in den Bildrahmen geladen. Wir verwenden Bitmap() zum Drucken von Bildern im Bildrahmen. Danach wird IronOCR die Bilder in chinesischen Text umwandeln. Wir setzen Ocr. Sprache in ChineseTraditional, um Text in traditionellem Chinesisch zu erkennen. Ocr. Die Lesefunktion liest den Prozess und speichert das OCR-Ergebnis in der Variablen "Ergebnis". Wenn Sie den Text im PDF-, Text- oder HTML-Format speichern müssen, verwenden Sie die Funktion SaveAs, um die Datei in jedem gewünschten Ausgabeformat zu speichern - IronOCR unterstützt mehrere Ausgabeformate.

Projekt ausführen

Jetzt führen wir das Projekt aus. Klicken Sie in Visual Studio auf "Ausführen". Wir werden diesen Bildschirm auf unserem Bildschirm sehen.

Chinese Ocr 8 related to Projekt ausführen

Klicken Sie auf die Schaltfläche "Bild auswählen". Es wird das Dialogfeld Dateien auswählen geöffnet. Wählen Sie eine Bilddatei aus und drücken Sie die Eingabetaste.

Chinese Ocr 9 related to Projekt ausführen

Sie wird in die Bildbox geladen, das Bild automatisch gescannt und die Ausgabe in der Textbox angezeigt.

Chinese Ocr 10 related to Projekt ausführen

Dies ist die Ausgabe des von uns ausgewählten Bildes. IronOCR unterstützt auch das Lesen und Scannen von PDF-Dateien. Wir können das bearbeitbare Format von PDF-Dateien nutzen, um Text mit IronOCR zu scannen und zu erkennen. Dies kann auch in anderen Sprachen erfolgen. IronOCR kann das vorhandene PDF-Dokument in eine durchsuchbare PDF-Datei umwandeln. IronOCR verfügt über zahlreiche Bildfilter, um die Bilder übersichtlich und verständlich zu gestalten. Hier sind die Filter:

  • Input.Binarize()
  • Input.Contrast()
  • Input.Deskew()
  • Input.DeNoise()
  • Input.Dilate()
  • Input.EnhanceResolution(300)

All diese Funktionen erhöhen die Sichtbarkeit der Zeichen. IronOCR nutzt diese Funktionen, um eine durchsuchbare PDF-Datei zu erstellen und zu löschen. Werfen wir einen Blick darauf, wie dies erreicht werden kann:

using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
	Input.AddPdf("scan.pdf") Input.Deskew()
	Dim Result = Ocr.Read(Input)
	Result.SaveAsSearchablePdf("searchable.pdf")
End Using
$vbLabelText   $csharpLabel

Lizenzierung

IronOCR ist kostenlos für die Entwicklung. Sie können alle Funktionen aktiv und kostenlos nutzen. IronOCR bietet auch eine kostenlose Testversion für die Produktion an, ohne dass eine Zahlung erforderlich ist. Iron Software bietet derzeit auch ein beliebtes Angebot an - eine Suite von fünf Softwareprodukten zum Preis von nur zwei. Bezahlen Sie einfach einmalig die Gebühr für zwei Softwareprodukte, und Sie erhalten alle fünf Produkte, einschließlich IronPDF und IronXL. Weitere Informationen über die Lizenzierung finden Sie unter diesem Link.