使用 IRONOCR 如何在 C# 中使用 OCR 讀取身份文件 Kannapat Udonpant 更新:6月 22, 2025 下載 IronOCR NuGet 下載 DLL 下載 Windows 安裝程式 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 光學字元辨識 (OCR) 技術已成為自動從影像中提取文字的寶貴工具,能夠有效地進行資料檢索和分析,並避免人為錯誤。 這項技術可用於讀取多種語言和不同國家的駕駛執照、護照、機構官方文件、身分證、居留證和旅行證件,精確到有效期限、國籍、出生日期等資訊。所有提取的數據都可以進一步輸入到機器學習和人工智慧軟體產品中。 在本文中,我們將探討如何利用Iron Software出品的強大的 C# OCR 庫IronOCR來讀取和提取身分證明文件中的資訊。 IronOCR 以 API 的形式提供簡單靈活的 OCR 解決方案,用於執行 OCR 任務,對於希望將 OCR 軟體功能整合到其應用程式中的開發人員來說,這是一個絕佳的選擇。 IronOCR 使電腦能夠識別和提取影像中的文字、掃描現有文件或任何其他文字的視覺表示形式。 提取資料涉及一系列複雜的流程,這些流程模仿人類感知和解釋文字的視覺方式。 該過程包括圖像預處理、文字檢測、字元分割、特徵提取、字元識別和後處理以糾正錯誤。 如何在 C# 中使用 OCR 讀取身分證件 在 Visual Studio 中建立一個新的 C# 項目 安裝IronOCR .NET 程式庫並將其新增至您的專案中。 使用 IronOCR 庫讀取身分證明檔案影像。 從 PDF 檔案中讀取身分證明文件。 IronOCR 由 Iron Software 精心打造和維護,是一個功能強大的 C# 軟體工程師庫,可協助 .NET 專案中的 OCR、條碼掃描和文字擷取。 IronOCR的主要特點 文字閱讀的多功能性 能夠從各種格式讀取相關數據,包括影像(JPEG、PNG、GIFF、TIFF、BMP)、串流和PDF。 影像增強 透過一系列濾鏡(如偏斜校正、降噪、二值化、增強解析度、膨脹等)來校正低品質的掃描件和照片。 條碼識別 支援讀取多種格式的條碼,涵蓋 20 多種條碼類型,並增加了二維碼識別功能。 Tesseract OCR 集成 採用最新版本的 Tesseract OCR,經過精心調校,可實現從圖像中提取文字的最佳效能。 靈活的輸出選項 允許從圖像檔案中導出可搜尋的 PDF、HTML 和文字內容,從而在管理提取的資訊方面提供了靈活性。 現在,讓我們深入了解利用 IronOCR 讀取身分證件的示範應用程式的開發。 先決條件 Visual Studio:確保您已安裝Visual Studio或任何其他 C# 開發環境。 2.NuGet套件管理員:確保您可以使用NuGet管理專案中的套件。 步驟 1:在 Visual Studio 中建立一個新的 C# 項目 首先在 Visual Studio 中建立一個新的 C# 控制台應用程序,或者,也可以使用現有的專案。 從選單中選擇"新增項目",然後從下方的範本中選擇控制台應用程式。 如何在 C# 中使用 OCR 讀取身分證件:圖 1 請在下方視窗中提供項目名稱和地點。 如何在 C# 中使用 OCR 讀取身分證件:圖 2 選擇所需的 .NET 版本。 如何在 C# 中使用 OCR 讀取身分證件:圖 3 點選"建立"按鈕建立新項目。 步驟 2:安裝 IronOCR 庫並將其新增至您的專案中。 IronOCR 可以在NuGet套件管理器中找到,可以使用套件管理器控制台透過以下命令進行安裝: Install-Package IronOcr IronOCR 也可以使用 Visual Studio 安裝。 開啟 NuGet 套件管理器,搜尋 IronOCR(如下圖),然後按一下安裝。 如何在 C# 中使用 OCR 讀取身分證件:圖 5 安裝完成後,該應用程式即可使用 IronOCR 讀取任何身分證明檔案以進行資料擷取和身份驗證,從而減少手動資料輸入工作。 步驟 3:使用 IronOCR 庫讀取身分證明檔案影像 使用 OCR 處理身分證件涉及許多步驟,以下將詳細介紹。 影像預處理 OCR ID 文件處理首先要取得包含文字的圖像。 此圖像可以是掃描的身份證件、身份證照片或任何其他文字的視覺表示。 身分證預處理步驟可能包括調整大小、降噪和增強,以提高影像的品質和清晰度。 文字偵測 OCR演算法需要定位影像中存在文字的特定資料區域。 此步驟涉及識別文字區域或邊界框。 字元分割 一旦識別出文字區域或資料字段,就會進一步分析圖像以分割單個字元。 對於使用特殊字元的語言,例如英語或漢語,這一步至關重要。 特徵提取 OCR演算法分析分割後的字符,提取有助於區分不同字符的特徵。 這些特徵可能包括筆畫模式、形狀以及元素之間的空間關係。 字元辨識 根據提取的特徵,OCR 演算法對每個分割的字元進行分類,並為其分配相應的文字表示。 機器學習模型,例如神經網絡,通常用於此步驟。 後製處理 識別出的字元可能需要進行後處理,以糾正錯誤或提高準確性。 這一步驟可能涉及基於詞典的糾錯、上下文分析或語言建模。 IronOCR 庫可以處理以上所有步驟,只需幾行程式碼即可執行 OCR,從而節省耗時的繁瑣任務。 using IronOcr; class Program { public static void Main() { // Configure IronTesseract with language and other settings var ocrTesseract = new IronTesseract() { Language = OcrLanguage.EnglishBest, Configuration = new TesseractConfiguration() { ReadBarCodes = false, // Disable reading of barcodes BlackListCharacters = "`ë|^", // Blacklist specific characters PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd, // Set page segmentation mode } }; // Define the OCR input image using var ocrInput = new OcrInput("id1.png"); // Perform OCR on the input image var ocrResult = ocrTesseract.Read(ocrInput); // Display the extracted text Console.WriteLine(ocrResult.Text); } } using IronOcr; class Program { public static void Main() { // Configure IronTesseract with language and other settings var ocrTesseract = new IronTesseract() { Language = OcrLanguage.EnglishBest, Configuration = new TesseractConfiguration() { ReadBarCodes = false, // Disable reading of barcodes BlackListCharacters = "`ë|^", // Blacklist specific characters PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd, // Set page segmentation mode } }; // Define the OCR input image using var ocrInput = new OcrInput("id1.png"); // Perform OCR on the input image var ocrResult = ocrTesseract.Read(ocrInput); // Display the extracted text Console.WriteLine(ocrResult.Text); } } Imports IronOcr Friend Class Program Public Shared Sub Main() ' Configure IronTesseract with language and other settings Dim ocrTesseract = New IronTesseract() With { .Language = OcrLanguage.EnglishBest, .Configuration = New TesseractConfiguration() With { .ReadBarCodes = False, .BlackListCharacters = "`ë|^", .PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd } } ' Define the OCR input image Dim ocrInput As New OcrInput("id1.png") ' Perform OCR on the input image Dim ocrResult = ocrTesseract.Read(ocrInput) ' Display the extracted text Console.WriteLine(ocrResult.Text) End Sub End Class $vbLabelText $csharpLabel 輸入影像 下面這張圖是用作程式輸入的範例圖片。 如何在 C# 中使用 OCR 讀取身分證件:圖 6 輸出 如何在 C# 中使用 OCR 讀取身分證件:圖 7 程式碼解釋 上述程式碼使用 IronOCR 庫讀取 ID 文件中的所有文字欄位。 我們使用 IronOCR 庫中的IronTesseract類,並將其配置為使用英語和一些黑名單字元。 然後我們使用OcrInput類別聲明 OCR 輸入,並從圖像中讀取文字。 提取的文字欄位可以在控制台輸出中看到。 第四步:從 PDF 檔案讀取身分證明檔案。 我們也可以讀取PDF文件。 為此,我們可以使用 IronSoftware 公司的IronPDF庫。 首先,請依照以下步驟安裝庫: Install-Package IronOcr using IronOcr; using IronPdf; class Program { public static void Main() { // Load the PDF document var pdfReader = new PdfDocument("id1.pdf"); // Initialize IronTesseract for OCR var ocrTesseract = new IronTesseract(); // Create OCR input from the PDF stream using var ocrInput = new OcrInput(); ocrInput.AddPdf(pdfReader.Stream); // Perform OCR on the PDF input var ocrResult = ocrTesseract.Read(ocrInput); // Display the extracted text Console.WriteLine(ocrResult.Text); } } using IronOcr; using IronPdf; class Program { public static void Main() { // Load the PDF document var pdfReader = new PdfDocument("id1.pdf"); // Initialize IronTesseract for OCR var ocrTesseract = new IronTesseract(); // Create OCR input from the PDF stream using var ocrInput = new OcrInput(); ocrInput.AddPdf(pdfReader.Stream); // Perform OCR on the PDF input var ocrResult = ocrTesseract.Read(ocrInput); // Display the extracted text Console.WriteLine(ocrResult.Text); } } Imports IronOcr Imports IronPdf Friend Class Program Public Shared Sub Main() ' Load the PDF document Dim pdfReader = New PdfDocument("id1.pdf") ' Initialize IronTesseract for OCR Dim ocrTesseract = New IronTesseract() ' Create OCR input from the PDF stream Dim ocrInput As New OcrInput() ocrInput.AddPdf(pdfReader.Stream) ' Perform OCR on the PDF input Dim ocrResult = ocrTesseract.Read(ocrInput) ' Display the extracted text Console.WriteLine(ocrResult.Text) End Sub End Class $vbLabelText $csharpLabel 上面的程式碼使用 IronPDF 載入id1.pdf文檔,並將 PDF 作為流傳遞給OcrInput和ocrTesseract 。 輸出 如何在 C# 中使用 OCR 讀取身分證件:圖 9 授權(可免費試用) 要使用 IronOCR,您需要許可證金鑰。 需要將此鍵新增到appsettings.json 檔案中。 { "IRONOCR-LICENSE-KEY": "your license key" } 請提供使用者信箱地址以取得試用許可證。 如何在 C# 中使用 OCR 讀取身分證件:圖 10 用例 1. 金融服務中的身份驗證: -應用案例:銀行和金融機構在客戶註冊和 KYC 流程中利用 OCR 讀取護照、駕駛執照和身分證等身分證明文件。 -優勢:確保帳戶創建、貸款申請和其他金融交易的身份驗證準確且有效率。 2. 邊境管制與移民: -應用案例:移民當局採用 OCR 技術在邊境檢查站讀取和驗證護照和簽證上的資訊。 -優點:簡化移民流程,提高安全性,減少人工資料輸入錯誤。 3. 門禁控制與安全: -應用案例: OCR 用於門禁系統,讀取身分證、員工徽章或臉部辨識掃描中的信息,以便安全進入建築物或限制區域。 -優點:透過確保只有授權人員才能存取來增強安全性,並提供數位存取記錄。 4. 電子化政府服務: -應用案例:政府機構使用 OCR 來處理和驗證線上提交的身份證件,用於駕駛執照續約、稅務申報和許可證申請等服務。 -好處:提高效率,減少文書工作,提升市民的整體體驗。 5. 醫療保健身份驗證: -應用案例:醫療保健提供者使用 OCR 從患者 ID、保險卡和其他身份證明文件中讀取信息,以便準確記錄患者信息。 -優點:有助於準確識別患者,確保妥善管理醫療記錄,並支援計費流程。 6. 飯店自助入住: -應用案例:飯店透過掃描客人的身分證明文件,實施 OCR 技術實現自動入住流程,簡化登記流程。 -優點:提升賓客體驗,縮短入住時間,並最大限度地減少賓客資訊收集過程中的錯誤。 7. 智慧城市與公共服務: -應用案例: OCR 應用於智慧城市計畫中,用於讀取身分證明文件,以便提供公共交通存取、圖書館會員資格和城市活動註冊等服務。 -好處:提升公共服務效率,促進無縫銜接,提升城市生活體驗。 8. 教育管理: -應用案例:教育機構使用 OCR 在學生入學、考試和頒發學歷證書期間處理和驗證身分證件。 -益處:確保學生記錄準確,減輕行政負擔,並提高學術流程的完整性。 結論 使用 IronOCR 將 OCR 技術整合到您的 C# 應用程式中,可以有效地從身分證件中提取資訊。 本綜合指南提供了設定項目和使用 IronOCR 讀取和處理身分證明文件影像的必要步驟。 透過嘗試程式碼範例,根據您的特定要求自訂提取過程,從而為處理身分文件資料提供無縫且自動化的解決方案。 常見問題解答 如何使用 C# 擷取身分證明文件中的文字? 透過使用 IronSoftware 的專用 OCR 函式庫 IronOCR,您可以從護照、身分證和駕照等各種身分證件中擷取文字。您可以透過 Visual Studio 中的 NuGet Package Manager 安裝 IronOCR,並使用其方法讀取影像和 PDF 中的文字。 使用 OCR 處理身分證明文件有什麼好處? OCR 技術,例如 IronSoftware 的 IronOCR,可自動從身份文件中提取文字,減少人為錯誤並提昇資料檢索效率。它支援多種語言和文件格式,是金融、醫療保健和邊境管制等應用的理想選擇。 在 C# 專案中設定 OCR 涉及哪些步驟? 要在 C# 專案中設定 OCR,您需要在 Visual Studio 中建立新專案,透過 NuGet 套件管理員安裝 IronOCR,並利用其 API 讀取文件中的文字。IronOCR 提供了全面的說明文件和範例,可協助您整合 OCR 功能。 如何增強影像品質以獲得更好的 OCR 效果? IronOCR 包含 Deskew、Denoise、Binarize、Enhance Resolution 和 Dilate 等功能,可提升影像品質。這些濾鏡可提高從低品質影像識別文字的精確度,確保可靠的資料擷取。 OCR 技術可以讀取身份文件中的 BarCode 嗎? 是的,IronOCR 支援身份文件中的 BarCode 識別。它可以讀取 20 種以上的 BarCode,包括 QR code,這對於需要同時擷取文字和 BarCode 資料的應用程式非常有用。 OCR 在身份驗證方面是否有特定的使用案例? OCR 廣泛應用於身份驗證,例如自動登機、門禁控制和電子政府服務等應用。IronOcr 提供必要的工具來擷取和驗證身分文件中的文字,強化安全性並簡化流程。 如何使用 OCR 處理多語言文字擷取? IronOCR 提供多語言支援,讓您可以從各種語言的文件中擷取文字。此功能對於需要有效處理不同語言文件的國際應用程式特別有用。 OCR 函式庫有試用版嗎? IronSoftware 的 IronOCR 提供免費試用版。您只需提供電子郵件地址,即可取得試用版授權金鑰,讓您在承諾購買之前,先行探索函式庫的功能。 Kannapat Udonpant 立即與工程團隊聊天 軟體工程師 在成為软件工程師之前,Kannapat 從日本北海道大學完成了環境資源博士學位。在追逐學位期间,Kannapat 還成為了生產工程系一部份——汽車机器人实验室的成員。2022 年,他利用他的 C# 技能加入 Iron Software 的工程團隊, 專注於 IronPDF。Kannapat 珍惜他的工作,因为他直接向编写大部分 IronPDF 使用的代码的开发者学习。除了同行学习,Kannapat 还喜欢在 Iron Software 工作的社交十环。当他不编写代码或文档时,Kannapat 通常在他的 PS5 上打游戏或重看《The Last of Us》。 相關文章 發表日期 12月 18, 2025 C# 讀取 PDF 表單欄位:以程式設計方式擷取表單數據 學習如何在C#中使用IronPDF讀取PDF表單字段。從可填寫PDF中提取文本、複選框、下拉列表等的簡單代碼示例。 閱讀更多 發表日期 12月 18, 2025 C# 從 PDF 擷取影像:完整開發者指南 學習如何使用IronPDF強大的方法從C#中的PDF文檔中提取圖像。完整指南中包含了.NET開發人員的代碼示例。 閱讀更多 發表日期 12月 18, 2025 C# 將 PDF 轉換為圖像:完整開發者指南 學習如何使用IronPDF將PDF文檔轉換為C#中的圖像。詳盡指南中提供了JPG、PNG和TIFF轉換的代碼示例。 閱讀更多 如何在 C# 中創建字符識別如何在 C# 中創建 OCR 收據...
發表日期 12月 18, 2025 C# 讀取 PDF 表單欄位:以程式設計方式擷取表單數據 學習如何在C#中使用IronPDF讀取PDF表單字段。從可填寫PDF中提取文本、複選框、下拉列表等的簡單代碼示例。 閱讀更多
發表日期 12月 18, 2025 C# 從 PDF 擷取影像:完整開發者指南 學習如何使用IronPDF強大的方法從C#中的PDF文檔中提取圖像。完整指南中包含了.NET開發人員的代碼示例。 閱讀更多
發表日期 12月 18, 2025 C# 將 PDF 轉換為圖像:完整開發者指南 學習如何使用IronPDF將PDF文檔轉換為C#中的圖像。詳盡指南中提供了JPG、PNG和TIFF轉換的代碼示例。 閱讀更多