使用 IRONOCR

如何創建發票 OCR 解決方案

發佈 2024年2月18日
分享:

介紹

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

如何使用OCR解決方案處理發票

  1. 安裝這個IronOCRC# 庫。

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

  3. 檢查一個功能豐富的 C# 庫以進行即時 OCR。

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

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

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

什麼是發票處理?

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

IronOCR

光學字符識別(光學字符識別)對使用C#程式設計語言的開發者來說這是可能的。IronOCR**,.NET 程式庫。 IronOCR 是由 Iron Software 開發的一個有用工具,適用於需要自動文本識別的應用程式,因為它允許使用者從照片、掃描文件和 PDF 檔案中提取文本。 要從發票中提取文字和數據,您必須將IronOCR庫集成到您的.NET應用程式中,以使用IronOCR進行自動化的發票處理。

IronOCR 使用人工智能算法來幫助避免欺詐。 這樣可以快速識別錯誤、欺詐和重複的發票。 透過卓越的OCR發票數據提取來減少錯誤,以避免人為數據輸入引起的錯誤。 了解更多有關IronOCR檢查的信息這裡.

IronOCR 的顯著特點是:

  • 文字提取:可以使用IronOCR從圖片、掃描文件和PDF文件中提取文本內容。 它使用先進的OCR算法來識別所提供文件中的單詞、字符和版面。
  • 若要從發票照片中提取文字信息,請使用IronOCR。 這包括獲取有關供應商、項目、發票號碼、日期及其他相關數據的信息。
  • 條碼讀取:IronOCR 除了具備 OCR 功能外,還能從圖片讀取條碼,提升了其在需要同時處理文字和條碼數據的應用中的適應性。
  • 影像預處理: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 或 Web 版本,它將開啟 program.cs 文件,您可以添加代碼並構建/運行應用程式。

要測試程式碼,我們可以在那之後添加庫。

安裝 IronOCR

可以使用 Visual Studio 的 NuGet 套件管理工具,直接將套件安裝到您的解決方案中。 下方的快照可用於查看 NuGet 套件管理器。

如何建立發票的OCR解決方案:圖3 - 如何通過Visual Studio進入NuGet套件管理器

它具有一個搜索框,用於顯示來自 NuGet 網站的套件列表。如下面的截圖所示,我們需要在套件管理器中搜索短語 IronOCR:

如何創建發票的OCR解決方案:圖4 - 通過NuGet包管理器安裝IronOCR

上面的圖形可以為我們提供相關的搜索關鍵詞列表。 我們必須進行必要的選擇以安裝解決方案套件。

IronOCR 用於從發票中提取數據

IronOCR 是一個強大的光學字符識別庫,可用於提取數據和讀取發票數據。 使用 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 提供強大的光學字符識別功能,但需記住,完整的發票處理工作流程可能還需要其他元素,例如數據驗證、業務邏輯和金融系統的連接。 根據您的特定使用案例,您可能需要結合IronOCR與其他工具或部件以實現完整的發票處理解決方案。

結果:

如何創建發票的OCR解決方案:圖7 - 使用上述代碼讀取示例條形碼的結果

要了解更多關於 IronOCR 在線演示的資訊,請參考這裡.

結論

作為一種強大且適應性強的光學字符識別(光學字符識別)供 C# 開發者使用的程式庫IronOCR總之,脫穎而出。 透過Iron Software .NET庫提供的這個全方位功能集,從照片、掃描文件和PDF文件中提取文本變得可能且簡單。

最後,IronOCR 是一種出色的光學字符識別解決方案,提供卓越的集成性、靈活性和準確性。 由於其無與倫比的準確性、高級算法以及識別包括手寫在內的多種文件格式的能力,IronOCR 是目前市場上最好的 OCR 解決方案,它提供更好的文件和代碼示例,讓初學者能夠快速輕鬆地學習。

IronOCR 的經濟實惠開發版本可供使用,購買 IronOCR 套件可獲得終身許可證。 因為 IronOCR 套件的價格從 $749 起,這是一個對多個系統的單一費用,因此提供了卓越的價值。 為 IronOCR 授權用戶提供 24/7 在線工程師支持。 請查看 IronOCR網站有關費用的詳細資訊。

< 上一頁
如何在C#中創建OCR收據掃描器
下一個 >
開發人員的 OCR 自動化指南

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

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