光學字元辨識(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可以掃瞄彩色文字和背景,雖然它對高對比度的顏色組合,如黑色文字和白色背景效果更好。如果文字和背景的顏色對比 度不足,其準確性可能會降低。
J2C 影像格式,又稱為 JPEG 2000 碼流,是 JPEG 2000 標準套件的一部分。JPEG 2000 本身是一種影像壓縮標準和編碼系統,由聯合影像專家小組委員會所創建,目的是取代原始的 JPEG 標準。JPEG 2000 標準的制定目標是提供一個新的影像編碼系統,具備高度的彈性和比 JPEG 更佳的效能。它旨在解決 JPEG 格式的一些限制,例如在低位元率下的效能不佳和缺乏可擴充性。
JPEG 2000 使用小波轉換,而不是原始 JPEG 標準中使用的離散餘弦轉換 (DCT)。小波轉換允許更高的可擴充性,並具備執行無失真壓縮的能力,這表示原始影像可以從壓縮資料中完美重建。這是一個比原始 JPEG 的有失真壓縮有顯著優勢,因為有失真壓縮會在壓縮過程中永久遺失一些影像資訊。
J2C 檔案格式特別指的是 JPEG 2000 的碼流。此碼流是實際編碼的影像資料,可以嵌入各種容器格式中,例如 JP2(JPEG 2000 第 1 部分檔案格式)、JPX(JPEG 2000 第 2 部分,延伸檔案格式)和 MJ2(Motion JPEG 2000 影片檔案格式)。J2C 格式基本上是原始的編碼影像資料,沒有任何容器格式可能提供的額外元資料或結構。
J2C 格式的主要特點之一是它在同一個檔案中同時支援無失真和有失真壓縮。這是透過使用可逆小波轉換進行無失真壓縮,以及不可逆小波轉換進行有失真壓縮來實現的。可以在影像中以每個區塊為基礎選擇無失真或有失真壓縮,允許根據內容的重要性混合高品質和低品質區域。
J2C 格式也具有高度可擴充性,支援稱為「漸進式解碼」的 功能。這表示可以先解碼並顯示影像的低解析度版本,然後隨著接收或處理更多影像資料,再依序顯示更高解析度的圖層。這對於頻寬可能受限的網路應用程式特別有用,因為它允許快速預覽影像,同時仍下載完整的高解析度影像。
J2C 格式的另一個重要方面是它支援感興趣區域 (ROI)。使用 ROI 編碼,可以將影像的某些部分編碼為比影像其他部分更高的品質。當影像的某些區域更重要,需要以更高的保真度保留時,這很有用,例如人像中的臉部或文件中的文字。
J2C 格式還包括精密的錯誤復原功能,使其在傳輸過程中對資料遺失更具備韌性。這是透過使用錯誤修正碼和以允許遺失封包復原的方式建構碼流來實現的。這使得 J2C 成為透過不可靠網路傳輸影像或以最小化潛在資料損毀影響的方式儲存影像的良好選擇。
J2C 中的色彩空間處理也比原始 JPEG 更進階。此格式支援廣泛的色彩空間,包括灰階、RGB、YCbCr 等。它還允許在同一個影像的不同區塊中使用不同的色彩空間,在影像編碼和表示方式上提供額外的彈性。
J2C 格式的壓縮效率是其另一個優點。透過使用小波轉換和先進的熵編碼技術(例如算術編碼),J2C 可以達到比原始 JPEG 更高的壓縮比,特別是在較低位元率時。這使其成為儲存空間或頻寬有限的應用程式的誘人選擇,例如行動裝置或網路應用程式。
儘管有許多優點,但與原始 JPEG 格式相比,J2C 格式並未廣泛採用。這部分原因在於 JPEG 2000 標準的複雜性較高,需要更多的運算資源來編碼和解碼影像。此外,原始 JPEG 格式已深植於許多系統中,並擁有廣泛的軟體和硬體支援生態系統,這使得新標準難以立足。
然而,在某些專業領域中,J2C 格式由於其特定功能而成為首選。例如,在醫學影像中,執 行無失真壓縮的能力以及對高動態範圍和高位元深度影像的支援,使 J2C 成為理想的格式。同樣地,在數位電影和影片歸檔中,此格式在高壓縮比下的高品質和可擴充性功能備受重視。
J2C 影像的編碼過程包含幾個步驟。首先,將影像分割成區塊,可以獨立處理。這種區塊化允許並行處理,並可以提高編碼和解碼過程的效率。然後使用可逆或不可逆小波轉換轉換每個區塊,具體取決於是否需要無失真或有失真壓縮。
在小波轉換之後,對係數進行量化,這涉及降低小波係數的精度。在無失真壓縮中,會略過此步驟,因為量化會引入錯誤。然後使用算術編碼對量化係數進行熵編碼,這透過利用影像內容的統計特性來縮小資料大小。
編碼過程的最後一步是組裝碼流。每個區塊的熵編碼資料與描述影像及其編碼方式的標頭資訊結合。這包括有關影像大小、區塊數、使用的小波轉換、量化參數和任何其他相關資料的資訊。產生的碼流然後可以儲存在 J2C 檔案中或嵌入在容器格式中。
解碼 J2C 影像基本上涉及反轉編碼過程。解析碼流以提取標頭資訊和每個區塊的熵編碼資料。然後解碼熵編碼資料以復原量化的小波係數。如果影像使用有失真壓縮進行壓縮,則會對係數進行反量化以近似其原始值。應用反小波轉換從小波係數重建影像,並將區塊拼接在一起以形成最終影像。
總之,J2C 影像格式是一個強大且彈性的影像編碼系統,與原始 JPEG 格式相比,它提供了多項優點,包括更好的壓縮效率、可擴充性以及執行無失真壓縮的能力。雖然它尚未達到與 JPEG 相同的普及程度,但它非常適合需要高品質影像或具有特定技術要求的應用程式。隨著技術的持續進步和對更精密的影像編碼系統需求的增加,J2C 格式可能會在各種領域中獲得更廣泛的採用。
這個轉換器完全在您的瀏覽器中運行。當您選擇 一個檔案,它將讀入內存並轉換為所選格式。 然後,您可以下載轉換後的檔案。
轉換馬上開始,大部分檔案僅需一秒鐘轉換。 較大的檔案可能需要更長的時間。
您的檔案絕不會上傳到我們的伺服器。它們在您的瀏覽器中 轉換,然後下載轉換後的檔案。我們從未看到您的檔案。
我們支援所有圖形格式之間的轉換,包括 JPEG,PNG,GIF,WebP,SVG,BMP,TIFF,等等。
此轉換器完全免費,且將永遠免費。 由於它在您的瀏覽器中運行,我們無需支付 伺服器費用,所以我們不需要向您收取費用。
可以!您一次可以轉換任意多的檔案。 當您添加檔案時,只需選擇多個檔案即可。