光學字元辨識(OCR)將文字影像—掃描、智慧型手機相片、PDF—轉換為機器可讀的字串,並且越來越多地轉換為 結構化資料。現代 OCR 是一個清理影像、尋找文字、讀取它並匯出豐富元數據的流程, 以便下游系統可以搜尋、索引或擷取欄位。兩個廣泛使用的輸出標準是 hOCR,一種用於文字和版面的 HTML 微格式,以及 ALTO XML,一種以圖書館/檔案館為導向的綱要;兩者都保留位置、閱讀順序和其他版面提示,並受到 像 Tesseract這樣的熱門引擎支援。
預處理。 OCR 品質始於影像清理:灰階轉換、去噪、 二值化(二值化)和歪斜校正。標準的 OpenCV 教學涵蓋了全域、 自適應 和 Otsu 二值化—適用於光線不均或雙 峰直方圖的文件的必備步驟。當頁面內的光線變化時 (想想手機快照),自適應方法通常優於單一全域閾值;Otsu 會透過分析直方圖自動選擇一個閾值。傾斜校正同樣重要:基於霍夫變換的 歪斜校正(霍夫線變換)與 Otsu 二值化結合,是生產預處理流程中常見且有效的方案。
偵測與辨識。 OCR 通常分為文字偵測(文字在哪裡 ?)和文字辨識(它說什麼?)。在自然場景和許多掃描中,完全卷積 偵測器,如 EAST ,可以有效地預測字或行級的四邊形,而無需繁重的提案階段,並且已在 常見的工具套件中實現(例如, OpenCV 的文字偵測教學)。在複雜的頁面(報紙、表格、書籍)上,行/區域的分割和閱讀順序推斷很重要:Kraken 實現了傳統的區域/行分割和神經基準線分割,並明確支援 不同的腳本和方向(LTR/RTL/垂直)。
辨識模型。 經典的開源主力 Tesseract (由 Google 開源,源於 HP)從字元分類器演變為基於 LSTM 的序列 辨識器,可以從 CLI 發出可搜尋的 PDF、 hOCR/ALTO 相容輸出等。現代辨識器依賴於序列模型,而無需預先分割的字元。 連接主義時間分類 (CTC) 仍然是基礎,它學習輸入特徵序列和輸出標籤字串之間的對齊;它廣泛 用於手寫和場景文字流程。
在過去幾年中,Transformer 重塑了 OCR。 TrOCR 使用視覺 Transformer 編碼器和文字 Transformer 解碼器,在大型合成語料庫上進行訓練,然後 在真實資料上進行微調,在印刷、手寫和場景文字基準測試中表現出色(另請參閱 Hugging Face 文件)。與此同時,一些系統繞過 OCR 進行下游理解: Donut(文件理解 Transformer) 是一種無 OCR 的編碼器-解碼器,可直接從文件 影像輸出結構化答案(如鍵值 JSON)(儲存庫, 模型卡),避免了在單獨的 OCR 步驟為 IE 系統提供資料時出現錯誤累積。
如果您想要跨多種腳本的「開箱即用」文字閱讀, EasyOCR 提供了一個包含 80 多種語言模型的簡單 API,可傳回框、文字和可信度—方便用於原型和 非拉丁腳本。對於歷史文獻, Kraken 以基準線分割和腳本感知閱讀順序而著稱;對於靈活的行級訓練, Calamari 建立在 Ocropy 的基礎上(Ocropy),帶有(多)LSTM+CTC 辨識器和用於微調自訂模型的 CLI。
泛化取決於資料。對於手寫, IAM 手寫資料庫 為訓練和評估提供了不同作者的英文句子;它是 行和字辨識的長期參考集。對於場景文字, COCO-Text 在 MS-COCO 上分層了廣泛的註釋,帶有印刷/手寫、清晰/不清晰、腳本和 完整轉錄的標籤(另請參閱原始 專案頁面)。該領域也嚴重依賴合成預訓練: 野外合成文字 將文字渲染到具有逼真幾何和光線的相片中,為預訓練 偵測器和辨識器提供大量資料(參考 程式碼和資料)。
ICDAR 的穩健閱讀 下的競賽使評估保持務實。最近的任務強調端對端偵測/閱讀,並包括將字 連結成片語,官方程式碼報告 精確率/召回率/F-score、交並比 (IoU) 和字元級編輯距離度量—反映了從業人員應該追蹤的內容。
OCR 很少以純文字結尾。檔案館和數位圖書館更喜歡 ALTO XML ,因為它除了內容之外還編碼了實體版面(帶座標的區塊/行/字),並且它與 METS 打包配合得很好。 hOCR 微格式則相反,它使用 ocr_line 和 ocrx_word 等類別將相同的思想嵌入到 HTML/CSS 中,從而可以輕鬆地使用 Web 工具進行顯示、編輯和轉換。Tesseract 兩者都支援—例如, 直接從 CLI 產生 hOCR 或可搜尋的 PDF(PDF 輸出指南);像 pytesseract 這樣的 Python 包裝函式增加了便利性。當儲存庫具有固定的接收 標準時,存在用於在 hOCR 和 ALTO 之間進行轉換的轉換器—請參閱此精選清單 OCR 檔案格式工具。
最強勁的趨勢是融合:偵測、辨識、語言模型,甚至特定於任務的解碼 正在合併到統一的 Transformer 堆疊中。在 大型合成語料庫 上進行預訓練仍然是一個力量倍增器。無 OCR 模型將在目標是結構化輸出 而不是逐字記錄的任何地方積極競爭。也期待混合部署:一個輕量級偵測器加上一個 TrOCR 風格的 辨識器用於長格式文字,以及一個 Donut 風格的模型用於表格和收據。
Tesseract (GitHub) · Tesseract 文件 · hOCR 規範 · ALTO 背景 · EAST 偵測器 · OpenCV 文字偵測 · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · IAM 手寫 · OCR 檔案格式工具 · EasyOCR
光學字符識別(OCR)是一種技術,用於將不同類型的文檔,如掃描的紙質文檔、PDF文件或由數字相機拍攝的圖像,轉換為可以編輯和可搜索的數據。
OCR通過掃描輸入的圖像或文檔,將圖像分割成單個字符,然後將每個字符與使用模式識別或特徵識別的字符形狀數據庫進行比較。
OCR用於各種行業和應用,包括數字化打印文件、啟用文字轉語音服務、自動化數據錄入過程,以及幫助視障用戶更好地與文字互動。
儘管OCR技術已取得了巨大的進步,但它並不是絕對可靠的。準確性可能會因原始文檔的質量和使用的OCR軟件的具體情況而異。
儘管OCR主要用於識別印刷文字,但一些先進的OCR系統也能識別清晰、一致的手寫。然而,通常由於個人寫作風格的多樣性,手寫識別的準確度較低。
是的,許多OCR軟件可以識別多種語言。但是,需要確保你使用的軟件支持特定的語言。
OCR是光學字符識別的縮寫,用於識別印刷的文字,而ICR,或稱為智能字符識別,則較為先進,用於識別手寫的文字。
OCR在處理清晰易讀的字體和標準文字大小上效果最佳。雖然它能識別各種字體和大小,但在處理不常見的字體或極小的文字大小時,其準確性可能會降低。
OCR在處理低分辨率的文件、複雜的字體、打印質量差的文字、手寫,以及字和背景迎合度不足的文件時可能出問題。另外,儘管它可以識別多種語言,但可能無法完美覆蓋所有語言。
是的,OCR可以掃瞄彩色文字和背景,雖然它對高對比度的顏色組合,如黑色文字和白色背景效果更好。如果文字和背景的顏色對 比度不足,其準確性可能會降低。
JPEG,全稱聯合圖像專家小組,是一種廣泛用於數位影像有損壓縮的方法,特別是針對數位攝影產生的影像。壓縮程度可以調整,允許在儲存大小和影像品質之間進行選擇性的權衡。JPEG 通常可以達到 10:1 的壓縮比,而影像品質幾乎沒有明顯損失。
JPEG 壓縮演算法是 JPEG 標準的核心。這個過程從將數位影像從其典型的 RGB 色彩空間轉換為稱為 YCbCr 的不同色彩空間開始。YCbCr 色彩空間將影像分為亮度 (Y),代表亮度等級,以及色度 (Cb 和 Cr),代表色彩資訊。這種分離是有益的,因為人眼對亮度的變化比對色彩更敏感,這讓壓縮可以利用這一點,比亮度更壓縮色彩資訊。
一旦影像進入 YCbCr 色彩空間,JPEG 壓縮過程的下一步就是對色度通道進行降採樣。降採樣會降低色度資訊解析度,這通常不會顯著影響影像的感知品質,因為人眼對色彩細節的敏感度較低。這個步驟是可選的,可以根據影像品質和檔案大小之間所需的平衡進行調整。
降採樣後,影像會被分成區塊,通常大小為 8x8 像素。然後每個區塊會個別處理。處理每個區塊的第一步是套用離散餘弦轉換 (DCT)。DCT 是一種數學運算,將空間域資料(像素值)轉換為頻率域。結果是一個頻率係數矩陣,以其空間頻率組成表示影像區塊的資料。
DCT 產生的頻率係數接著會被量化。量化是將一大組輸入值對應到一個較小的集合的過程——在 JPEG 的情況下,這表示降低頻率係數的精度。這是壓縮中有損失的部分,因為一些 影像資訊會被捨棄。量化步驟由量化表控制,它決定對每個頻率組成套用多少壓縮。量化表可以調整為偏好較高的影像品質(較少壓縮)或較小的檔案大小(更多壓縮)。
量化後,係數會以鋸齒形順序排列,從左上角開始,並遵循一個優先考慮較低頻率組成而非較高頻率組成的模式。這是因為較低頻率組成(代表影像中較均勻的部分)比較高頻率組成(代表較精細的細節和邊緣)對整體外觀更重要。
JPEG 壓縮過程的下一步是熵編碼,這是一種無損壓縮的方法。JPEG 中最常見的熵編碼形式是霍夫曼編碼,儘管算術編碼也是一種選擇。霍夫曼編碼的工作原理是為較頻繁出現的項目分配較短的碼,為較不頻繁出現的項目分配較長的碼。由於鋸齒形排序傾向於將類似的頻率係數分組在一起,因此它提高了霍夫曼編碼的效率。
熵編碼完成後,壓縮資料會儲存在符合 JPEG 標準的檔案格式中。此檔案格式包含一個標頭,其中包含有關影像的資訊,例如其尺寸和使用的量化表,接著是霍夫曼編碼的影像資料。檔案格式也支援包含元資料,例如 EXIF 資料,其中可能包含有關用於拍攝照片的相機設定、拍攝日期和時間以及其他相關詳細資訊。
當開啟 JPEG 影像時,解壓縮過程基本上會反轉壓縮步驟。霍夫曼編碼的資料會被解碼,量化的頻率係數會使用壓縮期間使用的相同量化表進行反量化,並將反離散餘弦轉換 (IDCT) 套用於每個區塊,將頻率域資料轉換回空間域像素值。
反量化和 IDCT 過程會因為壓縮的有損性質而引入一些錯誤,這就是為什麼 JPEG 不適合會進行多次編輯和重新儲存的影像。每次儲存 JPEG 影像時,它都會再次經歷壓縮過程,並且會遺失額外的影像資訊。這可能會隨著時間推移導致影像品質明顯下降,這種現象稱為「世代損失」。
儘管 JPEG 壓縮具有有損性質,但由於其靈活性與效率,它仍然是一種流行的影像格式。JPEG 影像的檔案大小可以非常小,這使其非常適合用於網路,在網路中頻寬和載入時間是很重要的考量因素。此外,JPEG 標準包含漸進模式,允許影像以這樣的方式編碼,使其可以分多個步驟解碼,每個步驟都會提高影像解析度。這對於網路影像特別有用,因為它允許快速顯示低品質版本的影像,隨著更多資料下載,品質會提升。
JPEG 也有一些限制,並不總是所有類型影像的最佳選擇。例如,它不適合具有銳利邊緣或高對比文字的影像,因為壓縮會在這些區域周圍產生明顯的偽影。此外,JPEG 不支援透明度,這是 PNG 和 GIF 等其他格式提供的功能。
為了解決原始 JPEG 標準的一些限制,已經開發了新的格式,例如 JPEG 2000 和 JPEG XR。這些格式提供了更高的壓縮效率、支援更高的位元深度,以及透明度和無損壓縮等額外功能。然而,它們尚未達到與原始 JPEG 格式相同的廣泛採用程度。
總之,JPEG 影像格式是數學、人類視覺心理學和電腦科學的複雜平衡。其廣泛使用證明了它在縮小檔案大小的同時,維持大多數應用程式可以接受的影像品質的有效性。了解 JPEG 的技術方面可以幫助使用者在何時使用此格式以及如何針對品質和檔案大小的平衡最佳化其影像,以最符合其需求做出明智的決定。
這個轉換器完全在您的瀏覽器中運行。當您選擇 一個檔案,它將讀入內存並轉換為所選格式。 然後,您可以下載轉換後的檔案。
轉換馬上開始,大部分檔案僅需一秒鐘轉換。 較大的檔案可能需要更長的時間。
您的檔案絕不會上傳到我們的伺服器。它們在您的瀏覽器中 轉換,然後下載轉換後的檔案。我們從未看到您的檔案。
我們支援所有圖形格式之間的轉換,包括 JPEG,PNG,GIF,WebP,SVG,BMP,TIFF,等等。
此轉換器完全免費,且將永遠免費。 由於它在您的瀏覽器中運行,我們無需支付 伺服器費用,所以我們不需要向您收取費用。
可以!您一次可以轉換任意多的檔案。 當您添加檔案時,只需選擇多個檔案即可。