跳至頁尾內容
與其他組件的比較

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 的另一個強大功能是能夠從所有影像檔中掃描條碼和 QR 程式碼並讀取其文字。 IronOCR 的其他重要功能如下所列。

功能

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

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

Nanonets OCR API

Nanonets OCR API 是一個 REST API,提供即時資料擷取,量身定制以滿足您的業務需求進行自動化工作流程。 OCR API 由 AI 驅動,可在幾秒鐘內安全地捕獲、分類和提取來自非結構化文件的資料。 使用 Nanonets,您可以自動化人工資料輸入,減少所需的人工努力。

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

此外,Nanonets 還提供一個 Python 套件,使得在 Python 應用程式中輕鬆整合和資料捕獲,而無需 API 請求。 其他功能包括:

  • GDPR 合規
  • 自動資料捕獲
  • 提取資料的驗證
  • 模型訓練和再訓練能力
  • 快速 API 響應時間
  • 提供多語言的本地部署
  • 持續的 AI 學習模型
  • 無需模板設置
  • 提供多種匯出選項

文章的其餘部分如下所示:

  1. 建立 Visual Studio 專案
  2. 安裝 IronOCR
  3. 安裝 Nanonets OCR API
  4. 影像轉文字
  5. 條碼和 QR 至文字
  6. PDF 轉文字
  7. 授權
  8. 結論

1. 建立 Visual Studio 專案

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

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

  • 打開您的 Visual Studio 2022。
  • 點擊建立新專案。

    IronOCR 和 Nanonets OCR 的比較:圖 1

  • 從給定選項中選擇 C# 控制台應用程式。

    IronOCR 和 Nanonets OCR 的比較:圖 2

  • 使用名稱和位置配置新專案。 例如,將其命名為 "OCRProject"。
  • 點擊下一步。

    IronOCR 和 Nanonets OCR 的比較:圖 3

  • 在其他資訊下,選擇 .NET 6.0 Framework,因為它是最穩定的版本。

    IronOCR 和 Nanonets OCR 的比較:圖 4

  • 現在,點擊建立,專案將在您指定的位置中建立。

接下來,我們將在我們的專案中安裝程式庫以便進行比較。

2. 安裝 IronOCR

有多種方法可以安裝 IronOCR 程式庫。 讓我們一一看看它們。

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

NuGet 是用於在專案中下載和安裝依賴項的套件管理器。 其套件包含編譯程式碼和 (DLL) 及清單檔。使用下列方法來存取它:

  • 點擊工具選項卡。
  • 展開 NuGet 套件管理器選項。
  • 點擊管理解決方案的 NuGet 套件。

    IronOCR 和 Nanonets OCR 的比較:圖 5

或者:

  • 右鍵單擊方案總管。
  • 點擊管理 NuGet 套件。

    IronOCR 和 Nanonets OCR 的比較:圖 6

現在,NuGet 套件管理器窗口將打開。 瀏覽 IronOCR 並點擊安裝。

IronOCR 和 Nanonets OCR 的比較:圖 7

2.2. 從 NuGet 網站下載

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

  1. 存取 NuGet 網站。
  2. 點擊頁面右側的 "下載套件" 選項。
  3. 打開下載的套件開始安裝。
  4. 最後,重新載入解決方案即完成。

2.3. 使用 IronOCR 網頁下載

存取 Iron Software 網站並導航到 IronOCR for .NET 網頁。 滾動到最下方並點擊下載 DLL 或下載 Windows 安裝程式。

IronOCR 和 Nanonets OCR 的比較:圖 8

將下載一個 zip 文件。 解壓專案檔或運行 Windows 安裝程式。 按照以下步驟將其新增到您的專案中。

  1. 在 Visual Studio 的方案總管中,右鍵單擊專案的依賴項。
  2. 選擇新增專案參考選項。
  3. 瀏覽到下载的 DLL 文件位置。
  4. 最後點擊 OK 以新增專案參考。

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

