IRONSOFTWAREHOME

より良い OCR のために C#35 のフィルター ウィザードを使用する方法

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

IronOCRフィルターウィザードは自動的に最適なOCR設定を見つけるために画像上ですべての前処理フィルターの組み合わせをテストし、最高の信頼スコアと結果を再現するために必要な正確なC#コードの両方を返します。

OCRのための画像の前処理は困難です。 複数のフィルターを使用することで、認識を向上させることができますが、適切な組み合わせを見つけるには、広範な試行錯誤が必要です。 画像にはそれぞれ独自の課題があり、手作業によるテストには時間がかかります。 これは、低画質のスキャン画像や、ノイズや歪みのレベルがさまざまな画像を扱う場合に特に当てはまります。

IronOCRのOcrInputFilterWizardはこの問題を解決します。 フィルタウィザードは、フィルタの組み合わせを自動的に評価し、OCRの信頼性と精度を最大化します。 最適な設定を徹底的にテストし、最適なフィルタの組み合わせをコード・スニペットとして返すので、結果を簡単に再現できます。 この機能は、OcrInputクラスとシームレスに統合され、画像へのフィルタ適用を簡素化します。

このガイドでは、フィルタウィザードがどのように動作するかを示し、それが使用するコードスニペットとパラメータを紹介します。 その他の OCR ワークフローの最適化については、画質補正に関するガイドをご覧ください。

クイックスタート: 理想的な画像フィルターチェーンを自動的に発見する

IronOCRのフィルターウィザードを使用して、すべての前処理フィルターの組み合わせをテストし、最適なコードスニペットを入手してください。 1行で最高信頼度スコアと、類似画像に対する正確なC#フィルターチェーンを返します。

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

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

    string code = OcrInputFilterWizard.Run("image.png", out double confidence, new IronTesseract());
    C#
  3. 3実際の環境でテストするためにデプロイする

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

フィルター ウィザードはどのように機能しますか?

OcrInputFilterWizard.Runメソッドは3つのパラメータを取ります:入力画像、結果の信頼レベルに対するoutパラメータ、およびTesseract Engineインスタンス。 高度なエンジン制御については、Tesseract詳細設定のガイドをご覧ください。

最高の信頼スコアを達成するために、前処理フィルタの複数の組み合わせをテストします。 最高信頼度スコアは、入力画像に適用するフィルタセットを決定します。 このアプローチは、画像の向き補正やその他の複雑な前処理ステップを必要とする難しい画像に効果的に作用します。

フィルターウィザードには、プリセットや組み合わせの制限はありません。 また、包括的なフィルターテストにより、最高の信頼スコアを達成することに重点を置いています。 処理中のリアルタイムのフィードバックのために、ウィザードの操作を監視する進捗追跡を実装してください。

組み合わせテストで利用可能なフィルタ:

  • input.Contrast() - テキストの鮮明さのためにコントラストを調整します。
  • input.Sharpen() - エッジ定義を強化します。
  • input.Binarize() - 白黒に変換します。
  • input.ToGrayScale() - 色情報を除去します。
  • input.Invert() - 色を反転させます。
  • input.Deskew() - 傾いたテキストを補正します。
  • input.Scale(...) - 最適な寸法にリサイズします。
  • input.Denoise() - ピクセルノイズを除去します。
  • input.DeepCleanBackgroundNoise() - 高度なノイズ除去
  • input.EnhanceResolution() - 低品質の解像度を向上させます。
  • input.Dilate(), input.Erode() - テキスト洗練操作

フィルタの詳細については、画像フィルタに関するチュートリアルを参照してください。 その他の前処理テクニックは、画像補正フィルターガイドにあります。

この徹底的なテスト方法には、処理時間が必要です。大規模な処理には、マルチスレッド サポートを使用して、複数の画像を同時に処理します。

テストにはどのような画像を使用すればよいですか?

この例では、フィルターウィザードの機能を示すために、人工ノイズの多いスクリーンショットを使用しています。 フィルタ ウィザードは、スキャンしたドキュメントからテキスト付き写真まで、さまざまな画像タイプを効果的に処理します。

フィルタウィザードのデモ用に劣化したテキストを示すノイズパターンを含む激しく破損したテスト画像

テスト画像を選択する際には、以下の要素を考慮してください:

  • 画像解像度:通常、DPIが高い画像ほど良い結果が得られます。 最適化のヒントについては、DPI設定に関するガイドを参照してください。
  • ドキュメントタイプ:異なるドキュメントタイプは、特定のフィルタの組み合わせから恩恵を受けます。 アイデンティティ文書は、標準的なテキスト文書とは異なる前処理が必要な場合があります。
  • ソースの品質: フィルターウィザードは問題のある画像を得意としますが、可能な限り利用可能な最高品質のソースから始めます。

自分のコードでフィルタ ウィザードを実行するにはどうすればよいですか?

using IronOcr;
using System;

// Initialize the Tesseract engine
var ocr = new IronTesseract();

