如何使用濾鏡修正圖像以便讀取

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

查克尼思·賓

影像校正濾鏡是數位影像處理技術,用於提高影像的品質和特性,尤其是為了增強文字識別和提取的目的。IronOCR 提供的影像校正濾鏡包括銳化、增強解析度、去噪、擴張和侵蝕。

這些影像校正濾鏡在文本預處理之前的圖像預處理中扮演著至關重要的角色,因為它們通過改善文本的品質和可見性並減少不需要的噪音或 artifacts 來幫助優化圖像以實現準確的文字提取。


C# NuGet 程式庫用于 OCR

安裝與 NuGet

Install-Package IronOcr
Java PDF JAR

下載 DLL

下載DLL

手動安裝到您的項目中

C# NuGet 程式庫用于 OCR

安裝與 NuGet

Install-Package IronOcr
Java PDF JAR

下載 DLL

下載DLL

手動安裝到您的項目中

立即開始在您的專案中使用IronPDF,並享受免費試用。

第一步:
green arrow pointer

查看 IronOCRNuget 快速安裝和部署。已被下載超過800萬次,它正用C#改變OCR。

C# NuGet 程式庫用于 OCR 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 Filter 範例

侵蝕會縮小或減少圖片中亮區域的大小。這在精細化字元和線條時特別有用,尤其是在它們比較粗或略有變形時。

使用 Erode 方法應用侵蝕濾鏡。與前兩個方法類似,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#
示例圖片
應用了侵蝕過濾器

查克尼思·賓

軟體工程師

Chaknith 是開發者界的夏洛克福爾摩斯。他第一次意識到自己可能有個軟體工程的未來,是在他為了娛樂而參加程式挑戰的時候。他的重點是 IronXL 和 IronBarcode,但他也引以為豪的是,他幫助客戶解決所有產品的問題。Chaknith 利用他與客戶直接對話中獲得的知識,以進一步改進產品。他的實際反饋超越了 Jira 工單,並支持產品開發、文件撰寫和行銷,以提升客戶的整體體驗。不在公司時,他通常在學習機器學習、寫程式和徒步旅行。