与其他组件比较

Paddle OCR 与 Tesseract:详细 OCR 对比

发布 2024年四月29日
分享:

选择正确的光学字符识别(光学字符识别)对于任何希望将文本图像转换为可编辑和可搜索数据的人来说,工具都是至关重要的。 该领域的两个流行选项是Paddle OCR魔方. 两者都利用了不同的 OCR 技术,满足了不同的需求。 本比较侧重于评估不同的 OCR 引擎,以帮助您找到最适合您需求的选项。

无论您是在执行简单的任务还是处理复杂的文档,了解 Paddle OCR 和 Tesseract 的功能都将是您迈向更高效数据处理的第一步。 我们还将从一堆 OCR 库中引入一个库、IronOCR提供更广泛的比较,帮助您了解哪种工具最适合您的需求。

桨式 OCR

Paddle OCR在这种情况下,《PaddlePaddle.com》成为了一个值得关注的解决方案,其先进的文本识别模型专为多语言文本识别而设计,充分利用了 PaddlePaddle 深度学习框架的功能。 PaddlePaddle 开发的 OCR 系统专为高性能和广泛的语言支持而定制。 该系统支持 50 多种语言,提供一整套工具,用于在服务器、移动设备、嵌入式系统和物联网设备等各种平台上进行数据注释、合成和模型部署。

主要功能

