在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
光学字符识别(OCR)技术已成为自动提取图像中文本的宝贵工具,使得数据检索和分析更加高效,减少人为错误。 该技术可用于读取驾驶执照、护照、机构官方文件、身份证、居留证卡以及多种语言和不同国家的旅行证件的准确到期日期、国籍出生日期等信息。所有提取的数据都可以进一步输入机器学习和人工智能软件产品。
在本文中,我们将探讨如何利用IronOCR,一款由Iron Software提供的强大C# OCR库,从身份证件中读取和提取信息。 IronOCR 提供了一种简单而灵活的OCR解决方案,以API的形式用于OCR任务,是希望将OCR软件功能集成到其应用程序中的开发人员的绝佳选择。
IronOCR 使计算机能够识别和提取图像中的文本,扫描现有文档或任何其他文本的视觉表示。 要提取数据,需要经过一系列复杂的过程,模仿人类通过视觉感知和解读文本的方式。 这一过程包括图像预处理、文本检测、字符分割、特征提取、字符识别和纠正错误的后处理。
在 Visual Studio 中创建一个新的 C# 项目
安装IronOCR .NET 库并将其添加到您的项目中。
使用IronOCR库读取身份证件图像。
从 PDF 阅读身份文件。
IronOCR,由Iron Software开发和维护,是为C#软件工程师打造的强大库,便于在.NET项目中实现OCR、条形码扫描和文本提取。
能够从多种格式读取相关数据,包括图像(JPEG、PNG、GIFF、TIFF、BMP)、流和PDF文件。
通过一系列滤镜(如纠偏、去噪、二值化、增强分辨率、放大等)纠正低质量扫描和照片。
支持读取各种格式的条形码,包括 20 多种条形码类型,并增加了 QR 码识别功能。
使用 Tesseract OCR 的最新版本,在从图像中提取文本时经过微调以获得最佳性能。
允许从图像文件中导出可搜索的 PDF、HTML 和文本内容,灵活管理提取的信息。
现在,让我们深入了解利用 IronOCR 阅读 ID 文档的演示应用程序的开发过程。
Visual Studio: 确保已安装Visual Studio或任何其他C#开发环境。
首先在 Visual Studio 中创建一个全新的 C# 控制台应用程序,或者利用现有项目。 从菜单中选择添加新项目,然后从下面的模板中选择控制台应用程序。
请在以下窗口中提供项目名称和位置
选择所需的 .NET 版本
单击 "创建 "按钮创建新项目。
IronOCR 可以在 NuGet 包管理器中找到,并可以使用命令提示符通过以下命令进行安装。
IronOCR 可以通过 Visual Studio 安装。 打开NuGet包管理器,搜索IronOCR,如下图所示,然后点击安装
安装后,应用程序即可使用IronOCR读取任何身份证件以进行数据提取和身份验证,从而减少手动数据输入工作。
使用 OCR 处理身份证件涉及许多步骤,下面将详细介绍。
OCR ID 文档处理从获取包含文本的图像开始。 该图像可以是扫描的身份证件、身份证照片或任何其他文本的视觉呈现。 身份证预处理步骤可能包括调整大小、降噪和增强,以提高图像的质量和清晰度。
OCR 算法需要定位图像中存在文本的特定数据区域。 这一步涉及识别文本区域或边界框。
一旦识别出文本区域或数据字段,就需要进一步分析图像以分割单个字符。 这一步对于使用不同字符的语言(如英语或中文)至关重要。
OCR 算法分析分割的字符,提取有助于区分不同字符的特征。 这些特征可能包括笔画模式、形状和元素之间的空间关系。
根据提取的特征,OCR 算法会对每个分割的字符进行分类,并为其分配相应的文本表示。 在这一步骤中,通常会使用神经网络等机器学习模型。
被识别的字符可能需要经过后期处理,以纠正错误或提高准确性。 这一步骤可能涉及字典修正、上下文分析或语言建模。
IronOCR 库处理上述所有步骤,使我们只需几行代码即可执行OCR,节省了耗时的繁琐任务。
using IronOcr;
class Program
{
public static void Main()
{
IronTesseract ocrTesseract = new IronTesseract()
{
Language = OcrLanguage.EnglishBest,
Configuration = new TesseractConfiguration()
{
ReadBarCodes = false,
BlackListCharacters = "`ë
^",
PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd,
}
};
using var ocrInput = new OcrInput("id1.png");
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
using IronOcr;
class Program
{
public static void Main()
{
IronTesseract ocrTesseract = new IronTesseract()
{
Language = OcrLanguage.EnglishBest,
Configuration = new TesseractConfiguration()
{
ReadBarCodes = false,
BlackListCharacters = "`ë
^",
PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd,
}
};
using var ocrInput = new OcrInput("id1.png");
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
Imports IronOcr
Friend Class Program
Public Shared Sub Main()
Dim ocrTesseract As New IronTesseract() With {
.Language = OcrLanguage.EnglishBest,
.Configuration = New TesseractConfiguration() With {
.ReadBarCodes = False,
.BlackListCharacters = "`ë ^",
.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd
}
}
Dim ocrInput As New OcrInput("id1.png")
Dim ocrResult = ocrTesseract.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End Sub
End Class
以下是作为程序输入的图片样本
上述代码使用IronOCR库读取身份证件中的所有文本字段。 我们使用 IronTesseract 类来自 IronOCR 库,并将其配置为使用英语和一些被列入黑名单的字符。 然后我们使用OcrInput类声明OCR输入,然后从图像中读取文本。 提取的文本字段可以在控制台输出中看到。
我们也可以阅读 PDF 文档。 为此,我们可以使用来自Iron Software的IronPDF库。 首先,像下面这样安装库
using IronOcr;
using IronPdf;
class Program
{
public static void Main()
{
var pdfReader = new PdfDocument("id1.pdf");
var ocrTesseract = new IronTesseract();
using var ocrInput = new OcrInput();
ocrInput.AddPdf(pdfReader.Stream);
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
using IronOcr;
using IronPdf;
class Program
{
public static void Main()
{
var pdfReader = new PdfDocument("id1.pdf");
var ocrTesseract = new IronTesseract();
using var ocrInput = new OcrInput();
ocrInput.AddPdf(pdfReader.Stream);
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
Imports IronOcr
Imports IronPdf
Friend Class Program
Public Shared Sub Main()
Dim pdfReader = New PdfDocument("id1.pdf")
Dim ocrTesseract = New IronTesseract()
Dim ocrInput As New OcrInput()
ocrInput.AddPdf(pdfReader.Stream)
Dim ocrResult = ocrTesseract.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End Sub
End Class
上面的代码使用IronPDF加载id.PDF文档,并将此PDF作为流传递给OcrInput和ocrTesseract。
IronOCR。 此密钥需要放在appsettings.json中。
"IRONOCR-LICENSE-KEY": "your license key"
"IRONOCR-LICENSE-KEY": "your license key"
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'"IRONOCR-LICENSE-KEY": "your license key"
提供用户电子邮件 ID 以获取试用许可证。
1. 金融服务中的身份验证:
使用案例:银行和金融机构在客户入职和 KYC 流程中使用 OCR 阅读身份证件,如护照、驾照和身份证。
优点确保账户创建、贷款申请和其他金融交易的身份验证准确高效。
2. 边境管制与移民:
使用案例:移民局在边境检查站使用 OCR 技术读取和验证护照和签证上的信息。
优点简化移民流程,提高安全性,减少手动数据输入错误。
3. 访问控制和安全:
使用案例:OCR 用于门禁控制系统,从身份证、员工徽章或面部识别扫描中读取信息,以便安全进入建筑物或禁区。
优势:确保只有经授权的人才能访问,并提供输入的数字记录,从而提高安全性。
4. 电子政务服务:
使用案例:政府机构使用 OCR 处理和验证在线提交的身份证件,以提供驾驶执照更新、报税和许可证申请等服务。
优点提高效率,减少文书工作,提升市民的整体体验。
5. 医疗身份验证:
使用案例:医疗保健提供商使用 OCR 读取患者身份证、保险卡和其他身份文件中的信息,以准确保存患者记录。
优点便于准确识别病人,确保正确的病历管理,并支持计费流程。
6. 自动化酒店入住:
使用案例:酒店通过扫描客人的身份证件来实现 OCR 自动化入住流程,从而简化登记流程。
优点提升客人体验,缩短入住时间,最大限度地减少捕捉客人信息时的错误。
7. 智慧城市与公共服务:
使用案例:OCR 被应用于智慧城市计划,用于读取身份文件,以提供公共交通访问、图书馆会员资格和城市活动注册等服务。
益处:提高公共服务的效率,促进无缝接入,提升城市生活体验。
8. 教育管理:
使用案例:教育机构在学生入学、考试和颁发学历证书时使用 OCR 处理和验证身份证件。
优点确保准确的学生记录,减轻行政负担,提高学术流程的完整性。
将OCR技术集成到您的C#应用程序中,使用IronOCR可以高效地从身份证件中提取信息。 这本综合指南提供了设置项目并使用IronOCR读取和处理身份证件图像的必要步骤。 使用代码示例进行实验,根据您的具体要求定制提取过程,为处理身份文档数据提供无缝和自动化的解决方案。