Wie man Eingabebilder für die OCR-Verarbeitung in C# verwendet

How to Read from Streams

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

Stream-Daten beziehen sich auf einen kontinuierlichen Fluss von Binärinformationen, die gelesen oder geschrieben werden können. Im Kontext von Programmierung und Datenverarbeitung werden Streams verwendet, um Daten effizient zu verarbeiten, die zu groß sind, um vollständig im Speicher zu passen. Streams ermöglichen es, Daten in kleineren, handhabbaren Blöcken zu lesen oder zu schreiben.

Die Importmethoden von IronOCR akzeptieren auch Datenstreams von Bildern, die importiert und gelesen werden sollen. Dies kann einfach durch Übergeben der Stream-Daten an eine der Importmethoden erfolgen. Die Methode übernimmt alle notwendigen Schritte, um das Bild zu importieren.

Schnellstart: Verwenden Sie einen Stream für OCR-Eingaben in Sekunden

Dieses einfache Beispiel zeigt, wie OCR sofort gestartet werden kann, indem ein System.IO.Stream in IronOCR eingespeist wird, sodass Dateipfade übersprungen werden und mit minimalem Setup und Code direkt zu erkanntem Text gesprungen wird.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. Copy and run this code snippet.

    using var input = new IronOcr.OcrInput(stream);
    var result = new IronOcr.IronTesseract().Read(input);
  3. Deploy to test on your live environment

    Start using IronOCR in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

Minimaler Arbeitsablauf (5 Schritte)

  1. Laden Sie eine C#-Bibliothek zum Lesen von Streams herunter
  2. Erhalten und bereiten Sie die Bild-Stream-Daten vor
  3. Übergeben Sie den Bildstream an den OcrImageInput-Konstruktor, um das Bild zu importieren
  4. Verwenden Sie die Read-Methode, um OCR durchzuführen
  5. Definieren Sie den Lesebereich, indem Sie den Zuschnittsbereich angeben


Beispiel für das Lesen von Streams

Zuerst instanziieren Sie die IronTesseract-Klasse, um OCR durchzuführen. Verwenden Sie die FromFile-Methode von AnyBitmap, um die Bilddatei zu importieren. Dieses AnyBitmap-Objekt kann die Bilddaten in einen Stream konvertieren. Verwenden Sie als Nächstes die using-Anweisung, um das OcrImageInput-Objekt zu erstellen, indem Sie den Bildstream mit der GetStream-Methode des AnyBitmap-Objekts übergeben. Verwenden Sie schließlich die Read-Methode, um OCR durchzuführen.

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

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Read image file to AnyBitmap
AnyBitmap anyBitmap = AnyBitmap.FromFile("Potter.tiff");

// Import image stream
using var imageInput = new OcrImageInput(anyBitmap.GetStream());
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
Imports IronOcr
Imports IronSoftware.Drawing

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Read image file to AnyBitmap
Private anyBitmap As AnyBitmap = AnyBitmap.FromFile("Potter.tiff")

' Import image stream
Private imageInput = New OcrImageInput(anyBitmap.GetStream())
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
$vbLabelText   $csharpLabel

Scanbereich angeben

Um die Leistung bei großen Bildern zu verbessern und spezifische Lesungen aus bestimmten Regionen zu erhalten, können Sie die CropRectangle-Klasse nutzen. Der OcrImageInput-Konstruktor akzeptiert ein CropRectangle-Objekt als zweiten Parameter. Dies ermöglicht es Ihnen, festzulegen, welcher Bereich des Bilddokuments gelesen werden soll. Im folgenden Codebeispiel gebe ich an, dass nur der Kapitelnummern- und Titelbereich gelesen werden soll.

:path=/static-assets/ocr/content-code-examples/how-to/input-streams-read-specific-region.cs
using IronOcr;
using IronSoftware.Drawing;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Read image file to AnyBitmap
AnyBitmap anyBitmap = AnyBitmap.FromFile("Potter.tiff");

// Specify crop region
Rectangle scanRegion = new Rectangle(800, 200, 900, 400);

// Add image
using var imageInput = new OcrImageInput(anyBitmap.GetStream(), ContentArea: scanRegion);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Output the result to console
Console.WriteLine(ocrResult.Text);
Imports IronOcr
Imports IronSoftware.Drawing
Imports System

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Read image file to AnyBitmap
Private anyBitmap As AnyBitmap = AnyBitmap.FromFile("Potter.tiff")

