使用 IRONOCR

如何创建发票OCR解决方案

发布 2024年二月18日
分享:

简介

光学字符识别,或 OCROCR 是一种让计算机从图片或扫描文件中识别和提取文本的技术。将含文字的照片转换为机器可读的文本数据是 OCR 软件的主要目标。该技术可简化数据录入、文档数字化和自动化程序,如应付账款流程。在本文中,我们将了解 OCR 解决方案在发票处理中的应用,以及它如何使手工发票处理变得过时。

如何使用发票 OCR 解决方案

1.安装 IronOCR C# 库。

2.在 Visual Studio 中创建一个新的 C# 项目

3.检查一个功能丰富的 C# 库,以便在收据上进行 OCR 识别。

4.利用 Tesseract 从收据中提取数据

5.在提取的文本结果中查找特定数据。

6.检查提供的收据图片上的条形码值。

什么是发票处理?

企业可以利用 OCR 发票处理将基于图像或扫描的账单转化为机器可读的文本,从而实现从发票中提取文本和数据的自动化。由于实现了自动化,财务程序的效率得到全面提高,人工数据录入减少,处理发票的方式也得到简化。

IronOCR

光学字符识别 (光学字符识别) 使使用 C# 编程语言的开发人员能够通过 IronOCR**IronOCR 是一个.NET 库。IronOCR 由 Iron Software 创建,对于需要自动文本识别的应用程序来说是一个有用的工具,因为它可以让用户从照片、扫描文档和 PDF 文件中提取文本。要从发票中提取文本和数据,您必须将 IronOCR 库集成到您的 .NET 应用程序中,以便使用 IronOCR 自动处理发票。

IronOCR 利用人工智能算法帮助避免欺诈。这样就能快速识别错误、欺诈和重复发票。通过卓越的 OCR 发票数据提取功能减少错误,从而避免人为数据录入造成的错误。了解有关 IronOCR 检查的更多信息 *这里***.

IronOCR 的突出特点是

  • 文本提取:图像、扫描文档和 PDF 文件都可以使用 IronOCR 提取文本内容。它使用复杂的 OCR 算法来识别所提供文档中的单词、字符和布局。
  • 要从发票照片中提取文本信息,请使用 IronOCR。这需要检索有关供应商、细列项目、发票号码、日期和任何其他相关数据的信息。
  • 条形码读取:除了 OCR 外,IronOCR 还具有从图片中读取条形码的功能,这提高了它在需要处理文本和条形码数据的应用程序中的适应性。
  • 图像预处理:纠偏、降噪和对比度校正是 IronOCR 支持的图像预处理方法之一。通过增强输入图片,这些预处理程序有助于提高 OCR 精确度。
  • 基于区域的 OCR 技术:通过定义 OCR 区域,开发人员可以指出图像中应集中提取文本的某些区域。在管理布局有序的纸张时,这种功能非常有用。
  • OCR 软件通过处理获取的图片或文档,扫描并提取扫描或拍照信息中的文本。文档的布局、文字和字符由 OCR 引擎进行解释。

需要记住的是,OCR 设置的准确性、发票的复杂性以及输入照片的质量都会影响解决方案的成功与否。此外,在集成过程中,使用 IronOCR 的 API 和理解库提供的特定功能可能是必要的步骤。如需了解最新详情和建议,请随时查阅 IronOCR 官方资料。

在 Visual Studio 中创建新项目

启动 Visual Studio 程序后,进入 "文件菜单"。进入 "新建项目",选择 "控制台应用程序"。在本篇文章中,我们将使用控制台程序创建 PDF 文档。

如何创建发票 OCR 解决方案:图 1 - 通过 Visual Studio 创建新项目

在相关文本框中,键入项目名称并选择文件位置。接下来,如下图所示,单击 "创建 "按钮并选择必要的 .NET Framework。

如何创建发票 OCR 解决方案:图 2 - 配置项目信息

选择应用程序后,Visual Studio 项目将创建其结构。如果您选择的是控制台、Windows 或网页版本,它将打开 program.cs 文件,以便您添加代码并构建/运行应用程序。

为了测试代码,我们可以在此之后添加库。

安装 IronOCR

可以使用 Visual Studio 的 NuGet 软件包管理工具将软件包直接安装到解决方案中。下面的快照可用于查看 NuGet 包管理器。

如何为发票创建 OCR 解决方案:图 3 - 如何通过 Visual Studio 进入 NuGet 软件包管理器

它有一个搜索框,用于显示 NuGet 网站上的软件包列表。如下图所示,我们需要在软件包管理器中搜索 IronOCR:

如何为发票创建 OCR 解决方案:图 4 - 通过 NuGet 软件包管理器安装 IronOCR

