在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
如果您正在查找有关 OCR 的信息,那您就找对地方了。本博客将讨论 OCR 和相关软件,并研究它们在应用于 OCR 相关任务时的性能。让我们从问题开始:什么是 OCR?
光学字符识别 (光学字符识别) 使用光学扫描仪和专用软件来识别书面或印刷文本并对其进行数字编码。计算机可以读取文字的静态照片,并使用 OCR 软件将其转化为可编辑、可搜索的数据。
OCR 通常包括三个步骤:在 OCR 软件中打开并扫描文档,在 OCR 软件中识别文档,以及将 OCR 生成的文档存储为您选择的格式。
今天,我们将讨论两个 OCR 软件包,比较它们的优缺点,以及如何用 C# 集成和导出它们的 SDK。我们讨论的软件包是
LEADTOOLS OCR 是由 LEAD Technologies Inc.LEADTOOLS 是一套综合工具包,用于将光栅、文档、医疗、多媒体和矢量图像集成到桌面、服务器、平板电脑和移动应用程序中。文件格式 (150+)LEADTOOLS支持的功能包括:图像压缩、图像处理、颜色转换、颜色处理、图像显示、特效、扫描/捕获、常用对话框、打印、DICOM、PACS、OCR、条形码、表单识别、PDF、文档清理、注释等。对于使用 LEADTOOLS 工具包的应用程序开发人员来说,数百万行代码几乎唾手可得。无论您的编程需求如何,LEADTOOLS 工具包都能为您提供最强大的图像技术。
LEADTOOLS 是一个综合工具包,可将识别、文档、医疗、成像和多媒体技术集成到桌面、服务器、平板电脑和移动系统中,并由独特的人工智能和机器学习算法提供支持。为了改进您的应用程序,为什么不充分利用 30 多年的图像开发知识和对 150 多种文件类型的支持呢?
LEADTOOLS OCR 类库为快速有效地整合文档光学字符识别提供了编程软件。 (光学字符识别) 技术融入软件程序。程序员可以对文档图片进行字符识别,并使用 LEADTOOLS OCR 类库将识别的文本输出到 20 多种文件格式中。
Lead 工具包为最终用户和开发人员提供了一系列屡获殊荣的多媒体技术,并能执行所有类型的 OCR 功能,以满足其广泛的客户需求。
Lead 技术引擎为终端用户提供多线程和基于服务器的 OCR 操作支持。
LeadTools Document SDK 允许用户在其应用程序中创建多个 OCR 文档。每个文档都包含自己的页面列表。
屡获殊荣的 LeadTools 系列技术可提供 40 多种不同语言的服务,并允许您在识别 OCR 页面时选择希望使用的语言。
LeadTools OCR 是一款超棒的文档扫描应用程序,它允许最终用户访问所有支持语言的词典。此外,用户还可以在一份文档中访问多个词典。
识别各种文件,包括传真件、复印件和布局复杂的文件。
LEADTOOLS OCR 应用程序可进行光学字符识别,提高了准确性和速度 (光学字符识别) 在图片上提取文字,并将图片转换为多种文档格式。要修改和共享图片中的文字,可使用 OCR 提取文字,然后将其复制。
Lead Technologies 使用人工智能提高同类型文件的识别率,这对最终用户来说是个好消息。
屡获殊荣的 OCR 工具包系列中的 Leadtools Document SDK 采用了功能强大的区域识别软件,将区域识别提升到了一个全新的水平。
这是一个大容量、可扩展的 Web API。其用户友好的界面可让您轻松地将强大的 OCR、条形码、MICR 和文档转换功能整合到任何程序中。
请注意
NuGet的官方网站显示,与LeadTools相比,.NET开发人员更喜欢IronOCR。LeadTools 的下载量为 77.8 K,而 IronOCR 的下载量则超过了 320 K。
IronOCR 是一个 C# 软件库,可帮助 .NET 平台的程序员检测和读取图像和 PDF 文档中的文本。它是一个纯粹的 .NET OCR 软件包,使用了世界上最强大的 Tesseract 引擎。IronOCR 在处理现实世界中的图形和有缺陷的文档(如照片或带有数字噪声或缺陷的低分辨率处理)时表现出色。只需很少或根本无需设置,Tesseract 5 就能让你轻松实现 OCR。 (以及 4 和 3) 开箱即可在 Windows、macOS、Linux、Azure、AWS、Lambda、Mono 和 Xamarin Mac 上运行。无需处理本地二进制文件。框架与核心兼容。
与其他任何 OCR 引擎相比,IronOCR 支持更多的语言,帮助程序员创建有意义的图像,并从中提取多媒体数据。IronOCR 支持 125 种国际语言,但 IronOCR .NET 中只标配了**英语。
与其他任何 OCR 引擎相比,IronOCR 工具包提供的服务易于集成、易于处理,而且交互性更强。它为.NET开发人员提供了解决方案,使他们能够以数字方式控制和连接文档,并以他们认为合适的方式处理文档。
IronOCR 提供了一套独特的特性和功能,用于集成、签署、导出、读取图形和提取图像细节,而不论用户的技术背景或所用硬件的复杂程度如何。
IronOCR SDK 的准确率高达 99.8%,大大超越了其他 OCR 库,将 OCR 库的工作准确性提升到了一个全新的水平。
IronOCR 类为 C# 开发人员提供了细粒度的控制。它们提供 OCR (图像和 PDF 转换为文本) 开发人员的能力,并针对每种独特情况对性能进行微调。
在实际工作中,可以通过建立变量来实现速度和准确性之间的完美平衡。清除背景噪音、增强对比度、增强分辨率、语言、策略、旋转和拉直、色彩空间、检测深色背景上的白色文本和输入图像类型只是其中一些可用的选项。
以下是低质量扫描图像修复前后的对比示例:
修复前
之后
IronOCR 提供 125 种以上国际语言的解决方案,为世界各地的开发人员提供帮助。
Iron Tesseract 可以读取各种图片类型和 PDF 文件。传统的免费 Tesseract 引擎无法实现这一功能。如果扫描质量较差,OCR 输入可以自动修复相关属性。
OCRInput 类可让 C# 程序员对输入进行细粒度控制。开发人员可对图像输入进行预处理,以提高速度和准确性。这消除了使用 Photoshop 批量脚本或 ImageMagick 为 OCR 准备照片的标准方法。
就在图像上快速、准确地执行 OCR 而言,IronOCR 将其提升到了一个全新的水平。IronOCR 允许最终用户选择图像中的特定区域或区域,并对该区域执行 OCR。该区域被称为内容区域(ContentAreas)或作物区域(CropAreas)。
IronOCR 会为使用 Tesseract 3、4 或 5 扫描的每一页返回一个高级结果对象。其中包含位置数据、图像、文本、统计置信度、替代符号选择、字体名称、字体大小装饰、字体权重以及下列各项的位置:
IronOCR 可让开发人员在一个文档中使用多种语言。这一功能对 .NET 服务提供商大有帮助。
请注意
IronOCR 是获奖产品系列的一部分。Iron Software 荣获此项殊荣,表明它确实提供了一款超棒的文档扫描仪应用程序,它不仅能提供超强的识别能力,还能提供出色的文档相关转换和处理能力。
打开 Visual Studio 软件,进入文件菜单,选择新建项目。然后选择控制台应用程序。
在相应的文本框中输入项目名称并选择路径。接下来,点击创建按钮,然后选择所需的 .NET 框架,如下图所示:
Visual Studio 项目现在将为所选应用程序生成结构,如果您选择了控制台、Windows 和 Web 应用程序,它现在将打开 program.cs 文件,您可以在其中输入代码并构建/运行应用程序。
接下来,我们可以添加测试程序的库。
可以通过四种方式下载和安装 IronOCR 库。它们是
1.使用 Visual Studio NuGet 软件包管理器
2.直接从 NuGet 网页下载。
3.从 IronOCR 网页直接下载。
4.使用 Visual Studio 命令行。
您可以使用 Visual Studio NuGet 包管理器将 IronOCR 集成到 C# 项目中。
1.扩展工具。
2.扩展 NuGet 包管理器。
3.单击 "管理解决方案的 NuGet 包"。
之后,搜索栏会出现一个新窗口:输入 IronOCR。
使用这种方法,开发人员可以安装 IronOCR 库和开发人员选择的任何语言包。
可按照以下说明直接从 NuGet 网站下载 IronOCR:
1.导航至链接"https://www.nuget.org/packages/IronOCR/"
2.从右侧菜单中选择下载软件包选项。
3.双击下载的软件包。软件包将自动安装。
4.接下来,重新加载解决方案并开始在项目中使用。
开发人员可使用此链接直接从 IronOCR 网站下载 IronOCR 库。
1.右键单击解决方案窗口中的项目。
2.然后,选择参考选项并浏览下载参考的位置。
3.然后,单击 "确定 "添加参考文献。
1.在 Visual Studio 中,转到工具-> NuGet 包管理器-> 包管理器控制台
2.在软件包管理器控制台选项卡中输入以下一行:
3.安装软件包 IronOCR
现在,软件包将下载/安装到当前项目中,并可随时使用。
开发者可以通过以下三种不同的方式下载 LeadTools OCR SDK。我们将一一讨论。
1.使用 Visual Studio NuGet 软件包管理器
2.使用 NuGet 网站
3.从 LeadTools 网站下载。
你可以使用 Visual Studio NuGet 包管理器在 C# 项目中安装 LeadTools OCR:
1.扩展工具。
2.扩展 NuGet 包管理器。
3.单击 "管理解决方案的 NuGet 包"。
之后会出现一个新窗口,在搜索栏中输入 LeadTools OCR。
按照这些步骤,开发人员可以安装 LeadTools OCR 库和开发人员选择的任何语言包。
LeadTools OCR 可按照以下说明直接从 NuGet 网站下载:
1.导航至链接"https://www.nuget.org/packages/Leadtools.Ocr/"
2.从右侧菜单中选择下载软件包选项。
3.双击下载的软件包。软件包将自动安装。
4.接下来,重新加载解决方案并开始在项目中使用。
开发人员可以直接从其网站下载 Leadtools Document SDK,无需任何麻烦。只需访问他们的网站,下载其中一个包含 OCR 库的软件包即可。
我们正在讨论的两套软件都为多线程 OCR 引擎提供服务。在此标题下,我们将考察它们的性能和速度。
LeadTools 支持同时运行多个 OCR 实例,这取决于每个系统的物理内核。Lead Technologies 的这一功能为 .NET 开发人员节省了大量时间。
// Create an instance of an OCR document from the engine
IOcrDocument ocrDocument= ocrEngineInstance.DocumentManager.CreateDocument();
// Add page, zone them, recognize them and save them
// to the final document:
ocrDocument.Pages.AddPages(imageFileName, null);
ocrDocument.Recognize(null);
ocrDocument.Save(documentFileName, DocumentFormat.Pdf, null);
// Create an instance of an OCR document from the engine
IOcrDocument ocrDocument= ocrEngineInstance.DocumentManager.CreateDocument();
// Add page, zone them, recognize them and save them
// to the final document:
ocrDocument.Pages.AddPages(imageFileName, null);
ocrDocument.Recognize(null);
ocrDocument.Save(documentFileName, DocumentFormat.Pdf, null);
' Create an instance of an OCR document from the engine
Dim ocrDocument As IOcrDocument= ocrEngineInstance.DocumentManager.CreateDocument()
' Add page, zone them, recognize them and save them
' to the final document:
ocrDocument.Pages.AddPages(imageFileName, Nothing)
ocrDocument.Recognize(Nothing)
ocrDocument.Save(documentFileName, DocumentFormat.Pdf, Nothing)
对于开发人员来说,使用 IronOCR 的多线程功能既简单又省时。Iron Tesseract 会自动尝试使用所有内核上的所有可用线程,并谨慎考虑主线程/用户界面线程的响应速度。
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("scan.pdf")
// Image processing is automatically multithreaded
Input.Deskew();
// OCR reading is automatically multi threaded too
var Result = Ocr.Read(Input);
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("scan.pdf")
// Image processing is automatically multithreaded
Input.Deskew();
// OCR reading is automatically multi threaded too
var Result = Ocr.Read(Input);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
Input.AddPdf("scan.pdf") Input.Deskew()
' OCR reading is automatically multi threaded too
Dim Result = Ocr.Read(Input)
End Using
轻松创建可搜索 PDF 是每个 C# 开发人员的梦想。在本节中,我们将讨论使用 IronOCR SDK 和 Lead technologies OCR SDK 的过程。
IronOCR 出色的文档扫描仪应用程序支持检测图像中的文本字符,并将其转化为有意义的 PDF 文本,从而让开发人员将可搜索 PDF 的创建提升到一个全新的水平。下面是供用户使用的代码示例:
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.Add(@"images\page1.png")
Input.Add(@"images\page2.bmp")
Input.Add(@"images\page3.tiff")
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.Add(@"images\page1.png")
Input.Add(@"images\page2.bmp")
Input.Add(@"images\page3.tiff")
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
Input.Add("images\page1.png") Input.Add("images\page2.bmp") Input.Add("images\page3.tiff") Input.Deskew()
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
领先科技公司从其屡获殊荣的软件系列中提供了一款超棒的文档扫描应用程序。不过,对于最终用户来说,代码要比 IronOCR 复杂一些。
private void saveAsSearchablePDFToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
// Create a document
using (IOcrDocument ocrDocument = _ocrEngine.DocumentManager.CreateDocument(null, OcrCreateDocumentOptions.AutoDeleteFile))
{
// Create IOcrPage from loaded image
_ocrPage = _ocrEngine.CreatePage(_viewer.Image, OcrImageSharingMode.AutoDispose);
// Recognize Text
_ocrPage.Recognize(null);
// Add the page
ocrDocument.Pages.Add(_ocrPage);
// Save page as documentation
SaveFileDialog saveDlg = new SaveFileDialog();
saveDlg.InitialDirectory = @"C:\LEADTOOLS22\Resources\Images";
saveDlg.Filter = "Adobe Portable Document Format
*.pdf";
if (saveDlg.ShowDialog(this) != DialogResult.OK)
return;
ocrDocument.Save(saveDlg.FileName, DocumentFormat.Pdf, null);
MessageBox.Show($"OCR output saved to {saveDlg.FileName}");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void saveAsSearchablePDFToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
// Create a document
using (IOcrDocument ocrDocument = _ocrEngine.DocumentManager.CreateDocument(null, OcrCreateDocumentOptions.AutoDeleteFile))
{
// Create IOcrPage from loaded image
_ocrPage = _ocrEngine.CreatePage(_viewer.Image, OcrImageSharingMode.AutoDispose);
// Recognize Text
_ocrPage.Recognize(null);
// Add the page
ocrDocument.Pages.Add(_ocrPage);
// Save page as documentation
SaveFileDialog saveDlg = new SaveFileDialog();
saveDlg.InitialDirectory = @"C:\LEADTOOLS22\Resources\Images";
saveDlg.Filter = "Adobe Portable Document Format
*.pdf";
if (saveDlg.ShowDialog(this) != DialogResult.OK)
return;
ocrDocument.Save(saveDlg.FileName, DocumentFormat.Pdf, null);
MessageBox.Show($"OCR output saved to {saveDlg.FileName}");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
本节介绍这些软件包为支持不同平台而提供的服务。这两个软件包都支持多种平台和操作系统。
IronOCR .NET SDK 是最好的 OCR SDK,几乎兼容所有支持 C# 编程语言的 .NET 平台和操作系统。IronOCR 还支持不同的图像格式,如 JPEG、JPG、tiff 等。
Lead Technologies 还为其各种产品和应用程序在不同平台上的整合提供支持。领先科技还为用户和开发人员提供出色的 SDK 支持。
.NET
使用上述任何软件都需要许可证。这两套软件都要求在登录环境前持有许可证。只有在登录后,才能开始使用全新级别的软件技术。
LeadTools 提供两种 (2) SDK 许可证中的关键许可组件:
要使用 LEADTOOLS 进行开发,您需要一个开发许可证。开发许可证可以直接从 LEAD 或通过 LEAD 授权的经销商或分销商购买。
开发许可证使客户能够在开发机器上安装 SDK,并使用 SDK 示例代码和文档将特定的可再分发库和文件纳入应用程序,从而创建最终用户应用程序。
客户使用 SDK 开发的最终用户应用程序 ("最终用户软件") 受部署许可的约束。
与禁止复制应用程序的标准最终用户应用程序许可协议不同,SDK 许可允许用户复制和重新分发 SDK 的一部分。为了复制 LEAD 的知识产权并将其与使用 LEAD SDK 制作的最终用户软件一起部署,LEAD 的客户必须获得必要的部署许可。
LeadTools 不为开发者提供免费许可。相反,它提供基于开发者的全面许可。要查看立得科技 OCR SDK 的价格结构,请访问此处。
IronOCR 是一个免费提供开发者许可证的库。IronPDF 还有一个独特的定价结构;Lite bundle 起价为 $749,没有任何隐藏费用。SaaS 和 OEM 产品也可以再分发。所有许可证均附带 30 天退款保证、一年的软件支持和升级、开发/分期/生产有效性以及永久许可证。 (一次性购买).要查看 IronOCR 的整个价格结构和许可详情,请点击此处。
您只需一次性购买 1599 美元,即可获得 SaaS 和 OEM 产品的免版税再分发服务。
IronOCR 是一个 .NET SDK 库,它使用了世界上最强大的魔方引擎 Iron Tesseract。它支持 125 种以上的国际语言。IronOCR是一款功能强大的文档扫描应用程序,它拥有大量的图像功能,如图像的OCR区域、从图像中提取文本、修复低分辨率图像并对图像的特定区域执行OCR,以及许多其他相关功能。IronOCR 专注于提供速度与准确性,其准确率高达 99.8%,高于其他任何 OCR Tesseract。IronOCR 开箱即用,无需调整性能或大量修改输入图像。除此以外,您还可以用购买两款产品的价格获得 Iron Software 的全部五款产品。点击此处查看网页。
1.IronPDF
2.IronOCR
3.铁XL
4.铁条码
5.IronWebScraper
LeadTools OCR是LeadTools公司推出的一款工具包,它能快速高效地提供大多数识别功能。程序员可以使用LEADTOOLS OCR类库对文档图片进行字符识别,并将识别出的文本输出到20多种文件格式中。它的类库可以与大多数编程语言和几乎所有的平台集成。其功能包括
IronOCR 和 LeadTools OCR 都是顶级工具,提供了 C# 或 .NET 开发人员所希望的所有功能。与竞争对手相比,IronOCR 更易于使用和编码。两套软件都不会产生持续成本,但IronOCR比LeadTools OCR库更具性价比。IronOCR 比任何竞争对手都更准确。IronOCR 支持 125 种以上的国际语言。另一方面,LeadTools 只支持 40 多种语言。综合考虑各方面的性能,我们得出的唯一结论就是,IronOCR 比 LeadTools OCR 有明显的优势。