IRONSOFTWAREHOME

C##35;で読みやすいように画像の色を修正する方法

Curtis Chau
Curtis Chau
Updated: 2026年6月4日

C#でIronOCRの二値化、グレースケール、反転、色置換メソッドを使って画像の色を修正し、テキストの可読性とOCRの精度を向上させます。 ターゲット抽出のために特定のテキストの色をお読みください。

クイックスタート: 特定のテキストカラーを分離する

IronOCRのSelectTextColorメソッドを使用して、複雑な画像操作を必要とせずに特定のテキストの色にOCRを集中させます。 画像を読み込み、テキストの色と許容範囲を選択し、そのテキストのみを抽出して正確なOCR結果を得ます。

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2このコード スニペットをコピーして実行します。

    new IronTesseract().Read(new IronOcr.OcrImageInput("sample.jpg").SelectTextColor(new IronSoftware.Drawing.Color("#DB645C"), 60));
    C#
  3. 3実際の環境でテストするためにデプロイする

    今日プロジェクトで IronOCR を使い始めましょう無料トライアル
    arrow pointer

OCRを向上させるために画像を2値化するには?

2値化は、画像を2色形式(通常は白黒)に変換します。これにより、テキストと背景が分離され、ノイズが減少するため、テキストがより明瞭になり、読みやすくなります。

2値化はなぜOCRの精度を向上させるのでしょうか

Binarizeメソッドを使用して二値化を適用します。 OCRは、白地に黒文字の高コントラスト画像に最適です。 この方法では、背景と文字が明確に区別されます。

二値化は、照明ムラや背景ノイズのあるスキャン文書に適しています。このアルゴリズムは画像を分析し、前景テキストと背景を分離するための最適なしきい値を決定します。 高度な前処理技術については、OCR Image Optimization Filters ガイドを参照してください。

二値化のコード実装とは

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");

バッチ処理では、2値化と他のフィルタを組み合わせてください。 フィルタウィザードを使用して、画像に最適なフィルタの組み合わせを決定します。

結果をエクスポートして比較するにはどうすればよいですか?

SaveAsImagesメソッドを使用して変更された画像をエクスポートします。 二値化前と二値化後の画像を比較してください。

二値化前の OCR の課題を示す、青灰色の背景に赤と黒のテキストがあるサンプル画像
最適な OCR 処理のために、純白の背景に鮮明な黒いテキストを示す二値化バージョン

読みやすくするために画像をグレースケールに変換するにはどうすればよいですか?

画像をグレースケールに変換することで、視覚的な乱れを減らし、読みやすさを向上させます。 オリジナルカラーがコンテンツの邪魔になる場合にも役立ちます。

他の方法よりもグレースケールを使用すべきなのはどのような場合ですか?

ToGrayScaleメソッドを使用してグレースケールを適用します。 プロセスでは、R、G、Bの値を平均化します。

グレースケールは、テキスト認識の妨げとなる色付きの背景や透かしに適しています。 2値化とは異なり、グレースケールは微妙に変化する画像のディテールを保持します。 テキストが埋め込まれた写真や複雑なレイアウトの写真にお使いください。 低画質スキャンについては、低画質スキャンと画像の修正を参照してください。

グレースケール変換の簡単なコードとは

// Apply grayscale affect
imageInput.ToGrayScale();

さまざまな画像品質のため、グレースケールと他の前処理ステップを組み合わせてください。 OcrInputクラスのドキュメントでは、複数のフィルタを連結することについて説明しています。

グレースケールはオリジナルと比べてどうですか?

グレースケール変換前の複数の色を示す、赤い見出しと黒い本文テキストのサンプルテキスト
変換後の読み取りやすさの向上を示す、テック企業幹部に関する鮮明なテキストを含むグレースケールのドキュメント

どのような場合に画像の色を反転させる必要がありますか?

色を反転させるとコントラストが強調されます。黒い背景に白いテキストを白い背景に黒いテキストに変換すると、読みやすさが向上します。

色の反転はどのように実装しますか?

Invertメソッドを使用して色を反転します。 カラーチャンネルを削除してグレースケールを返すには、ブール値を渡します。

色の反転は、ネガ画像や暗いテーマのスクリーンショットを扱います。 最近のアプリケーションは、従来のOCRでは難しかったダークモードのインターフェースを使用しています。 これらの画像を反転させることで、最適な認識を保証します。 さまざまな画像タイプについては、高速 OCR 設定ガイドを参照してください。

// Apply invert affect
imageInput.Invert();

ドキュメントの種類が混在するバッチ処理では、自動的に暗い背景を検出する機能を実装します。 IronOCRのコンピュータ・ビジョン機能は、反転が必要なときを特定します。

反転オプションの違いは何ですか?

Invertメソッドをグレースケールありおよびなしで比較します:

元の色チャンネルを維持しつつ値を反転させた色反転済みのドキュメント
色反転効果を示す、暗い背景に白いテキストを表示した色反転済みのビジネステキスト

画像の特定の色を置き換えるにはどうすればよいですか?

特定の色に置き換えて、要素を強調したり、強調しなかったりします。 テキストを目立たせたり、問題のあるコントラストを修正したりする場合に使用します。

なぜ色の置き換えにおいて公差が重要なのか

ReplaceColorメソッドは現在色、新しい色、および許容値を必要とします。 より高い耐性は、ぼやけた画像をよりよく処理します。

