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

IronOCR 和 Syncfusion OCR 之間的比較

本文將比較兩個使用光學字符識別(OCR)的軟體庫,以自動偵測和提取圖像和掃描文件中的列印文字。 首先,我們將討論這兩個庫的特性。 接下來,我們將檢查並比較使用示例源代碼所產生的文字識別和提取能力。 最後,我們將比較這些庫的許可和定價。

本文將比較的庫有:

  • IronOCR
  • Syncfusion Essential PDF

1. Syncfusion OCR

Syncfusion 的 Essential PDF 庫整合了 OCR 功能,能夠在 PDF 文件中的掃描圖像上進行圖像文字處理。

Syncfusion 的 OCR 處理器可以與 Tesseract 3 (3.02 和 3.05) 和 4 版本一起使用。該庫可以納入 .NET Core 和 ASP.NET 應用中。

Syncfusion Essential PDF 的 OCR 功能特性包括:

  • 對 PDF 文檔執行 OCR 任務。該庫的 OCRProcessor 類可以用於在 PDF 文件上執行 OCR。 基於 Tesseract 資料處理器,該處理器被公認為世界上最好的 OCR 處理器之一。
  • 在 PDF 文檔的部分執行 OCR 任務。用戶可以對 PDF 文檔的特定頁面或區域進行 OCR。
  • 在圖像上執行 OCR 任務。用戶可以提取圖像中的文字數據,以便導入到其他應用。
  • 多語言支持。Google Tesseract 引擎(Syncfusion 擴展)目前支持超過 60 種語言,並在試驗更多語言。
  • 良好的準確性。通過利用 Google 的 Tesseract 開源引擎,Syncfusion Essential PDF 達到了非常好的文字準確性,並在合理的時間內進行 OCR。

2. IronOCR

IronOCR 是一個 C# 軟體庫,允許 .NET 平台的開發人員識別和讀取圖片和 PDF 文件中的文字。 這是個僅限於 .NET 的 OCR 庫,使用強大的 Tesseract 引擎。Tesseract 3 - 5 版本會直接在 Windows、macOS、Linux、Azure、AWS、Lambda、Mono 和 Xamarin Mac 上運行。

IronOCR 覆蓋的語言比市場上任何其他 OCR 引擎都多,支持 125 種語言(預設僅安裝英文)。

.NET 開發人員對其文檔擁有完全控制,可以按照他們認為合適的方式進行修改。

2.1. IronOCR 特性

IronOCR 提供了一種獨特的能力和功能組合,用於整合、簽名、導出、讀取視覺效果、從照片中提取細節,而不受用戶的技術背景或硬件複雜性的限制。

2.1.1. 準確性

IronOCR SDK 在準確性方面勝過其他 OCR 庫,準確率達到 99.8%。

2.1.2. 修復低質量掃描和圖像

IronOCR 類為 C# 開發人員提供了廣泛的控制功能。 它為開發者提供了 OCR(從圖像和 PDF 轉文字)功能,並在每個具體情況中進行微調性能。

IronOCR 包含配置選項,使庫能夠處理質量不佳的圖像。 其中一些配置包括:清理背景雜音、增強對比度、增強解析度、語言、策略、旋轉和校直、色彩空間、檢測黑暗背景上的白色文字和輸入圖像類型。

2.1.3. 語言

IronOCR 支持超過 125 種國際語言。

2.1.4. OCR 文字提取

Iron Tesseract 可以讀取多種圖像格式以及 PDF 文件。 這一功能在標準的免費 Tesseract 引擎中不可用。 如果掃描質量欠佳,OCR 輸入允許您自動修復必要的屬性。

2.1.5. 圖像優化濾鏡

OCRInput 類為 C# 程序員提供了對輸入的細化控制。 然後,開發人員對圖片輸入進行預處理,以提高速度和準確性。 這消除了在進行 OCR 處理之前使用 Photoshop 批處理腳本或 ImageMagick 來準備照片的需要。

2.1.6. 圖像的 OCR 區域

IronOCR 允許最終用戶在圖像的特定區域進行 OCR。

