IRONSOFTWAREHOME

Bilder lesen in C# mit IronOCR

Curtis Chau
Curtis Chau
Updated: 4. Juni 2026

IronOCR extrahiert Texte aus Bildern in JPG, PNG, GIF, TIFF und BMP Formaten mithilfe der optischen Zeichenerkennungstechnologie. Die grundlegende Textextraktion erfordert nur eine Zeile Code nach der Installation des NuGet-Pakets.

Die OCR-Technologie (Optical Character Recognition) erkennt und extrahiert Text aus Bildern. Es digitalisiert gedruckte Dokumente, indem es Textinhalte aus gescannten Seiten, Fotos oder anderen Bilddateien extrahiert. IronOCR verwendet fortschrittliche Algorithmen des maschinellen Lernens aus Tesseract 5 in Kombination mit einer proprietären Bildvorverarbeitung für eine branchenführende Genauigkeit.

Die Bibliothek unterstützt jpg, png, gif, tiff und bmp Formate. Bildfilter verbessern die Lesefähigkeit durch automatische Korrektur gängiger Qualitätsprobleme. IronOCR kombiniert Tesseract 5 mit fortschrittlicher Vorverarbeitung, um genaue Ergebnisse für verschiedene Bildqualitäten und -formate zu liefern, von hochauflösenden Scans bis zu komprimierten Webbildern.

Schnellstart: Lesen einer Bilddatei mit IronOCR

Extrahieren von Text aus einem Bild mit einer Zeile Code. Dieses Beispiel lädt ein Bild und liest dessen Text mithilfe der Read Methode auf IronTesseract. Die Bibliothek übernimmt automatisch die Vorverarbeitung von Bildern und die Textextraktion.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    var result = new IronTesseract().Read(new OcrImageInput("Potter.png"));
    C#
  3. 3Bereitstellen 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 Bilder mit IronOCR?

Beginnen Sie mit der Instanziierung der IronTesseract Klasse. Verwenden Sie die 'using'-Anweisung, um ein OcrImageInput Objekt mit dem Bilddateipfad zu erstellen. Dies gewährleistet eine angemessene Ressourcenverwendung. IronOCR unterstützt die Formate jpg, png, gif, tiff und bmp. Führen Sie OCR mit der Read Methode aus. Die Bibliothek erkennt automatisch das Bildformat und führt eine entsprechende Vorverarbeitung durch.

Für neue Benutzer gibt es die Installationsanleitung für Windows oder NuGet-Paketoptionen. Für die plattformübergreifende Entwicklung siehe Linux-Einrichtung oder macOS-Installation.

Hinweis::

Ab Version 2025.6:

  • Das Laden von TIFF-Bildern liefert jetzt konsistent schnellere Leistung.
  • Das Lesen von TIFF-Bildern zeigt Leistungsverbesserungen, die von der GPU des Computers abhängen. Einige Benutzer erleben bis zu doppelte Geschwindigkeit, während andere möglicherweise eine Leistung ähnlich wie bei früheren Versionen sehen )}]
/* :path=/static-assets/ocr/content-code-examples/how-to/input-images-read.cs */
using IronOcr;

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

// Add image
using var imageInput = new OcrImageInput("Potter.png");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Display the extracted text
Console.WriteLine(ocrResult.Text);

// Get confidence level
double confidence = ocrResult.Confidence;
Console.WriteLine($"Confidence: {confidence}%");
IronOCR Demo zur Textextraktion: Harry-Potter-Seitenbild im Code-Editor in einfachen Text umgewandelt

Besuchen Sie How to Read Multi-Frame/Page GIFs and TIFFs für das Lesen von TIFF und GIF Bildern. Für mehrere Seiten siehe das Multipage TIFF processing example.

Warum ist der Vertrauensgrad wichtig?

Die Vertrauensstufe gibt an, wie sicher IronOCR die Genauigkeit des extrahierten Textes einschätzt. Werte über 85 % weisen im Allgemeinen auf zuverlässige Ergebnisse hin. Niedrigere Punktzahlen können eine Bildvorverarbeitung oder eine manuelle Überprüfung erfordern. Verwenden Sie Konfidenzwerte, um Dokumente automatisch für die menschliche Überprüfung zu kennzeichnen oder zusätzliche Bildoptimierungsfilter auszulösen.

