フィルターを使用して読み取りのために画像を修正する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

によって チャクニット・ビン

画像補正フィルタは、特にテキスト認識と抽出を強化するために、画像の品質と特性を向上させるために使用されるデジタル画像処理技術です。 IronOCRで利用可能な画像補正フィルターには、シャープ、解像度の向上、ノイズ除去、膨張、侵蝕が含まれます。

これらの画像補正フィルターは、OCRの前に画像を前処理する際に重要な役割を果たします。テキストの品質と視認性を向上させ、不要なノイズやアーティファクトを減らすことで、正確なテキスト抽出のために画像を最適化するのに役立ちます。


OCR 用 C# NuGet ライブラリ

でインストール NuGet

Install-Package IronOcr
または
Java PDF JAR(ジャバPDF JAR)

ダウンロード DLL (ディーエルエル)

DLLをダウンロード

プロジェクトに手動でインストールする

OCR 用 C# NuGet ライブラリ

でインストール NuGet

Install-Package IronOcr
または
Java PDF JAR(ジャバPDF JAR)

ダウンロード DLL (ディーエルエル)

DLLをダウンロード

プロジェクトに手動でインストールする

今日からプロジェクトでIronPDFを使い始めましょう。無料のトライアルをお試しください。

最初のステップ:
green arrow pointer

チェックアウト IronOCR オン Nuget 迅速なインストールと展開のために。8百万以上のダウンロード数により、OCRをC#で変革しています。

OCR 用 C# NuGet ライブラリ nuget.org/packages/IronOcr/
Install-Package IronOcr

インストールを検討してください IronOCR DLL 直接。ダウンロードして、プロジェクトまたはGACの形式で手動でインストールしてください。 IronOcr.zip

プロジェクトに手動でインストールする

DLLをダウンロード

シャープ化フィルターの例

このフィルターは画像の縁に沿ってコントラストを増加させ、それらをよりはっきりとした見た目にします。 それはテキストの明瞭さと詳細を向上させ、OCRソフトウェアが文字を認識しやすくします。

シャープフィルターを適用するには、単に OcrImageInput オブジェクトの Sharpen メソッドを呼び出します。

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-sharpen-filter.cs
using IronOcr;

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

// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Apply sharpen filter
imageInput.Sharpen();

// Export filtered image
imageInput.SaveAsImages("sharpen");
Imports IronOcr

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Apply sharpen filter
imageInput.Sharpen()

' Export filtered image
imageInput.SaveAsImages("sharpen")
VB   C#

便利のために、SaveAsImages メソッドを使用してフィルター処理された画像をエクスポートできます。 以下は、シャープフィルターを適用する前後の画像の比較です。

サンプル画像
シャープフィルター適用

解像度向上フィルターの例

このフィルターは画像の画素密度を向上させるように設計されており、その結果、鮮明さと明瞭さが効果的に改善されます。 低解像度の画像でのテキストの判読性を向上させるのに特に役立ちます。

同様に、EnhanceResolutionメソッドを呼び出して解像度を強化するフィルタを適用することができます。 この方法は、225 DPIをデフォルト値として希望のターゲットも受け入れます。

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-enhance-resolution-filter.cs
// Apply enhance resolution filter
imageInput.EnhanceResolution();
' Apply enhance resolution filter
imageInput.EnhanceResolution()
VB   C#
サンプル画像
解像度改善フィルターを適用しました

ノイズ除去フィルター例

ノイズ除去フィルターは、画像内のノイズや不要なアーティファクトのレベルを低減します。 ノイズリダクションは、背景干渉からテキストを分離し、よりきれいで正確な認識を実現するために、OCRにとって重要です。

ノイズ除去フィルターを適用するには、DeNoise メソッドを使用してください。 デフォルトの形態は2x2であり、メソッドに 'true' を渡すことで3x3の形態を有効にします。 3x3オプションを選択すると、より強力なノイズ除去アルゴリズムが適用されます。

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-denoise-filter.cs
// Apply denoise filter
imageInput.DeNoise();
' Apply denoise filter
imageInput.DeNoise()
VB   C#
サンプル画像
ノイズ除去フィルターが適用されました

膨張フィルターの例

膨張は、明るい領域を拡大するフィルターです。 (前景) 画像内で。 それはテキストを太くし、強調することにより、OCRソフトウェアが解釈しやすくします。

ダイレーションフィルターを適用するには、Dilateメソッドを使用してください。 DeNoise メソッドと同様に、デフォルトの形態は2x2であり、'true' を指定すると、3x3 オプションが有効になります。

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-dilate-filter.cs
// Apply dilate filter
imageInput.Dilate();
' Apply dilate filter
imageInput.Dilate()
VB   C#
サンプル画像
フィルター「Dilter」が適用されました

エロージョンフィルタの例

一方、侵食は画像の明るい領域のサイズを縮小または減少させます。 これは、文字や線が特に太すぎる場合や若干歪んでいる場合に、修正するのに役立ちます。

エロードフィルターを適用するには、Erodeメソッドを使用してください。 前の2つのメソッドと同様に、2x2は形態操作であり、trueを渡すことで3x3オプションが有効になります。

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-erode-filter.cs
// Apply erode filter
imageInput.Erode();
' Apply erode filter
imageInput.Erode()
VB   C#
サンプル画像
エロージョンフィルターが適用されました

チャクニット・ビン

ソフトウェアエンジニア

チャクニットは開発者のシャーロック・ホームズです。彼がソフトウェアエンジニアリングの将来性に気付いたのは、楽しみでコーディングチャレンジをしていたときでした。彼のフォーカスはIronXLとIronBarcodeにありますが、すべての製品でお客様を助けることに誇りを持っています。チャクニットは顧客と直接話すことで得た知識を活用して、製品自体のさらなる改善に貢献しています。彼の逸話的なフィードバックは、単なるJiraチケットを超えて、製品開発、ドキュメントおよびマーケティングをサポートし、顧客の全体的な体験を向上させます。オフィスにいないときは、機械学習やコーディングについて学んだり、ハイキングを楽しんだりしています。