2.1.7. OCRResult 類

IronOCR為每個它使用Tesseract 3、4或5掃描的頁面返回一個高級結果對象。這包含位置數據、圖像、文本、統計置信度、符號選擇、字體名稱、字體大小裝飾、字體重量及以下每個項目的位置:

  • 頁面
  • 段落
  • 文本行
  • 單詞
  • 單個字符
  • 條形碼

2.1.8. 在一個文檔中使用多種語言

IronOCR 允許開發人員在一個文檔中使用多種語言。 這一能力對 .NET 服務提供商極為有利。

3. 在 Visual Studio 中開始一個新項目

在本文中,我們將使用一個新的 Visual Studio 控制台應用程序來展示 IronOCR 和 Syncfusion Essential PDF 的 OCR 處理功能。

打開 Visual Studio 軟件,進入文件菜單,選擇 新項目。 然後,選擇 控制台應用

輸入專案名稱並在適當的文本框中選擇路徑。 接下來,單擊創建按鈕,然後選擇所需的.NET框架,如下圖所示:

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 1

class="content__image-caption">

現在 Visual Studio 項目將生成新控制台應用程序的結構。 在完成後將打開 program.cs 文件。

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 2

class="content__image-caption">

我們現在將添加這兩個庫到項目中。

4. 安裝IronOCR庫

IronOCR 庫可以通過四種方式下載和安裝。 它們是:

  1. 使用Visual Studio NuGet程序包管理器
  2. 從NuGet網頁直接下載。
  3. 從IronOCR網頁直接下載。
  4. 使用 Visual Studio 命令行。

4.1. 使用Visual Studio NuGet管理器

您可以使用 Visual Studio NuGet Package Manager 將 IronOCR 整合到 C# 項目中。

通過點擊 工具 > NuGet 套件管理器 > 管理 NuGet 解決方案的套件... 訪問 NuGet 套件管理器 GUI。

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 3

class="content__image-caption">

之後,一個新窗口將出現。 搜索 IronOCR 並在項目中安裝該套件。

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 4

class="content__image-caption">

也可以使用上述方法安裝 IronOCR 的其他語言包。

4.2. 從 NuGet 網頁直接下載

  1. 瀏覽到 "https://www.nuget.org/packages/IronOcr/"。

  2. Navigate to the IronPDF NuGet Gallery Page.
  3. 雙擊下載包。
  4. 雙擊下載的包。 它將自動安裝。

4.3. 從 IronOCR 網頁直接下載

開發人員可以從 IronOCR 網站下載該庫,並將其添加為項目引用。

按照下面的說明將該庫添加為 Visual Studio 中的引用。

  1. 在解決方案窗口中右鍵點擊項目。
  2. 然後選擇添加項目引用,並瀏覽到下載的引用位置。

2.4. 使用 Visual Studio 中的命令行

4.4. 使用Visual Studio命令行

  1. 在 Visual Studio 中,前往 工具 > NuGet 套件管理器 > 套件管理控制台。 該包現在將下載/安裝到當前項目中並可以使用。
Install-Package IronOcr
class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 5

class="content__image-caption">

現在包將下載/安裝到當前項目並準備使用。

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 6

class="content__image-caption">

5. 安裝 Syncfusion Essential PDF OCR 庫

Syncfusion Essential PDF 可以使用三種方式安裝。

  1. 使用Visual Studio NuGet程序包管理器
  2. 從NuGet網頁直接下載。
  3. 使用 Visual Studio 命令行。

5.1. 使用Visual Studio NuGet管理器

與 IronOCR 一樣,開發人員也可以使用 Visual Studio 的 NuGet 套件管理器安裝 SyncFusion 的 OCR 庫。

如前所述,點擊 工具 > NuGet 套件管理器 > 管理 NuGet 解決方案的套件... 訪問套件管理器。

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 7

class="content__image-caption">

搜索 SyncFusion OCR 並安裝合適的套件(應為 Syncfusion.PDF.OCR.Net.Core)。

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 8

class="content__image-caption">

