為什麼選擇 IronOCR 而非 Tesseract
準確性
Tesseract
- Tesseract 無法處理旋轉、傾斜、低 DPI、掃描或有背景噪音的圖像。
- 需要使用 Photoshop 或 ImageMagick 進行影像預處理。
- 處理時間過長後提供無意義資訊
IronOCR
- IronOCR 預處理及影像濾鏡帶走這個頭痛
- 用戶通常在最少配置的情況下可以達到99.8-100%的精確度。
圖像相容性
Tesseract
- 只接受在 C# 中是 IntPtr C++ 物件的 Leptonica PIX 圖像格式。
- PIX 物件不是管理記憶體 - 在 C# 中未能小心處理它們會導致記憶體洩漏
IronOCR
- 影像記憶體管理
- PDF和廣泛的圖像支援:
- 多幀TIFF
JPEG 和 JPEG2000
GIF
PNG
System.Drawing 位圖、串流和位元組陣列/二進位影像資料(位元組[])在每一種檔案格式中都包含
-IronSoftware.System.Drawing即將取代對 System.Drawing 的依賴(允許通用的位圖格式)
性能
Tesseract
- 不良的文件記錄設定必須進行細微調整以確保準確性。
- 依賴乾淨的文件/預處理過的圖像
IronOCR
- 零配置對於大多數圖像都能精確且快速地工作。
- 多執行緒充分利用多核心處理器
- 即使是低解析度的圖像通常也能以高度的準確性進行工作。
- 不需要Photoshop
API
API
Tesseract
幾乎沒有支援,不適合初學者:
使用 Interop 層 - 許多在 GitHub 上的層已過時,且存在未解決的票證、記憶體洩漏和控制台警告。
-- 可能不支援 .NET Core 或 Standard
- 使用命令列 EXE -- 難以部署且經常受到病毒掃描器和安全政策的干擾
IronOCR
- 一個名為IronTesseract的受管理且經過測試的.NET庫
- 完整文件記錄與IntelliSense支援
- 支援工程師團隊隨時準備協助
語言
Tesseract
- 僅100種語言
IronOCR
- 超過127種內置語言 + 自定義語言包支持
結論
Tesseract 是 C++ 開發者的絕佳資源,但它不是一個完整的 .NET OCR 函式庫。 掃描或拍攝的圖像必須預先處理為正交的、標準化的、高解析度的,並且沒有數字噪音,Tesseract 才能準確地處理它們。
相比之下,IronOCR 只需一行代碼就能完成這個功能及更多。 IronOCR 使用了非常精細調整的Tesseract內建於 C# 的內部 OCR 引擎,提供了許多性能改進和標準附加的功能。