在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
在当今快节奏的商业环境中,自动化任务和非结构化数据已成为提高效率和减少人工错误的关键策略。 其中一项任务是从发票或采购订单中提取信息,传统上这一过程需要大量的人工操作。 然而,由于机器学习、深度学习模型和光学字符识别技术的进步(光学字符识别)借助软件技术,企业现在可以使用 IronOCR 等工具简化这种发票信息提取过程。 在本文中,我们将探讨如何利用机器学习和 IronOCR 来彻底改变发票的处理方式。
OCR 技术已经存在了一段时间,但随着机器学习技术的出现,它在发票处理和数据提取方面的应用有了显著提升。 OCR 是 "光学字符识别"(Optical Character Recognition)的简称,是一种将不同类型的文档(如带有发票信息的扫描纸质文档、PDF 文件、财务文档或数码相机拍摄的输入图像)转换为可编辑和可搜索数据的技术。 它主要是通过图像预处理将图像文本翻译成机器可读文本。
IronOCR是一个基于机器学习算法的强大 OCR 库,可集成到各种应用程序和编程语言中,是处理发票的通用工具。 通过使用IronOCR,企业可以自动提取发票数据,例如发票号码、日期、供应商详情和商品明细,且具有显著的准确性。
使用用于发票处理的 IronOCR在翻译过程中,您必须注意到,.NET、Java、Python 或 Node.js 提供了许多好处,可以大大提高贵组织财务运营(如应付账款)的效率和准确性。 让我们来详细了解一下这些优势:
IronOCR 利用先进的机器学习算法准确识别和提取发票中的文本。 这样可以最大限度地减少数据录入中的人为错误,确保正确记录关键的财务信息。
使用 IronOCR 实现发票处理自动化可大大减少人工数据录入所需的时间和资源。 这样可以优化员工时间,减少对人工的需求,从而节省大量成本。
IronOCR 可以快速高效地处理大量发票。 这样,员工就无需手动输入每张发票上的数据,从而可以专注于更具战略性的任务。
IronOCR 具有可扩展性,可以处理随着业务扩展而不断增加的发票量。 您无需担心工作量的增加和边界框会压垮您的发票文档处理系统。
IronOCR 支持 125 种以上的语言,使企业能够处理来自世界各地供应商和客户的发票。 无论发票使用哪种语言书写,IronOCR 都能准确提取数据。
IronOCR 可以处理各种格式的发票,包括扫描图像、基于图像的 PDF 和基于文本的 PDF。 这种多功能性可确保您轻松处理不同来源和格式的发票。
您可以自定义 IronOCR,以便从发票中提取特定数据字段,如发票号码、日期、供应商详情和细列项目信息。 这种定制化程度使您可以根据具体业务需求量身定制解决方案。
使用 IronOCR 自动处理发票有助于保持准确的记录并提供审计跟踪。 这对于遵守财务规定和简化审计流程至关重要。
IronOCR 的精简和自动化特性缩短了处理发票的时间,进而缩短了发票处理周期。 这样可以加快向供应商付款的速度,并改善双方的关系。
通过结构化数字格式的发票数据,您可以进行更深入的数据分析。 这有助于识别趋势、优化支出并做出明智的财务决策。
要实施 IronOCR 进行发票处理,请遵循以下一般步骤:
首先在您喜欢的开发环境中创建一个新的 C# 项目或打开一个现有项目(例如,Visual Studio 或 Visual Studio Code). 我使用 Visual Studio 2022 IDE 和控制台应用程序进行演示。 您可以在任何项目类型中使用相同的实现方式,如 ASP.NET Web API、ASP.NET MVC、ASP.NET Web Forms 或任何 .NET Framework。
要在项目中使用 IronOCR,您需要安装 IronOCR NuGet 软件包。 操作方法如下:
打开 NuGet 包管理器控制台。 在 Visual Studio 中,您可以在 "Tools" > "NuGet Package Manager" > "Package Manager Console" 下找到它。
:PackageInstall
现在,让我们编写 C# 代码,使用 IronOCR 对发票执行 OCR。 我们将使用以下发票样本作为示例。
以下示例代码将发票图像作为输入,并将从发票中提取数据,如发票号码、采购订单等。
string invoicePath = @"D:\Invoices\SampleInvoice.png";
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
// Add multiple images
input.AddImage(invoicePath);
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
}
string invoicePath = @"D:\Invoices\SampleInvoice.png";
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
// Add multiple images
input.AddImage(invoicePath);
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
}
Dim invoicePath As String = "D:\Invoices\SampleInvoice.png"
Dim ocr As New IronTesseract()
Using input As New OcrInput()
' Add multiple images
input.AddImage(invoicePath)
Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
End Using
以上代码是使用 IronOCR 对单张发票图像执行 OCR 的简明 C# 示例(SampleInvoice.png)然后将提取的发票数据打印到控制台。 确保将 invoicePath 变量替换为特定发票图像文件的路径。
让我们一次输入多张发票并提取其数据。 以下是我们用作输入的发票目录。
以下示例代码将一次性从多张发票中提取文本。
string [] fileArray = Directory.GetFiles(@"D:\Invoices\", "*.png");
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
foreach (string file in fileArray)
{
input.AddImage(file);
}
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
}
string [] fileArray = Directory.GetFiles(@"D:\Invoices\", "*.png");
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
foreach (string file in fileArray)
{
input.AddImage(file);
}
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
}
Dim fileArray() As String = Directory.GetFiles("D:\Invoices\", "*.png")
Dim ocr As New IronTesseract()
Using input As New OcrInput()
For Each file As String In fileArray
input.AddImage(file)
Next file
Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
End Using
上述代码将从文件夹中获取所有 PNG 图像,提取数据,然后将文件夹中所有发票的提取数据打印在控制台上。
以下代码将读取文件夹中的所有图片,执行数据提取,并将其保存为一张可搜索的 PDF 发票。
string [] fileArray = Directory.GetFiles(@"D:\Invoices\", "*.png");
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
foreach (string file in fileArray)
{
input.AddImage(file);
}
OcrResult result = ocr.Read(input);
result.SaveAsSearchablePdf(@"D:\Invoices\Searchable.pdf");
}
string [] fileArray = Directory.GetFiles(@"D:\Invoices\", "*.png");
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
foreach (string file in fileArray)
{
input.AddImage(file);
}
OcrResult result = ocr.Read(input);
result.SaveAsSearchablePdf(@"D:\Invoices\Searchable.pdf");
}
Dim fileArray() As String = Directory.GetFiles("D:\Invoices\", "*.png")
Dim ocr As New IronTesseract()
Using input As New OcrInput()
For Each file As String In fileArray
input.AddImage(file)
Next file
Dim result As OcrResult = ocr.Read(input)
result.SaveAsSearchablePdf("D:\Invoices\Searchable.pdf")
End Using
所有示例中的代码几乎相似,我们只是在演示不同用例时稍作改动。 输出的 PDF 文件如下所示:
通过这种方式,IronPdf 为发票处理和文档处理自动化提供了最简单的方法。
要使用 IronOCR 从 PDF 发票中提取数据,可以采用与前面代码示例类似的方法。 IronOCR 既能处理基于图像的 PDF,也能处理基于文本的 PDF。 下面是一个如何从 PDF 发票中提取数据的简短示例:
string [] fileArray = Directory.GetFiles(@"D:\Invoices\", "*.pdf");
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
foreach (string file in fileArray)
{
input.AddPdf(file);
}
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
}
string [] fileArray = Directory.GetFiles(@"D:\Invoices\", "*.pdf");
IronTesseract ocr = new IronTesseract();
using (OcrInput input = new OcrInput())
{
foreach (string file in fileArray)
{
input.AddPdf(file);
}
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
}
Dim fileArray() As String = Directory.GetFiles("D:\Invoices\", "*.pdf")
Dim ocr As New IronTesseract()
Using input As New OcrInput()
For Each file As String In fileArray
input.AddPdf(file)
Next file
Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
End Using
上述代码可以高效地批量处理位于一个目录中的多个 PDF 发票(@"D:\Invoices\")使用 IronOCR。 它可以检索文件路径,添加每个 PDF 进行 OCR 处理,合并提取的文本,并将结果打印到控制台。 这种方法简化了处理大量发票的组织的发票数据提取,提高了效率并减少了人工工作量。
总之,机器学习与 IronOCR 等先进 OCR 技术的融合正在重塑发票的处理方式。 本文带您了解了 IronOCR 的使用过程,展示了它的显著优势。 通过采用 IronOCR,企业可以实现更高的准确性,节省时间和金钱,毫不费力地处理各种格式和语言的发票。 消除人工数据录入不仅能提高效率,还能降低金融交易中出现代价高昂的错误的可能性。 IronOCR 简化并改进了发票处理工作流程,是企业在当今竞争激烈的环境中提升财务运营能力的明智之选。 此外,IronOCR 还提供了一套强大的功能,包括支持 125 种以上语言、可定制的数据提取以及与基于图像和文本的 PDF 兼容。
虽然 IronOCR 的功能集令人印象深刻,但还值得注意的是IronOCR 的定价模式旨在满足广泛的业务需求,提供灵活的选项,包括免费试用该翻译既适用于小型企业,也适用于大型公司。 无论您是处理几张发票,还是管理大量财务文件,IronOCR 都是可靠、经济高效的解决方案。