Additional language packs for SyncFusion Essential PDF OCR can be downloaded from GitHub.

5.2. 從 NuGet 網頁直接下載

Syncfusion Essential PDF OCR 可以從 NuGet 網站直接下載,請按照以下指示操作:

  1. Navigate to the package's NuGet Gallery page.
  2. 雙擊下載包。
  3. 雙擊下載的包。 它將自動安裝。

2.3. 通過 IronOCR 網頁直接下載

5.3. 使用 Visual Studio 命令行工具

  1. 在 Visual Studio 中,前往 工具 > NuGet 套件管理器 > 套件管理控制台。 該包現在將下載/安裝到當前項目中並可以使用。
Install-Package Syncfusion.PDF.OCR.Net.Core -Version 20.2.0.38
class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 9

class="content__image-caption">

現在包將下載/安裝到當前項目並準備使用。

6. 在 PDF 文檔上進行 OCR

IronOCR 和 Syncfusion OCR 均能夠在 PDF 文件上執行 OCR。 在這裡,我們將討論他們如何在 Visual Studio 中使用。

6.1. 使用 IronOCR 進行 PDF OCR 文字提取

只需幾行代碼,開發人員即可對整個 PDF 或 PDF 的特定頁面/部分進行 OCR。 請考慮下面的代碼段。

using IronOcr;

var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    // Add a PDF document and specify a password if needed
    Input.AddPdf("example.pdf", "password");
    // Read the textual content from the PDF
    var Result = Ocr.Read(Input);
    // Display the text in the console
    Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    // Add a PDF document and specify a password if needed
    Input.AddPdf("example.pdf", "password");
    // Read the textual content from the PDF
    var Result = Ocr.Read(Input);
    // Display the text in the console
    Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Using Input = New OcrInput()
	' Add a PDF document and specify a password if needed
	Input.AddPdf("example.pdf", "password")
	' Read the textual content from the PDF
	Dim Result = Ocr.Read(Input)
	' Display the text in the console
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

6.2. 使用 Syncfusion Essential PDF OCR 進行 PDF OCR 文字提取

您可以使用 OCRProcessor 類對 PDF 文檔及文檔的區域進行 OCR。 檢查下面的代碼示例以獲取上下文。

using Syncfusion.OCRProcessor;
using Syncfusion.Pdf.Parsing;

