IronOCR 操作指南 閱讀照片 How to Read Photos Using IronOCR Curtis Chau 更新日期:6月 9, 2025 Download IronOCR NuGet 下載 DLL 下載 Windows 安裝程式 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article This article was translated from English: Does it need improvement? Translated View the article in English 處理大量文件時,特別是如TIFF文件這樣的掃描影像,手動提取文本可能既耗時又容易出錯。 這就是光學字符識別(OCR)的作用所在,提供一種自動方法,準確地將圖像中的文本轉換為數字數據。 OCR技術可以處理影像的複雜性,如掃描文件或照片,並將其轉換為可搜索和可編輯的文本。 這不僅加快了文件處理速度,還確保比手動抄錄更準確的數據提取。 在如TIFF等格式上使用OCR,由於其尺寸、色彩深度或壓縮,可能難以閱讀,使企業和開發者能夠快速數字化和管理海量數據。 通過像IronOCR的ReadPhoto功能這樣的OCR解決方案,開發者可以從圖像中提取文本,甚至執行高級操作,如搜索關鍵詞或將掃描數據轉換為可搜索的PDF。 這項技術尤其適用於需要處理法律檔、檔案或收據等行業中,快速數據檢索至關重要。 在本教程中,我們將簡要提供一個輸入及一個使用ReadPhoto的方法示例以及如何操作結果對象。 我們還將討論開發者可能更傾向於使用ReadPhoto而非IronOCR標準Read時的情景。 要使用此功能,您還需安裝IronOcr.Extension.AdvancedScan套件。 快速入門:使用ReadPhoto從複雜影像中提取文本 快速開始:在已加載您的影像框的OcrInput上使用IronOCR的ReadPhoto方法,一步到位提取所有文本和區域。 它針對TIFF,GIF及類似圖像密集型格式進行優化,帶來流暢的OCR體驗。 Get started making PDFs with NuGet now: Install IronOCR with NuGet Package Manager PM > Install-Package IronOcr Copy and run this code snippet. var result = new IronTesseract().ReadPhoto(new OcrInput().LoadImageFrame("photo.tiff", 0)); Deploy to test on your live environment Start using IronOCR in your project today with a free trial Free 30 day Trial class="hsg-featured-snippet"> 簡化的工作流程(5步驟) 下載讀取照片的C#庫 導入需處理的影像 根據影像類型使用相應的導入方法 用ReadPhoto方法從圖像中提取數據 訪問OcrPhotoResult屬性查看和操作抽取數據 閱讀照片示例 使用IronOCR閱讀高質量的照片格式如tiff和gif相對簡單。 首先,我們創建一個新變量並將其分配為OcrInput,然後使用LoadImageFrame載入圖片。 最後,我們使用ReadPhoto方法並獲得結果。 請注意 由於Tiff包含單一圖像中的多個幀,因此需要PageNumber參數。 此外,索引從0開始,而非1。 該方法目前僅適用於英語、中文、日文、韓文以及拉丁字母。 在 .NET Framework 上使用高級掃描需要項目在 x64 架構上運行。 輸入 由於大多數瀏覽器不原生支持TIFF格式,您可以在這裡下載TIFF輸入文件。 為了顯示TIFF文件,我將其轉換為WEBP。 代碼 :path=/static-assets/ocr/content-code-examples/how-to/read-photo-read-photo.cs using IronOcr; using IronSoftware.Drawing; using System; // Instantiate OCR engine var ocr = new IronTesseract(); using var inputPhoto = new OcrInput(); inputPhoto.LoadImageFrame("ocr.tiff", 0); // Read photo OcrPhotoResult result = ocr.ReadPhoto(inputPhoto); // Index number refer to region order in the page int number = result.TextRegions[0].PageNumber; // Extract the text in the first region string textinregion = result.TextRegions[0].TextInRegion; //Extract the co_ordinates of the first text region Rectangle region = result.TextRegions[0].Region; var output = $"Text in First Region: {textinregion}\n" + $"Text Region:\n" + $"Starting X: {region.X}\n" + $"Starting Y: {region.Y}\n" + $"Region Width: {region.Width}\n" + $"Region Height: {region.Height}\n" + $"Result Confidence: {result.Confidence}\n\n" + $"Full Scnned Photo Text: {result.Text}"; Console.WriteLine(output); Imports Microsoft.VisualBasic Imports IronOcr Imports IronSoftware.Drawing Imports System ' Instantiate OCR engine Private ocr = New IronTesseract() Private inputPhoto = New OcrInput() inputPhoto.LoadImageFrame("ocr.tiff", 0) ' Read photo Dim result As OcrPhotoResult = ocr.ReadPhoto(inputPhoto) ' Index number refer to region order in the page Dim number As Integer = result.TextRegions(0).PageNumber ' Extract the text in the first region Dim textinregion As String = result.TextRegions(0).TextInRegion 'Extract the co_ordinates of the first text region Dim region As Rectangle = result.TextRegions(0).Region Dim output = $"Text in First Region: {textinregion}" & vbLf & $"Text Region:" & vbLf & $"Starting X: {region.X}" & vbLf & $"Starting Y: {region.Y}" & vbLf & $"Region Width: {region.Width}" & vbLf & $"Region Height: {region.Height}" & vbLf & $"Result Confidence: {result.Confidence}" & vbLf & vbLf & $"Full Scnned Photo Text: {result.Text}" Console.WriteLine(output) $vbLabelText $csharpLabel 輸出 文本:從OCR輸入提取的文本。 信心:表示每個字符統計準確性信心的“雙”屬性,1為最高,0為最低。 文本區域:顯示OCR文本位置的"TextRegions"屬性列表。 在上面的示例中,我們打印了幀號以及包含文本的矩形。 ReadPhoto與Read的差異 ReadPhoto方法與標準Read的主要區別在於結果對象及它所接受的文件格式。 LoadImageFrame特別只接收tiff和gif,並不支持如jpeg的格式,原因有多。 TIFF與JPEG影像的比較 作為文件格式,TIFF是無損的,通常用於將多頁和多幀壓縮成一個單一格式。 通常用於高質量的多圖像存儲(例如法律文件,醫療影像)。 它比標準JPEG格式更複雜,因此需要使用不同的方法來完全提取文本。 此外,由於TIFF圖片使用了不同的壓縮方法,IronOCR必須使用專用方法來破譯文本。 以下是對TIFF和JPEG的進一步比較。 功能 TIFF(標記圖像文件格式) JPG/JPEG(聯合圖片專家組) 壓縮 無損或未壓縮(保留質量) 有損壓縮(為更小文件尺寸降低質量) 文件大小 大(由於高質量和可選的無壓縮) 小,優化以用於網頁,以及快速加載 影像質量 高(適合專業使用,保留所有細節) 低(由於有損壓縮,會犧牲一些質量) 顏色深度 支持高顏色深度(每通道高達16位或32位) 24位顏色(1670萬種顏色) 使用案例 專業攝影,出版,掃描,做存檔 網絡圖片,社交媒體,日常照片 透明度 支持透明和阿爾法通道 不支持透明 編輯 適合多次編輯(重存不會損失質量) 重復編輯和存儲會導致質量下降 兼容性 在專業軟件中被廣泛支持 在所有平台和設備上普遍支持 動畫 不支持動畫 不支持動畫 元數據 存儲豐富的元數據(EXIF,圖層等) 存儲EXIF元數據但更有限 不同情景 開發者需考慮生產中的每個使用案例,以進一步優化並確保其應用性能有效。 雖然ReadPhoto適用於如上所述的複雜影像TIFF,但結果處理會比較慢。 另一方面,JPEG可能質量較低但通常操作更快。 然而,影像質量如噪聲會導致OCR的低置信率。 使用OcrPhotoResults或使用接口管理IOcrResult的任何類中的信心水平屬性,將讓您了解到結果的準確度,允許開發者按需測試、重複和優化。 開發者應該在效率和精確度之間找到一個平衡,確保影像達到一定的門檻以保持一致性。 常見問題解答 C# 中的 ReadPhoto 方法是什麼? IronOCR for C# 中的 ReadPhoto 方法旨在從 TIFF 和 GIF 等複雜圖像格式中提取文本,並使用光學字元辨識 (OCR) 將其轉換為可搜尋的數位資料。 為什麼我應該使用 ReadPhoto 函數而不是標準的 Read 函數? ReadPhoto 針對 TIFF 和 GIF 等複雜影像格式進行了最佳化,這些格式由於其壓縮和品質特性而需要特殊處理,因此與標準 Read 函數相比,它更適合處理這些類型的影像。 如何在C#中使用OCR技術確保最佳的文字擷取效果? 為了確保在 C# 中使用 OCR 進行文字擷取時獲得最佳效果,請考慮影像品質和格式。對於 TIFF 等高品質和複雜格式的影像,使用 IronOCR 的 ReadPhoto 方法可以提高準確性和效率。 ReadPhoto 方法支援哪些影像格式? IronOCR 中的 ReadPhoto 方法支援 TIFF 和 GIF 等複雜影像格式,非常適合高品質文字擷取任務。 使用 OCR 轉換 TIFF 檔案有哪些好處? 使用 IronOCR 的 ReadPhoto 方法透過 OCR 將 TIFF 檔案轉換為高品質影像,從而實現可搜尋和可編輯的數位數據,這對於文件管理和存檔非常有利。 OCR技術如何提昇文件處理效率? OCR 技術可自動將影像中的文字轉換為數位數據,顯著提高處理速度和準確性,尤其是在處理大量文件時。 在光學字元辨識(OCR)中,哪些因素會影響影像處理方法的選擇? 影響選擇的因素包括影像格式和品質、處理速度以及具體的應用場景需求。 IronOCR 的 ReadPhoto 功能非常適合處理高品質、複雜的影像,而對於格式簡單的影像,其他方法可能更有效率。 IronOCR 的 ReadPhoto 方法可以用在彩色影像上嗎? 是的,IronOCR 的 ReadPhoto 方法可以處理彩色影像,特別是 TIFF 和 GIF 等格式的影像,從而可以準確地從全彩文件中提取文字。 「置信度」屬性在 OCR 結果中扮演什麼角色? OCR 結果中的「置信度」屬性提供了文字擷取準確性的統計度量,幫助開發人員評估數位化資料的可靠性。 開發者如何在他們的應用程式中使用 ReadPhoto 的 OCR 結果? 開發人員可以透過存取OcrPhotoResult屬性來使用 IronOCR 的 ReadPhoto 的 OCR 結果,該屬性包括提取的文字、置信度分數和文字區域,從而實現進一步的資料處理和應用程式整合。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 準備好開始了嗎? Nuget 下載 5,044,537 | 版本: 2025.11 剛剛發布 免費 NuGet 下載 總下載量:5,044,537 查看許可證