Görüntü Renklerini C#'da Okuma İçin Nasıl Düzeltebilirim
IronOCR'nin binarizasyon, gri tonlama, ters çevirme ve renk değiştirme yöntemlerini kullanarak C#'da görüntü renklerini düzeltin ve metin okunabilirliğini ve OCR doğruluğunu artırın. Hedefli çıkarım için belirli metin renklerini okuyun.
Hızlı Başlangıç: Belirli Metin Renklerini İzole Edin
IronOCR'un SelectTextColor metodunu kullanarak OCR'yi belirli metin renklerine odaklayın—karmaşık görüntü işlemeye gerek yoktur. Bir görüntü yükleyin, metin rengini ve toleransı seçin ve doğru OCR sonuçları için yalnızca o metni çıkarın.
-
NuGet Paket Yöneticisi ile https://www.nuget.org/packages/IronOcr yükleyin
PM > Install-Package IronOcr -
Bu kod parçasını kopyalayıp çalıştırın.
new IronTesseract().Read(new IronOcr.OcrImageInput("sample.jpg").SelectTextColor(new IronSoftware.Drawing.Color("#DB645C"), 60)); -
Canlı ortamınızda test etmek için dağıtın
Bugün projenizde IronOCR kullanmaya başlayın ücretsiz deneme ile
Görüntü Renklerini C#'da Okuma İçin Nasıl Düzeltebilirim
- Görüntü renklerini düzeltmek için bir C# kütüphanesi indirin
- Okuma için PDF belgesini ve görüntüleri içe aktarın
- Renk efektleri uygulayın: binarizasyon, gri tonlama, ters çevirme ve renk değiştirme
- Görülmek üzere düzeltilmiş görüntüyü dışa aktarın
SelectTextColorkullanarak belirli metin renklerini okuyun
Binarizasyon ile OCR'yi Nasıl İyileştirebilirim?
Binarizasyon, görüntüleri genellikle siyah ve beyaz olan iki renkli formata dönüştürür. Bu, metni arka plandan ayırır ve gürültüyü azaltarak metni daha belirgin ve okunabilir hale getirir.
Binarizasyon OCR Doğruluğunu Neden Artırır?
Binarize metodunu kullanarak binarizasyon uygulayın. OCR, beyaz arka plan üzerine siyah metin içeren yüksek kontrastlı görüntüler ile en iyi çalışır. Bu yöntem, arka plan ve karakterler arasında net bir ayrım yaratır.
Binarizasyon, düzensiz aydınlatma veya arka plan gürültüsü olan taranan belgelerde mükemmeldir. Algoritma, görüntüleri analiz eder ve ön plan metni arka plandan ayırmak için en uygun eşikleri belirler. Gelişmiş ön işleme teknikleri için, OCR Görüntü İyileştirme Filtreleri kılavuzuna bakın.
Binarizasyon İçin Kod Uygulaması Nedir?
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-binarize-image.cs
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");
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")
Toplu işlem için, binarizasyonu diğer filtrelerle birleştirin. Filtre Sihirbazı resimleriniz için en iyi filtre kombinasyonunu belirlemenize yardımcı olabilir.
Sonuçları Nasıl Dışa Aktarabilirim ve Karşılaştırabilirim?
SaveAsImages metodunu kullanarak değiştirilmiş görüntüleri dışa aktarın. Aşağıda binarizasyon öncesi ve sonrası görüntüleri karşılaştırın.
Önce
Sonra
Okunabilirliği Artırmak İçin Görüntüleri Gri Tonlamaya Nasıl Dönüştürürüm?
Görüntüleri gri tonlamaya dönüştürmek, görsel karmaşayı azaltır ve okunabilirliği artırır. Bu, orijinal renkler içeriğin dikkatini dağıttığında yardımcı olur.
Gri Tonlama Diğer Yöntemlere Göre Ne Zaman Kullanılmalıdır?
ToGrayScale metodunu kullanarak gri tonlamayı uygulayın. Süreç, R, G ve B değerlerini ortalar.
Gri tonlama, metin tanımayı engelleyen renkli arka planlar veya filigranlar ile iyi çalışır. Binarizasyondan farklı olarak, gri tonlama ince değişikliklerle birlikte görüntülerdeki detayı korur. Yerleşik metin veya karmaşık düzenlere sahip fotoğraflar için kullanın. Düşük kaliteli taramalar için, Düşük Kaliteli Taramalar ve Görüntüleri Düzeltme kısmına bakın.
Gri Tonlama Dönüşümü için Basit Kod Nedir?
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-grayscale-image.cs
// Apply grayscale affect
imageInput.ToGrayScale();
' Apply grayscale affect
imageInput.ToGrayScale()
Farklı görüntü kaliteleri için gri tonlamayı diğer ön işlem adımlarıyla birleştirin. OcrInput Class belgeleri birden fazla filtresinin zincirleme yapılmasını açıklar.
Gri Tonlama Orijinaliyle Nasıl Karşılaştırılır?
Önce
Sonra
Görüntü Renklerini Ne Zaman Ters Çevirmeliyim?
Renkleri ters çevirmek kontrastı artırır. Siyah arka plan üzerindeki beyaz metni beyaz arka plan üzerindeki siyah metne çevirmek okunabilirliği artırır.
Renk Ters Çevirme Nasıl Uygulanır?
Renkleri ters çevirmek için Invert metodunu kullanın. Renk kanallarını kaldırmak ve gri tonlama döndürmek için boolean bir değer geçirin.
Renk ters çevirme, negatif görüntüler veya koyu temalı ekran görüntüleriyle ilgilenir. Modern uygulamalar, geleneksel OCR'a meydan okuyan koyu mod arabirimlerini kullanır. Bu görüntüleri ters çevirmek en iyi tanımayı sağlar. Farklı görüntü türleri için Hızlı OCR Yapılandırma Kılavuzu kısmına bakın.
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-invert-image.cs
// Apply invert affect
imageInput.Invert();
' Apply invert affect
imageInput.Invert()
Karışık belge türleri ile toplu işlem yapmak için otomatik koyu arka plan algılamayı uygulayın. Bilgisayarla Görü özellikleri, ters çevirme gerektiğini IronOCR'de belirler.
Ters Çevirme Seçenekleri Arasındaki Fark Nedir?
Invert metodunu gri tonlama ile ve gri tonlama olmadan karşılaştırın:
Ters Çevrilmiş
Ters Çevrilmiş ve Gri Tonlanmış
Belirli Renkleri Görüntüde Nasıl Değiştiririm?
Belirli renkleri öne çıkarmak veya geri plana atmak için değiştirin. Metnin görünürlüğünü artırmak veya sorunlu kontrastları düzeltmek için kullanın.
Renk Değişiminde Tolerans Neden Önemlidir?
ReplaceColor metodu mevcut rengi, yeni rengi ve tolerans değerini gerektirir. Yüksek tolerans bulanık görüntüleri daha iyi yönetir.
Tolerans, piksellerin hedef renginizle ne kadar yakın eşleşmesi gerektiğini belirler. Düşük değerler (0-50) tek tip renkler içindir. Yüksek değerler (100-200) anti-alias edilmiş metin veya sıkıştırma artefaktlarını ele alır. Bu, mürekkep sızması veya kağıt dokusunun varyasyonlar yarattığı taranmış belgelerde yardımcı olur.
Renk Değişimi Nasıl Uygulanır?
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-replace-color.cs
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");
Imports IronOcr
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("sample.jpg")
Private currentColor As New IronSoftware.Drawing.Color("#DB645C")
Private newColor As IronSoftware.Drawing.Color = IronSoftware.Drawing.Color.DarkCyan
' Replace color
imageInput.ReplaceColor(currentColor, newColor, 80)
' Export the modified image
imageInput.SaveAsImages("replaceColor")
Gelişmiş Renk Değişimi Senaryoları Nasıl Ele Alınır?
Karmaşık senaryolar için birden fazla değiştirme zinciri:
/* :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);
/* :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);
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
Karmaşık renk değişimleri için ek ön işleme teknikleri için Görüntü Düzeltme Filtreleri kısmına bakın.
Renk Değişiminin Görsel Sonuçları Nedir?
Önce
Sonra
Sadece Belirli Metin Renklerini Nasıl Okurum?
SelectTextColor metodunu kullanarak belirli metin renklerini okuyun. Hedef rengi ve toleransı (0-255) belirtin. Tolerans, R, G ve B değerleri için piksel ve seçilen renk arasında izin verilen farklılıkları temsil eder.
Renk Toleransı Sonuçları Nasıl Etkiler?
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-select-text-color.cs
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);
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)
Renk kodlu bölümleri olan formlar için seçici renk okuması kullanın, vurgulanan metni çıkartın veya belirli uyarı mesajlarını okuyun. Yapılandırılmış veri çıkarımı için ileri işlem için OcrResult Class kısmına bakın.
Renk Seçiminden Ne Tür Bir Çıktı Bekleyebilirim?
OCR sonucu yalnızca turuncu renkli metni okur:
Uygulanan Filtrelerle Değiştirilmiş PDF'leri Nasıl Kaydederim?
IronOCR, filtrelerle veya filtreler olmadan değiştirilmiş PDF'leri kaydeder. SaveAsSearchablePdf metodunun ikinci parametresi filtreler uygulanarak kaydedilip kaydedilmeyeceğini belirtir.
Aranabilir PDF'lerin Uygulaması Nedir?
:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-searchable-pdf.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);
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)
Kayıtlı PDF'ye Ne Zaman Filtre Uygulamalıyım?
Daha temiz, daha okunabilir belgeler oluştururken filtreler uygulayın. Bu, arşivleme amacıyla veya belgeleri farklı cihazlar arasında paylaşırken yardımcı olur. Daha fazla bilgi için OCR ile Aranabilir PDFler Oluşturun kısmına bakın.
Tabloları içeren karmaşık belgeler için, özel çıkarım için Belgede Tablo Oku kısmına bakın. Yüksek hacimli işlem için, çoklu belgeler arasında filtre uygulamasını optimize etmek için Çoklu İş Parçacık Tesseract OCR kısmına bakın.
Sıkça Sorulan Sorular
OCR doğruluğunu etkileyen zayıf görüntü renklerini nasıl düzeltebilirim?
IronOCR, ikili dönüştürme, gri tonlama dönüştürme, ters çevirme ve renk değiştirme dahil olmak üzere çeşitli renk düzeltme yöntemleri saglar. Bu filtreler, metin ve arka plan arasındaki kontrastı artırarak metin okunabilirliğini artırır ve OCR motorunun yetersiz renk kalitesine sahip görüntülerden metni doğru bir şekilde çıkartmasını kolaylaştırır.
İkili dönüştürme nedir ve OCR için ne zaman kullanmalıyım?
İkili dönüştürme, IronOCR'nin Binarize yöntemini kullanarak görüntüleri iki renkli formatta (genellikle siyah ve beyaz) dönüştürür. Öneilen olarak taranmış belgeler için uygulanır çevserlamalaror, ışık koşulları ve arka plan gürültüsüne sahip olduğunda, metin ve arka plan arasında net bir ayrım oluşturur.
Sadece belirli renkli metni bir görüntüden nasıl çıkartırım?
IronOCR'nin SelectTextColor yöntemi, karmaşık görüntü işlemleri olmadan belirli metin renkleri üzerine OCR odaklanmasına izin verir. Hedef rengi ve tolerans seviyesini açıklayın - örneğin, SelectTextColor(new IronSoftware.Drawing.Color("#DB645C"), 60) - yalnızca bu renk aralığında olan metni çıkartmak için.
Görselleri ikili olarak dönüştürmek yerine gri tonlamalıya ne zaman dönüştürmeliyim?
IronOCR'nin ToGrayScale yöntemi renkli arka planlar veya metin tanımını engelleyen filigranlarla karşılaşıldığında kullanılmalıdır. İkili dönüştürmeden farklı olarak, gri tonlama görsellerde hassas detayları korur ve görüntü kalitesini sağlarken görsel karmaşıklığı azaltmak gereken durumlarda ideal bir çözüm sunar.
Renk filtrelerinin sonuçlarını görmek için düzeltilmiş görüntüleri dışa aktarabilir miyim?
Evet, IronOCR renk düzeltmeleri uygulandıktan sonra değiştirilen görüntüleri dışa aktarmak için SaveAsImages yöntemini sağlar. Bu sayede, sonuçları karşılaştırabilir ve hangi renk düzeltme yöntemlerinin belirli resimlerinize en iyi çalıştığını belirlemenize yardımcı olur.
Resimlerim için en iyi renk düzeltme filtresini nasıl belirlerim?
IronOCR, görüntüleriniz için en uygun filtre kombinasyonunu belirlemeye yardımcı olan bir Filter Wizard aracı içerir. Toplu işlem için, belge türünüze en iyi OCR sonuçlarını elde etmek üzere binarizasyon gibi birden fazla filtreyi diğer ön işleme teknikleriyle birleştirebilirsiniz.