上图可以为我们提供相关搜索词的列表。我们必须做出必要的选择,以安装解决方案包。

IronOCR 从发票中提取数据

IronOCR 是一个功能强大的 OCR 库,可用于提取数据和读取发票数据。有了 IronOCR,您可以拍摄一张收据的照片,然后用它将其转换成易于处理和分析的机器可读文本,而不会损害数据隐私。发票 OCR 允许我们将发票数据提取为数字格式。

这是 IronOCR 如何处理供应商发票和从纸质发票中提取文本的示例。

using System;
using System.Collections.Generic;
using IronOcr;
var Ocr = new IronTesseract(); // nothing to configure            
Ocr.Language = OcrLanguage.EnglishBest;
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5;
using (var Input = new OcrInput())
{
    Input.AddImage(@"invoice.png"); // adding the example invoice to read
    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
    Console.ReadKey();
}
using System;
using System.Collections.Generic;
using IronOcr;
var Ocr = new IronTesseract(); // nothing to configure            
Ocr.Language = OcrLanguage.EnglishBest;
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5;
using (var Input = new OcrInput())
{
    Input.AddImage(@"invoice.png"); // adding the example invoice to read
    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
    Console.ReadKey();
}
Imports System
Imports System.Collections.Generic
Imports IronOcr
Private Ocr = New IronTesseract() ' nothing to configure
Ocr.Language = OcrLanguage.EnglishBest
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5
Using Input = New OcrInput()
	Input.AddImage("invoice.png") ' adding the example invoice to read
	Dim Result = Ocr.Read(Input)
	Console.WriteLine(Result.Text)
	Console.ReadKey()
End Using
VB   C#

下面是上述代码的结果:

如何创建发票 OCR 解决方案:图 5 - 上一代码的输出文本

上例显示,IronOCR 帮助我们进行了 OCR 识别,并将提取的数据显示在控制台中。

读取发票上的条形码

除文本外,还可使用 IronOCR 扫描收据上的条形码。要使用 IronOCR 扫描收据上的条形码,必须将 "ReadBarCodes "函数与 "BarcodeReader "类一起使用。

以下是如何使用 IronOCR 解码收据图像以读取条形码的示例。

var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
using (var ocrInput = new OcrInput("invoice.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);
    foreach (var barcode in ocrResult.Barcodes)
    {
        Console.WriteLine(barcode.Value);
    }
}
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
using (var ocrInput = new OcrInput("invoice.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);
    foreach (var barcode in ocrResult.Barcodes)
    {
        Console.WriteLine(barcode.Value);
    }
}
Dim ocrTesseract = New IronTesseract()
ocrTesseract.Configuration.ReadBarCodes = True
Using ocrInput As New OcrInput("invoice.png")
	Dim ocrResult = ocrTesseract.Read(ocrInput)
	For Each barcode In ocrResult.Barcodes
		Console.WriteLine(barcode.Value)
	Next barcode
End Using
VB   C#

如何创建发票 OCR 解决方案:图 6 - 输入的条形码

虽然 IronOCR 具有强大的 OCR 功能,但必须记住,整个发票处理工作流程可能还需要数据验证、业务逻辑和财务系统连接等其他要素。您可能需要将 IronOCR 与其他工具或部件结合起来,以实现完整的发票处理解决方案,这取决于您的特定用例。

结果:

如何创建发票 OCR 解决方案:图 7 - 使用上述代码读取示例条形码的结果

要了解有关 IronOCR 在线演示的更多信息,请参阅 *这里***.

结论

作为一个强大的、适应性强的光学字符识别系统 (光学字符识别) 库、 IronOCR 总之,它的功能非常突出。通过 Iron Software .NET 库提供的这些包罗万象的功能集合,从照片、扫描文档和 PDF 文件中提取文本变得简单易行。

最后,IronOCR 是一款出色的 OCR 解决方案,具有卓越的集成性、灵活性和准确性。IronOCR 具有无与伦比的准确性、先进的算法和识别多种文档格式(包括手写格式)的能力,是目前市场上最出色的 OCR 解决方案,它提供了更好的文档和代码示例,让初学者能够快速轻松地学习。

IronOCR 开发版性价比高,购买 IronOCR 软件包可获得终身许可。由于 IronOCR 软件包的起始价格为"$liteLicense",只需支付一笔费用即可购买多个系统,因此具有极高的性价比。它为 IronOCR 许可用户提供全天候在线工程师支持。请参阅 IronOCR 网站 有关费用的更多信息。

< 前一页
如何在C#中创建OCR收据扫描器
下一步 >
OCR自动化(C#教程中的OCR车牌识别)

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

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