如何使用滤镜校正阅读图像

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

查克尼特·宾

图像校正滤镜是用来提高图像质量和特性的数字图像处理技术,特别是为了增强文本识别和提取的目的。 IronOcr中可用的图像校正滤镜包括锐化、提高分辨率、去噪、膨胀和腐蚀。

这些图像校正滤镜在OCR前的图像预处理中起着至关重要的作用,它们通过改善文本的质量和可见性以及减少不需要的噪声或伪影来帮助优化图像,以便准确提取文本。

开始使用IronOCR

立即在您的项目中开始使用IronOCR,并享受免费试用。

第一步:
green arrow pointer



锐化滤镜示例

此滤镜增强了图像边缘的对比度,使其外观更加清晰。 它提高了文本和细节的清晰度,使得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 方法应用侵蚀滤镜。 与前两种方法类似,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#
图片样本
应用了 Erode 过滤器
Chaknith related to 腐蚀滤镜示例

查克尼特·宾

软件工程师

Chaknith 是开发者中的福尔摩斯。他第一次意识到自己可能在软件工程方面有前途,是在他出于乐趣做代码挑战的时候。他的重点是 IronXL 和 IronBarcode,但他为能帮助客户解决每一款产品的问题而感到自豪。Chaknith 利用他从直接与客户交谈中获得的知识,帮助进一步改进产品。他的轶事反馈不仅仅局限于 Jira 票据,还支持产品开发、文档编写和市场营销,从而提升客户的整体体验。当他不在办公室时,他可能会在学习机器学习、编程或徒步旅行。