跳過到頁腳內容
與其他組件的比較

IronOCR 和 Nanonets OCR 之間的比較

光學字元辨識(OCR)能夠將圖像檔案轉換為機器編碼的文字。 鑑於掃描文件保存為圖像文件,而這些圖像文件中的數據無法使用普通文字編輯器甚至文字處理應用程式進行搜尋、編輯或以文字格式保存,因此這項功能非常有用。 OCR 處理有助於將這些圖像轉換為機器可讀文本,以便使用者進行進一步處理。

在當今時代,透過網路分享的文件通常為數位格式,大多為 PDF 或影像格式。 網路上有很多可以將圖片轉換為文字的資源。 然而,大多數企業都需要在其軟體應用程式中具備這種功能。 考慮到這一點,有許多函式庫提供了 OCR 處理技術,可以嵌入到軟體應用程式中。

在本文中,我們將討論兩個最受歡迎的 C# OCR 庫。 這些工具包括

  • IronOCR
  • Nanonets OCR API

IronOCR - C# 庫

IronOCR for .NET 是一個 C# 函式庫,使用戶能夠掃描、搜尋和讀取影像和 PDF。 它以圖像或 PDF 文件作為輸入,並使用最新的 Tesseract 5 定制 .NET OCR 引擎輸出文字、結構化資料或可搜尋的 PDF 文件。 Tesseract 支援 125 多種語言,IronOCR 提供 .NET Core 和 Standard 2.0 到 7 的跨平台支援。

IronOCR 是一個用戶友好的 API,允許 C# 開發人員使用IronTesseract類別自動將圖像轉換為文字。 該圖書館優先考慮速度、準確性和易用性。

IronOCR 的另一個強大功能是能夠掃描所有影像檔案中的條碼和二維碼並讀取其文字。 IronOCR的其他重要功能如下所示。

特點

  • 支援 125 種以上國際語言和自訂語言。 *文字和條碼讀取:*同時讀取多種語言的文字和數字。 專業文件:讀取收據、支票和發票等專業文件中的文字。 讀取多種格式:可讀取影像(PNG、JPG、GIF、TIFF、BMP)、 System.Drawing Objects 、串流、PDF 文件等。 預處理功能:**包括濾鏡精靈、影像校正、方向校正和顏色校正等預處理功能。 *簡單資料輸出:以 .NET 文字字串、條碼、二維碼和圖像格式輸出。

現在,讓我們來看看 Nanonets OCR API。

Nanonets OCR API

Nanonets OCR API是一個 REST API,可提供根據您的業務需求量身定制的即時資料擷取,用於自動化工作流程。 OCR API 由人工智慧驅動,可在幾秒鐘內安全地擷取、分類和提取非結構化文件中的資料。 借助奈米網,您可以實現手動資料輸入的自動化,從而減少所需的人工工作量。

Nanonets 利用機器學習技術來理解文檔,即使是那些不遵循標準模板的文檔也能理解。 您可以上傳任何非結構化文檔,並根據不同的欄位僅提取所需的資訊。 與傳統的 OCR 不同,奈米網 OCR 模型可以進行訓練以獲得更好的結果。 隨著您的業務成長,Nanonets 智慧文件處理 OCR 模型也會隨著每個新文件的成長和學習而成長和學習,從而提供快速且準確的結果。

此外,Nanonets 還提供了一個 Python 包,無需 API 請求即可輕鬆整合到 Python 應用程式中並進行資料擷取。 其他功能包括:

  • 符合 GDPR 法規
  • 自動數據採集
  • 驗證提取的數據
  • 模型訓練與再訓練能力
  • 快速的 API 回應時間
  • 提供多種語言的本地部署
  • 持續人工智慧學習模型
  • 無需設定模板
  • 提供多種匯出選項

文章的其他部分如下:

  1. 建立 Visual Studio 項目
  2. 安裝 IronOCR
  3. 安裝 Nanonets OCR API
  4. 圖片轉文字
  5. 條碼和二維碼轉文本
  6. PDF 轉文本
  7. 許可
  8. 結論

1. 建立 Visual Studio 項目

在本教學中,我們將使用最新版本的 Visual Studio 2022。如果您尚未下載並安裝,可以從Visual Studio 網站下載並安裝。

現在,我們需要建立一個控制台專案來開始使用這兩個庫。 請依照以下步驟建立專案:

接下來,我們將在專案中安裝這些庫進行比較。

2. 安裝 IronOCR

安裝 IronOCR 庫有多種方法。 讓我們逐一來看。

