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

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

下载 DLL

下载DLL

手动安装到你的项目中

适用于OCR的C# NuGet库

安装使用 NuGet

Install-Package IronOcr
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

开始在您的项目中使用IronPDF,并立即获取免费试用。

第一步:
green arrow pointer

查看 IronOCRNuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变OCR。

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