// Initialize the OCR processor
using (OCRProcessor processor = new OCRProcessor(@"TesseractBinaries\"))
{
    // Load the input PDF document
    PdfLoadedDocument lDoc = new PdfLoadedDocument("Input.pdf");
    // Set the OCR language
    processor.Settings.Language = Languages.English;
    // Perform OCR on the loaded PDF
    processor.PerformOCR(lDoc, @"TessData\");
    // Save the processed PDF
    lDoc.Save("Sample.pdf");
    // Close the document
    lDoc.Close(true);
}
using Syncfusion.OCRProcessor;
using Syncfusion.Pdf.Parsing;

// Initialize the OCR processor
using (OCRProcessor processor = new OCRProcessor(@"TesseractBinaries\"))
{
    // Load the input PDF document
    PdfLoadedDocument lDoc = new PdfLoadedDocument("Input.pdf");
    // Set the OCR language
    processor.Settings.Language = Languages.English;
    // Perform OCR on the loaded PDF
    processor.PerformOCR(lDoc, @"TessData\");
    // Save the processed PDF
    lDoc.Save("Sample.pdf");
    // Close the document
    lDoc.Close(true);
}
Imports Syncfusion.OCRProcessor
Imports Syncfusion.Pdf.Parsing

' Initialize the OCR processor
Using processor As New OCRProcessor("TesseractBinaries\")
	' Load the input PDF document
	Dim lDoc As New PdfLoadedDocument("Input.pdf")
	' Set the OCR language
	processor.Settings.Language = Languages.English
	' Perform OCR on the loaded PDF
	processor.PerformOCR(lDoc, "TessData\")
	' Save the processed PDF
	lDoc.Save("Sample.pdf")
	' Close the document
	lDoc.Close(True)
End Using
$vbLabelText   $csharpLabel

7. 在圖像上進行 OCR

兩個庫都可以在 C#.NET 和 .NET Core 應用中對圖像進行 OCR。

7.1. 使用 IronOCR 在圖像上進行 OCR

IronOCR 在自動檢測和讀取不完美掃描的圖像文字方面獨樹一幟,僅需兩行代碼。

using IronOcr;

// Perform OCR and read text from the specified image
var Result = new IronTesseract().Read(@"images\11111.png").Text;
using IronOcr;

// Perform OCR and read text from the specified image
var Result = new IronTesseract().Read(@"images\11111.png").Text;
Imports IronOcr

' Perform OCR and read text from the specified image
Private Result = (New IronTesseract()).Read("images\11111.png").Text
$vbLabelText   $csharpLabel

OCR 輸入圖像

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 10

class="content__image-caption">

OCR OUTPUT from IMAGE
OCR Output
Simple Data Outputs:
» NET Text Strings
» Barcode & QR Data & Images
Structured Data Outputs:
» Pages
» Blocks
» Paragraphs
» Lines
» Words
» Characters
Export Documents:
» Searchable PDFs
» hOCR / HTML Export
» Images of any Page, Text Element or Barcode

7.2. 使用 Syncfusion Essential PDF OCR 處理器在圖像上進行 OCR

Syncfusion Essential PDF 能夠以極高的準確度從圖像提取文字。

using System.Drawing;
using Syncfusion.OCRProcessor;

// Initialize the OCR processor
using (OCRProcessor processor = new OCRProcessor(@"TesseractBinaries\"))
{
    // Load the input image
    Bitmap image = new Bitmap("11111.jpeg");
    // Set the OCR language
    processor.Settings.Language = Languages.English;
    // Perform OCR on the loaded image
    string ocrText = processor.PerformOCR(image, @"TessData\");
}
using System.Drawing;
using Syncfusion.OCRProcessor;

// Initialize the OCR processor
using (OCRProcessor processor = new OCRProcessor(@"TesseractBinaries\"))
{
    // Load the input image
    Bitmap image = new Bitmap("11111.jpeg");
    // Set the OCR language
    processor.Settings.Language = Languages.English;
    // Perform OCR on the loaded image
    string ocrText = processor.PerformOCR(image, @"TessData\");
}
Imports System.Drawing
Imports Syncfusion.OCRProcessor

' Initialize the OCR processor
Using processor As New OCRProcessor("TesseractBinaries\")
	' Load the input image
	Dim image As New Bitmap("11111.jpeg")
	' Set the OCR language
	processor.Settings.Language = Languages.English
	' Perform OCR on the loaded image
	Dim ocrText As String = processor.PerformOCR(image, "TessData\")
End Using
$vbLabelText   $csharpLabel

OCR 輸入圖像

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 11

class="content__image-caption">

OCR OUTPUT from IMAGE
OCR Output
Simple Data Output:
+ NET Text Strings
Dee eT Nd
tC eke ass
Biren)
Soy
Seg
ors
eae
eed
TLC
eres
Smt d
See amr'
etd ieot

8. 授權

使用 IronOCR 和 Syncfusion Essential PDF 都需要軟件許可。

8.1. IronOCR 許可

IronOCR 為個人、非商業項目提供免費的開發許可。

IronOCR 為商業授權提供了獨特的定價結構。 Lite 套件起價為 $799,且無其他費用。 所有許可均包括 30 天退款保證、1 年的軟件支持和升級、開發、測試、階段、生成的有效性,並且是永久性許可(一 次性購買)。 了解更多有關 IronOCR 完整的定價結構和許可信息,請參閱此頁面

支付一次性費用 $1,599,您即可獲得免權利金的 SaaS 和 OEM 商品再分發權。

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 12

class="content__image-caption">

8.2. Syncfusion Essential PDF 許可

Syncfusion Essential PDF 提供三種類型的開發者許可,但不提供 SaaS 和 OEM 覆蓋。

  • 社區許可。 社區許可對最多 5 名開發人員的小型公司和個人開發者免費。 它還包括現場支持。
  • 零售許可。 零售許可是基於一年的許可,需為組織中的每個開發人員單獨購買。 零售許可是每年每個開發者起價 $995。
  • 無限制許可。 此選項為整個組織提供許可,按照相同的年基準,但價格較低。

View the entire licensing structure for Syncfusion Essential PDF (and for other Syncfusion components) on the product licensing page.

class="content-img-align-center"> A Comparison Between IronOCR and SyncFusion Essential PDF OCR, Figure 13

class="content__image-caption">

9. 結論

IronOCR 總共支持約 125 種全球語言。 它的處理能力包括:在 PDF 文檔或圖像的部分執行 OCR,從 PDF 和照片中提取文字,以及校正質量不佳的圖像,還有許多其他功能。 IronOCR 以速度和準確性為優先。 其準確率高達 99.8%,高於市場上任何其他基於 Tesseract 的 OCR 庫。 IronOCR 開箱即用,無需調整性能或圖像預處理。

Syncfusion Essential PDF OCR 同樣使用 Google 開源的 Tesseract 引擎,它可以在整個文檔或文檔的特定部分執行 OCR。 Syncfusion 的 OCR 庫支持超過 60 種國際語言。

IronOCR 許可具有終身有效性,支持無限以及 SaaS 和 OEM 覆蓋。 另一方面,Syncfusion Essential PDF OCR 提供基於年的許可。 IronOCR 的定價從 $799 開始,而 Syncfusion 的定價從每年 $995 開始。

通過購買完整的Iron Suite,以折扣價獲得 IronOCR 以及其他四個 Iron Software 產品。 Iron Suite 包括的產品有:

  1. IronPDF
  2. IronOCR
  3. IronXL
  4. IronBarcode
  5. IronWebscraper

Iron Software 的許可頁面包含更多有關上述五個產品的定價和許可的詳細信息。

[{i:(Syncfusion Essential PDF 是其各自擁有者的註冊商標。 本網站與 Syncfusion Essential PDF 無關,未經其認可或資助。 所有產品名稱、徽標和品牌均為其各自所有者的財產。 比較僅供參考,反映撰寫時公開可用的信息。

常見問題解答

如何使用C#對圖像進行OCR?

您可以使用IronOCR在C#中對圖像進行OCR。它提供了從各種圖像格式中提取文字的方法,具有高準確性,並支持超過125種語言。

使用 IronOCR 進行 OCR 任務的優勢是什麼?

IronOCR提供出色的99.8%準確率,支持對特定文件區域進行OCR,具有低質量掃描的圖像優化功能,並支持多種語言。

IronOCR與Syncfusion的OCR能力相比如何?

雖然兩者都使用Tesseract引擎,IronOCR支持更多版本(3-5)和語言(125+),提供更高的準確性,相比Syncfusion的OCR,還提供增強的圖像校正功能。

IronOCR 提供哪些授權選項?

IronOCR提供免費的個人使用開發許可,商業許可起價為一次性$1599,包括永久許可和SaaS/OEM涵蓋。

我可以使用IronOCR從掃描的PDF文件中提取文字嗎?

是的,IronOCR可以使用其基於Tesseract的OCR功能從掃描的PDF文件中提取文字,確保高準確性和語言支持。

IronOCR 支持哪些平台?

IronOCR用途廣泛,支持包括Windows、macOS、Linux、Azure、AWS、Lambda、Mono和Xamarin Mac在內的多個平台。

IronOCR如何處理低質量的圖像掃描?

IronOCR包含增強圖像質量的功能,例如背景噪音清理、對比度增強和分辨率調整,這些功能提高了低質量圖像的OCR結果。

是否可以使用IronOCR對文檔的特定區域進行OCR?

是的,IronOCR允許用戶指定文檔的特定區域或頁面進行OCR,提供靈活性和對文字提取過程的控制。

如何將IronOCR集成到.NET項目中?

IronOCR可以通過Visual Studio的NuGet Packager Manager、從NuGet網站或從IronOCR網站下載集成到.NET項目中。

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