光學字元辨識(OCR)幾十年來一直被視為已解決的問題——對於具有簡單文字的清晰掃描文件而言。但真實世界的視覺內容遠更雜亂多樣。帶有複雜符號的數學方程式、具有不規則儲存格結構的表格、帶有專門符號的樂譜,以及招牌和標籤上的場景文字,都挑戰了假設乾淨、線性文字在均勻背景上的傳統 OCR 方法。
GOT-OCR2.0(通用 OCR 理論 2.0 版)由 Ucas-HaoranWei 的研究人員開發,代表了作者所稱的 OCR-2.0 的範式轉移。GOT-OCR2.0 不是將偵測、分割和辨識模組串接在一起的傳統管線,而是一個擁有 5.8 億參數的單一端到端模型,直接將影像像素映射到結構化的文字輸出。
該模型的統一架構使其能夠處理異常廣泛的內容類型。同一個轉錄印刷英文頁面的模型,可以解析 LaTeX 數學表達式、從複雜的 HTML 表格中提取資料、辨識樂譜上的音符,或讀取街頭招牌照片上的文字。這種多功能性無需針對特定任務進行微調——模型學會從輸入影像的視覺特徵本身識別內容類型。
GOT-OCR2.0 的端到端架構如何運作?
與傳統的 OCR 管線不同,GOT-OCR2.0 使用單一的編碼器-解碼器 Transformer 架構。
流程圖 LR
A[輸入影像\n場景或文件] --> B[視覺編碼器\n基於 ViT 的主幹]
B --> C[跨模態\n注意力]
C --> D[文字解碼器\n自迴歸 Transformer]
D --> E{內容類型\n分類}
E -->|純文字| F[Markdown 字串]
E -->|數學公式| G[LaTeX 表達式]
E -->|表格| H[HTML 表格結構]
E -->|樂譜| I[MusicXML / ABC 記譜法]
E -->|圖表| J[文字 + 資料點]
F --> K[結構化輸出]
G --> K
H --> K
I --> K
J --> K
視覺編碼器將輸入影像處理為特徵表示,然後由自迴歸文字解碼器逐 token 產生輸出。解碼器學會根據看到的視覺內容在輸出格式之間切換,為數學區域輸出 LaTeX、為表格輸出 HTML、為標準段落輸出純文字。
GOT-OCR2.0 支援哪些內容類型和效能指標?
與傳統 OCR 系統相比,該模型支援的內容類型範圍異常廣泛。
| 內容類型 | 輸出格式 | 典型準確度 | 傳統 OCR 處理方式 |
|---|---|---|---|
| 印刷文字 | Markdown 字串 | >98% 字元準確度 | 良好支援 |
| 數學公式 | LaTeX | >90% 表達式準確度 | 需獨立的數學 OCR |
| 表格 | HTML + CSS | >85% 儲存格層級準確度 | 需表格偵測 |
| 樂譜 | ABC 記譜法 | >80% 音符準確度 | 需專門的 OMR |
| 場景文字 | 純文字 | >92% 辨識率 | 需場景文字偵測器 |
| 圖表與圖形 | 文字 + 資料值 | >88% 鍵值準確度 | 通常不支援 |
統一的方法消除了困擾傳統 OCR 管線的複合錯誤——偵測階段的錯誤會傳播到辨識和後處理。單一的端到端模型直接針對最終輸出品質進行最佳化。
安裝和設定流程為何?
GOT-OCR2.0 使用標準的深度學習工具,設定過程簡單。
| 元件 | 需求 | 備註 |
|---|---|---|
| Python | 3.9+ | 核心執行環境 |
| PyTorch | 2.0+ | 深度學習框架 |
| Transformers | 4.35+ | HuggingFace 模型載入 |
| GPU 記憶體 | 6GB+(FP16) | 5.8 億參數模型 |
| 模型權重 | 自動下載 | 託管於 HuggingFace |
該模型支援 FP16 推論以降低記憶體需求,使其能夠在消費級 GPU 上運行。5.8 億參數大小代表了能力與資源需求之間的最佳平衡點——足夠大以處理多樣化的 OCR 任務,又足夠小以部署在單張 GPU 上。
GOT-OCR2.0 與 OCR-1.0 系統的比較
從 OCR-1.0 到 OCR-2.0 的轉變代表了根本的架構變革。
| 面向 | OCR-1.0(傳統) | OCR-2.0(GOT-OCR2.0) |
|---|---|---|
| 架構 | 多模組管線 | 單一端到端模型 |
| 文字偵測 | 獨立的 CNN 偵測器 | 隱式學習 |
| 字元辨識 | 逐字元分類器 | 自迴歸序列模型 |
| 版面分析 | 獨立的版面解析器 | 整合到解碼器中 |
| 數學辨識 | 需外部引擎 | 原生能力 |
| 表格辨識 | 需外部模型 | 原生能力 |
| 錯誤傳播 | 級聯錯誤 | 透過聯合最佳化最小化 |
端到端方法也簡化了部署。你不再需要管理和版本化多個模型(偵測器、辨識器、版面分析器、數學解析器),只需部署一個處理所有任務的模型。
常見問題
什麼是 GOT-OCR2.0? GOT-OCR2.0 是一個統一的端到端 OCR 模型,擁有 5.8 億參數,可處理多種內容類型,包括純文字、數學表達式、表格、圖表和樂譜,適用於場景和文件影像。
GOT-OCR2.0 支援哪些內容類型? GOT-OCR2.0 支援純文字、LaTeX 數學表達式、HTML 格式表格、圖表文字提取、樂譜辨識以及感知文件版面的轉錄。
如何安裝 GOT-OCR2.0? 透過 GitHub 倉庫安裝。該模型需要 PyTorch 和 HuggingFace Transformers 函式庫。預訓練權重會自動從 HuggingFace 下載。
模型權重存放於何處? GOT-OCR2.0 模型權重託管在 HuggingFace Model Hub,首次運行模型時會自動下載。可能提供多種模型大小以滿足不同的效能需求。
GOT-OCR2.0 與傳統 OCR 有何不同? 與使用獨立偵測和辨識模組的傳統 OCR 系統不同,GOT-OCR2.0 是一個統一的端到端模型,直接將影像像素映射到文字輸出,無需專門的子模組即可處理多樣化的內容類型。
延伸閱讀
- GOT-OCR2.0 GitHub 倉庫 – 原始碼、模型卡和使用範例
- HuggingFace 上的 GOT-OCR2.0 – 模型權重和推論程式碼
- HuggingFace Transformers 函式庫 – 用於部署 GOT-OCR2.0 的框架
- LaTeX 文件 – GOT-OCR2.0 使用的數學符號格式
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!