Wann sollte ich verschiedene Bildformate verwenden?

Die Formate PNG und TIFF liefern aufgrund der verlustfreien Komprimierung die besten OCR-Ergebnisse. Verwenden Sie PNG für einseitige Dokumente und TIFF für mehrseitige Scans. JPEG eignet sich gut für Fotos, kann aber zu Kompressionsartefakten führen. BMP bietet unkomprimierte Qualität, aber größere Dateigrößen. GIF eignet sich für einfache Grafiken mit begrenzten Farben. Erfahren Sie mehr über formatspezifische Optimierung .

Was sind häufige Fehler beim Lesen von Bildern?

Zu den häufigsten Fehlern gehören eine niedrige Bildauflösung (unter 200 DPI), schiefer Text, schlechter Kontrast oder nicht unterstützte Sprachen. IronOCR bietet für viele Probleme eine automatische Korrektur, aber schwerwiegende Probleme können eine manuelle Vorverarbeitung erfordern. In unserem Leitfaden zur Fehlerbehebung finden Sie Lösungen.

Wie kann ich Bilder als Bytes importieren?

Die OcrImageInput Klasse akzeptiert Bilder als Dateipfade, Bytes, AnyBitmap, Stream oder Image Objekte. AnyBitmap is a bitmap object from IronSoftware.Drawing.AnyBitmap. Diese Flexibilität ermöglicht eine nahtlose Integration mit verschiedenen Datenquellen wie Datenbanken, Web-APIs und Cloud-Speicher.

Diese Flexibilität hilft bei der Arbeit mit Bildern aus Datenbanken, Webdiensten oder Memory-Streams. Für fortgeschrittene Stream-Verarbeitung siehe OCR mit Input-Streams. Der System.Drawing-Integrationsleitfaden bietet zusätzliche Beispiele für die Kompatibilität von Legacy-Code.

using IronOcr;
using System.IO;

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

// Read byte from file
byte[] data = File.ReadAllBytes("Potter.tiff");

// Import image byte
using var imageInput = new OcrImageInput(data);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

Wann sollte ich Byte-Arrays anstelle von Dateipfaden verwenden?

Byte-Arrays funktionieren am besten, wenn die Bilder aus Datenbanken, Webdiensten oder verschlüsselten Quellen stammen. Sie bieten mehr Sicherheit, da die Dateien nicht auf der Festplatte zwischengespeichert werden müssen. Verwenden Sie Byte-Arrays für Cloud-Anwendungen, Microservices oder bei der Verarbeitung sensibler Dokumente. Dateipfade bleiben für die lokale Stapelverarbeitung großer Bildsammlungen effizienter.

using IronOcr;
using IronSoftware.Drawing;
using System.IO;

// Method 1: From URL
var imageFromUrl = AnyBitmap.FromUri("https://example.com/document.jpg");
using var urlInput = new OcrImageInput(imageFromUrl);

// Method 2: From Stream
using var fileStream = File.OpenRead("document.png");
using var streamInput = new OcrImageInput(fileStream);

// Method 3: From System.Drawing (with IronSoftware.Drawing)
var bitmap = AnyBitmap.FromFile("scan.bmp");
using var bitmapInput = new OcrImageInput(bitmap);

// Process any of these inputs
IronTesseract ocr = new IronTesseract();
OcrResult result = ocr.Read(bitmapInput);

Warum ist die Speicherverwaltung für Bildbytes wichtig?

Große Bilder verbrauchen viel Speicherplatz, insbesondere wenn mehrere Dokumente gleichzeitig verarbeitet werden. Durch die Verwendung von "using"-Anweisungen wird eine ordnungsgemäße Ressourcenverwendung sichergestellt. Für die Stapelverarbeitung ist die Implementierung eines Warteschlangensystems mit begrenzten gleichzeitigen Operationen zu erwägen. Der Multithreading-Leitfaden demonstriert effiziente Speicherverwaltungstechniken.

Welche Auswirkungen haben die verschiedenen Eingabearten auf die Leistung?