// 1. Pass the image path ("noise.png").
// 2. Pass an 'out' variable to store the best confidence score found.
// 3. Pass the tesseract instance to be used for testing.
string codeToRun = OcrInputFilterWizard.Run("noise.png", out double confidence, ocr);

// The 'confidence' variable is now populated with the highest score achieved.
Console.WriteLine($"Best Confidence Score: {confidence}");

// 'codeToRun' holds the exact C# code snippet that achieved this score.
// The returned string is the code you can use to filter similar images.
Console.WriteLine("Recommended Filter Code:");
Console.WriteLine(codeToRun);

フィルタウィザードは、さまざまな入力形式を処理します。 サポートされているフォーマットについては、入力画像に関するガイドを参照してください。 PDFファイルを処理したり、動的な画像ソースのストリームを直接操作することもできます。

バッチ処理のシナリオについては、次の例を参考にしてください:

/* :path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-batch.cs */
using IronOcr;
using System;
using System.IO;

// Process multiple similar images
var ocr = new IronTesseract();
string[] imageFiles = Directory.GetFiles(@"C:\Images", "*.png");

// Run Filter Wizard on first image to discover optimal settings
string optimalCode = OcrInputFilterWizard.Run(imageFiles[0], out double baselineConfidence, ocr);
Console.WriteLine($"Baseline confidence: {baselineConfidence:P2}");
Console.WriteLine($"Optimal filter sequence discovered");

// Apply discovered filters to all images
foreach (string imagePath in imageFiles)
{
    using (var input = new OcrImageInput(imagePath))
    {
        // Apply the filter sequence discovered by the wizard
        // The actual filters would be applied here based on the wizard output
        var result = ocr.Read(input);
        Console.WriteLine($"Processed: {Path.GetFileName(imagePath)} - Confidence: {result.Confidence:P2}");
    }
}

フィルタウィザードはどのような結果を返しますか?

フィルタウィザードのコンソール出力(信頼度65%)と生成された画像処理メソッドのC#コード

フィルターウィザードの出力は、この特定の画像に対して達成可能な最良の結果として65%の信頼度を示しています。 信頼度スコアは、OCRの精度を評価するための重要な指標です。 結果の信頼性については、専用ガイドをご覧ください。

入力画像には極端な歪みと人工的なノイズが含まれています。これは、困難なシナリオにおけるフィルタウィザードの機能を示しています。 本番用には、可能な限り高品質のソース画像から始めてください。

生成されたコード・スニペットは以下を提供します:

  • 正確なフィルタシーケンス: 最適な結果を得るためには、操作の順序が重要です。
  • メソッドチェイニング:実装が簡単な、クリーンで読みやすいコード
  • 推測するパラメータはありません: 各フィルタは最高のパフォーマンスを発揮するように設定されています。

推奨されるフィルタの組み合わせを適用するにはどうすればよいですか?

フィルタウィザードを実行した後、提供されたコードスニペット設定を入力画像に適用して、結果と信頼性を確認してください。 これにより、文書処理パイプラインの類似画像間で再現可能な結果が保証されます。

どのように推奨コードを実装しますか?

using IronOcr;
using System;

// Initialize the Tesseract engine
var ocrTesseract = new IronTesseract();

// Load the image into an OcrInput object
using (var input = new OcrImageInput("noise.png"))
{
    // Apply the exact filter chain recommended by the Wizard's output
    input.Invert();
    input.DeNoise();
    input.Contrast();
    input.AdaptiveThreshold();

    // Run OCR on the pre-processed image
    OcrResult result = ocrTesseract.Read(input);

    // Print the final result and confidence
    Console.WriteLine($"Result: {result.Text}");
    Console.WriteLine($"Confidence: {result.Confidence}");
}

フィルターアプリケーションの順序は非常に重要です。 フィルタウィザードは、使用するフィルタとその最適な順序の両方を決定します。 このインテリジェントな順序付けにより、フィルタウィザードは複雑な前処理シナリオで威力を発揮します。

OCRプロセスの制御を強化するために、エラー処理と検証の実装を検討してください:

/* :path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-validation.cs */
using IronOcr;
using System;

var ocrEngine = new IronTesseract();

try
{
    using (var input = new OcrImageInput(@"C:\Images\document.png"))
    {
        // Apply Filter Wizard recommended sequence
        input.Invert();
        input.DeNoise();
        input.Contrast();
        input.AdaptiveThreshold();
        
        // Configure additional OCR settings
        ocrEngine.Configuration.ReadBarCodes = false;
        ocrEngine.Configuration.RenderSearchablePdf = true;
        
        // Perform OCR with timeout protection
        var result = ocrEngine.Read(input);
        
        // Validate results
        if (result.Confidence >= 0.6)
        {
            Console.WriteLine("OCR successful with high confidence");
            // Process the extracted text
        }
        else
        {
            Console.WriteLine("Low confidence result - consider manual review");
        }
    }
}
catch (Exception ex)
{
    Console.WriteLine($"OCR processing error: {ex.Message}");
}

フィルターを適用した後の最終的なOCR結果はどうなりますか?

