# Wie man Bildfarben zum Lesen in C#35 fixiert
Korrigieren Sie Bildfarben in C# mit IronOCRs Binarisierungs-, Graustufen-, Invertierungs- und Farbersetzungsmethoden, um die Textlesbarkeit und OCR-Genauigkeit zu verbessern. Lesen Sie spezifische Textfarben für die gezielte Extraktion.
*as-heading:2(Schnellstart: Isolieren Sie bestimmte Textfarben)*
Verwenden Sie die `SelectTextColor`-Methode von IronOCR, um OCR auf spezifische Textfarben zu konzentrieren – keine komplexe Bildmanipulation erforderlich. Laden Sie ein Bild, wählen Sie die Textfarbe und -toleranz, und extrahieren Sie nur den Text, um genaue OCR-Ergebnisse zu erzielen.
```cs
:title=Fix Text Color Fast with IronOCR
new IronTesseract().Read(new IronOcr.OcrImageInput("sample.jpg").SelectTextColor(new IronSoftware.Drawing.Color("#DB645C"), 60));
```
<div class="hsg-featured-snippet">
<h2>Wie man in C# Bildfarben zum Lesen korrigiert</h2>
<ol>
<li><a class="js-modal-open" data-modal-id="trial-license-after-download" href="https://nuget.org/packages/IronOcr/">Herunterladen einer C#-Bibliothek zur Korrektur von Bildfarben</a></li>
<li>Importieren Sie das PDF-Dokument und die Bilder zum Lesen</li>
<li>Farbeffekte anwenden: Binarisierung, Graustufen, Invertierung und Farbersetzung</li>
<li>Exportieren Sie das korrigierte Bild zur Ansicht</li>
<li>Lesen Sie bestimmte Textfarben mit <code>SelectTextColor</code></li>
</ol>
</div>
<br class="clear" />
## Wie kann ich ein Bild binarisieren, um die OCR zu verbessern?
Bei der Binarisierung werden Bilder in ein zweifarbiges Format umgewandelt, in der Regel in Schwarz und Weiß. Dadurch wird der Text vom Hintergrund getrennt und das Rauschen reduziert, wodurch der Text deutlicher und leichter zu lesen ist.
### Warum verbessert die Binarisierung die OCR-Genauigkeit?
Wenden Sie die Binarisierung mit der `Binarize`-Methode an. OCR funktioniert am besten mit kontrastreichen Bildern, die schwarzen Text auf weißem Hintergrund enthalten. Diese Methode schafft eine klare Unterscheidung zwischen Hintergrund und Zeichen.
Die Binarisierung eignet sich besonders für gescannte Dokumente mit ungleichmäßiger Beleuchtung oder Hintergrundrauschen. Der Algorithmus analysiert die Bilder und bestimmt optimale Schwellenwerte, um den Vordergrundtext vom Hintergrund zu trennen. Für fortgeschrittene Vorverarbeitungstechniken siehe den [OCR Image Optimization Filters guide](https://ironsoftware.com/csharp/ocr/examples/ocr-image-filters-for-net-tesseract/).
### Was ist die Code-Implementierung für die Binarisierung?
```csharp
using IronOcr;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Apply binarize affect
imageInput.Binarize();
// Export the modified image
imageInput.SaveAsImages("binarize.jpg");
```
Kombinieren Sie bei der Stapelverarbeitung die Binarisierung mit anderen Filtern. Verwenden Sie den [Filter-Assistenten](https://ironsoftware.com/csharp/ocr/examples/filter-wizard/), um die beste Filterkombination für Ihre Bilder zu bestimmen.
### Wie kann ich Ergebnisse exportieren und vergleichen?
Exportieren Sie geänderte Bilder mithilfe der `SaveAsImages`-Methode. Vergleichen Sie unten die Bilder vor und nach der Binarisierung.
<div class="competitors-section__wrapper-even-1">
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-quality-correction/sample.jpg" alt="Beispielbild mit rotem und schwarzem Text auf blaugrauem Hintergrund, das die OCR-Herausforderungen vor der Binarisierung zeigt" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Vorher</p>
</div>
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-color-correction/binarize_0.png" alt="Binarisierte Version, die klaren schwarzen Text auf reinweißem Hintergrund für optimale OCR-Verarbeitung zeigt" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Nachher</p>
</div>
</div>
<hr />
## Wie konvertiere ich Bilder in Graustufen, um sie besser lesen zu können?
Die Konvertierung von Bildern in Graustufen reduziert die visuelle Unübersichtlichkeit und verbessert die Lesbarkeit. Dies ist hilfreich, wenn die Originalfarben vom Inhalt ablenken.
### Wann sollte ich Graustufen gegenüber anderen Methoden bevorzugen?
Wenden Sie Graustufen mithilfe der `ToGrayScale`-Methode an. Der Prozess ermittelt den Durchschnitt der R-, G- und B-Werte.
Graustufen eignen sich gut bei farbigen Hintergründen oder Wasserzeichen, die die Texterkennung stören. Im Gegensatz zur Binarisierung bleiben bei der Graustufenübersetzung Details in Bildern mit feinen Abweichungen erhalten. Verwenden Sie es für Fotos mit eingebettetem Text oder komplexen Layouts. Für Scans von schlechter Qualität siehe [Fixing Low Quality Scans & Images](https://ironsoftware.com/csharp/ocr/examples/ocr-low-quality-scans-tesseract/).
### Was ist der einfache Code für die Graustufen-Konvertierung?
```csharp
// Apply grayscale affect
imageInput.ToGrayScale();
```
Für unterschiedliche Bildqualitäten kombinieren Sie Graustufen mit anderen Vorverarbeitungsschritten. Die [OcrInput Klasse](https://ironsoftware.com/csharp/ocr/examples/csharp-ocr-input-for-iron-tesseract/) Dokumentation erklärt die Verkettung mehrerer Filter.
### Wie ist die Graustufe im Vergleich zum Original?
<div class="competitors-section__wrapper-even-1">
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-quality-correction/sample.jpg" alt="Beispieltext mit roten Überschriften und schwarzem Fließtext, der mehrere Farben vor der Graustufenkonvertierung zeigt" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Vorher</p>
</div>
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-color-correction/grayscale_0.webp" alt="Graustufendokument mit klarem Text über Technologieführungskräfte, das die verbesserte Lesbarkeit nach der Konvertierung demonstriert" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Nachher</p>
</div>
</div>
<hr />
## Wann sollte ich Bildfarben invertieren?
Das Invertieren von Farben erhöht den Kontrast. Die Umwandlung von weißem Text auf schwarzem Hintergrund in schwarzen Text auf weißem Hintergrund verbessert die Lesbarkeit.
### Wie implementiere ich Farbumkehr?
Verwenden Sie die `Invert`-Methode, um Farben zu invertieren. Übergeben Sie einen booleschen Wert, um Farbkanäle zu entfernen und Graustufen zurückzugeben.
Die Farbinversion behandelt negative Bilder oder Screenshots mit dunklem Thema. Moderne Anwendungen verwenden Dark-Mode-Schnittstellen, die eine Herausforderung für die herkömmliche OCR darstellen. Die Invertierung dieser Bilder gewährleistet eine optimale Erkennung. Für verschiedene Bildtypen siehe die [Fast OCR Configuration guide](https://ironsoftware.com/csharp/ocr/examples/tune-tesseract-for-speed-in-dotnet/).
```csharp
// Apply invert affect
imageInput.Invert();
```
Für die Stapelverarbeitung mit gemischten Dokumenttypen sollte eine automatische Erkennung von dunklem Hintergrund implementiert werden. [Computer Vision](https://ironsoftware.com/csharp/ocr/how-to/computer-vision/)-Funktionen in IronOCR erkennen, wann eine Inversion erforderlich ist.
### Was ist der Unterschied zwischen Invertierungsoptionen?
Vergleichen Sie die `Invert`-Methode mit und ohne Graustufen:
<div class="competitors-section__wrapper-even-1">
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-color-correction/invert_0.webp" alt="Farbinvertiertes Dokument, das die ursprünglichen Farbkanäle mit umgekehrten Werten beibehält" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Umgekehrt</p>
</div>
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-color-correction/invertTrue_0.webp" alt="Geschäftstext mit invertierten Farben, der weißen Text auf dunklem Hintergrund zeigt und den Farbinvertierungseffekt demonstriert" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Invertiert & Graustufen</p>
</div>
</div>
<hr />
## Wie kann ich bestimmte Farben in einem Bild ersetzen?
Ersetzen Sie bestimmte Farben, um Elemente hervorzuheben oder zu verbergen. Verwenden Sie diese Funktion, um die Hervorhebung des Textes zu verbessern oder problematische Kontraste zu korrigieren.
### Warum ist Toleranz bei der Farbersetzung wichtig?
Die `ReplaceColor`-Methode erfordert die aktuelle Farbe, die neue Farbe und einen Toleranzwert. Bei höherer Toleranz werden unscharfe Bilder besser verarbeitet.
Die Toleranz bestimmt, wie genau die Pixel mit der Zielfarbe übereinstimmen müssen. Niedrige Werte (0-50) eignen sich für einheitliche Farben. Höhere Werte (100-200) behandeln Text mit Anti-Aliasing oder Kompressionsartefakte. Dies hilft bei gescannten Dokumenten, bei denen die Tinte ausläuft oder die Papierstruktur zu Abweichungen führt.
### Wie implementiere ich die Farbersetzung?
```csharp
using IronOcr;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
IronSoftware.Drawing.Color currentColor = new IronSoftware.Drawing.Color("#DB645C");
IronSoftware.Drawing.Color newColor = IronSoftware.Drawing.Color.DarkCyan;
// Replace color
imageInput.ReplaceColor(currentColor, newColor, 80);
// Export the modified image
imageInput.SaveAsImages("replaceColor");
```
### Wie gehe ich mit erweiterten Farbersetzungsszenarien um?
Verketten Sie mehrere Ersetzungen für komplexe Szenarien:
```cs
/* :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-multiple-replacements.cs */
// Replace multiple colors in sequence
using var imageInput = new OcrImageInput("multi-color-document.jpg");
// Replace red text with black
imageInput.ReplaceColor(IronSoftware.Drawing.Color.Red, IronSoftware.Drawing.Color.Black, 70);
// Replace blue headers with dark gray
imageInput.ReplaceColor(IronSoftware.Drawing.Color.Blue, IronSoftware.Drawing.Color.DarkGray, 60);
// Replace light yellow background with white
imageInput.ReplaceColor(new IronSoftware.Drawing.Color("#FFFACD"), IronSoftware.Drawing.Color.White, 40);
// Perform OCR on the cleaned image
var result = ocrTesseract.Read(imageInput);
```
Für komplexe Farbersetzungen siehe [Bildkorrekturfilter](https://ironsoftware.com/csharp/ocr/how-to/image-quality-correction/) für zusätzliche Vorverarbeitungstechniken.
### Was sind die visuellen Ergebnisse der Farbersetzung?
<div class="competitors-section__wrapper-even-1">
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-quality-correction/sample.jpg" alt="Textprobe mit orange-rot gefärbten Namen und Inhalten auf blauem Hintergrund, die die ursprünglichen Farben vor der Ersetzung zeigt" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Vorher</p>
</div>
<div class="competitors__card" style="width: 48%;">
<img src="/static-assets/ocr/how-to/image-color-correction/replaceColor_0.webp" alt="Document after color replacement showing dark cyan headers replacing original orange-red text" class="img-responsive add-shadow" />
<p class="competitors__download-link" style="color: #181818; font-style: italic;">Nachher</p>
</div>
</div>
<hr />
## Wie kann ich nur bestimmte Textfarben lesen?
Lesen Sie spezifische Textfarben mit der `SelectTextColor`-Methode. Geben Sie die Zielfarbe und die Toleranz (0-255) an. Die Toleranz stellt die zulässigen Unterschiede zwischen Pixel und ausgewählter Farbe für R-, G- und B-Werte dar.
### Wie wirkt sich die Farbtoleranz auf die Ergebnisse aus?
```csharp
using IronOcr;
using System;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Text color to focus on
IronSoftware.Drawing.Color focusColor = new IronSoftware.Drawing.Color("#DB645C");
// Specify which text color to read
imageInput.SelectTextColor(focusColor, 60);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
// Output result to console
Console.WriteLine(ocrResult.Text);
```
Verwenden Sie selektives Farblesen für Formulare mit farblich gekennzeichneten Abschnitten, Extrahieren von hervorgehobenem Text oder Lesen bestimmter Warnmeldungen. Für die Extraktion strukturierter Daten siehe [OcrResult Klasse](https://ironsoftware.com/csharp/ocr/examples/results-objects/) für die erweiterte Verarbeitung.
### Welche Ausgabe kann ich von der Farbauswahl erwarten?
Das OCR-Ergebnis liest nur orangefarbenen Text:
<div class="content-img-align-center">
<div class="center-image-wrapper">
<img src="/static-assets/ocr/how-to/image-color-correction/read-certain-text-color.webp" alt="Die Debug-Konsole zeigt den durch OCR extrahierten orangefarbenen Text: MASAYOSHI SON und YASUMITSU SHIGETA aus einem Geschäftsdokument" class="img-responsive add-shadow" />
</div>
</div>
## Wie speichere ich geänderte PDF-Dateien mit angewandten Filtern?
IronOCR speichert modifizierte PDFs mit oder ohne Filter. Der zweite Parameter der `SaveAsSearchablePdf`-Methode gibt an, ob mit angewendeten Filtern gespeichert werden soll.
### Was ist die Implementierung für durchsuchbare PDFs?
```cs
using IronOcr;
// Create OCR engine: filters are applied at the OcrInput level, so no configuration changes are needed here
var ocr = new IronTesseract();
var ocrInput = new OcrInput();
// Load the scanned PDF as the OCR source
ocrInput.LoadPdf("invoice.pdf");
// Convert to grayscale: removes color noise that can reduce OCR accuracy on color-printed documents
ocrInput.ToGrayScale();
// Run OCR on the preprocessed input
OcrResult result = ocr.Read(ocrInput);
// Write the searchable PDF; true = embed the grayscale-filtered image rather than the original color scan
result.SaveAsSearchablePdf("outputGrayscale.pdf", true);
```
### Wann sollte ich Filter auf die gespeicherte PDF-Datei anwenden?
Wenden Sie Filter an, um sauberere, besser lesbare Dokumente zu erstellen. Dies hilft bei der Archivierung oder der gemeinsamen Nutzung von Dokumenten auf verschiedenen Geräten. Weitere Informationen finden Sie unter [Erstellen durchsuchbarer PDFs mit OCR](https://ironsoftware.com/csharp/ocr/examples/tesseract-create-searchable-pdf/).
Für komplexe Dokumente mit Tabellen können Sie [Tabelle im Dokument lesen](https://ironsoftware.com/csharp/ocr/examples/read-table-in-document/) für eine spezielle Extraktion nutzen. Für die Verarbeitung großer Datenmengen siehe [Multithreaded Tesseract OCR](https://ironsoftware.com/csharp/ocr/examples/csharp-tesseract-multithreading-for-speed/) zur Optimierung der Filteranwendung für mehrere Dokumente.
Korrigieren Sie Bildfarben in C# mit IronOCRs Binarisierungs-, Graustufen-, Invertierungs- und Farbersetzungsmethoden, um die Textlesbarkeit und OCR-Genauigkeit zu verbessern. Lesen Sie spezifische Textfarben für die gezielte Extraktion.
Schnellstart: Isolieren Sie bestimmte Textfarben
Verwenden Sie die SelectTextColor-Methode von IronOCR, um OCR auf spezifische Textfarben zu konzentrieren – keine komplexe Bildmanipulation erforderlich. Laden Sie ein Bild, wählen Sie die Textfarbe und -toleranz, und extrahieren Sie nur den Text, um genaue OCR-Ergebnisse zu erzielen.
1Install IronOCR with NuGet Package Manager
PM > Install-Package IronOcr
Install-Package IronOcr
2Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
Importieren Sie das PDF-Dokument und die Bilder zum Lesen
Farbeffekte anwenden: Binarisierung, Graustufen, Invertierung und Farbersetzung
Exportieren Sie das korrigierte Bild zur Ansicht
Lesen Sie bestimmte Textfarben mit SelectTextColor
Wie kann ich ein Bild binarisieren, um die OCR zu verbessern?
Bei der Binarisierung werden Bilder in ein zweifarbiges Format umgewandelt, in der Regel in Schwarz und Weiß. Dadurch wird der Text vom Hintergrund getrennt und das Rauschen reduziert, wodurch der Text deutlicher und leichter zu lesen ist.
Warum verbessert die Binarisierung die OCR-Genauigkeit?
Wenden Sie die Binarisierung mit der Binarize-Methode an. OCR funktioniert am besten mit kontrastreichen Bildern, die schwarzen Text auf weißem Hintergrund enthalten. Diese Methode schafft eine klare Unterscheidung zwischen Hintergrund und Zeichen.
Die Binarisierung eignet sich besonders für gescannte Dokumente mit ungleichmäßiger Beleuchtung oder Hintergrundrauschen. Der Algorithmus analysiert die Bilder und bestimmt optimale Schwellenwerte, um den Vordergrundtext vom Hintergrund zu trennen. Für fortgeschrittene Vorverarbeitungstechniken siehe den OCR Image Optimization Filters guide.
Was ist die Code-Implementierung für die Binarisierung?
using IronOcr;// Instantiate IronTesseractIronTesseract ocrTesseract = new IronTesseract();// Add imageusing var imageInput = new OcrImageInput("sample.jpg");// Apply binarize affectimageInput.Binarize();// Export the modified imageimageInput.SaveAsImages("binarize.jpg");
using IronOcr;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Apply binarize affect
imageInput.Binarize();
// Export the modified image
imageInput.SaveAsImages("binarize.jpg");
ImportsIronOcr' Instantiate IronTesseractPrivate ocrTesseract As New IronTesseract()' Add imagePrivate imageInput = New OcrImageInput("sample.jpg")' Apply binarize affectimageInput.Binarize()' Export the modified imageimageInput.SaveAsImages("binarize.jpg")
Imports IronOcr
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Apply binarize affect
imageInput.Binarize()
' Export the modified image
imageInput.SaveAsImages("binarize.jpg")
Kombinieren Sie bei der Stapelverarbeitung die Binarisierung mit anderen Filtern. Verwenden Sie den Filter-Assistenten, um die beste Filterkombination für Ihre Bilder zu bestimmen.
Wie kann ich Ergebnisse exportieren und vergleichen?
Exportieren Sie geänderte Bilder mithilfe der SaveAsImages-Methode. Vergleichen Sie unten die Bilder vor und nach der Binarisierung.
Vorher
Nachher
Wie konvertiere ich Bilder in Graustufen, um sie besser lesen zu können?
Die Konvertierung von Bildern in Graustufen reduziert die visuelle Unübersichtlichkeit und verbessert die Lesbarkeit. Dies ist hilfreich, wenn die Originalfarben vom Inhalt ablenken.
Wann sollte ich Graustufen gegenüber anderen Methoden bevorzugen?
Wenden Sie Graustufen mithilfe der ToGrayScale-Methode an. Der Prozess ermittelt den Durchschnitt der R-, G- und B-Werte.
Graustufen eignen sich gut bei farbigen Hintergründen oder Wasserzeichen, die die Texterkennung stören. Im Gegensatz zur Binarisierung bleiben bei der Graustufenübersetzung Details in Bildern mit feinen Abweichungen erhalten. Verwenden Sie es für Fotos mit eingebettetem Text oder komplexen Layouts. Für Scans von schlechter Qualität siehe Fixing Low Quality Scans & Images.
Was ist der einfache Code für die Graustufen-Konvertierung?
Für unterschiedliche Bildqualitäten kombinieren Sie Graustufen mit anderen Vorverarbeitungsschritten. Die OcrInput Klasse Dokumentation erklärt die Verkettung mehrerer Filter.
Wie ist die Graustufe im Vergleich zum Original?
Vorher
Nachher
Wann sollte ich Bildfarben invertieren?
Das Invertieren von Farben erhöht den Kontrast. Die Umwandlung von weißem Text auf schwarzem Hintergrund in schwarzen Text auf weißem Hintergrund verbessert die Lesbarkeit.
Wie implementiere ich Farbumkehr?
Verwenden Sie die Invert-Methode, um Farben zu invertieren. Übergeben Sie einen booleschen Wert, um Farbkanäle zu entfernen und Graustufen zurückzugeben.
Die Farbinversion behandelt negative Bilder oder Screenshots mit dunklem Thema. Moderne Anwendungen verwenden Dark-Mode-Schnittstellen, die eine Herausforderung für die herkömmliche OCR darstellen. Die Invertierung dieser Bilder gewährleistet eine optimale Erkennung. Für verschiedene Bildtypen siehe die Fast OCR Configuration guide.
// Apply invert affectimageInput.Invert();
// Apply invert affect
imageInput.Invert();
' Apply invert affectimageInput.Invert()
' Apply invert affect
imageInput.Invert()
Für die Stapelverarbeitung mit gemischten Dokumenttypen sollte eine automatische Erkennung von dunklem Hintergrund implementiert werden. Computer Vision-Funktionen in IronOCR erkennen, wann eine Inversion erforderlich ist.
Was ist der Unterschied zwischen Invertierungsoptionen?
Vergleichen Sie die Invert-Methode mit und ohne Graustufen:
Umgekehrt
Invertiert & Graustufen
Wie kann ich bestimmte Farben in einem Bild ersetzen?
Ersetzen Sie bestimmte Farben, um Elemente hervorzuheben oder zu verbergen. Verwenden Sie diese Funktion, um die Hervorhebung des Textes zu verbessern oder problematische Kontraste zu korrigieren.
Warum ist Toleranz bei der Farbersetzung wichtig?
Die ReplaceColor-Methode erfordert die aktuelle Farbe, die neue Farbe und einen Toleranzwert. Bei höherer Toleranz werden unscharfe Bilder besser verarbeitet.
Die Toleranz bestimmt, wie genau die Pixel mit der Zielfarbe übereinstimmen müssen. Niedrige Werte (0-50) eignen sich für einheitliche Farben. Höhere Werte (100-200) behandeln Text mit Anti-Aliasing oder Kompressionsartefakte. Dies hilft bei gescannten Dokumenten, bei denen die Tinte ausläuft oder die Papierstruktur zu Abweichungen führt.
Wie implementiere ich die Farbersetzung?
using IronOcr;// Instantiate IronTesseractIronTesseract ocrTesseract = new IronTesseract();// Add imageusing var imageInput = new OcrImageInput("sample.jpg");IronSoftware.Drawing.Color currentColor = new IronSoftware.Drawing.Color("#DB645C");IronSoftware.Drawing.Color newColor = IronSoftware.Drawing.Color.DarkCyan;// Replace colorimageInput.ReplaceColor(currentColor, newColor, 80);// Export the modified imageimageInput.SaveAsImages("replaceColor");
using IronOcr;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
IronSoftware.Drawing.Color currentColor = new IronSoftware.Drawing.Color("#DB645C");
IronSoftware.Drawing.Color newColor = IronSoftware.Drawing.Color.DarkCyan;
// Replace color
imageInput.ReplaceColor(currentColor, newColor, 80);
// Export the modified image
imageInput.SaveAsImages("replaceColor");
ImportsIronOcr' Instantiate IronTesseractDim ocrTesseract As New IronTesseract()' Add imageUsing imageInput As New OcrImageInput("sample.jpg") Dim currentColor As New IronSoftware.Drawing.Color("#DB645C") Dim newColor AsIronSoftware.Drawing.Color = IronSoftware.Drawing.Color.DarkCyan ' Replace color imageInput.ReplaceColor(currentColor, newColor, 80) ' Export the modified image imageInput.SaveAsImages("replaceColor")EndUsing
Imports IronOcr
' Instantiate IronTesseract
Dim ocrTesseract As New IronTesseract()
' Add image
Using imageInput As New OcrImageInput("sample.jpg")
Dim currentColor As New IronSoftware.Drawing.Color("#DB645C")
Dim newColor As IronSoftware.Drawing.Color = IronSoftware.Drawing.Color.DarkCyan
' Replace color
imageInput.ReplaceColor(currentColor, newColor, 80)
' Export the modified image
imageInput.SaveAsImages("replaceColor")
End Using
Wie gehe ich mit erweiterten Farbersetzungsszenarien um?
Verketten Sie mehrere Ersetzungen für komplexe Szenarien:
/* :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-multiple-replacements.cs */// Replace multiple colors in sequenceusing var imageInput = new OcrImageInput("multi-color-document.jpg");// Replace red text with blackimageInput.ReplaceColor(IronSoftware.Drawing.Color.Red, IronSoftware.Drawing.Color.Black, 70);// Replace blue headers with dark grayimageInput.ReplaceColor(IronSoftware.Drawing.Color.Blue, IronSoftware.Drawing.Color.DarkGray, 60);// Replace light yellow background with whiteimageInput.ReplaceColor(new IronSoftware.Drawing.Color("#FFFACD"), IronSoftware.Drawing.Color.White, 40);// Perform OCR on the cleaned imagevar result = ocrTesseract.Read(imageInput);
/* :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-multiple-replacements.cs */
// Replace multiple colors in sequence
using var imageInput = new OcrImageInput("multi-color-document.jpg");
// Replace red text with black
imageInput.ReplaceColor(IronSoftware.Drawing.Color.Red, IronSoftware.Drawing.Color.Black, 70);
// Replace blue headers with dark gray
imageInput.ReplaceColor(IronSoftware.Drawing.Color.Blue, IronSoftware.Drawing.Color.DarkGray, 60);
// Replace light yellow background with white
imageInput.ReplaceColor(new IronSoftware.Drawing.Color("#FFFACD"), IronSoftware.Drawing.Color.White, 40);
// Perform OCR on the cleaned image
var result = ocrTesseract.Read(imageInput);
ImportsIronSoftware.Drawing' Replace multiple colors in sequenceUsing imageInput As New OcrImageInput("multi-color-document.jpg") ' Replace red text with black imageInput.ReplaceColor(Color.Red, Color.Black, 70) ' Replace blue headers with dark gray imageInput.ReplaceColor(Color.Blue, Color.DarkGray, 60) ' Replace light yellow background with white imageInput.ReplaceColor(New Color("#FFFACD"), Color.White, 40) ' Perform OCR on the cleaned image Dim result = ocrTesseract.Read(imageInput)EndUsing
Imports IronSoftware.Drawing
' Replace multiple colors in sequence
Using imageInput As New OcrImageInput("multi-color-document.jpg")
' Replace red text with black
imageInput.ReplaceColor(Color.Red, Color.Black, 70)
' Replace blue headers with dark gray
imageInput.ReplaceColor(Color.Blue, Color.DarkGray, 60)
' Replace light yellow background with white
imageInput.ReplaceColor(New Color("#FFFACD"), Color.White, 40)
' Perform OCR on the cleaned image
Dim result = ocrTesseract.Read(imageInput)
End Using
Für komplexe Farbersetzungen siehe Bildkorrekturfilter für zusätzliche Vorverarbeitungstechniken.
Was sind die visuellen Ergebnisse der Farbersetzung?
Vorher
Nachher
Wie kann ich nur bestimmte Textfarben lesen?
Lesen Sie spezifische Textfarben mit der SelectTextColor-Methode. Geben Sie die Zielfarbe und die Toleranz (0-255) an. Die Toleranz stellt die zulässigen Unterschiede zwischen Pixel und ausgewählter Farbe für R-, G- und B-Werte dar.
Wie wirkt sich die Farbtoleranz auf die Ergebnisse aus?
using IronOcr;using System;// Instantiate IronTesseractIronTesseract ocrTesseract = new IronTesseract();// Add imageusing var imageInput = new OcrImageInput("sample.jpg");// Text color to focus onIronSoftware.Drawing.Color focusColor = new IronSoftware.Drawing.Color("#DB645C");// Specify which text color to readimageInput.SelectTextColor(focusColor, 60);// Perform OCROcrResult ocrResult = ocrTesseract.Read(imageInput);// Output result to consoleConsole.WriteLine(ocrResult.Text);
using IronOcr;
using System;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Text color to focus on
IronSoftware.Drawing.Color focusColor = new IronSoftware.Drawing.Color("#DB645C");
// Specify which text color to read
imageInput.SelectTextColor(focusColor, 60);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
// Output result to console
Console.WriteLine(ocrResult.Text);
ImportsIronOcrImportsSystem' Instantiate IronTesseractPrivate ocrTesseract As New IronTesseract()' Add imagePrivate imageInput = New OcrImageInput("sample.jpg")' Text color to focus onPrivate focusColor As New IronSoftware.Drawing.Color("#DB645C")' Specify which text color to readimageInput.SelectTextColor(focusColor, 60)' Perform OCRDim ocrResult AsOcrResult = ocrTesseract.Read(imageInput)' Output result to consoleConsole.WriteLine(ocrResult.Text)
Imports IronOcr
Imports System
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Text color to focus on
Private focusColor As New IronSoftware.Drawing.Color("#DB645C")
' Specify which text color to read
imageInput.SelectTextColor(focusColor, 60)
' Perform OCR
Dim ocrResult As OcrResult = ocrTesseract.Read(imageInput)
' Output result to console
Console.WriteLine(ocrResult.Text)
Verwenden Sie selektives Farblesen für Formulare mit farblich gekennzeichneten Abschnitten, Extrahieren von hervorgehobenem Text oder Lesen bestimmter Warnmeldungen. Für die Extraktion strukturierter Daten siehe OcrResult Klasse für die erweiterte Verarbeitung.
Welche Ausgabe kann ich von der Farbauswahl erwarten?
Das OCR-Ergebnis liest nur orangefarbenen Text:
Wie speichere ich geänderte PDF-Dateien mit angewandten Filtern?
IronOCR speichert modifizierte PDFs mit oder ohne Filter. Der zweite Parameter der SaveAsSearchablePdf-Methode gibt an, ob mit angewendeten Filtern gespeichert werden soll.
Was ist die Implementierung für durchsuchbare PDFs?
using IronOcr;// Create OCR engine: filters are applied at the OcrInput level, so no configuration changes are needed herevar ocr = new IronTesseract();var ocrInput = new OcrInput();// Load the scanned PDF as the OCR sourceocrInput.LoadPdf("invoice.pdf");// Convert to grayscale: removes color noise that can reduce OCR accuracy on color-printed documentsocrInput.ToGrayScale();// Run OCR on the preprocessed inputOcrResult result = ocr.Read(ocrInput);// Write the searchable PDF; true = embed the grayscale-filtered image rather than the original color scanresult.SaveAsSearchablePdf("outputGrayscale.pdf", true);
using IronOcr;
// Create OCR engine: filters are applied at the OcrInput level, so no configuration changes are needed here
var ocr = new IronTesseract();
var ocrInput = new OcrInput();
// Load the scanned PDF as the OCR source
ocrInput.LoadPdf("invoice.pdf");
// Convert to grayscale: removes color noise that can reduce OCR accuracy on color-printed documents
ocrInput.ToGrayScale();
// Run OCR on the preprocessed input
OcrResult result = ocr.Read(ocrInput);
// Write the searchable PDF; true = embed the grayscale-filtered image rather than the original color scan
result.SaveAsSearchablePdf("outputGrayscale.pdf", true);
ImportsIronOcr' Create OCR engine: filters are applied at the OcrInput level, so no configuration changes are needed hereDim ocr As New IronTesseract()Dim ocrInput As New OcrInput()' Load the scanned PDF as the OCR sourceocrInput.LoadPdf("invoice.pdf")' Convert to grayscale: removes color noise that can reduce OCR accuracy on color-printed documentsocrInput.ToGrayScale()' Run OCR on the preprocessed inputDim result AsOcrResult = ocr.Read(ocrInput)' Write the searchable PDF; True = embed the grayscale-filtered image rather than the original color scanresult.SaveAsSearchablePdf("outputGrayscale.pdf", True)
Imports IronOcr
' Create OCR engine: filters are applied at the OcrInput level, so no configuration changes are needed here
Dim ocr As New IronTesseract()
Dim ocrInput As New OcrInput()
' Load the scanned PDF as the OCR source
ocrInput.LoadPdf("invoice.pdf")
' Convert to grayscale: removes color noise that can reduce OCR accuracy on color-printed documents
ocrInput.ToGrayScale()
' Run OCR on the preprocessed input
Dim result As OcrResult = ocr.Read(ocrInput)
' Write the searchable PDF; True = embed the grayscale-filtered image rather than the original color scan
result.SaveAsSearchablePdf("outputGrayscale.pdf", True)
Wann sollte ich Filter auf die gespeicherte PDF-Datei anwenden?
Wenden Sie Filter an, um sauberere, besser lesbare Dokumente zu erstellen. Dies hilft bei der Archivierung oder der gemeinsamen Nutzung von Dokumenten auf verschiedenen Geräten. Weitere Informationen finden Sie unter Erstellen durchsuchbarer PDFs mit OCR.
Für komplexe Dokumente mit Tabellen können Sie Tabelle im Dokument lesen für eine spezielle Extraktion nutzen. Für die Verarbeitung großer Datenmengen siehe Multithreaded Tesseract OCR zur Optimierung der Filteranwendung für mehrere Dokumente.
Häufig gestellte Fragen
Wie kann ich schlechte Bildfarben korrigieren, die die OCR-Genauigkeit beeinträchtigen?
IronOCR bietet mehrere Farbkorrekturmethoden, darunter Binarisierung, Graustufenumwandlung, Invertierung und Farbersetzung. Diese Filter tragen dazu bei, die Lesbarkeit von Text zu verbessern, indem sie den Kontrast zwischen Text und Hintergrund verstärken, wodurch es für die OCR-Engine einfacher wird, Text aus Bildern mit schlechter Farbqualität genau zu extrahieren.
Was ist Binarisierung und wann sollte ich sie für OCR verwenden?
Die Binarisierung konvertiert Bilder mit der IronOCR-Methode Binarize in ein zweifarbiges Format (in der Regel schwarz-weiß). Es ist besonders effektiv für gescannte Dokumente mit ungleichmäßiger Beleuchtung oder Hintergrundrauschen, da es eine klare Unterscheidung zwischen Text und Hintergrund schafft, indem es das Bild analysiert und optimale Schwellenwerte für die Trennung bestimmt.
Wie extrahiere ich nur bestimmten farbigen Text aus einem Bild?
Die SelectTextColor-Methode von IronOCR ermöglicht die Fokussierung der OCR auf bestimmte Textfarben ohne komplexe Bildmanipulation. Geben Sie einfach die Zielfarbe und die Toleranzstufe an - zum Beispiel SelectTextColor(new IronSoftware.Drawing.Color("#DB645C")), 60) - um nur Text in diesem Farbbereich zu extrahieren.
Wann sollte ich Bilder in Graustufen umwandeln, anstatt sie zu binarisieren?
Verwenden Sie die ToGrayScale-Methode von IronOCR, wenn Sie es mit farbigen Hintergründen oder Wasserzeichen zu tun haben, die bei der Texterkennung stören. Im Gegensatz zur Binarisierung bleiben bei der Graustufenmethode die Details in Bildern mit feinen Abweichungen erhalten, so dass sie ideal ist, wenn Sie die Bildqualität beibehalten und gleichzeitig die visuelle Unübersichtlichkeit reduzieren möchten.
Kann ich korrigierte Bilder exportieren, um die Ergebnisse von Farbfiltern zu sehen?
Ja, IronOCR bietet die SaveAsImages-Methode, um geänderte Bilder nach der Anwendung von Farbkorrekturen zu exportieren. So können Sie die Ergebnisse vorher und nachher vergleichen und feststellen, welche Farbkorrekturmethoden für Ihre spezifischen Bilder am besten geeignet sind.
Wie kann ich den besten Farbkorrekturfilter für meine Bilder bestimmen?
IronOCR enthält einen Filter-Assistenten, der Ihnen hilft, die optimale Filterkombination für Ihre Bilder zu bestimmen. Bei der Stapelverarbeitung können Sie mehrere Filter wie die Binarisierung mit anderen Vorverarbeitungstechniken kombinieren, um die besten OCR-Ergebnisse für Ihren Dokumententyp zu erzielen.
What outputs are expected from selective color reading with OCR?
The OCR result from selective color reading focuses only on specified colors, such as extracting highlighted texts or specific warning messages, enabling precise data extraction from color-coded documents.
How can I create searchable PDFs with IronOCR?
IronOCR allows you to save modified PDFs using the SaveAsSearchablePdf method. Filters like grayscale can be applied to improve text readability and noise reduction in the resulting documents.
What preprocessing steps can enhance OCR accuracy for low-quality scans?
For low-quality scans, preprocessing steps like binarization, grayscale conversion, and color inversion can significantly improve text readability and OCR accuracy by reducing noise and enhancing contrast.
How can IronOCR help with structured data extraction?
IronOCR provides advanced processing capabilities like the OcrResult Class, which supports structured data extraction from images, making it ideal for forms with color-coded sections and highlighted text.
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.