Dateipfade bieten die schnellste Leistung für lokale Dateien, da IronOCR die Daten direkt liest. Byte-Arrays erfordern das Laden ganzer Bilder in den Speicher, bieten aber Flexibilität. Streams sorgen durch inkrementelles Lesen von Daten für ein Gleichgewicht zwischen Speichernutzung und Leistung. Für optimale Leistung bei großen Stapeln siehe unseren Leitfaden zur Leistungsoptimierung.

Wie lege ich eine Scan-Region fest?

Übergeben Sie eine CropRectangle, wenn Sie OcrImageInput instanziieren, um festzulegen, welcher Bildbereich verarbeitet werden soll. Die Begrenzung des Scanbereichs verbessert die Leistung erheblich. Im folgenden Beispiel sind nur die Kapitelnummer und der Titel zu lesen. Mit dieser Technik lässt sich die Bearbeitungszeit um bis zu 90 % reduzieren, wenn man sich auf bestimmte Dokumentbereiche konzentriert.

Für komplexe Layouts oder mehrere Regionen, siehe OCR Region of an Image. Das Handbuch für Inhaltsbereiche erklärt fortgeschrittene Techniken zur Auswahl von Bereichen.

using IronOcr;
using IronSoftware.Drawing;
using System;

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

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

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

// Output the result to console
Console.WriteLine(ocrResult.Text);

Warum verbessert die Angabe von Regionen die Leistung?

Die Verarbeitung nur relevanter Bildbereiche reduziert den Rechenaufwand um 60-90 %. OCR-Engines analysieren jedes Pixel im Eingabebereich, sodass kleinere Regionen eine schnellere Verarbeitung bedeuten. Dieser Ansatz verbessert auch die Genauigkeit, indem er mögliche Störungen durch Kopf- und Fußzeilen oder dekorative Elemente außerhalb des Zieltextbereichs eliminiert.

Demo des OCR-Scanbereichs mit roten Rechtecken, die den Titel von Kapitel 8 sowohl im Quellbild als auch in der Debug-Ausgabe hervorheben

Wann sollte ich mehrere Scanbereiche verwenden?

Verwenden Sie mehrere Regionen für Dokumente mit unterschiedlichen Textbereichen wie Formulare, Rechnungen oder mehrspaltige Layouts. Bearbeiten Sie jede Region separat, um einen logischen Textfluss zu gewährleisten. Dieser Ansatz eignet sich gut für das Extrahieren von Tabellendaten oder das Lesen bestimmter Felder aus strukturierten Dokumenten.

Was sind die Konventionen des Koordinatensystems?

IronOCR verwendet Standard-Pixelkoordinaten mit dem Ursprung (0,0) in der linken oberen Ecke. X steigt nach rechts, Y steigt nach unten. Die Parameter des Rechtecks sind (X, Y, Breite, Höhe). Zur präzisen Auswahl von Regionen verwenden Sie Bildbearbeitungswerkzeuge, um Pixelkoordinaten zu identifizieren, oder implementieren Sie einen visuellen Regionsselektor in Ihrer Anwendung.

Wie kann ich erweiterte Bildverarbeitung anwenden?

IronOCR bietet umfassende Bildvorverarbeitungsfunktionen zur Verbesserung der OCR-Genauigkeit. Wenden Sie Filter an, wenn Sie es mit Bildern von schlechter Qualität, gescannten Dokumenten oder schwierigen Bedingungen zu tun haben. Der Filter-Assistent hilft bei der Ermittlung der optimalen Filterkombinationen für Ihre spezifischen Bilder.

using IronOcr;

IronTesseract ocr = new IronTesseract();

using var input = new OcrImageInput("low-quality-scan.jpg");

// Apply image enhancement filters
input.Deskew();  // Correct image rotation
input.DeNoise(); // Remove background noise
input.Binarize(); // Convert to black and white
input.EnhanceResolution(300); // Adjust DPI for better accuracy

// Configure for better accuracy
ocr.Configuration.WhiteListCharacters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
ocr.Language = OcrLanguage.English;

OcrResult result = ocr.Read(input);
C#

Erfahren Sie mehr über Bildoptimierungsfilter und Fixing low quality scans. Bei Bedarf an Farbkorrekturen siehe den Leitfaden zur Farbkorrektur von Bildern.

Wann sollte ich Bildvorverarbeitungsfilter anwenden?

