読み取りのための画像色の修正方法
画像の色を修正するには、画像の視認性と品質を向上させるためのいくつかの技術が含まれます。 IronOCRは、OCRを使用するときに特に重要な、画像内のテキストやコンテンツをより読みやすく、また美しくするために、二値化、グレースケール、反転、および色置換の方法を提供します。(光学文字認識)画像からテキストを抽出するために。 選択されたテキストの色のみを読み取ることも可能です。
IronOCRを始めましょう
今日から無料トライアルでIronOCRをあなたのプロジェクトで使い始めましょう。
読み取りのための画像色の修正方法
- 画像の色を補正するためのC#ライブラリをダウンロードする
- PDFドキュメントと画像をインポートして読み込みます
- 希望するカラーエフェクトを適用します。たとえば、2値化、グレースケール、反転、カラー置換など。
- 修正された画像をエクスポートして表示します
- 以下を日本語に翻訳します:
特定のテキストの色を読み取るために
テキスト色の選択
メソッド
画像の二値化例
このプロセスは画像を二色形式、通常は白黒に変換します。これは、背景からテキストを分離し、ノイズを減らして、テキストをより鮮明で読みやすくするのに役立ちます。
画像に二値化効果を適用するには、Binarize
メソッドを使用してください。 OCR処理は、黒い文字を白い背景に表示した高コントラストの画像で最も効果的に機能するため、この方法は背景を文字から非常に際立たせるのに重要です。
: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");
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")
利便性のために、SaveAsImages
メソッドを使用して修正された画像をエクスポートできます。 以下は、二値化前後の画像の比較です。
前
以下を日本語に翻訳してください: After
グレースケール画像例
画像を様々なグレーの階調に変換することで、より目立たなくなり、読者に優しくなります。 画像の元の色が視覚的な乱雑を引き起こしている場合、これは特に役立ちます。
画像にグレースケール効果を適用するには、ToGrayScale
メソッドを使用します。 グレースケール処理は、R、G、およびB値の平均を取ることを含みます。
: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()
前
以下を日本語に翻訳してください: After
画像の反転例
色を反転させることでコントラストを強調できます。例えば、黒い背景に白いテキストを白い背景に黒いテキストに変えると、可読性が向上します。
Invert
メソッドを使用して画像の色を反転させます。 このメソッドはオプションでブール値を受け取り、すべてのカラーチャンネルを削除してグレースケール画像を返すために使用されます。
: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()
以下の画像は、グレースケールオプションの有無にかかわらず、Invertメソッドを示しています。
反転
反転およびグレースケール
色の置換例
この技法は、画像内の特定の色を他の色に置き換えることができ、特定の要素を強調したり、目立ちにくくしたりするのに役立ちます。 これは、テキストをより目立たせたり、問題のある色のコントラストを修正したりするためによく使用されます。
ReplaceColor
メソッドを使用するには、置換する現在の色と新しい色を指定します。 メソッドの第三のパラメーターは、許容値に対応するものであり、これも重要です。 ぼやけた画像で目的の結果を達成するには、より高い許容範囲が必要です。
: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")
前
以下を日本語に翻訳してください: After
特定のテキストカラーを読み取る例
この機能は、指定された文字色のみを読み取ることを目的としています。 SelectTextColor
メソッドを使用して、IronOCR が注目する色と許容値を指定します。 許容値は0-255の範囲を受け入れます。この範囲はカラースペース内のR、G、B値ごとのピクセルカラーと選択されたカラーとの間の許容される違いを表します。
: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)
以下に、オレンジがかった色のテキストのみを読み取るために意図されたOCR結果を示します。