IronOCR 功能

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronOCR是一個.NET函式庫,允許開發人員從圖像中掃描和讀取文字或條碼。

相容性

.NET語言

  • C# (教程 API 參考
  • 在 C# 中從圖像(jpg、png、gif、tiff、bmp)中掃描和讀取文本或條形碼。
  • VB.NET
  • 在 VB.NET 中從圖像(jpg、png、gif、tiff、bmp)掃描和讀取文本或條碼。
  • F#

    • 在 F# 中從圖像(jpg、png、gif、tiff、bmp)中掃描和讀取文字或條碼。

平台

  • .NET 5, 6, 7 和 8 (教程)
  • IronOCR 支持 .NET 5、6、7 和 8。
  • .NET Core 2 和 3 (教程)

    • IronOCR 支援 .NET Core 2 和 3。

    • 當前版本支持在 Linux、Unix 和 macOS 客戶端操作系統以及 Mono 上運行的 .NET Core。
  • 未來的版本將支持MAUI和Xamarin。
  • .NET Standard 2+API 參考
  • IronOCR 與 .NET Standard 2 及以上版本兼容。
  • .NET Framework 4.6.2+ (程式碼範例 API 參考

    • 掃描並從 .NET Framework 4.6.2 及以上版本的圖像中讀取文本或條碼。

應用程式類型

  • 控制台、網頁和桌面 (教程 API 參考

    • 使用 IronOCR 為 Web、桌面和控制台創建應用程序。

作業系統

集成開發環境

  • Microsoft Visual Studio教程
  • Jetbrains ReSharper 和 Rider

證書

  • Microsoft Authenticode

    • DigiCert Trusted G4 Code Signing RSA4096 SHA384 2021 CA1

OCR 引擎

底層OCR引擎

  • Tesseract 5 (教程 程式碼範例
  • Tesseract 是一款開源的文字識別(OCR)引擎,根據 Apache 2.0 許可證提供。 C#.NET 的其中一個最精確和快速的庫。 目前,Tesseract 5 是最穩定的版本。
  • 詳細配置(程式碼範例

    • IronTesseract.Configuration 物件在 C# / .NET 中提供存取底層 Tesseract API 的功能,以便進行進階用戶的設定配置。

    • 安裝可以在執行OCR後改善輸出效果。

    • 為了提高 OCR 的速度,請查看此代碼範例以獲取快速 OCR 配置。

國際語言

教學

文字和條碼讀取

專業文件

此方法使用機器學習來增強文字識別。

並發性

電腦視覺

操作指南 API 參考

  • 使用進階訓練模型的電腦視覺技術來尋找文字。 IronOCR 使用 OpenCV 利用计算机视觉来检测图像中存在文本的区域。 這對於包含大量噪音的圖像、文字分佈在許多不同位置的圖像,以及文字扭曲的圖像非常有用。 IronOCR 中使用計算機視覺將確定文本區域的位置,然後使用 Tesseract 嘗試讀取這些區域。

OCR 輸入

Code Example

支持多種格式讀取

過濾器

  • 過濾精靈 (程式碼範例 API 參考)
  • 如果不知道應該對圖像應用哪個過濾器,Filter Wizard 會使用暴力法,提供適用於 OcrInput 的過濾器列表,返回最高信心度的組合。
  • OCR 圖像過濾器 (如何操作 教學 程式碼範例

    • SharpenAPI 參考

      * 銳化模糊的 OCR 文件。 將 Alpha 通道壓平為白色。
    • EnhanceResolution (API 參考)

      * 提高低品質圖像的解析度。
    • Denoise (API 參考文件)

      * 移除數位雜訊。此過濾器應僅在預期有雜訊的情況下使用。 將 Alpha 通道壓平為白色。
    • Dilate (API 參考)

      * 高級形態學。 擴張會在影像中的物體邊界增加像素。 侵蝕的對立面
    • Erode (API 參考)
  • 高級形態學。 腐蝕會移除物件邊界上的像素。 縮小
  • 修正圖片方向 (操作指南 教學 程式碼範例

    • Rotate (教程 API 參考

      * 將圖像順時針旋轉若干度。若要逆時針旋轉,請使用負數。
    • 校正倾斜 (教程 API 參考

      * 將圖像旋轉使其正確向上並保持正交。 這對於光學字符識別非常有用,因為Tesseract對斜掃描的容忍度可以低至5度。
    • Scale (教程 API 參考手冊
  • 按比例縮放 OcrInput 頁面。
  • 修正圖像顏色 (操作指南 教學 程式碼範例

    • Binarize (教程 API 參考

      * 這個影像濾鏡將每個像素轉換為黑色或白色,沒有中間色調。 可改善文字與背景對比非常低的情況下的OCR性能。
    • ToGrayscale (API 參考)

      * 此圖像濾鏡將每個像素轉換為灰階色調。 不太可能提高OCR的準確性,但可能提高速度。
    • Invert (教程 API 參考文件

      * 反轉每一種顔色。 例如:白變成黑:黑變成白。
    • ReplaceColor (API 參考)

      * 將圖像中的一種顏色替換為另一種顏色,並設定一定的閾值。
    • SelectTextColorAPI 參考

      * 將圖像中的一種顏色替換為另一種顏色,並設定一定的閾值。

應用裁剪區域

OCR結果

簡單資料輸出

如何操作 程式碼範例

  • .NET 文字字串
  • 條碼和 QR 數據
  • 圖片

結構化數據輸出

如何操作 代碼範例

  • 頁面
  • 區塊
  • 段落
  • 文字
  • 字元

導出文件

在頁面上突顯文字以進行除錯

  • 在偵測到的字元/單詞/行/段落周圍繪製紅色方框作為突出顯示,並將其保存為.png以供調試。

狀態與分析