與其他組件比較

IronOCR和Nanonets OCR的比較

發佈 2023年5月8日
分享:

光學字符識別(光學字符識別)提供將圖像文件轉換為機器編碼文本的功能。 這非常有用,因為掃描文件被保存為圖像文件,而這些圖像文件中的數據無法通過普通的文本編輯器或甚至文字處理應用程式來搜尋、編輯或以文本格式保存。 OCR 處理幫助將這些圖像轉換為機器可讀文本,以便用戶進行進一步處理。

在這個現代時代,透過互聯網分享的文件通常是數位格式,大多是 PDF 或圖像的形式。 有許多在線資源可用於將圖像轉換為文字。 然而,大多數企業需要在其軟體應用程式中實現此功能。 考慮到這一點,有許多庫提供可嵌入軟體應用程式的OCR處理技術。

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

  • IronOCR
  • Nanonets OCR API

介紹

IronOCR - C# 程式庫

IronOCRfor .NET 是一個 C# 函式庫,使用戶可以掃描、搜尋和讀取圖像和 PDF。 它以圖像或 PDF 文件作為輸入,使用最新的 Tesseract 5 自訂構建 .NET OCR 引擎來輸出文本、結構化數據或可搜索的 PDF 文檔。 Tesseract 支援 125 多種語言,而 IronOCR 在 .NET Core 和 .NET Standard 平台上提供跨平台支援,範圍從 2.0 到 7。

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

IronOCR 的另一個強大功能是能夠從所有圖像文件掃描條碼和 QR 碼並讀取其文本。 IronOCR 的其他重要功能列在以下。

功能

  • 國際語言: 支援127種以上及自訂語言。
  • 文字和條碼讀取: 同時從多種語言中讀取文字和數字。
  • 專業文件: 從收據、支票和發票等專業文件中讀取文本。
  • 從多種格式中讀取: 從圖像中讀取(PNG、JPG、GIF、TIFF、BMP)、System.Drawing Objects、流、PDF 文件等。
  • 預處理功能: 包含預處理功能,例如篩選精靈、圖像校正、方向校正和色彩校正。
  • 簡單數據輸出: 以 .NET 文本字串、Barcode、QR 和圖像格式輸出。

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

Nanonets OCR API

Nanonets OCR API是一個 REST API,可以根據您的業務需求提供即時數據提取,適用於自動化工作流程。 OCR API 是由人工智慧驅動的,可以在幾秒鐘內安全地捕捉、分類和提取非結構化文件中的數據。 使用Nanonets,您可以自動化手動資料輸入,減少所需的手動工作量。

Nanonets 使用機器學習來理解文件,即使是那些不遵循標準模板的文件。 您可以上傳任何非結構化文件,並根據不同的欄位捕捉所需的信息。 與傳統的光學字符識別(OCR)不同,Nanonets OCR 模型可以進行訓練以獲得更好的結果。 隨著您的業務成長,Nanonets 智能文件處理 OCR 模型也會隨著每個新文件不斷增長和學習,提供快速而準確的結果。

此外,Nanonets 提供了一個 Python 套件,使得在 Python 應用程式中進行輕鬆整合和數據捕獲成為可能,無需 API 請求。 其他功能包括:

GDPR 合規

  • 自動化數據捕獲
  • 驗證提取的數據
  • 模型訓練和再訓練能力
  • 快速 API 回應時間
  • 內部部署可用於多種語言
  • 連續人工智能學習模型
  • 不需要設置模板
  • 提供多種匯出選項。

    其餘的文章如下:

  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 是一個用於在您的專案中下載和安裝相依項目的套件管理工具。 其套件包含已編譯的代碼和(DLLs)和清單檔案。使用以下方法存取它:

  • 點擊工具選項卡。
  • 擴展 NuGet 套件管理員選項。
  • 單擊管理 NuGet 套件以解決方案。

    IronOCR 與 Nanonets OCR 的比較:圖 5

    或者:

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

    IronOCR與Nanonets OCR比較:圖6

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

    IronOCR 與 Nanonets OCR 的比較:圖 7