許容誤差は、ピクセルがターゲットカラーとどの程度一致しなければならないかを決定します。 低い値(0~50)が均一な色に適しています。 高い値(100~200)は、アンチエイリアステキストや圧縮アーチファクトを処理します。 これは、インクのにじみや紙の質感によってばらつきが生じるスキャン文書に役立ちます。

色の置き換えを実装するにはどうすればよいですか?

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");

高度な色置換シナリオをどのように扱えばよいですか?

複雑なシナリオのために複数の置換を連鎖させます:

/* :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);

複雑な色の置換については、画像補正フィルターを参照してください。

色置換の視覚的な結果は何ですか?

置換前の元の色を示す、青い背景にオレンジレッド色の名前と内容があるテキストサンプル
Document after color replacement showing dark cyan headers replacing original orange-red text

特定のテキストの色だけを読むにはどうすればよいですか?

SelectTextColorメソッドを使用して特定のテキストの色を読み取ります。 ターゲットカラーと許容範囲(0~255)を指定してください。 許容誤差は、R、G、B値について、ピクセルと選択された色との間の許容可能な差異を表します。

色の許容範囲は結果にどのように影響しますか?

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);

色分けされたセクションのあるフォーム、ハイライトされたテキストの抽出、特定の警告メッセージの読み取りには、選択的なカラー読み取りを使用します。 構造化データ抽出については、高度な処理についてはOcrResult Classを参照してください。

カラー選択からどのような出力が期待できますか?

OCRの結果は、オレンジ色のテキストのみを読み取ります:

OCRで抽出されたオレンジ色のテキストを示すデバッグ・コンソール:ビジネス文書からMASAYOSHI SONとYASUMITSU SHIGETAを抽出したデバッグコンソール

フィルタを適用して変更した PDF を保存するには?

IronOCRはフィルタの有無にかかわらず、変更されたPDFを保存します。 SaveAsSearchablePdfメソッドの2番目のパラメータは、フィルターを適用して保存するかどうかを指定します。

検索可能なPDFの実装とは何ですか?

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);

保存したPDFにフィルタを適用するのはいつですか?

よりクリーンで読みやすいドキュメントを作成するには、フィルタを適用します。 これは、アーカイブ目的や異なるデバイス間でのドキュメント共有に役立ちます。 詳細については、OCRで検索可能なPDFを作成するを参照してください。

テーブルを含む複雑なドキュメントについては、Read Table in Document で特殊な抽出をお試しください。 大量の処理については、Multithreaded Tesseract OCR を参照して、複数のドキュメントにまたがるフィルターアプリケーションを最適化してください。

よくある質問

OCRの精度に影響する画像の色の悪さを修正するにはどうすればよいですか?

IronOCRは二値化、グレースケール変換、反転、色置換を含むいくつかの色補正方法を提供します。これらのフィルターは、テキストと背景のコントラストを強調することでテキストの可読性を向上させ、OCRエンジンが色品質の悪い画像からテキストを正確に抽出することを容易にします。

二値化とは何ですか?

二値化は、IronOCRの二値化メソッドを使用して画像を二色形式(通常は白黒)に変換します。画像を分析し、分離に最適なしきい値を決定することで、テキストと背景を明確に区別するため、照明ムラや背景ノイズのあるスキャン文書に特に効果的です。

画像から特定の色のテキストだけを抽出する方法を教えてください。

IronOCRのSelectTextColorメソッドは、複雑な画像操作をすることなく、特定のテキスト色にOCRをフォーカスすることができます。例えばSelectTextColor(new IronSoftware.Drawing.Color("#DB645C"), 60)のように、対象となる色と許容範囲を指定するだけで、その色範囲のテキストのみを抽出することができます。

画像を2値化せずにグレースケールに変換するのはどのような場合ですか?

IronOCRのToGrayScaleメソッドは、テキスト認識の妨げとなる色付きの背景や透かしを扱う場合に使用します。二値化とは異なり、グレースケールは微妙に変化する画像のディテールを保持するので、視覚的な乱雑さを抑えながら画質を維持する必要がある場合に最適です。

カラーフィルターの結果を見るために、補正した画像をエクスポートできますか?

はい、IronOCRはSaveAsImagesメソッドを提供し、色調補正後の画像をエクスポートします。これにより、補正前と補正後の結果を比較することができ、どの色補正方法が特定の画像に最適かを判断するのに役立ちます。

自分の画像に最適な色調補正フィルタを決定するにはどうすればよいですか?

IronOCRには、画像に最適なフィルターの組み合わせを決定するのに役立つフィルターウィザードツールが含まれています。バッチ処理では、二値化のような複数のフィルターを他の前処理技術と組み合わせることで、文書の種類に最適なOCR結果を得ることができます。

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
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

...
詳しく読む

準備はできましたか?

Nuget Downloads 6,236,385バージョン:2026.9リリースされたばかり

無料をゲット

30日間の試用キーをすぐに取得。

bullet_checkedクレジットカードやアカウントの作成は不要です。
bullet_test製品版でのテスト
透かしなし
bullet_calendar30日間
完全機能の製品
bullet_support試用期間中の
24/5テクニカルサポート
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. 「参照」を選択して「IronOCR」を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

または、Windowsインストーラーをこちらからダウンロード。

  1. IronOCRをダウンロードして、ソリューションディレクトリ内の~/Libsなどの場所に解凍します
  2. Visual Studioソリューションエクスプローラーで、リファレンスを右クリックします。「参照」、「IronOCR.dll」を選択

$999からのライセンス

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。