Paddle OCR 具有多种 OCR 功能,其用户友好型 API 适用于各种应用。 以下是其突出特点:

  1. 多语言支持:Paddle OCR 可处理多语言文本,支持 50 多种语言。

  2. 先进的算法:它采用先进的 OCR 方法和算法进行文本检测、识别和分类。 这些工具包括深度学习研究的最新成果,如联结时态分类(Connectionist Temporal Classification(反恐委员会)在准确预测和对齐文本序列方面起着至关重要的作用。

  3. 高效快速:Paddle OCR 针对速度和准确性进行了优化,能够快速处理大量图像,适合高吞吐量应用。

许可证

Paddle OCR 根据 Apache License 2.0 发布,确保可自由使用、修改和分发。 安装非常简单,通常使用软件包管理器,如 Python 的 pip。 用户只需几条命令就能快速安装 Paddle OCR 及其依赖项,从而方便项目集成。

安装 PaddleSharp

使用 PaddleSharp(Paddle Inference C# API 的.NET 封装器)可以简化在 Visual Studio 中将 PaddleOCR 集成到 C# 项目中的过程。 这样就可以在 .NET 环境中直接使用 PaddlePaddle 的深度学习功能。 以下是在项目中设置 PaddleSharp 的分步指南:

前提条件

  • 确保您的系统已安装 Visual Studio,并根据项目要求支持 .NET Framework 或 .NET Core。
  • 了解 C# 和熟悉 Visual Studio 中的 NuGet 软件包管理也是必不可少的。

    安装 PaddleSharp 软件包

  • 在 Visual Studio 中打开项目。
  • 右键单击解决方案资源管理器中的项目,导航至 "管理 NuGet 包 "选项。

    • 搜索Sdcb.PaddleInference并安装该软件包。 这是允许 .NET 应用程序利用 Paddle Inference 引擎的核心绑定。

    Paddle OCR 与 Tesseract(OCR 功能比较):图 1 - 在 NuGet 软件包管理器中浏览 Sdcb.PaddleInference

    • 然后安装以下软件包:

      • Scdb.PaddleOCR

      • OpenCvSharp4

      • Scdb.PaddleOCR.Models.Online
    • OpenCvSharp4.runtime.win

    添加本地和基础架构包

  • 取决于您的目标平台(视窗/Linux)和要求(CPU/GPU)可能需要额外的软件包。 对于 Windows,您可能需要使用 Sdcb.PaddleInference.runtime.win64.mkl 等软件包来获得 MKL 支持,或使用 **Sdcb.PaddleInference.runtime.win64.cuda*** 来获得 GPU 支持。
  • 同时通过 NuGet 软件包管理器安装这些工具,确保与您的开发环境和目标执行环境兼容。

代码示例

using System;
FullOcrModel model = await OnlineFullModels.EnglishV3.DownloadAsync();
using (PaddleOcrAll all = new(model)
{
    AllowRotateDetection = true,
    Enable180Classification = false,
})
using (Mat imgSrc = Cv2.ImRead(@"read.jpg"))
{
    Stopwatch stopWatch = Stopwatch.StartNew();
    PaddleOcrResult result = all.Run(imgSrc);
    Console.WriteLine($"lapsed={sw.ElapsedMilliseconds} ms");
    Console.WriteLine(result.Text);
}
using System;
FullOcrModel model = await OnlineFullModels.EnglishV3.DownloadAsync();
using (PaddleOcrAll all = new(model)
{
    AllowRotateDetection = true,
    Enable180Classification = false,
})
using (Mat imgSrc = Cv2.ImRead(@"read.jpg"))
{
    Stopwatch stopWatch = Stopwatch.StartNew();
    PaddleOcrResult result = all.Run(imgSrc);
    Console.WriteLine($"lapsed={sw.ElapsedMilliseconds} ms");
    Console.WriteLine(result.Text);
}
Imports System
Private model As FullOcrModel = await OnlineFullModels.EnglishV3.DownloadAsync()
Using all As New PaddleOcrAll(model) With {
	.AllowRotateDetection = True,
	.Enable180Classification = False
}
Using imgSrc As Mat = Cv2.ImRead("read.jpg")
	Dim stopWatch As Stopwatch = Stopwatch.StartNew()
	Dim result As PaddleOcrResult = all.Run(imgSrc)
	Console.WriteLine($"lapsed={sw.ElapsedMilliseconds} ms")
	Console.WriteLine(result.Text)
End Using
End Using
VB   C#

Paddle OCR 与 Tesseract(OCR 功能比较):图 2 - 前一个代码的控制台输出。

魔方 OCR

魔方OCR 是一个广受认可的开源 OCR 引擎,采用 Apache 2.0 许可授权。 它的开发历程始于惠普实验室,在谷歌的管理下一直持续到 2018 年,之后被开源。 现在,它由一个贡献者社区负责维护。 该引擎能够读取 100 多种语言,并支持包括 PNG、JPEG 和 TIFF 在内的各种图像格式,因而备受赞誉。 它可以以多种格式输出,如纯文本、hOCR(HTML)PDF 等。

主要功能

以下是其主要功能概述:

  1. 广泛的语言支持:Tesseract 能够识别 100 多种语言,面向全球受众。 引擎支持 Unicode(UTF-8)此外,翻译还必须能够处理.NET、Java、Python 或 Node.js。

  2. 基于神经网络的识别:Tesseract 第 4 版及以上版本引入了神经网络(LSTM)与传统的字符模式识别方法相比,基于 OCR 引擎的文本行识别准确率更高。

  3. 多种输出格式:Tesseract 支持多种输出格式,包括纯文本、hOCR、.NET、Python 或 Node js。(HTML)、PDF 和 TSV,使其能适应不同的使用情况。

许可证

Tesseract OCR 根据 Apache License 2.0 发布。该许可证是最具许可性和开放性的许可证之一,允许几乎不受限制地自由使用、修改和分发软件,即使在专有软件项目中也是如此。

安装Tesseract

要使用 NuGet 在 Visual Studio 项目中安装 Tesseract OCR,请按照以下步骤操作:

  1. 打开 Visual Studio:启动 Visual Studio 并打开您的项目或创建一个新项目。

  2. 在 "解决方案资源管理器 "中右键单击您的项目,然后选择 "管理 NuGet 包... " 3. 在 NuGet 包管理器中,切换到 "浏览 "选项卡,然后搜索 "Tesseract "**。

    1. 安装 Tesseract NuGet 软件包管理器。

    Paddle OCR 与 Tesseract(OCR 功能比较):图 3 - 使用 NuGet 软件包管理器安装 Tesseract

  3. 从此处下载 Tessdata**链接***. 必须使用 Tesseract OCR。

代码示例

using Tesseract;
using (var engine = new TesseractEngine(@".\tessdata-main", "eng", EngineMode.Default))
{
    using (var img = Pix.LoadFromFile(@"read.jpg"))
    {
        using (var page = engine.Process(img))
        {
            var text = page.GetText();
            Console.WriteLine(text);
        }
    }
}
using Tesseract;
using (var engine = new TesseractEngine(@".\tessdata-main", "eng", EngineMode.Default))
{
    using (var img = Pix.LoadFromFile(@"read.jpg"))
    {
        using (var page = engine.Process(img))
        {
            var text = page.GetText();
            Console.WriteLine(text);
        }
    }
}
Imports Tesseract
Using engine = New TesseractEngine(".\tessdata-main", "eng", EngineMode.Default)
	Using img = Pix.LoadFromFile("read.jpg")
		Using page = engine.Process(img)
			Dim text = page.GetText()
			Console.WriteLine(text)
		End Using
	End Using
End Using
VB   C#

Paddle OCR 与 Tesseract(OCR 功能比较):图 4 - 上一个代码示例的控制台输出

IronOCR

IronOCR是一种先进的 OCR(光学字符识别)库,大大增强了.NET 开发人员在以下方面的能力从图像中提取文本和 PDF 文件。 在 Tesseract OCR 引擎的基础上,IronOCR 提供了原生 C# 体验,比基础 OCR 引擎具有更高的稳定性和准确性。魔方图书馆. 它的设计目的是无缝集成到 .NET 应用程序和网站中,允许将文本提取为纯文本或结构化数据格式,并且能够理解多种外语。 利用深度学习算法,IronOCR 在文本识别任务中实现了无与伦比的准确性。

该库不仅在简单的 OCR 任务中表现出色,还将其功能扩展到了广泛的应用领域。 它支持各种平台,包括从 5 到 8 的 .NET 版本、.NET Core 2x 和 3x,以及 .NET Framework 4.6.2 及以上版本。

主要功能

以下是 IronOCR 脱颖而出的一些关键属性和功能:

先进的 OCR 引擎:IronOCR 利用 Tesseract 5 提供先进的 OCR 引擎,支持125 多种语言. 这种能力对于需要多语言支持的全球应用程序至关重要。 该库为大多数语言(包括自定义语言和字体训练)提供了高质量、中等质量和快速质量选项,确保了文本识别的灵活性和高准确性。

全面的文档处理:IronOCR 可以处理各种文档类型和格式,包括图像(JPG、PNG、GIF、TIFF、BMP)此外,还需要翻译 System.Drawing 对象、流和 PDF。

强大的图像处理:该库包含一套功能强大的滤镜和图像处理工具,如锐化、分辨率增强、降噪和色彩校正。(二值化、灰度、反转).

结构化和简单数据输出:IronOCR 同时提供结构化数据输出(页、块、段、行、字、字符)和简单的数据输出(.NET 文本字符串、条形码和 QR 数据、图像).

并行处理和计算机视觉:该库支持单线程和多线程、异步操作,并提供计算机视觉功能以识别图像中的文本区域,从而提高复杂或嘈杂图像中文本识别的准确性和效率。

要在 .NET 项目中安装 IronOCR,您可以根据自己的开发环境和偏好使用多种方法。 以下是一份简化指南,供您参考:

许可证

IronOCR 为满足不同项目和开发人员的需求量身定制了各种许可选项,确保用户的灵活性和可扩展性。 许可条款是永久性的,这意味着一旦您购买了许可证,就不会再有经常性费用。 此外,每个许可证都包含 30 天退款保证、一年的产品支持和更新,并适用于开发、暂存和生产环境。 许可证价格从 749 美元起。您可以获得免费试用在购买许可证之前。

安装 IronOCR

  1. 导航至 工具 -> NuGet软件包管理器 -> 软件包管理器控制台

    1. 输入命令 Install-Package IronOcr 并执行。 该命令将 IronOCR 抓取并安装到您的项目中,使其可以随时使用。

    Paddle OCR 与 Tesseract(OCR 功能比较):图 5 - 使用软件包管理器控制台安装 IronOCR

代码示例

下面是如何使用 IronOCR 从图像中提取文本的代码示例:

using IronOcr;
IronOcr.License.LicenseKey = "License-Key";
var ocrMode = new IronTesseract();
var resultText = ocrMode.Read("read.jpg");
Console.WriteLine(resultText.Text);
using IronOcr;
IronOcr.License.LicenseKey = "License-Key";
var ocrMode = new IronTesseract();
var resultText = ocrMode.Read("read.jpg");
Console.WriteLine(resultText.Text);
Imports IronOcr
IronOcr.License.LicenseKey = "License-Key"
Dim ocrMode = New IronTesseract()
Dim resultText = ocrMode.Read("read.jpg")
Console.WriteLine(resultText.Text)
VB   C#

Paddle OCR 与 Tesseract(OCR 功能比较):图 6 - 上一个代码示例的控制台输出

比较

在评估 IronOCR、PaddleOCR 和 Tesseract 对光学字符识别的各种重要因素时(光学字符识别)因此,考虑每种工具在准确性、速度、语言支持、定制选项和社区支持方面的优势至关重要。

准确性

PaddleOCR 和 Tesseract 在基准测试中都显示出很高的准确性,但 IronOCR 能够微调和调整预处理步骤,这使其在不同文档类型中提供卓越的结果方面具有优势。

速度

在处理速度方面,IronOCR 因其在 .NET 环境中高效处理文档而脱颖而出,为快速文本识别提供了优化的性能。 PaddleOCR 和 Tesseract 也因其实时处理功能而闻名。

语言支持

Tesseract 支持 100 多种语言,是语言覆盖面最广的 OCR 工具之一。 PaddleOCR 还提供了令人印象深刻的语言支持,尤其是对亚洲语言的支持。 IronOCR 采用 Tesseract 引擎,继承了广泛的语言支持,并结合了额外的增强和优化功能。 这种组合不仅扩大了有效处理的语言范围,还提高了 IronOCR 增强功能直接支持的语言的准确性和速度。

定制选项

IronOCR 在这种定制方面表现出色,它提供了大量选项,允许开发人员对 OCR 过程进行微调,包括图像预处理、文本过滤和自定义字典。 这种定制水平在复杂的 OCR 场景中尤为重要,因为默认设置可能无法满足要求。虽然 PaddleOCR 和 Tesseract 提供了一些定制功能,但 IronOCR 专注于 .NET 生态系统中的开发人员需求,确保了更高程度的灵活性。

社区支持

Tesseract 因其悠久的历史和开源性而拥有一个庞大而成熟的社区,PaddleOCR 的社区也在迅速发展,而 IronOCR 则受益于一个由 .NET 开发人员组成的专注社区。

结论

总之,Tesseract 凭借其广泛的自定义功能和广泛的社区支持为 OCR 项目奠定了坚实的基础,PaddleOCR 则带来了前沿的深度学习技术,实现了高精度和高速度,而 IronOCR 则成为 .NET 开发人员和企业的一个引人注目的选择。 IronOCR 注重内部部署、全面的语言支持和经济高效的许可模式,这使其成为那些优先考虑数据安全性、财务可预测性以及与 .NET 应用程序集成的用户的一个极具吸引力的选择。

IronOCR 因其灵活的许可选项对企业尤其具有吸引力,其中包括免费试用初始评估和 749 美元起的许可证,满足各种规模的组织在性能和成本之间寻求平衡的需求。

< 前一页
iOS OCR库(免费和付费工具比较)
下一步 >
ABBYY FineReader 与 Tesseract:OCR 对比

准备开始了吗? 版本: 2024.11 刚刚发布

免费NuGet下载 总下载量: 2,614,315 查看许可证 >