Wenden Sie Filter an, wenn es sich um gescannte Dokumente, Fotos von Text oder Bilder mit Qualitätsproblemen handelt. Zu den üblichen Szenarien gehören das Korrigieren von schiefen Seiten, das Entfernen von Hintergrundgeräuschen aus Fotokopien oder das Verbessern von verblasstem Text. Der DPI-Einstellungsleitfaden hilft bei der Optimierung auflösungsbezogener Probleme.

Warum ist die Reihenfolge der Filter wichtig?

Die Filterreihenfolge hat einen großen Einfluss auf die Ergebnisse. Wenden Sie zuerst die Drehaisungskorrektur (Deskew) an, gefolgt von der Rauschminderung und dann der Kontrastverstärkung. Die Binarisierung sollte in der Regel an letzter Stelle stehen. Eine falsche Reihenfolge kann Probleme verstärken - zum Beispiel erhöht die Schärfung vor der Entrauschung die Sichtbarkeit von Rauschen. Testen Sie verschiedene Sequenzen für optimale Ergebnisse.

Was sind häufige Fehler beim Preprocessing?

Überarbeitung ist der häufigste Fehler. Eine übermäßige Schärfung erzeugt Artefakte, eine aggressive Entrauschung entfernt feine Textdetails, und durch ungeeignete Binarisierungsschwellen gehen Informationen verloren. Beginnen Sie mit einer minimalen Vorverarbeitung und fügen Sie nur bei Bedarf Filter hinzu. Der Leitfaden zur Korrektur der Bildqualität bietet detaillierte Best Practices.

Wie kann ich die Leistung optimieren?

Berücksichtigen Sie diese Optimierungen bei der Verarbeitung mehrerer Bilder oder großer Stapel:

  1. Wiederverwenden von IronTesseract Instanz: Erstellen Sie eine Instanz für mehrere Operationen
  2. Scanbereiche angeben: Beschränken Sie die OCR auf relevante Bildbereiche für 60-90% Verbesserungen
  3. Geeignete Bildformate verwenden: PNG und TIFF liefern bessere Ergebnisse als JPEG
  4. Vorselektion beim Vorverarbeiten: Verwenden Sie Filter nur bei Bedarf
  5. Parallelverarbeitung implementieren: Nutzen Sie Multi-Core-CPUs für Batch-Operationen

Für Hochleistungsszenarien siehe Multithreading-Leitfaden und fast OCR configuration. Die Funktion zur Fortschrittsverfolgung hilft bei der Überwachung lang laufender Vorgänge.

Warum verbessert die Wiederverwendung von Instanzen die Leistung?

Die IronTesseract Initialisierung lädt Sprachdaten und konfiguriert die OCR-Engine, was 200-500ms dauert. Durch die Wiederverwendung von Instanzen wird dieser Overhead für nachfolgende Operationen eliminiert. Erstellen Sie eine Einzelinstanz für Webanwendungen oder eine gemeinsame Instanz für die Stapelverarbeitung, um die Effizienz zu maximieren.

Wann sollte ich Parallelverarbeitung verwenden?

Die Parallelverarbeitung kommt Szenarien mit mehreren unabhängigen Bildern zugute. Verarbeiten Sie verschiedene Seiten oder Dokumente gleichzeitig, aber vermeiden Sie die Parallelisierung von Operationen auf demselben Bild. Moderne CPUs können 4-8 gleichzeitige OCR-Operationen effektiv verarbeiten. Überwachen Sie die Speichernutzung, da jeder Vorgang je nach Bildgröße 100-500 MB erfordert.

Was ist bei der Speichernutzung zu beachten?

OCR-Operationen erfordern in der Regel das 10-20fache der Bilddateigröße im RAM. Ein 5 MB großes Bild kann bei der Verarbeitung 50-100 MB verbrauchen. Implementieren Sie bei großen Stapeln ein Producer-Consumer-Muster mit begrenzten gleichzeitigen Operationen. Das abort token example demonstriert das Abbrechen von speicherintensiven Operationen.

Was sind die nächsten Schritte?

Mit diesen Ressourcen können Sie Text aus komplexeren Szenarien extrahieren:

Häufig gestellte Fragen

Welche Bildformate können für die Textextraktion in C# gelesen werden?

