在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
如果您正在尋找有關OCR的信息,那麼您來對地方了。 這篇博客將討論OCR及相關軟體,並檢視它們在應用於OCR相關任務時的表現。 讓我們先來探討這個問題:什麼是OCR?
光學字元識別(光學字符識別)使用光學掃描儀和專門軟體來識別和數位編碼手寫或印刷的文字。 使用OCR軟體,電腦可以將文本的靜態照片轉換為可編輯和可搜尋的數據。
OCR 通常包含三個步驟:在 OCR 軟體中打開並掃描文件,在 OCR 軟體中識別文件,以及以您選擇的格式存儲 OCR 生成的文件。
今天,我們討論兩款OCR軟體包,並比較它們的優缺點,以及如何在C#中整合和導出它們的SDK。 討論中的軟體包是:
LEADTOOLS OCR 來自由 LEAD Technologies Inc. 開發和發行的獲獎開發工具包系列。LEADTOOLS 是一套全面的工具包集合,用於將光柵圖像、文件、醫療、多媒體和向量圖像集成到桌面、伺服器、平板電腦和移動應用程式中。 檔案格式(150+), 圖像壓縮、圖像處理、顏色轉換、顏色處理、圖像顯示、特效、掃描/捕捉、常用對話框、列印、DICOM、PACS、OCR、條碼、表單識別、PDF、文件清理、註釋等都由 LEADTOOLS 支援。 使用 LEADTOOLS 工具包,應用程式開發人員幾乎可以輕鬆掌握數百萬行代碼。 LEADTOOLS 是一個工具集,旨在為您提供最強大的圖像技術,不論您的程式設計需求如何。
LEADTOOLS 是一套綜合工具包,可將識別、文檔、醫療、圖像和多媒體技術整合到桌面、服務器、平板電腦和移動系統中,由獨特的人工智能和機器學習算法驅動。 為了改進您的應用程式,為何不善加利用超過30年的影像開發知識及對150多種文件類型的支援呢?
LEADTOOLS OCR類別庫提供編程軟體,能快速高效地整合文件光學字元辨識功能。(光學字符識別)技術進入軟體程式。 程式設計師可以對文件圖片進行字符識別,並使用LEADTOOLS OCR類庫將識別出的文字輸出為超過20種文件格式。
Lead 工具包提供了一系列獲獎的多媒體技術,適用於終端用戶和開發者,並能夠執行各種類型的 OCR 功能,以滿足其廣泛的客戶需求。
Lead 科技引擎為最終使用者提供多執行緒和伺服器基礎的 OCR 操作支援。
LeadTools Document SDK允許用戶在其應用中創建多個OCR文件。 每份文件包含自己的頁面列表。
屢獲殊榮的LeadTools技術系列提供超過40種語言的服務,並允許您選擇在識別OCR頁面時使用哪種語言。
LeadTools OCR 是一款出色的文檔掃描應用,允許終端用戶訪問所有支持語言的詞典。 此外,用戶可以在一個文件中訪問多個字典。
識別各種文件,包括傳真件、影印件以及具有複雜佈局的文件。
LEADTOOLS OCR 應用程式具備更高的準確性和速度,可以進行光學字元辨識。(光學字符識別)在圖片上,從照片中提取文字,將圖像轉換為多種文件格式。 要修改和分享圖片中的文字,請使用OCR提取文字,然後進行複製。
Lead Technologies 使用人工智慧來提升同類型文件的識別能力,這對終端使用者而言是個好消息。
獲獎的OCR工具包系列中的Leadtools Document SDK使用強大的區塊識別軟體,將區塊識別提升到新的層次。
這是一個高容量、可擴展的 Web API。 它的使用者友好介面讓您能輕鬆將強大的OCR、條碼、MICR和文件轉換整合到任何程式中。
注意:
NuGet 的官方網站顯示 .NET 開發者更喜歡 IronOCR 而不是 LeadTools。 LeadTools 有 77.8K 次下載,但另一方面,IronOCR 的下載量超過 320K。
IronOCR 是一個 C# 軟體庫,使 .NET 平台的程式設計師能夠從圖像和 PDF 文件中檢測和讀取文本。 這是一個純 .NET OCR 套件,使用全球最強大的 Tesseract 引擎。IronOCR 擅長處理真實世界的圖形和有缺陷的文件,例如帶有數位雜訊或缺陷的照片或低解析度處理。 幾乎不需要設置或不需要設置,Tesseract 5(以及 4 和 3)可立即在 Windows、macOS、Linux、Azure、AWS、Lambda、Mono 及 Xamarin Mac 上執行。 沒有需要處理的原生二進制文件。 框架和核心是兼容的。
IronOCR 支持的語言比其他任何 OCR 引擎都多,幫助程式開發人員進行有意義的圖像創作,並能夠從中提取多媒體資料。 IronOCR 支援 125 種國際語言,但在 IronOCR 中僅安裝 English 作為標準語言。
IronOCR 工具包所提供的服務易於整合、易於處理,比其他任何 OCR 引擎更具互動性。它為 .NET 開發者提供了解決方案,使他們能夠數位化地控制和連接文件,並且可以隨心所欲地操作文件。
IronOCR 提供了一套獨特的功能和特性,無論用戶的技術背景如何或使用的硬體設備多先進,都能整合、簽署、匯出、讀取圖形並從圖像中提取信息。
IronOCR SDK 對於 OCR 庫將工作準確度提升到全新水平,得益於其 99.8% 的準確率,這一表現顯著超越其他 OCR 庫。
IronOCR 類別為 C# 開發人員提供精細控制。 他們提供 OCR(圖片和PDF轉換為文本)為開發人員提供的能力以及在每個獨特案例中精細調整的性能。
使用真實世界的實例,通過設立變數可以在速度和準確性之間達到完美平衡。 清除背景噪音、增強對比度、提高解析度、語言、策略、旋轉並校正、色彩空間、檢測深色背景上的白色文字及輸入圖像類型只是其中一些可用選項。
以下是修復低品質掃描前後的圖像示例:
之前
後
IronOCR 提供超過 125 種國際語言的解決方案,以協助全球的開發人員。
Iron Tesseract 可以讀取多種圖片類型和 PDF 文件。 使用傳統的免費Tesseract引擎,這個功能是無法實現的。 如果掃描質量不佳,OCR 輸入允許您自動修復相關屬性。
OCRInput 類別讓 C# 程式設計師對輸入進行細緻的控制。 開發人員隨後預處理圖像輸入以提高速度和準確性。 這消除了使用 Photoshop Batch Scripts 或 ImageMagick 為 OCR 準備照片的標準方法。
在以速度和準確性對圖像進行 OCR 處理方面,IronOCR 將其提升到一個全新的層次。 IronOCR允許終端用戶在圖像中選擇特定區域或區域,並對該區域進行OCR。 該區域被稱為ContentAreas或CropAreas。
IronOCR 使用 Tesseract 3、4 或 5 對每頁進行掃描,並返回一個高級結果物件。這個物件包含位置數據、圖片、文本、統計置信度、替代符號選擇、字體名稱、字體大小裝飾、字體粗細,以及以下每一項的位置信息:
IronOCR 使開發者能夠在單一文件中使用多種語言。 此功能對 .NET 服務提供商有很大幫助。
注意:
IronOCR 是屢獲殊榮的產品系列的一部分。通過獲得此獎項,Iron Software 證明其確實提供了一款出色的文件掃描應用,具有卓越的識別能力,以及優秀的文件相關轉換和操作功能。
打開 Visual Studio 軟體,進入檔案選單並選擇新專案。 然後,選擇主控台應用程式。
輸入專案名稱並在相應的文本框中選擇路徑。 接下來,點擊創建按鈕,然後選擇所需的 .NET 框架,如下圖所示:
Visual Studio 專案現在將為選定的應用程式生成結構,如果您選擇了控制檯、Windows 和網頁應用程式,它將開啟 program.cs 檔案,您可以在其中輸入程式碼並建置/運行應用程式。
接下來,我們可以添加這個庫來測試程序。
IronOCR 程式庫可以透過四種方式下載和安裝。 這些是:
使用 Visual Studio 的 NuGet 套件管理器
直接從 NuGet 網頁下載。
直接從 IronOCR 網頁下載。
您可以使用 Visual Studio 的 NuGet 套件管理器將 IronOCR 整合到 C# 專案中。
擴展工具。
擴展NuGet套件管理器。
接著,新的視窗將會出現在搜尋欄中:輸入IronOCR。
通過使用此方法,開發人員可以安裝IronOCR庫和任何開發人員選擇的語言包。
IronOCR 可以按照以下指示直接從 NuGet 網站下載:
導航到連結「https://www.nuget.org/packages/IronOCR/請提供您想要翻譯的內容。
從右側菜單中選擇下載套件選項。
雙擊下載的包。 將自動安裝。
開發人員可以通過此連結直接從 IronOCR 網站下載 IronOCR 庫。
在解決方案窗口中右鍵點擊專案。
然後,選擇選項參考並瀏覽已下載參考的位置。
在 Visual Studio 中,前往 工具 -> NuGet 套件管理員 -> 套件管理員主控台
在套件管理器主控台標籤頁中輸入以下行:
安裝套件 IronOCR
該套件現在將下載/安裝到當前項目,並準備使用。
開發人員可以通過以下三種方式下載 LeadTools OCR SDK。 我們將討論它們全部。
使用 Visual Studio NuGet 套件管理器。
使用 NuGet 網站。
您可以使用 Visual Studio NuGet 包管理器在 C# 專案中安裝 LeadTools OCR:
擴展工具。
擴展NuGet套件管理器。
接下來,將會出現一個新視窗; 在搜索欄中輸入 LeadTools OCR。
通過按照以下步驟,開發者可以安裝 LeadTools OCR 庫和任意語言包。
LeadTools OCR 可以按照以下說明直接從 NuGet 網站下載:
導航到連結 請提供您想要翻譯的內容。https://www.nuget.org/packages/Leadtools.Ocr/請提供您想要翻譯的內容。
從右側菜單中選擇下載套件選項。
雙擊下載的包。 將自動安裝。
開發人員可以直接從他們的網站下載 Leadtools Document SDK,輕鬆無憂。 只需訪問他們的網站並下載包含OCR庫的其中一個套件。
討論中的兩套軟體都提供多线程OCR引擎的服務。 在這個標題下,我們將檢視其效能和速度。
LeadTools支援根據每個系統的實體核心同時運行多個OCR實例。 Lead Technologies 的這個功能為 .NET 開發人員節省了大量時間。
// Create an instance of an OCR document from the engine
IOcrDocument ocrDocument= ocrEngineInstance.DocumentManager.CreateDocument();
// Add page, zone them, recognize them and save them
// to the final document:
ocrDocument.Pages.AddPages(imageFileName, null);
ocrDocument.Recognize(null);
ocrDocument.Save(documentFileName, DocumentFormat.Pdf, null);
// Create an instance of an OCR document from the engine
IOcrDocument ocrDocument= ocrEngineInstance.DocumentManager.CreateDocument();
// Add page, zone them, recognize them and save them
// to the final document:
ocrDocument.Pages.AddPages(imageFileName, null);
ocrDocument.Recognize(null);
ocrDocument.Save(documentFileName, DocumentFormat.Pdf, null);
' Create an instance of an OCR document from the engine
Dim ocrDocument As IOcrDocument= ocrEngineInstance.DocumentManager.CreateDocument()
' Add page, zone them, recognize them and save them
' to the final document:
ocrDocument.Pages.AddPages(imageFileName, Nothing)
ocrDocument.Recognize(Nothing)
ocrDocument.Save(documentFileName, DocumentFormat.Pdf, Nothing)
使用IronOCR的多執行緒功能對開發者來說既簡單又省時。 Iron Tesseract 將自動嘗試使用所有核心上的所有執行緒,並會謹慎考慮主線程/GUI 介面的反應速度。
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("scan.pdf")
// Image processing is automatically multithreaded
Input.Deskew();
// OCR reading is automatically multi threaded too
var Result = Ocr.Read(Input);
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("scan.pdf")
// Image processing is automatically multithreaded
Input.Deskew();
// OCR reading is automatically multi threaded too
var Result = Ocr.Read(Input);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
Input.AddPdf("scan.pdf") Input.Deskew()
' OCR reading is automatically multi threaded too
Dim Result = Ocr.Read(Input)
End Using
每個 C# 開發人員都夢想能輕鬆建立可搜尋的 PDF。 在本節中,我們將討論使用 IronOCR SDK 和 Lead technologies OCR SDK 的過程。
IronOCR 的出色文件掃描應用程式讓開發人員能夠將可搜索 PDF 的創建提升到一個新的水平,通過支持檢測影像中的文字字符並將其轉換為有意義的 PDF 文字。 以下是用戶的程式碼範例:
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.Add(@"images\page1.png")
Input.Add(@"images\page2.bmp")
Input.Add(@"images\page3.tiff")
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.Add(@"images\page1.png")
Input.Add(@"images\page2.bmp")
Input.Add(@"images\page3.tiff")
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
Input.Add("images\page1.png") Input.Add("images\page2.bmp") Input.Add("images\page3.tiff") Input.Deskew()
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
Lead Technologies 提供一款出色的文檔掃描應用程式,來自他們屢獲殊榮的軟體系列。 然而,對於終端使用者來說,其代碼比用於IronOCR的代碼稍微複雜一些。
private void saveAsSearchablePDFToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
// Create a document
using (IOcrDocument ocrDocument = _ocrEngine.DocumentManager.CreateDocument(null, OcrCreateDocumentOptions.AutoDeleteFile))
{
// Create IOcrPage from loaded image
_ocrPage = _ocrEngine.CreatePage(_viewer.Image, OcrImageSharingMode.AutoDispose);
// Recognize Text
_ocrPage.Recognize(null);
// Add the page
ocrDocument.Pages.Add(_ocrPage);
// Save page as documentation
SaveFileDialog saveDlg = new SaveFileDialog();
saveDlg.InitialDirectory = @"C:\LEADTOOLS22\Resources\Images";
saveDlg.Filter = "Adobe Portable Document Format
*.pdf";
if (saveDlg.ShowDialog(this) != DialogResult.OK)
return;
ocrDocument.Save(saveDlg.FileName, DocumentFormat.Pdf, null);
MessageBox.Show($"OCR output saved to {saveDlg.FileName}");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void saveAsSearchablePDFToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
// Create a document
using (IOcrDocument ocrDocument = _ocrEngine.DocumentManager.CreateDocument(null, OcrCreateDocumentOptions.AutoDeleteFile))
{
// Create IOcrPage from loaded image
_ocrPage = _ocrEngine.CreatePage(_viewer.Image, OcrImageSharingMode.AutoDispose);
// Recognize Text
_ocrPage.Recognize(null);
// Add the page
ocrDocument.Pages.Add(_ocrPage);
// Save page as documentation
SaveFileDialog saveDlg = new SaveFileDialog();
saveDlg.InitialDirectory = @"C:\LEADTOOLS22\Resources\Images";
saveDlg.Filter = "Adobe Portable Document Format
*.pdf";
if (saveDlg.ShowDialog(this) != DialogResult.OK)
return;
ocrDocument.Save(saveDlg.FileName, DocumentFormat.Pdf, null);
MessageBox.Show($"OCR output saved to {saveDlg.FileName}");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
本節介紹這些軟體套件提供的服務,以支援不同平臺。 這兩個軟體套件都提供對多個平台和作業系統的支持。
IronOCR .NET SDK 是最佳的光學字符識別(OCR)SDK,幾乎與所有支援 C# 程式語言的 .NET 平台和操作系統相容。 IronOCR 也支持不同的圖像格式,如 JPEG、JPG、TIFF 和更多。
.NET Core 2x 和 3x
.NET Standard 2
Mac-OS
Docker(Windows, Linux, Azure)
Azure(VPS、Webapps、網站、功能)
Lead Technologies還提供支持,在不同平台上整合其各種產品和應用程式。 Lead Technologies 也為其用戶和開發人員提供優秀的 SDK 支持。
Windows
.NET
上述軟體的使用需要許可證。 兩套軟體在登入環境之前都需要擁有許可證。 一旦您登入後,才可以開始使用他們全新層級的軟體技術。
LeadTools 提供兩个(2)SDK 授權中的關鍵授權組件:
要使用LEADTOOLS進行開發,您需要購買開發許可證。 開發授權許可證可以直接從 LEAD 購買,也可以透過 LEAD 授權的經銷商或分銷商購買。
開發授權許可允許客戶將 SDK 安裝在開發機器上,並通過使用 SDK 示例代碼和文檔,將特定可再發佈的庫和文件包括到應用程式中,以創建終端用戶應用程式。
客戶使用 SDK 開發的終端用戶應用程式(終端使用者軟體)受部署許可證的管轄。
與標準的終端用戶應用程式授權協議不同,標準的終端用戶應用程式授權協議禁止任何形式的應用程式複製,而 SDK 授權則允許用戶複製和重新分發 SDK 的一部分。 為了重現LEAD的智慧財產權並將其與使用LEAD SDK製作的最終用戶軟體一起部署,LEAD的客戶必須獲取必要的部署授權。
LeadTools 不為其開發者提供免費授權。 相反,它提供了全面的開發者授權。 若要查看 Lead Technologies OCR SDK 的價格結構,請造訪此處。
IronOCR 是一個提供免費開發者許可證的函式庫。 IronPDF 也有獨特的定價結構; Lite 套裝價格從 $749 起,沒有隱藏費用。 SaaS 和 OEM 產品的重新分發也是可能的。 所有授權皆附有30天退款保證、一年軟體支援與升級、開發/測試/生產有效性,以及永久授權。(一次性購買). 要查看 IronOCR 的完整價格結構和授權詳情,請點擊這裡。
只需一次性支付 $1599,即可獲得全民授權的 SaaS 和 OEM 產品再分發服務。
IronOCR 是一個 .NET SDK 庫,它使用世界上最強大的 Tesseract 引擎,稱為 Iron Tesseract。 它支持總共125多種國際語言。 IronOCR 是一款出色的文件掃描應用程式,擁有許多影像功能,如 圖像區域OCR、從圖像中提取文本、修復低解析度圖像以及在圖像的特定區域執行OCR,還有許多其他相關功能。 IronOCR 專注於提供快速且準確的服務,其 99.8% 的準確率高於其他任何 OCR Tesseract。 IronOCR 開箱即用,不需要調整性能或對輸入圖像進行大量修改。 除此之外,您還可以以兩個產品的價格獲得所有五個Iron Software產品。 點擊這裡查看網頁。
IronPDF
IronOCR
IronXL
IronBarcode
IronWebScraper
LeadTools OCR 是由 LeadTools 提供的工具包,可以快速高效地提供大多數識別功能。 程式設計師可以對文件圖片進行字符識別,並使用 LEADTOOLS OCR 類別庫將識別出的文字輸出到超過 20 種檔案格式。 其程式庫可以與大多數編程語言和幾乎所有可用的平台進行整合。 其功能包括:
IronOCR 和 LeadTools OCR 都是高端工具,提供 C# 或 .NET 開發人員可能需要的所有功能。 IronOCR 比其競爭對手更易於使用和編碼。 這兩套軟體都不會產生持續的成本,但IronOCR比LeadTools OCR Library更具價格效益。 IronOCR 提供比市場上其他競爭對手更高的準確性。 IronOCR 提供超過 125 種語言的國際語言支援。 另一方面,LeadTools 只支援超過 40 種語言。 考慮到性能的各個方面,我們唯一可以得出的結論是,IronOCR 相較於 LeadTools OCR 具有顯著的優勢。