Nanonets 可以以多種方式使用以捕獲資料。 它提供可以用於即時資料擷取的在線 OCR 設施,縮短周轉時間。 作為一個 REST API,它可以整合到多種程式語言中。 在這裡,我們將演示如何將其整合到 C# 程式語言中。

要使用 Nanonets OCR API 在 C# 中自動化資料擷取,您需要以下內容:

  1. 註冊 Nanonets - 您可以使用您的 Gmail 帳戶或註冊的電子郵件在 Nanonets 上註冊免費試用。
  2. 建立 OCR 模型 - 這將生成一個模型 ID,後續在進行 API 呼叫時會用到。
  3. 獲取免費的 API 金鑰 - 移到帳戶資訊選項卡,點擊 API 金鑰。 在這裡,您可以新增新的金鑰或使用現有的金鑰。

3.1. 新增 RestSharp 命名空間

RestSharp 是 .NET 的簡單 Rest 和 HTTP 客戶端程式庫。 它用來發送和接收 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 和 Nanonets OCR 的比較:圖 10

IronOCR 的輸出與給它的原始影像相匹配。 程式碼乾淨且易於理解,沒有任何技術性問題。

4.2. 使用 Nanonets 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 和 Nanonets OCR 的比較:圖 11

輸出並不完美。 影像包含了結構化資料,其中只有一部分被正確抓取。 在另一個簡單的文字影像下,輸出是正常的。請注意,模型可以進行訓練以獲得更準確的結果。

5. 條碼和 QR 程式碼轉文字

5.1. 使用 IronOCR

IronOCR 提供了一個有用的功能來讀取影像,該功能包括檢測和讀取條碼及 QR 程式碼的能力。 為了啟用此功能,在處理影像之前,將 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. 使用 Nanonets OCR

Nanonets OCR API 提供檢測 QR 程式碼的功能。 然而,這項功能僅在 Enterprise 計畫中可用,您需要聯絡銷售以使用它。 此外,Nanonets 允許您檢測文件或單據的特定部分。它還提供其他功能如應付帳款、發票處理和會計自動化。

6. PDF 到文字

6.1. 使用 IronOCR

閱讀 PDF 文件與使用 IronOCR 閱讀影像文件一樣簡單。 唯一需要更改的是在程式碼中使用 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. 使用 Nanonets OCR

從 PDF 文件中讀取資料也可通過 Nanonets OCR API 獲得。 程式碼幾乎與影像文字檢測程式碼相同,除了請求中使用的 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. 使用 Nanonets OCR

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

7. 授權

IronOCR 開發用途是免費的,但用於商業用途需要獲得授權。 它還提供免費試用以測試所有潛力以滿足您的需求。 輕量級套件從 $999 開始,提供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 產品,作為完整的 Iron Suite 的一部分。通過這個链接探索更多。

IronOCR 還提供免費試用,並提供退款保證。 您可以從這個連結下載 IronOCR。

[[i: (Nanonets OCR API 是其各自所有者的註冊商標。 本網站與 Nanonets OCR API 無關,未經其認可或贊助。 所有產品名稱、標誌和品牌均為其各自所有者的財產。 比較僅供資訊用途,並反映撰寫時獲得的公開資訊。)]]

常見問題

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

IronOCR是Nanonets OCR API在C#應用程式中的高度推薦替代方案。它提供了一個強大的.NET程式庫,支持超過125種語言,條碼和QR碼掃描,並且可以離線使用。

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

您可以使用IronOCR將OCR功能整合到您的C#應用程式中,它允許您通過自訂的Tesseract 5引擎將圖像和PDF轉換為機器可讀的文字。

使用IronOCR比Nanonets OCR API有什麼優勢?

IronOCR比Nanonets OCR API提供數個優勢,包括離線功能、一鍵購買授權模式、廣泛的語言支持,以及對非結構化文件的高準確度。

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

IronOCR通過支持超過125種語言來處理多語言OCR,允許在同一文件中準確識別不同語言的文字。

IronOCR能讀取圖片中的條碼和QR碼嗎?

是的,IronOCR可以檢測並讀取圖像文件中的條碼和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。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話