在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
光學字符識別(光學字符識別)技術已成為自動化從圖像中提取文字的寶貴工具,使數據檢索和分析更加高效,並避免人工錯誤。 此技術可用於讀取駕駛執照、護照、機構官方文件、身份證、居留證和多語言、不同國家的旅行證件,包括準確的到期日期、國籍、出生日期等。提取的所有數據都可以進一步用於機器學習和人工智慧軟體產品。
在本文中,我們將探討如何利用IronOCR,來自 的一個強大的C# OCR庫Iron Software讀取和提取身份文件中的信息。 IronOCR提供簡單且靈活的OCR解決方案,透過API形式用於OCR任務,是尋求將OCR軟體能力整合到應用程式中的開發人員的絕佳選擇。
IronOCR使電腦能夠識別和提取圖片中的文字,掃描現有文件或其他任何文字的視覺表示。 要提取數據,涉及一系列模仿人類視覺感知和解讀文本的複雜過程。 此過程涉及圖像預處理、文字偵測、字元分割、特徵提取、字元識別及後處理以校正錯誤。
在 Visual Studio 中創建一個新的 C# 專案
安裝這個IronOCR將 .NET 程式庫添加到您的專案中。
使用IronOCR讀取身份證件影像IronOCR圖書館
從 PDF 中讀取身份文件。
IronOCR由Iron Software打造和維護,作為C#軟體工程師的強大庫,方便在 .NET 項目中進行OCR、條碼掃描和文字提取。
能夠從各種格式(包括圖像)中讀取相關數據(JPEG、PNG、GIFF、TIFF、BMP)、流、PDF 文件。
通過使用一系列濾鏡(如糾偏、去噪、二值化、提高解析度、膨脹等)來校正低質量的掃描和照片。
支援從各種格式中讀取條碼,涵蓋超過20種條碼類型,並新增了QR碼識別功能。
利用最新版本的 Tesseract OCR,經過精細調整以在從圖像提取文本時獲得最佳性能。
允許從圖像文件導出可搜索的PDF、HTML和文本內容,提供在管理提取信息時的靈活性。
現在,讓我們深入開發一個使用IronOCR讀取身份證件的演示應用程式。
Visual Studio: 確保您擁有Visual Studio或任何其他已安裝的 C# 開發環境。
首先,在 Visual Studio 中創建一個新的 C# 控制台應用程序,或者使用現有項目。 從選單中選擇新增專案,然後從下面的範本中選擇主控台應用程式。
在以下窗口中提供專案名稱和位置
選擇所需的 .NET 版本
單擊「Create」按鈕以創建新專案。
IronOCR可以在NuGet套件管理器可以使用命令提示字元安裝,使用以下命令。
IronOCR可以使用 Visual Studio 安裝。 開啟 NuGet 套件管理器並搜尋IronOCR如下所示,然後點擊安裝
一旦安裝完成,應用程式即可使用IronOCR讀取任何身份證件以進行數據提取和身份驗證,從而減少手動數據輸入的工作。
使用 OCR 處理身份證明文件涉及許多步驟,詳情如下。
OCR 身分證件處理始於獲取包含文字的影像。 此圖像可能是掃描的身份證明文件、身份證的照片或任何其他文字的視覺呈現。 身份證預處理步驟可能包括調整大小、降噪和增強,以改善圖像的質量和清晰度。
OCR 演算法需要定位影像中有文字存在的特定資料區域。 此步驟涉及識別文字區域或邊界框。
一旦識別出文本區域或數據欄位,圖像會進一步分析以分割單個字符。 對於使用不同字符的語言(如英文或中文)來說,這個步驟至關重要。
OCR 演算法分析已分割的字元,以提取用於區分不同字元的特徵。 這些功能可能包括筆劃模式、形狀和元素之間的空間關係。
根據提取的特徵,OCR算法對每個分割的字符進行分類,並賦予其相應的文本表示。 機器學習模型,例如神經網絡,經常在這一步驟中使用。
識別出的字符可以進行後處理以糾正錯誤或提高準確性。 此步驟可能涉及基於詞典的修正、語境分析或語言建模。
IronOCR該庫處理了上述所有步驟,讓我們只需幾行代碼即可執行 OCR,從而節省耗時且繁重的任務。
using IronOcr;
class Program
{
public static void Main()
{
IronTesseract ocrTesseract = new IronTesseract()
{
Language = OcrLanguage.EnglishBest,
Configuration = new TesseractConfiguration()
{
ReadBarCodes = false,
BlackListCharacters = "`ë
^",
PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd,
}
};
using var ocrInput = new OcrInput("id1.png");
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
using IronOcr;
class Program
{
public static void Main()
{
IronTesseract ocrTesseract = new IronTesseract()
{
Language = OcrLanguage.EnglishBest,
Configuration = new TesseractConfiguration()
{
ReadBarCodes = false,
BlackListCharacters = "`ë
^",
PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd,
}
};
using var ocrInput = new OcrInput("id1.png");
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
Imports IronOcr
Friend Class Program
Public Shared Sub Main()
Dim ocrTesseract As New IronTesseract() With {
.Language = OcrLanguage.EnglishBest,
.Configuration = New TesseractConfiguration() With {
.ReadBarCodes = False,
.BlackListCharacters = "`ë ^",
.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd
}
}
Dim ocrInput As New OcrInput("id1.png")
Dim ocrResult = ocrTesseract.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End Sub
End Class
以下是用作程式輸入的範例圖像
以上代碼使用IronOCR用於讀取身份證件中所有文字欄位的庫。 我們使用 IronTesseract 類別來自於IronOCR庫並將其配置為使用英語和一些黑名單字符。 接著,我們使用 OcrInput 類別宣告 OCR 輸入,然後從圖片中讀取文字。 被提取的文本字段可以在控制台輸出中看到。
我們也可以從 PDF 文件中讀取內容。 為此,我們可以使用IronPDF來自IronSoftware的庫。 首先,像下面這樣安裝庫
using IronOcr;
using IronPdf;
class Program
{
public static void Main()
{
var pdfReader = new PdfDocument("id1.pdf");
var ocrTesseract = new IronTesseract();
using var ocrInput = new OcrInput();
ocrInput.AddPdf(pdfReader.Stream);
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
using IronOcr;
using IronPdf;
class Program
{
public static void Main()
{
var pdfReader = new PdfDocument("id1.pdf");
var ocrTesseract = new IronTesseract();
using var ocrInput = new OcrInput();
ocrInput.AddPdf(pdfReader.Stream);
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
}
Imports IronOcr
Imports IronPdf
Friend Class Program
Public Shared Sub Main()
Dim pdfReader = New PdfDocument("id1.pdf")
Dim ocrTesseract = New IronTesseract()
Dim ocrInput As New OcrInput()
ocrInput.AddPdf(pdfReader.Stream)
Dim ocrResult = ocrTesseract.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End Sub
End Class
上述程式碼使用IronPDF載入id.PDF文件,並將該PDF作為流傳遞到OcrInput和ocrTesseract。
IronOCR. 此金鑰需放置在 appsettings.json 中。
"IRONOCR-LICENSE-KEY": "your license key"
"IRONOCR-LICENSE-KEY": "your license key"
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'"IRONOCR-LICENSE-KEY": "your license key"
提供用戶電郵地址以獲取試用許可證。
1. 金融服務中的身份驗證:
使用案例:銀行和金融機構在客戶入職和KYC流程中使用OCR來讀取身份證件,如護照、駕照和身份證。
優點:確保帳戶創建、貸款申請和其他金融交易的身份驗證準確且高效。
2. 邊境管制與移民:
使用案例:移民當局在邊境檢查站運用OCR技術讀取和驗證護照和簽證上的信息。
好處:簡化移民流程,增強安全性,並減少人工資料輸入錯誤。
3. 訪問控制和安全性:
使用情境:OCR 用於門禁系統,以從身份證、員工證或人臉識別掃描中讀取信息,確保建築物或限制區域的安全進入。
好處:通過確保僅授權人員能夠訪問並提供進入的數位記錄來增強安全性。
4. 電子政府服務:
使用案例:政府機構使用OCR來處理和驗證在線提交的身份證件,以用於駕駛證更新、報稅和許可證申請等服務。
好處:提高效率,減少文書作業,提升整體公民體驗。
5. 醫療身份驗證:
使用案例:醫療提供者使用OCR從病患身份證、保險卡和其他身份文件中讀取資訊,以確保準確的病患記錄保存。
好處:促進精確的患者識別,確保正確的醫療紀錄管理,並支持計費流程。
6. 自動酒店入住:
使用案例:酒店透過掃描客人的身份證件實施OCR進行自動化入住流程,簡化註冊過程。
好處:增強顧客體驗,縮短辦理入住時間,並減少錄取顧客資訊時的錯誤。
7. 智慧城市與公共服務:
使用案例:在智慧城市計畫中,OCR被應用於閱讀身份證件,以提供公共交通通行、圖書館會員資格和城市活動註冊等服務。
優點:提高公共服務的效率,促進無縫訪問,增強城市生活體驗。
8. 教育管理:
用例:教育機構使用OCR在學生入學、考試和發放學術證書的過程中處理和驗證身份證件。
優點:確保學生記錄準確,減少行政負擔,並增強學術流程的完整性。
將OCR技術整合到您的C#應用程式中,使用IronOCR可有效地從身份證件中提取資訊。 此綜合指南提供設置專案並使用的必要步驟。IronOCR閱讀和處理身份證件圖片。 透過實驗代碼範例,將提取過程調整為符合您的特定需求,提供處理身份證件數據的無縫自動化解決方案。