2.1. 使用 Visual Studio NuGet 套件管理器

NuGet 是用於下載和安裝專案相依性的套件管理器。 它的軟體包包含已編譯的程式碼(DLL 檔案)和清單檔案。可以使用以下方法存取它:

點選工具標籤。

或者:

現在,NuGet 套件管理器視窗將會開啟。 瀏覽並選擇 IronOCR,然後點選安裝。

IronOCR 與 Nanonets OCR 的比較:圖 7

2.2. 從 NuGet 網站下載

您也可以直接從 NuGet 官方網站下載 IronOCR。請依照以下步驟操作:

  1. 造訪 NuGet 網站。
  2. 點選頁面右側的"下載軟體包"選項。
  3. 開啟下載的軟體包開始安裝。
  4. 最後,重新載入解決方案,就完成了。

2.3. 使用 IronOCR 網頁下載

造訪 Iron Software 網站並導航至 IronOCR for .NET 網頁。 捲動到頁面底部,點擊"下載 DLL"或"下載 Windows 安裝程式"。

IronOCR 與 Nanonets OCR 的比較:圖 8

將會下載一個壓縮檔。 解壓縮專案檔案或執行 Windows 安裝程式。 請按照以下步驟將其新增至您的專案。

  1. 在 Visual Studio 的解決方案資源管理器中,以滑鼠右鍵按一下專案的依賴項。
  2. 選擇"新增項目參考"選項。
  3. 瀏覽到下載的 DLL 檔案所在位置。
  4. 最後,按一下"確定"以新增項目引用。

2.4. 在 Visual Studio 中使用命令提示符

  1. 在 Visual Studio 中,導覽至"工具"標籤。
  2. 擴充 NuGet 套件管理器選項。
  3. 選擇"套件管理員控制台",然後輸入以下命令:
Install-Package IronOcr

這將自動下載 IronOCR 並將其安裝到您的專案中。

現在,我們已準備好在專案中使用 IronOCR。

2.5. 加入必要的 IronOCR 命名空間

只需要一個命名空間,需要將其新增到我們需要存取 IronOCR 函數的原始碼檔案的頂部。

using IronOcr;
using IronOcr;
Imports IronOcr
$vbLabelText   $csharpLabel

現在,我們來安裝 Nanonets OCR API。

3. 安裝 Nanonets OCR

奈米網可以透過多種方式用於數據採集。 它提供線上 OCR 功能,可用於即時資料擷取,從而縮短處理時間。 作為 REST API,它可以整合到多種程式語言中。 在這裡,我們將示範如何將其整合到 C# 程式語言中。

要使用 C# 中的 Nanonets OCR API 自動擷取數據,您需要以下元件:

1.註冊 Nanonets - 您可以使用 Gmail 帳戶或在 Nanonets 註冊的電子郵件註冊免費試用版。 2.建立 OCR 模型- 這將產生一個模型 ID,稍後在進行 API 呼叫時將使用該 ID。 3.取得免費 API 金鑰- 前往"帳戶資訊"選項卡,然後按一下"API 金鑰"。 在這裡,您可以新增金鑰或使用現有金鑰。

3.1. 新增 RestSharp 命名空間

RestSharp 是一個適用於 .NET 的簡單 Rest 和 HTTP 用戶端程式庫。 它用於發送和接收 API 請求以及處理回應。 由於 Nanonets API 也是 REST API,因此需要此程式庫來執行 Nanonets API 程式碼。

若要安裝 RestSharp,請開啟解決方案的 NuGet 套件管理器,瀏覽並選擇 RestSharp,然後進行安裝。 或者,您可以開啟軟體包管理器控制台並輸入以下命令:

Install-Package RestSharp

現在,一切都已準備就緒,可以使用了。

4. 圖片轉文字

從圖像中讀取資料可能是一項相當繁瑣的任務。 影像解析度和品質在提取內容時起著重要作用。 IronOCR 和 Nanonets 都提供光學字元辨識功能,可從影像中擷取文字。

4.1. 使用 IronOCR

IronOCR 憑藉其強大的IronTesseract類,使開發人員能夠非常輕鬆地讀取影像檔案的內容。 我們將使用以下程式碼從PNG圖像檔案中讀取文字:

var Ocr = new IronTesseract();
using (var Input = new OcrInput()){
  Input.AddImage("test-files/employmentapp.png");
  var Result = Ocr.Read(Input);
  Console.WriteLine(Result.Text);
}
var Ocr = new IronTesseract();
using (var Input = new OcrInput()){
  Input.AddImage("test-files/employmentapp.png");
  var Result = Ocr.Read(Input);
  Console.WriteLine(Result.Text);
}
Dim Ocr = New IronTesseract()
Using Input = New OcrInput()
  Input.AddImage("test-files/employmentapp.png")
  Dim Result = Ocr.Read(Input)
  Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