' Specify crop region
Private scanRegion As New Rectangle(800, 200, 900, 400)

' Add image
Private imageInput = New OcrImageInput(anyBitmap.GetStream(), ContentArea:= scanRegion)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)

' Output the result to console
Console.WriteLine(ocrResult.Text)
$vbLabelText   $csharpLabel

OCR-Ergebnis

class="content-img-align-center">
class="center-image-wrapper"> Speziellen Bereich lesen

Häufig gestellte Fragen

Wie kann ich Bildstreams für OCR-Verarbeitung in .NET C# lesen?

In .NET C# können Sie die Importmethoden von IronOCR nutzen, um Bildstreams zu lesen, indem Sie die Streamdaten in den OcrImageInput-Konstruktor übergeben. Diese Methode bearbeitet die Bilddaten effizient für die OCR-Verarbeitung.

Was ist der Vorteil der Verwendung von Streams für OCR in IronOCR?

Die Verwendung von Streams ermöglicht es IronOCR, große Bilddateien effizient zu verarbeiten, indem die Daten in kleinere, handhabbare Stücke aufgeteilt werden. Dieser Ansatz optimiert den Speicherverbrauch und beschleunigt den OCR-Prozess.

Wie gebe ich eine Region eines Bildes an, die für OCR in C# gelesen werden soll?

Um eine Region eines Bildes für OCR mit IronOCR anzugeben, können Sie die CropRectangle-Klasse verwenden. Geben Sie dies als Parameter an den OcrImageInput-Konstruktor, um sich auf einen bestimmten Bereich des Bildes zu konzentrieren.

Kann IronOCR Echtzeit-Bildstream-OCR verarbeiten?

Ja, IronOCR kann Echtzeit-Bildstream-OCR verarbeiten, indem es kontinuierlich Bilddatenströme verarbeitet, sobald sie empfangen werden. Diese Funktion ist vorteilhaft für Anwendungen, die sofortige Texterkennung erfordern.

Wie kann ich die OCR-Leistung bei großen Bildern verbessern?

Um die OCR-Leistung bei großen Bildern mit IronOCR zu verbessern, geben Sie einen Abtastbereich mit der CropRectangle-Klasse an, um die Verarbeitung auf relevante Bereiche zu beschränken, wodurch die Menge der zu analysierenden Daten reduziert wird.

Welche Rolle spielt der OcrImageInput-Konstruktor in IronOCR?

Der OcrImageInput-Konstruktor in IronOCR wird verwendet, um Bildstreams zu importieren und optional einen spezifischen Bereich für die OCR-Verarbeitung festzulegen. Er vereinfacht den Prozess der Bildvorbereitung für die Textextraktion.

Wie funktioniert die Read-Methode in IronOCR?

Die Read-Methode in IronOCR führt den Optische Zeichenerkennungsprozess auf dem bereitgestellten Bildstream aus. Sie extrahiert Text aus den Bilddaten und gibt die erkannten Zeichen zurück.

Chaknith Bin
Software Ingenieur
Chaknith arbeitet an IronXL und IronBarcode. Er hat umfassende Expertise in C# und .NET und hilft, die Software zu verbessern und Kunden zu unterstützen. Seine Einblicke aus Benutzerinteraktionen tragen zu besseren Produkten, Dokumentationen und einem insgesamt besseren Erlebnis bei.
Rezensiert von
Jeff Fritz
Jeffrey T. Fritz
Principal Program Manager - .NET Community Team
Jeff ist außerdem Principal Program Manager für das .NET- und Visual Studio-Team. Er ist der ausführende Produzent der .NET Conf Virtual Conference Series und moderiert ‚Fritz and Friends‘, einen Livestream für Entwickler, der zweimal wöchentlich ausgestrahlt wird. Dort spricht er über Technik und schreibt gemeinsam mit den Zuschauern Code. Jeff schreibt Workshops, Präsentationen und plant Inhalte für die größten Microsoft-Entwicklerveranstaltungen, einschließlich Microsoft Build, Microsoft Ignite, .NET Conf und dem Microsoft MVP Summit.
Bereit anzufangen?
Nuget Downloads 5,044,537 | Version: 2025.11 gerade veröffentlicht