光學字元辨識(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可以掃瞄彩色文字和背景,雖然它對高對比度的顏色組合,如黑色文字和白色背景效果更好。如果文字和背景的顏色對比 度不足,其準確性可能會降低。
可縮放向量圖形 (SVG) 是一種廣泛使用的標記語言,用於描述 XML 中的二維圖形。與將影像儲存為個別像素集合的點陣圖格式(例如 JPEG、PNG 或 GIF)不同,SVG 透過數學公式定義形狀、線條和色彩。這種基本差異讓 SVG 檔案可以縮放至任何大小而不會損失品質,使其成為響應式網頁設計、複雜插圖和需要在各種裝置和解析度中保持清晰度的標誌的理想選擇。
SVG 圖形由向量形狀組成,例如圓形、矩形、多邊形和由 2D 空間中的點描述的路徑,以及使用 SVG 標記語言定義的筆觸、填色和其他視覺屬性。SVG 檔案中的每個元素和屬性都直接對應於 SVG 渲染模型的一部分,讓使用者可以精細地控制圖形的顯示方式。SVG 檔案可以用任何文字編輯器建立和編輯,因為它們是純文字檔案,也可以使用各種軟體函式庫以程式方式產生和操作。
SVG 的主要功能之一是其 DOM 介面。SVG 影像可以直接嵌入 HTML 文件中,而且因為它們成為文件物件模型 (DOM) 的一部分,所以可以像 HTML 元素一樣與它們互動。這種整合允許透過 JavaScript 和 CSS 動態變更 SVG 影像的屬性,讓圖形可以進行動畫、互動和即時更新。例如,SVG 元素的色彩、大小或位置可以根據使用者的互動(例如滑鼠移動或點擊)或圖形所代表資料的變更而改變。
SVG 支援廣泛的圖形效果,包括漸層、圖案、剪裁路徑和遮罩,這些效果提供了建立複雜視覺呈現的廣泛選項。SVG 也包含濾鏡效果,例如模糊、色彩處理和陰影,這些效果的定義方式類似於 CSS 濾鏡,但專門設計用於向量圖形。這些效果讓開發人員和設計師可以直接在 SVG 標記中套用精密的視覺增強功能,讓使用者可以在不使用點陣圖影像的情況下製作出詳細的插圖和紋理效果。
互動性和動畫是 SVG 最引人注目的用途之一。透過 <animate>、<set> 和 <animateTransform> 元素,SVG 提供了一個宣告式語法,用於隨著時間推移動畫圖形的屬性和特性。此外,SVG 與 JavaScript 的整合擴展了它的動畫功能,讓使用者可以製作出更複雜且互動的動畫,這些動畫會對使用者的輸入或其他動態事件做出反應。這些功能的結合讓使用者可以建立引人入勝的網路應用程式、資料視覺化和互動式資訊圖表,這些應用程式和圖表可以利用網路技術的全部功能。
無障礙性是 SVG 的另一個重要優點。SVG 影像中的文字是可以選擇和搜尋的,這與文字被扁平化的點陣圖影像形成對比。此功能不僅透過允許文字選擇來改善使用者體驗,也增強了文件的無障礙性,因為螢幕閱讀器可以詮釋和朗讀 SVG 圖形中包含的文字。此外,SVG 支援元素的語義群組和描述性標籤,這有助於將圖形的結構和目的傳達給輔助技術。
最佳化和壓縮對於網路效能至關重要,而 SVG 檔案在這個領域提供了多項優點。由於 SVG 圖形是基於文字的,因此可以使用 GZIP 大幅壓縮它們,這可以大幅縮小它們的檔案大小,以加快載入時間。此外,由於 SVG 是基於向量的,因此它通常比高解析度點陣圖影像需要更少的儲存空間,特別是對於簡單的圖形或圖示。然而,XML 的冗長性和過於複雜或編碼效率低下的圖形可能會導致 SVG 檔案比必要的更大。因此,SVGO(SVG 最佳化器)等工具通常用於清理和最佳化 SVG 檔案,移除不必要的資料和格式,讓檔案盡可能精簡。
SVG 在響應 式網頁設計中也扮演著關鍵角色。由於 SVG 圖形具有可縮放性,因此它們可以輕鬆適應不同的螢幕大小、解析度和方向,而不會損失品質或出現像素化問題。設計師可以透過屬性和 CSS 控制 SVG 影像的響應性,確保圖形在所有裝置上(從桌上型電腦螢幕到智慧型手機)看起來都清晰銳利。這種內建的可縮放性讓 SVG 成為標誌、圖示和其他需要在各種顯示環境中維持視覺完整性的圖形的絕佳選擇。
儘管 SVG 有許多優點,但它也並非沒有挑戰和限制。例如,雖然 SVG 擅長表示圖形元素(例如形狀、線條和文字),但它並不適合具有數千種色彩和漸層的複雜影像,例如照片。在這些情況下,JPEG 或 PNG 等點陣圖格式會更合適。此外,SVG 在處理極其複雜或包含大量元素的圖形時,效能可能會受到影響,因為每個元素都必須渲染,並且可能需要動畫或互動。
此外,跨瀏覽器相容性在歷史上一直是 SVG 的一項挑戰。雖然現代網路瀏覽器已經改善了對 SVG 的支援,但不同瀏覽器在詮釋和顯示 SVG 內容的方式上仍然可能存在不一致的情況。開發人員可能需要實作解決方法或後備方案,以確保他們的圖形在所有平台上都能正確顯示。無障礙性功能雖然強大,但需要仔細實作才能充分受益於 SVG 的功能,包括為輔助技術適當地標記和建構圖形。
SVG 與其他網路標準的整合為網路設計師和開發人員開啟了廣泛的可能性。SVG 可以使用 CSS 設定樣式,讓設計師能夠將熟悉的樣式屬性套用於向量圖形。它可以透過 JavaScript 進行操作,允許動態變更和互動。此外,由於 SVG 是基於 XML 的,因此它可以與其他 XML 技術和資料格式(例如 RSS 饋送或 XML 資料庫)結合使用。這種整合讓 SVG 成為資料視覺化的強大工具,讓使用者可以產生動態的、資料驅動的圖形,並即時更新。
展望未來,SVG 在網路開發中的角色可能會持續成長。網路技術的進步和對高品質、互動性和響應式圖形日益增長的需求,將推動 SVG 使用的進一步採用和創新。新的功能和功能(例如改進的動畫語法、更好的無障礙性功能和增強的效能最佳化)可能會被開發出來,讓 SVG 成為現代網頁設計中更重要的元素。
總之,SVG 提供了一組豐富的功能,用於在網路上建立和操作可縮放向量圖形。它可以縮放而不損失品質,並支援互動性、動畫和無障礙性,這讓它成為設計師和開發人員的多功能工具。儘管存在一些挑戰,例如跨瀏覽器相容性和效能考量,但 SVG 在可縮放性、響應性和與網路技術整合方面的優點,讓它成為建立動態且視覺上吸引人的線上體驗的寶貴資產。
這個轉換器完全在您的瀏覽器中運行。當您選擇 一個檔案,它將讀入內存並轉換為所選格式。 然後,您可以下載轉換後的檔案。
轉換馬上開始,大部分檔案僅需一秒鐘轉換。 較大的檔案可能需要更長的時間。
您的檔案絕不會上傳到我們的伺服器。它們在您的瀏覽器中 轉換,然後下載轉換後的檔案。我們從未看到您的檔案。
我們支援所有圖形格式之間的轉換,包括 JPEG,PNG,GIF,WebP,SVG,BMP,TIFF,等等。
此轉換器完全免費,且將永遠免費。 由於它在您的瀏覽器中運行,我們無需支付 伺服器費用,所以我們不需要向您收取費用。
可以!您一次可以轉換任意多的檔案。 當您添加檔案時,只需選擇多個檔案即可。