輸入影像

IronOCR 與 Nanonets OCR 的比較:圖 9

輸出

IronOCR與奈米網OCR的比較:圖10

IronOCR 的輸出結果與輸入的原始影像完全一致。 程式碼簡潔易懂,沒有任何技術細節。

4.2. 使用奈米網OCR

Nanonets 還提供了從圖像中提取文字的功能。 為此,需要使用身份驗證金鑰發出 API 調用,然後將圖像上傳到 Nanonets 伺服器。 快速 OCR 工具隨後會將提取的文字作為回應傳回給應用程式。 以下是一個程式碼範例:

var client = new RestClient("https://app.nanonets.com/api/v2/OCR/FullText");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Basic " + Convert.ToBase64String(Encoding.Default.GetBytes("REPLACE_YOUR_API_KEY:")));
request.AddFile("file", "FILE_PATH");
RestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
var client = new RestClient("https://app.nanonets.com/api/v2/OCR/FullText");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Basic " + Convert.ToBase64String(Encoding.Default.GetBytes("REPLACE_YOUR_API_KEY:")));
request.AddFile("file", "FILE_PATH");
RestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
Dim client = New RestClient("https://app.nanonets.com/api/v2/OCR/FullText")
client.Timeout = -1
Dim request = New RestRequest(Method.POST)
request.AddHeader("Authorization", "Basic " & Convert.ToBase64String(Encoding.Default.GetBytes("REPLACE_YOUR_API_KEY:")))
request.AddFile("file", "FILE_PATH")
Dim response As RestResponse = client.Execute(request)
Console.WriteLine(response.Content)
$vbLabelText   $csharpLabel

IronOCR與奈米網OCR的比較:圖11

輸出結果並不完美。 影像中包含結構化數據,但只有部分數據被正確獲取。 使用另一張簡單的文字圖像,輸出結果正常。請注意,該模型可以進行訓練以獲得更準確的結果。

5. 條碼和二維碼轉文本

5.1. 使用 IronOCR

IronOCR 提供了一個有用的影像讀取功能,包括偵測和讀取條碼和二維碼的功能。 若要啟用此功能,請在處理影像之前將ReadBarcodes配置屬性設為 true。 OCR 處理完成後,遍歷 OCR 結果,提取每個偵測到的條碼的值。 以下是使用 IronOCR 讀取條碼的範例程式碼片段:

var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;
using (var input = new OcrInput()) {    
    input.AddImage("test-files/Barcode.png");    
    var Result = Ocr.Read(input);    
    foreach (var Barcode in Result.Barcodes){
        Console.WriteLine(Barcode.Value);
    }
}
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;
using (var input = new OcrInput()) {    
    input.AddImage("test-files/Barcode.png");    
    var Result = Ocr.Read(input);    
    foreach (var Barcode in Result.Barcodes){
        Console.WriteLine(Barcode.Value);
    }
}
Dim Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True
Using input = New OcrInput()
	input.AddImage("test-files/Barcode.png")
	Dim Result = Ocr.Read(input)
	For Each Barcode In Result.Barcodes
		Console.WriteLine(Barcode.Value)
	Next Barcode
End Using
$vbLabelText   $csharpLabel

輸入影像

Nanonets Ocr Api Csharp Alternatives 12 related to 輸入影像

輸出

Nanonets Ocr Api Csharp Alternatives 13 related to 輸出

輸入圖像中的所有三個條碼均已成功讀取,並且其隱藏文字已顯示出來。

5.2. 使用奈米網OCR

Nanonets OCR API 提供偵測二維碼的功能。 但是,此功能僅在企業版套餐中提供,您需要聯絡銷售部門才能使用它。 此外,Nanonets 還允許您檢測文件或收據的特定部分。它還提供其他功能,例如應付帳款、發票處理和會計自動化。

6. PDF 轉文本

6.1. 使用 IronOCR

使用 IronOCR 讀取 PDF 檔案與讀取影像檔案一樣簡單。 唯一需要做的更改是在讀取映像的程式碼中使用AddPdf方法來取代AddImage方法。 代碼如下:

var Ocr = new IronTesseract();
using (var Input = new OcrInput()) {
    Input.AddPdf("test-files/example.pdf");
    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
}
var Ocr = new IronTesseract();
using (var Input = new OcrInput()) {
    Input.AddPdf("test-files/example.pdf");
    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
}
Dim Ocr = New IronTesseract()
Using Input = New OcrInput()
	Input.AddPdf("test-files/example.pdf")
	Dim Result = Ocr.Read(Input)
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

擷取的文字格式與 PDF 檔案格式相同。

Nanonets Ocr Api Csharp Alternatives 14 related to 6.1. 使用 IronOCR

6.2. 使用奈米網OCR

Nanonets OCR API 也支援從 PDF 檔案讀取資料。 這段程式碼與圖像文字偵測程式碼幾乎完全相同,唯一的差別在於請求中使用的 URL。讓我們來看一下程式碼:

var client = new RestClient("https://app.nanonets.com/api/v2/OCR/Model/{{model_id}}/LabelFile/?async=false");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Basic " + Convert.ToBase64String(Encoding.Default.GetBytes("REPLACE_YOUR_API_KEY:")));
request.AddHeader("Accept", "Multipart/form-data");
request.AddFile("file", "test-files/example.pdf");
RestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
var client = new RestClient("https://app.nanonets.com/api/v2/OCR/Model/{{model_id}}/LabelFile/?async=false");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Basic " + Convert.ToBase64String(Encoding.Default.GetBytes("REPLACE_YOUR_API_KEY:")));
request.AddHeader("Accept", "Multipart/form-data");
request.AddFile("file", "test-files/example.pdf");
RestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
Dim client = New RestClient("https://app.nanonets.com/api/v2/OCR/Model/{{model_id}}/LabelFile/?async=false")
Dim request = New RestRequest(Method.POST)
request.AddHeader("Authorization", "Basic " & Convert.ToBase64String(Encoding.Default.GetBytes("REPLACE_YOUR_API_KEY:")))
request.AddHeader("Accept", "Multipart/form-data")
request.AddFile("file", "test-files/example.pdf")
Dim response As RestResponse = client.Execute(request)
Console.WriteLine(response.Content)
$vbLabelText   $csharpLabel

在上面的程式碼中,將model_id替換為您的 OCR 模型 ID。 另外,請將 API 金鑰替換為您自己的 API 金鑰。 然後,將 PDF 文件路徑替換為您自己的文件路徑。

Nanonets Ocr Api Csharp Alternatives 15 related to 6.2. 使用奈米網OCR

Nanonets OCR 的輸出結果與 IronOCR 類似,但輸出結果包含額外的空格和換行符。

7. 許可

IronOCR可免費用於開發目的,但商業用途需要獲得許可。 它還提供免費試用,讓您測試其所有功能是否符合您的需求。 精簡版套餐起價為$799 ,並提供 30 天退款保證。 IronOCR 提供一年的免費產品支援和更新,之後每年收費 399 美元。 所有許可證均為永久有效,這意味著只需一次性購買,沒有任何隱藏費用。 您還可以選擇為 SaaS 和 OEM 產品提供免版稅再分發保障,只需一次性支付 1999 美元。 有關許可套餐和定價方案的更多信息,請訪問以下連結

Aws Ocr Alternatives 14 related to 7. 許可

Nanonets OCR API 提供三種不同的套餐。 您可以免費註冊,體驗其入門套餐。 前 500 頁免費,之後每頁收費 0.3 美元。 您只需為使用的服務付費。 有關價格的更多詳細信息,您可以訪問此連結

Nanonets Ocr Api Csharp Alternatives 17 related to 7. 許可

8.結論

Nanonets Ocr Api Csharp Alternatives 18 related to 8.結論

IronOCR 為 C# 開發人員提供可在大多數平台上使用的高級 Tesseract API。 它可以部署在 Windows、Linux、Mac、Azure、AWS 和 Lambda 上,並支援 .NET Framework 專案以及 .NET Standard 和 .NET Core。 IronOCR 還能夠讀取 OCR 掃描中的條碼,甚至可以將 OCR 匯出為 HTML 和可搜尋的 PDF。 有關 C# Tesseract OCR 的更多信息,請點擊此處

Nanonets OCR API 提供多種 OCR 工具。 它為發票、收據、帳單、表格和身分證等多種文件類型提供即用型 OCR 解決方案,以實現資料自動採集。 無需設定模板,沒有隱藏費用,使用 Nanonets OCR API 可節省 90% 的時間,並提高 10 倍的生產力。

