How to use the Filter Wizard

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

在圖像的光學字符識別(OCR)過程中進行預處理和準備時,這可能是令人畏懼的。 可以在圖像上使用多種過濾器; 然而,要嘗試和測試哪種組合最適合您的圖像可能是複雜的,因為這往往是因案而異的。 這個過程本身可能非常耗時,因為您需要反覆嘗試不同的組合來驗證哪種方法能產生最佳結果。

然而,IronOCR通過引入OcrInputFilterWizard提供了一種有效且簡單的方法來處理這個問題。 過濾器向導會自動評估預處理過濾器的組合,以最大化OCR的信心和準確性。 它進行“暴力”掃描以找到最佳設定,並另外以代碼片段的形式返回最佳過濾器組合,允許開發人員輕鬆重現結果。

在這個操作指南中,我們將快速演示過濾器向導的工作原理,並展示其使用的代碼片段和參數。

標題:2(快速入門:自動發現您的理想圖像過濾器鏈)

使用IronOCR的過濾器向導快速運行所有預處理過濾器組合並獲得最佳性能代碼片段——不需要猜測。 僅需一行代碼即可獲得最高信心分數和您應用於類似圖像的準確C#過濾器鏈。

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. Copy and run this code snippet.

    string code = OcrInputFilterWizard.Run("image.png", out double confidence, new IronTesseract());
  3. Deploy to test on your live environment

    Start using IronOCR in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

最小化工作流程(5步)

  1. 下載C#庫以使用過濾器向導
  2. 實例化IronTesseract引擎
  3. 將輸入圖像加載到OcrInputFilterWizard
  4. 運行過濾器向導並檢查輸出,如信心值
  5. 利用提供的代碼將其應用於輸入圖像,並驗證結果

過濾器向導範例

OcrInputFilterWizard.Run方法接收三個參數:輸入圖像,一個用於結果信心級別的out參數,以及Tesseract引擎實例。

它使用暴力法通過反覆組合不同的預處理過濾器來達到最佳信心分數。 最終的最高信心分數決定了您應當將哪一組預處理圖像過濾器應用於您的輸入圖像。

請注意,過濾器向導中沒有預設,也沒有嘗試組合的限制。 過濾器向導的主要目標是通過測試各種圖像過濾器組合來達到最佳的信心分數。

以下是可以在其組合中使用的所有過濾器列表。 請注意,這些都是IronOCR庫中提供的過濾方法:

  • input.Contrast()
  • input.Sharpen()
  • input.Binarize()
  • input.ToGrayScale()
  • input.Invert()
  • input.Deskew()
  • input.Scale(...)
  • input.Denoise()
  • input.DeepCleanBackgroundNoise()
  • input.EnhanceResolution()
  • input.Dilate(), input.Erode()

要更深入了解每個單獨過濾器的作用,請參考我們在圖像過濾器上的這篇詳細教程

警告由於這是暴力法,此操作將需要一些時間來完成,因為它會測試很多可能性以找到您圖像的最佳結果。

輸入

對於此輸入,我們將使用一幅包含大量人造噪音的截圖來說明過濾器向導的功能。

class="content-img-align-center">
style="width=50%"> 輸入圖像

代碼

:path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-process.cs
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);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

輸出

class="content-img-align-center">
style="width=50%"> 過濾器向導輸出

正如您從其輸出中看到的,通過所有組合,過濾器向導確定65%的信心分數是這張特定圖像所能達到的最佳結果。

警告輸入圖像受到大量扭曲和人造噪音的嚴重影響。這是為了說明即使在挑戰性場景下,IronOCR的過濾器向導也能提供幫助的一個極端案例。

過濾器向導最佳組合

過濾器向導運行後,我們可以遵循其提供的代碼片段。 我們將這些精確設置應用於我們的輸入圖像以驗證結果和信心值。

代碼

:path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-best-combination.cs
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}");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

輸出

class="content-img-align-center">
style="width=50%"> 圖像輸出

正如你所見,即使在這些嚴重扭曲的情況下,IronOCR也能識別出大部分文本,並且信心水平與過濾器向導報告的相符。

常見問題解答

IronOCR中的篩選精靈是什麼?

IronOCR 中的濾鏡精靈是一個旨在透過產生針對特定影像類型量身定制的自訂影像處理程式碼來提高 OCR 準確性的工具。

篩選嚮導如何提高 OCR 準確率?

濾鏡精靈允許使用者建立自訂影像處理濾鏡,這些濾鏡可以在執行 OCR 之前應用於影像,從而提高 OCR 的準確性,確保更好的文字辨識結果。

我可以使用篩選精靈處理不同類型的影像嗎?

是的,篩選器精靈可用於為各種影像類型產生自訂處理程式碼,使其能夠靈活滿足不同的 OCR 需求。

篩選嚮導對初學者來說難用嗎?

篩選嚮導的設計以使用者友善性為核心,讓初學者和經驗豐富的使用者都能輕鬆上手,增強他們的 OCR 專案。

在OCR中使用自訂影像處理程式碼有哪些好處?

使用自訂影像處理程式碼可以顯著提高文字擷取準確率,尤其是在對比度低的影像或有雜訊的影像等具有挑戰性的條件下。

我需要具備程式設計技能才能使用篩選精靈嗎?

雖然程式設計技能可能有所幫助,但濾鏡精靈簡化了產生影像處理程式碼的流程,讓具有不同技術背景的使用者都能輕鬆上手。

篩選精靈可以處理批次處理嗎?

篩選精靈能夠產生可整合到批次處理工作流程中的程式碼,從而實現對多張影像的高效處理。

哪些類型的影像最適合使用濾鏡精靈?

對比度低、雜訊多或背景複雜的影像可以顯著受益於濾鏡精靈的自訂處理功能,從而提高 OCR 結果。

如何在IronOCR中存取篩選嚮導?

使用者可以透過 IronOCR 套件存取過濾器精靈,該精靈為使用者提供自訂影像處理的工具,以優化 OCR 效能。

是否有關於使用篩選精靈的支援?

IronOCR 提供文件和支援資源,以協助使用者有效地利用篩選精靈完成 OCR 任務。

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'name'

Filename: sections/author_component.php

Line Number: 18

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 18
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'title'

Filename: sections/author_component.php

Line Number: 38

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 38
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'comment'

Filename: sections/author_component.php

Line Number: 48

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 48
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

準備好開始了嗎?
Nuget 下載 5,044,537 | 版本: 2025.11 剛剛發布