2.2. 從 NuGet 網站下載

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

  1. 點擊連結:""。

  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
VB   C#

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

3. 安裝 Nanonets OCR

以下是修正過的段落:

Nanonets 可以用多種方式來捕捉數據。 它提供在線光學字符識別(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 請求並處理回應。 由於這也是一個 REST API,執行 Nanonets API 代碼需要這個庫。

要安裝 RestSharp,請打開解決方案的 NuGet 套件管理器,瀏覽 RestSharp,然後安裝它。 或者,您可以打開封裝管理器主控台,並輸入以下命令:

PM> Install-Package RestSharp

現在,一切都設置完畢,可以使用了。

4. 圖片轉文字

從圖像中讀取數據可能是一項相當繁瑣的工作。 圖像解析度和品質在提取內容時起著重要作用。 IronOCR 和 Nanonets 都提供光學字符識別功能以從圖像中提取文字。

4.1. 使用 IronOCR

IronOCR 讓開發人員非常容易地讀取圖像文件的內容及其強大的 IronTessaract 類別。 我們將使用以下程式碼從 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
VB   C#

輸入圖片

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.ToString());
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.ToString());
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.ToString())
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)
VB   C#

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
VB   C#

輸入圖片

Nanonets Ocr Api Csharp Alternatives 12 related to 輸入圖片

輸出

Nanonets Ocr Api Csharp Alternatives 13 related to 輸出

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

5.2. 使用 Nanonets OCR

Nanonets OCR API 提供檢測 QR 碼的功能。 不過,此功能僅在企業方案中可用,您需要聯繫銷售人員才能使用。 此外,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
VB   C#

提取的文本與 PDF 文件的格式相同。

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

6.2. 使用 Nanonets 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.ToString());
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
var client = new RestClient("https://app.nanonets.com/api/v2/OCR/Model/{{model_id}}/LabelFile/?async=false");
var request = new RestRequest(Method.Post.ToString());
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
Dim client = New RestClient("https://app.nanonets.com/api/v2/OCR/Model/{{model_id}}/LabelFile/?async=false")
Dim request = New RestRequest(Method.Post.ToString())
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)
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Console
VB   C#

在上述程式碼中,將 model_id 替換為您的 OCR 模型 ID。 此外,請將 API 密鑰替換為您自己的 API 密鑰。 然後,用您自己的檔案路徑替換 PDF 檔案路徑。

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

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

7. 授權

IronOCR 可供開發用途免費使用,需獲得商業使用許可。 它還提供免費試用,讓您測試其所有潛力以滿足您的需求。 精簡套裝從 $749 開始,並提供 30 天退款保證。 IronOCR 提供一年免費的產品支援與更新,之後每年為 $399。 所有授權都是永久的,這意味著只需一次性購買,沒有隱藏費用。 您還可以選擇一次性支付 $1999 的費用,獲得適用於 SaaS 和 OEM 產品的免版稅再分發涵蓋。 如需有關授權方案和定價計劃的更多資訊,請造訪以下網站連結.

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 頁數來制定。 專業版和企業版計劃是按模型按月計費的,與IronOCR許可相比,當模型和頁面的數量增加時,價格也會上升。 此外,IronOCR 授權是一種一次性購買,可以終身使用,並支持 OEM 和 SaaS 分發。

總體比較下,兩個 API 都提供基於 AI 和 ML 的 OCR 功能。 IronOCR 相較於 Nanonets 具有輕微的優勢,因為它可以離線使用,即使對於非結構化文件也能提供更可靠的結果。 IronOCR 提供使用自定義訓練數據的功能,並能快速整合以獲得更準確的結果。 Nanonets OCR 提供基於關鍵欄位訓練模型的功能,如果沒有正確訓練,則可能很難檢測。 此外,IronOCR 提供多語言支持,並支持多達 127 多種國際語言。

現在,您可以以兩個的價格獲得五個 Iron 產品,作為完整的 Iron Suite 的一部分。請訪問此網站連結探索更多。

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

< 上一頁
Iris 與 IronOCR 的 OCR 軟體比較
下一個 >
IronOCR與Aspose.OCR的比較

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

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