IronOCR 許可證是基於開發者的,這意味著您應該始終根據將使用該產品的開發者數量購買許可證。 Nanonets 的定價方案是根據提取資訊和分析資料所需的圖像或 PDF 頁數來製定的。 Pro 和 Enterprise 計劃按月按模型收費,與 IronOCR 授權相比,當模型和頁面數量增加時,價格也會增加。 此外,IronOCR 授權是一次性購買,可終身使用,並支援 OEM 和 SaaS 分發。

總體而言,這兩個 API 都提供了基於 AI 和 ML 的 OCR 功能。 IronOCR 比 Nanonets 略勝一籌,因為它能夠離線使用,即使對於非結構化文件也能提供更可靠的結果。 IronOCR 提供使用自訂訓練資料的功能,並可快速整合以獲得更準確的結果。 Nanonets OCR 提供了基於關鍵字段訓練模型的功能,如果訓練不當,則可能難以檢測。 此外,IronOCR 提供多語言支持,支援 125 多種國際語言。

現在購買Iron Suite套裝,即可享受五件Iron產品僅需兩件的價格。點擊此連結了解更多。

IronOCR 也提供免費試用,並有退款保證。 您可以從此鏈接下載 IronOCR。

請注意Nanonets OCR API 是其各自所有者的註冊商標。 本網站與 Nanonets OCR API 無任何關聯,也未獲得其認可或贊助。 所有產品名稱、標誌和品牌均為其各自擁有者的財產。 比較資料僅供參考,並反映撰寫時的公開資訊。

常見問題解答

在 C# 應用程式中,Nanonets OCR API 的最佳替代方案是什麼?

IronOCR 是強烈推薦用於 C# 應用程式的 Nanonets OCR API 的替代方案。它提供了一個強大的 .NET 函式庫,支援超過 125 種語言、Barcode 和 QR code 掃描,並且可以離線使用。

如何將 OCR 功能整合到我的 C# 應用程式中?

您可以使用 IronOCR 將 OCR 功能整合到您的 C# 應用程式中,IronOCR 可讓您利用其客製化 Tesseract 5 引擎將影像和 PDF 轉換為機器可讀的文字。

與 Nanonets OCR API 相比,使用 IronOCR 有哪些優勢?

與 Nanonets OCR API 相比,IronOCR 具備多項優勢,包括離線功能、一次性購買授權模式、廣泛的語言支援,以及非結構化文件的高準確度。

IronOCR 如何處理多語言 OCR 處理?

IronOCR 支援超過 125 種語言,可處理多語言 OCR 處理,讓同一文件中的各種語言都能精確辨識文字。

IronOCR 可以讀取影像中的 BarCode 和 QR 碼嗎?

是的,IronOCR 可以從影像檔案中偵測並讀取 BarCode 和 QR 代碼,使其成為需要同時識別文字和代碼的應用程式的多用途工具。

IronOCR 有哪些授權選項?

IronOCR 為開發用途提供免費試用。若要用於商業用途,則需要一次性購買授權,此授權允許永久使用而無需經常性費用。

IronOCR 的定價模式與 Nanonets 相比如何?

IronOCR 採用一次性購買的授權模式,讓使用者可以避免持續性的成本,而 Nanonets 則是依據使用量來收費,先提供免費的入門套件,然後再依頁數收取費用。

在 C# 專案中使用 IronOCR 需要哪些安裝步驟?

要在 C# 專案中使用 IronOCR,您需要在開發環境中安裝 IronOCR NuGet 套件,之後您就可以立即開始實作 OCR 功能。

OCR 如何改善業務工作流程?

OCR 可將影像和 PDF 轉換為可搜尋和可編輯的文字,從而改善業務工作流程,使資料輸入程序自動化,並提高各種業務運作的效率。

IronOCR 為什麼適合離線使用?

IronOCR 適合離線使用,因為它不需要持續的網際網路連線來執行 OCR 任務,因此非常適合在連線能力有限的環境中需要可靠效能的應用程式。

Kannaopat Udonpant
軟體工程師
在成為软件工程師之前,Kannapat 從日本北海道大學完成了環境資源博士學位。在追逐學位期间,Kannapat 還成為了生產工程系一部份——汽車机器人实验室的成員。2022 年,他利用他的 C# 技能加入 Iron Software 的工程團隊, 專注於 IronPDF。Kannapat 珍惜他的工作,因为他直接向编写大部分 IronPDF 使用的代码的开发者学习。除了同行学习,Kannapat 还喜欢在 Iron Software 工作的社交十环。当他不编写代码或文档时,Kannapat 通常在他的 PS5 上打游戏或重看《The Last of Us》。