IronOCR unterstützt das Lesen von Text aus den Bildformaten JPG, PNG, GIF, TIFF und BMP. Die Bibliothek erkennt automatisch das Bildformat und wendet eine entsprechende Vorverarbeitung an, um optimale Ergebnisse bei der Textextraktion zu erzielen.

Wie extrahiere ich Text aus einer Bilddatei in einer einzigen Code-Zeile?

Mit IronOCR können Sie Text mit einer einzigen Zeile extrahieren: `var result = new IronTesseract().Read(new OcrImageInput("image.png"));`. Dies übernimmt automatisch die Bildvorverarbeitung und die Textextraktion mit der Tesseract 5 OCR-Technologie.

Welche OCR-Technologie wird zum Lesen von Bildern verwendet?

IronOCR kombiniert die fortschrittlichen Algorithmen für maschinelles Lernen von Tesseract 5 mit einer proprietären Bildvorverarbeitung. Diese Kombination liefert eine branchenführende Genauigkeit bei unterschiedlichen Bildqualitäten und -formaten, von hochauflösenden Scans bis hin zu komprimierten Webbildern.

Wie gehe ich beim Lesen von Bildern richtig mit Ressourcen um?

Verwenden Sie bei der Erstellung eines OcrImageInput-Objekts die 'using'-Anweisung, um eine ordnungsgemäße Ressourcenverwendung sicherzustellen. Dieses Muster verwaltet automatisch Speicher und Dateihandles: `using var ocrInput = new OcrImageInput("image.jpg");`

Kann ich bestimmte Bereiche eines Bildes anstelle der gesamten Datei lesen?

Ja, IronOCR ermöglicht die Festlegung von Zuschneidebereichen, um bestimmte Lesebereiche innerhalb eines Bildes zu definieren. Diese Funktion hilft dabei, die OCR-Verarbeitung auf relevante Teile des Bildes zu konzentrieren, um die Leistung und Genauigkeit zu verbessern.

Welche Vorverarbeitung wird automatisch auf Bilder angewendet?

IronOCR wendet automatisch Bildfilter an, die die Lesefähigkeit durch Korrektur gängiger Qualitätsprobleme verbessern. Die Bibliothek übernimmt die Formaterkennung und Vorverarbeitung, ohne dass eine manuelle Konfiguration für grundlegende Anwendungsfälle erforderlich ist.

Gibt es Leistungsverbesserungen bei der Verarbeitung von TIFF-Bildern?

Ab IronOCR Version 2025.6 ist das Laden von TIFF-Bildern durchgehend schneller. Das Lesen von TIFF-Bildern zeigt Verbesserungen, die von der GPU des Rechners abhängen, wobei einige Benutzer eine bis zu doppelt so hohe Geschwindigkeit wie bei früheren Versionen erreichen.

How can specifying a scan region improve OCR performance?

Specifying a scan region limits OCR processing to relevant parts of the image, reducing computational overhead and processing time, while enhancing accuracy by focusing only on target text areas.

What memory management practices should be followed when using IronOCR?

Use 'using' statements for resource disposal when working with large images, implement a queue system for batch processing, and monitor memory usage to handle multiple documents simultaneously.

Why should I use parallel processing for OCR tasks?

Parallel processing is ideal for handling multiple independent image files, allowing you to maximize CPU usage and speed up batch operations while managing memory constraints.

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 Handbücher.

...
Weiterlesen

Bereit anzufangen?

Nuget Downloads 6,236,385Version:2026.9gerade veröffentlicht

Holen Sie sich Ihre KOSTENLOSE

30-Tage-Testlizenz sofort.

bullet_checkedKeine Kreditkarte oder Kontoerstellung erforderlich
bullet_testTesten Sie in der Produktion
ohne Wasserzeichen
bullet_calendar30 Tage voll
funktionsfähiges Produkt
bullet_support24/5 technischer
Support während der Testphase
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach "IronOCR"
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows Installer hier herunter.

  1. Laden Sie IronOCR herunter und entpacken Sie es in einem Ordner wie ~/Libs in Ihrem Lösungsverzeichnis.
  2. Klicken Sie im Visual Studio Solution Explorer mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronOCR.dll"

Lizenzen von $999

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.