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 .NET-Programmierern 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 nutzt viele optische Zeichenerkennungstechniken. Wir können es auf Windows-PCs, Linux-Systemen, macOS-Systemen 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 entsprechend Ihren Bedürfnissen auswählen. Für eine reibungslose Benutzererfahrung 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 zum Bild 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 gebe dem Projekt den Namen "ChineseOCR" . Klicken Sie nach der Namenseingabe 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 bestehende 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 erläutert.

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", bewegen Sie den Mauszeiger im Dropdown-Menü über "NuGet Package Manager" und wählen Sie dann "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 zum Reiter "Durchsuchen" und suchen Sie nach IronOCR Chinese. Wählen Sie das passende Paket aus den Suchergebnissen aus und klicken Sie auf die Schaltfläche "Installieren", um es zu installieren.
Chinese Ocr 6 related to Verwendung des NuGet Package Managers
  • Die Installation der Bibliothek wird gestartet. 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. Die IronOCR-Bibliothek kann auch über die Paket-Manager-Konsole installiert werden. Befolgen Sie die angegebenen Schritte, um die IronOCR-Bibliothek zu installieren:

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

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

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. Zuerst müssen wir das Frontend zur Auswahl der Bilddatei entwickeln. Schauen wir uns an, wie das geht.

Entwicklung des Frontends

Wir werden die "Toolbox"-Elemente verwenden, um das Frontend zu entwerfen. Wir erstellen einen Button, ein PictureBox-Feld, ein Rich-Text-Feld und zwei Labels. Wir werden diese Elemente aus der Toolbox per Drag & Drop in das Windows-Formular einfügen. Wir werden diese Elemente stilvoll umsetzen.

Mit der Schaltfläche kann die Bilddatei vom PC ausgewählt werden. Das Bildfeld lädt die ausgewählte Bilddatei, und das Rich-Textfeld zeigt den Ausgabetext an. Sie können die Größe jedes Elements Ihren Bedürfnissen entsprechend 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 Fenster so ausgerichtet, dass sie sich in der Mitte des Bildschirms befinden. Dieser Bildschirm wird also in der Mitte angezeigt.

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

Backend-Code für IronOCR

Wir müssen zuerst den IronOCR-Namensraum importieren, um ihn in unserem Code verwenden zu können. Schreiben Sie die folgende Zeile oben in die Datei:

using IronOCR;
using IronOCR;
$vbLabelText   $csharpLabel

Wir verwenden die Schaltfläche "Bild auswählen", um das Bild auszuwählen und es in die Bildbox zu laden. IronOCR verarbeitet das Bild des vereinfachten chinesischen Textes und zeigt den Ausgabetext im Rich-Text-Feld an. Fügen wir der Schaltfläche die Funktionalität hinzu, indem wir auf die Schaltfläche doppelklicken. 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;
        }
    }
}
$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 das Bildfeld geladen. Wir verwenden Bitmap() zum Drucken von Bildern in der PictureBox. Anschließend wandelt IronOCR die Bilder in chinesischen Text um. Wir haben Ocr eingestellt. Sprache zu ChinesischTraditionell, um Text in traditionellem Chinesisch zu erkennen. Ocr. Die Lesefunktion liest den Prozess und speichert das OCR-Ergebnis in der Variable "Result". Wenn Sie den Text im PDF-, Text- oder HTML-Format speichern möchten, verwenden Sie die Funktion "SaveAs", um die Datei in dem 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". Dadurch 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

Es lädt das Bild in das Bildfeld, scannt es automatisch und zeigt das Ergebnis im Textfeld an.

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 mit IronOCR Text zu scannen und zu erkennen. Dies kann auch in verschiedenen Sprachen erfolgen. IronOCR kann aus einem bestehenden PDF-Dokument ein durchsuchbares PDF machen. IronOCR verfügt über zahlreiche Bildfilter, um die Bilder klarer darzustellen und verständlicher zu machen. Hier sind die Filter:

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

Alle diese Funktionen erhöhen die Sichtbarkeit der Zeichen. IronOCR nutzt diese Funktionen, um ein durchsuchbares PDF zu erstellen und zu löschen. Schauen wir uns an, wie das gehen 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");
}
$vbLabelText   $csharpLabel

Lizenzierung

IronOCR ist kostenlos für die Entwicklung. Sie können alle Funktionen kostenlos aktiv nutzen. IronOCR bietet außerdem eine kostenlose Testversion für die Produktion an, für die keine Zahlung erforderlich ist. Iron Software bietet derzeit auch ein beliebtes Angebot an – eine Suite aus fünf Softwareprodukten zum Preis von nur zwei. Sie zahlen einfach einmal die Gebühr für zwei Softwareprodukte und erhalten dann alle fünf Produkte, einschließlich IronPDF und IronXL. Unter diesem Link finden Sie weitere Informationen zur Lizenzierung.