使用 IRONOCR

如何創建發票 OCR 解決方案

發佈 2024年2月18日
分享:

介紹

光學字符識別,或 光學字符識別 (光學字符識別)是讓電腦識別並提取圖片或掃描文件中文字的一種技術。將包含文本的照片轉換為機器可讀的文本數據是OCR軟件的主要目標。許多行業能夠受益於這項技術的廣泛應用範圍,從而簡化數據輸入、文件數字化及自動化過程,例如您的應付帳款流程。在本文中,我們將看到OCR解決方案在處理發票中的應用,以及它如何使手動處理發票過時。

如何使用發票的OCR解決方案

  1. 安裝 IronOCR C# 程式庫。

  2. 在 Visual Studio 中建立一個新的 C# 專案

  3. 檢查一個功能豐富的 C# 程式庫,以進行收據上的 OCR。

  4. 使用 Tesseract 從收據中提取數據

  5. 在提取的文本結果中查找特定數據。

  6. 檢查所提供的收據圖片上的條碼值。

什麼是發票處理?

企業可以利用 OCR 發票處理技術,將基於圖像或掃描的賬單轉換為機器可讀的文本,從而自動提取發票中的文本和數據。這種自動化提高了整體財務流程的效率,減少了手動數據輸入,並簡化了發票處理方式。

IronOCR

光學字符識別 (光學字符識別) 對使用C#程式設計語言的開發者來說這是可能的。 IronOCR**,.NET程式庫。IronOCR由Iron Software所創建,是一個適合需要自動文字識別的應用程式的實用工具,因為它讓使用者能從照片、掃描文件和PDF文件中提取文字。如果要從發票中提取文字和數據,必須將IronOCR程式庫整合到你的.NET應用程式中,以使用IronOCR進行自動發票處理。

IronOCR通過使用AI演算法來幫助避免欺詐。這使得錯誤、欺詐和重複發票能夠快速識別。通過優越的OCR發票數據提取來減少錯誤,以避免由人工數據輸入造成的錯誤。了解更多關於IronOCR檢查 這裡## IronOCR 的主要特點是:

  • 文字提取: 使用 IronOCR 可以從圖像、掃描文檔和 PDF 文件中提取文字內容。它使用先進的 OCR 演算法來識別所提供文檔中的單詞、字符和佈局。
  • 提取發票圖片中的文字資訊: 使用 IronOCR 專門用於從發票圖片中提取文字資訊,包括供應商、項目、發票號碼、日期及其他相關數據的檢索。
  • 條碼讀取: 除了 OCR 功能之外,IronOCR 還具有從圖片中讀取條碼的能力,這增加了它在需要處理文字和條碼數據的應用中的適應性。
  • 圖像預處理: IronOCR 支援包括糾偏、降噪和對比度校正在內的圖像預處理方法。通過增強輸入圖像,這些預處理程序有助於提高 OCR 的準確性。
  • 基於區域的 OCR 技術: 通過定義 OCR 區域,開發人員可以指定圖像中特定的區域進行文字提取。此功能在處理結構化佈局的文檔時非常有用。
  • OCR 軟件: 通過處理獲取的圖像或文檔來掃描並提取掃描或拍攝信息中的文本內容。OCR 引擎會解釋文檔的佈局、單詞和字符。

需要注意的是,OCR 設置的準確性、發票的複雜性和輸入圖片的質量都會影響解決方案的成功。此外,整合過程可能需要使用 IronOCR 的 API 並理解該庫提供的特定功能。要獲取最新的詳細信息和建議,請參閱官方的 IronOCR 文件。

在 Visual Studio 中創建新專案

啟動 Visual Studio 程式後,導航到「文件選單」。選擇「新建專案」,然後選擇「控制台應用程式」。在這篇文章中,我們將使用控制台程式創建 PDF 文件。

如何建立發票的 OCR 解決方案:圖1 - 通過 Visual Studio 創建一個新項目

在相關的文字框中,輸入專案名稱並選擇檔案位置。接著,如下圖所示,點擊「Create」按鈕並選擇必要的 .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 在線演示的信息,請參考 這裡.

結論

作為強大且適應性高的光學字元識別 (光學字符識別) 供 C# 開發者使用的程式庫 IronOCR 脫穎而出,總之。通過Iron Software .NET庫提供的這個包羅萬象的功能集,可輕鬆從照片、掃描文件和PDF文件中提取文本。

最後,IronOCR是一個顯著的OCR解決方案,提供卓越的整合性、靈活性和準確性。由於其無與倫比的準確性、先進的算法以及識別各種文件格式(包括手寫文件)的能力,IronOCR是當前市場上最好的OCR解決方案。它提供更好的文件和代碼示例,使初學者能快速輕鬆地學習。

IronOCR的經濟實惠的開發者版本可供使用,並且購買IronOCR包可獲得終身許可。由於IronOCR包提供的起價為$749,單一價格即可適用於多個系統,因此它提供了卓越的價值。它還為IronOCR許可用戶提供24/7的在線工程師支持。請參閱IronOCR 網站 有關費用的詳細資訊。

< 上一頁
如何在C#中創建OCR收據掃描器
下一個 >
OCR自動化 (C#教程中的OCR車牌)

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 2,433,305 查看許可證 >