OCR結果を示すターミナル:抽出されたテキスト"Testing:フィルタウィザード適用後、65.61%の信頼度で"Testin"が抽出された。

IronOCRは大きく歪んだ状態でもほとんどのテキストを抽出します。 信頼度は、フィルタウィザードのレポートと一致します。 OCR結果の詳細な処理については、データ出力に関するガイドを参照してください。

どのような高度な使い方を考慮すべきですか?

フィルタウィザードを実運用で使用する場合は、以下のベストプラクティスを考慮してください:

1.バッチ処理:代表的なサンプルでテストし、類似した画像にフィルターチェーンを適用します。

2.パフォーマンスの最適化: フィルターウィザードは徹底していますが、時間がかかります。 高速 OCR については、高速 OCR 設定を参照してください。

3.カスタム言語サポート:英語以外のテキストについては、複数の言語を探索し、認識を最適化します。

4.APIインテグレーションAPIリファレンスで完全なドキュメントをご覧ください。

5.ドキュメント固有の最適化:文書の種類によって、特化したアプローチの恩恵を受けることができます:

  • フォームについては、テーブルを読むを検討してください。
  • コンテンツが混在している場合は、BarCode読み取りを有効にしてください。
  • 複数ページのドキュメントについては、TIFF処理を参照してください。
  1. メモリ管理: OcrInput オブジェクトを適切に解放します。

7.エラーリカバリー: 信頼性の低い結果に対するフォールバック戦略を実装します。 重要な文書については、手作業によるレビューを検討してください。

フィルタウィザードは、最適なOCR結果を得るための強力な自動前処理ディスカバリを提供します。 特定の画像に最適な前処理パイプラインを自動的に見つけることで、画像の準備から推測を排除し、アプリケーション全体で一貫した高品質のテキスト抽出を保証します。

よくある質問

OCR Filter Wizardとは何ですか?また、画像の前処理にどのように役立ちますか?

IronOCRフィルターウィザードは、最適なOCR設定を見つけるために、画像上ですべての可能な前処理フィルターの組み合わせをテストする自動化されたツールです。OCRの信頼性と精度を最大化するために様々なフィルターの組み合わせを自動的に評価し、最適なフィルターの組み合わせをすぐに使えるC#コードスニペットとして返すことで、手作業による試行錯誤のプロセスを排除します。

C# アプリケーションでフィルタウィザードを使用するにはどうすればよいですか?

OcrInputFilterWizard.Run()に画像パス、信頼度スコアのoutパラメータ、IronTesseractインスタンスを指定するだけです。例えば: string code = OcrInputFilterWizard.Run("image.png", out double confidence, new IronTesseract());

OcrInputFilterWizard.Runメソッドはどのようなパラメータを受け取りますか?

IronOCRのOcrInputFilterWizard.Runメソッドは3つのパラメーターを受け取ります:入力画像(ファイルパス)、結果の信頼度を返すoutパラメーター、そして処理用のIronTesseractエンジンのインスタンスです。

フィルタを手動でテストする代わりにフィルタウィザードを使用する理由は何ですか?

手作業による前処理フィルターのテストは時間がかかり、特に低画質スキャンやノイズレベルの異なる画像では困難です。IronOCRのフィルターウィザードはこのプロセスを自動化し、フィルターの組み合わせを徹底的にテストし、必要なC#コードで最高の信頼スコアを返すことで、開発時間を大幅に節約します。

フィルタウィザードは、どのようにして最適なフィルタの組み合わせを決定するのですか?

IronOCRのフィルターウィザードは、前処理フィルターの複数の組み合わせを画像上でテストし、それぞれの組み合わせのOCR信頼度スコアを測定します。そして、最も高い信頼スコアを達成するフィルターセットを選択し、この最適な組み合わせを実行可能なC#コードとして返します。

フィルタウィザードは、低画質画像やノイズの多い画像でも機能しますか?

はい、IronOCRのフィルターウィザードは、低画質スキャンや様々なノイズや歪みレベルの画像を含む困難な画像に特に効果的です。難しい原稿でもOCRの精度を最大にする最適な前処理の組み合わせを自動的に見つけます。

What factors should be considered when selecting test images for the Filter Wizard?

When selecting test images, consider factors like image resolution, document type, and source quality, as these can affect the filter evaluation process and OCR performance.

How can I optimize the Filter Wizard for large-scale operations?

For large-scale operations, consider using multithreading to process multiple images simultaneously, and implement performance optimizations like the fast OCR configuration to reduce processing time.

What advanced usage tips are recommended for using the Filter Wizard?

Advanced tips include batch processing, performance optimization, custom language support, API integration, document-specific optimization, memory management, and error recovery strategies.

Is the Filter Wizard suitable for handling different document types?

Yes, the Filter Wizard can optimize OCR processing for various document types by automatically finding the best preprocessing pipeline, applicable to forms, mixed content, multi-page documents, and more.

Curtis Chau
テクニカルライター

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

...
詳しく読む

準備はできましたか?

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

あなたの無料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日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。