IronOCR 功能
This article was translated from English: Does it need improvement?
TranslatedView the article in English
IronOCR是一个.NET库,允许开发者从图像中扫描和读取文本或条形码。
兼容性
.NET 语言
- C#(教程 API 参考
- 在C#中扫描和读取图像(jpg, png, gif, tiff, bmp)中的文本或条形码。
- VB.NET
- 在VB.NET中从图像(jpg, png, gif, tiff, bmp)中扫描和读取文本或条形码。
F#
- 在 F# 中扫描和读取来自图像(jpg、png、gif、tiff、bmp)的文本或条形码。
平台
- .NET 5, 6, 7 和 8 (教程)
- IronOCR支持.NET 5、6、7和8。
.NET Core 2和3 (教程)
IronOCR 支持 .NET Core 2 和 3。
- 当前版本支持在Linux、Unix和macOS客户端操作系统上的.NET Core,以及Mono。
- 未来的版本将支持 MAUI 和 Xamarin。
- .NET Standard 2+ (API 参考)
- IronOCR 与 .NET Standard 2 及以上版本兼容。
.NET Framework 4.6.2+ (代码示例 API 参考)
- 使用 .NET Framework 4.6.2 及以上版本扫描并读取图像中的文本或条形码。
应用程序类型
操作系统
集成开发环境
- Microsoft Visual Studio(教程)
- Jetbrains ReSharper 和 Rider
证书
Microsoft Authenticode
- DigiCert Trusted G4 Code Signing RSA4096 SHA384 2021 CA1
OCR引擎
底层OCR引擎
- Tesseract 5(教程 代码示例)
- Tesseract 是一个开源文本识别 (OCR) 引擎,可在 Apache 2.0 许可证下使用。 C#.NET 上可用的最准确快速的库之一。 目前,Tesseract 5 是最稳定的版本。
详细配置(代码示例)
IronTesseract.Configuration
对象提供访问C# / .NET中的基础 Tesseract API,以便为高级用户配置设置。设置可以在执行OCR后改善输出效果。
- 要提高OCR速度,请查看此代码示例以获取快速OCR配置。
国际语言
文本和条形码阅读
专业文档
此方法使用机器学习来增强文本识别。
- 扫描文档 (操作指南 代码示例
- 针对阅读扫描文档或包含大量文本的纸质文档照片进行了优化。
- 文档中的表格 (如何操作 代码示例
- 针对包含具有清晰轮廓的表格的文档进行了优化。
- 车牌号 (操作指南 代码示例
- 专为从照片中读取车牌而优化。
- 护照 (操作指南 代码示例
- 通过扫描可机读区(MRZ)的内容来优化读取和提取护照信息的过程。
- 照片 (使用指南 代码示例
- 优化用于阅读包含难以识别文字的图像。
- 专为阅读包含难以识别文本的屏幕截图而优化。
并发性
- 单线程与多线程 (操作指南 代码示例
- 异步支持 (操作指南 API参考
- 中止令牌 (代码示例)
- 允许用户在程序或应用运行时,如果读取大型输入文件时出现卡顿,可以暂停当前线程一定的毫秒数。
超时 (代码示例)
- 提供可选的超时时间(以毫秒为单位),之后OCR读取将被取消。
计算机视觉
- 使用计算机视觉根据我们的高级训练模型查找文本。 IronOCR 利用 OpenCV 使用计算机视觉来检测图像中存在文本的区域。 这对于包含大量噪音的图像、文本分布在许多不同位置的图像,以及文本扭曲的图像非常有用。 IronOCR 中计算机视觉的使用将确定文本区域的位置,然后使用 Tesseract 尝试读取这些区域。
OCR输入
从多种格式读取
- 图像 (jpg, png, gif, tiff, bmp) (操作指南 代码示例
- 多页和帧 tiff 和 gif 文件 (操作指南 代码示例
- System.Drawing 对象 (操作指南 代码示例)
- 流 (如何操作 代码示例
- PDF文件 (如何操作 代码示例
过滤器
- 滤镜向导 (代码示例 API 参考
- 如果不知道应该对图像应用哪种滤镜,Filter Wizard 提供了适用于 OcrInput 的滤镜列表,使用暴力方法返回最大置信度的组合。
- 高级形态学。 侵蚀在对象边界上移除像素。 缩小
- 按比例缩放 OcrInput 页面。
应用裁剪区域
OCR结果
简单数据输出
- .NET 文本字符串
- 条形码和二维码数据
- 图像
结构化数据输出
- 页面
- 块
- 段落
- 行
- 字词
- 字符
导出文档
突出显示页面上的文本以进行调试
- 在检测到的字符/单词/行/段落周围画红色框以突出显示,并将其保存为.png以便调试。