文件版面分析是任何文件理解管線中至關重要的第一步。在 OCR 提取文字之前、在表格被解析之前、在內容被分類之前,系統需要先了解事物在頁面上的位置。RapidLayout 是 RapidAI 團隊開發的開源函式庫,專注於解決這一挑戰,並同時支援中英文文件內容。
作為 RapidAI 生態系統(包含 OCR 引擎、表格辨識工具和文字偵測模型)的一部分,RapidLayout 提供了一種模組化、與後端無關的版面分析方法。它不僅限於單一推論框架,而是支援 OnnxRuntime、OpenVINO 以及專用的 CPU 和 GPU C++ 執行環境,使其適用於從邊緣裝置到伺服器部署的各種場景。
該函式庫擅長將文件區域分類為有意義的類別:文字區塊、標題、圖片、表格、公式、頁首、頁尾、參考文獻等。這種區域層級的理解對於結構化提取、可重排文件生成和智慧型 PDF 解析等下游任務至關重要。
RapidLayout 如何實現區域分類?
RapidLayout 使用在已標註文件資料集上訓練的深度學習模型,預測頁面上每個區域的邊界框和類別標籤。其管線遵循簡潔的架構:
流程圖 TD
A[輸入文件影像] --> B[縮放與正規化]
B --> C[推論後端\nOnnxRuntime / OpenVINO / C++]
C --> D[偵測頭\n區域邊界框]
C --> E[分類頭\n區域類別]
D --> F[非極大值抑制]
E --> F
F --> G[結構化版面輸出\n文字 / 表格 / 圖片 / 公式 / 標題]
G --> H[OCR 管線\n下游處理]
該模型在單次前向傳遞中同時產生定位和分類結果,確保推論速度足以滿足即時文件處理管線的需求。NMS 步驟移除重複的偵測結果,最終輸出提供乾淨的多邊形座標與類別標籤,下游工具可直接使用。
支援哪些推論後端?
RapidLayout 的模組化後端架構是其關鍵差異化優勢之一。使用者可選擇最適合其部署環境的推論引擎。
| 後端 | 說明 | 硬體 | 安裝方式 |
|---|---|---|---|
| OnnxRuntime | 跨平台 ONNX 執行環境 | CPU / GPU | pip install rapidlayout[ort] |
| OpenVINO | Intel 最佳化推論引擎 | Intel CPU / VPU / GPU | pip install rapidlayout[openvino] |
| Cpp-ZhuoYing | 輕量級 CPU 執行環境 | 僅 CPU | 內建於套件中 |
| Cpp-Shine | GPU 加速執行環境 | NVIDIA GPU | pip install rapidlayout[shine] |
C++ 後端(ZhuoYing 和 Shine)尤其值得注意,其源自中文文件處理領域,針對中文學術論文和官方文件中常見的密集多欄版面進行了特別最佳化。
RapidLayout 能偵測哪些區域類型?
該模型在涵蓋多種文件區域類型的全面分類體系上進行訓練,涵蓋學術、商業和行政文件中最常見的元素。
| 區域類別 | 說明 | 典型文件 |
|---|---|---|
| 文字 | 正文段落 | 所有文件類型 |
| 標題 | 章節與文件標題 | 論文、報告 |
| 圖片 | 影像、圖表、圖解 | 論文、簡報 |
| 表格 | 表格資料結構 | 報告、發票 |
| 公式 | 數學方程式 | 學術論文 |
| 頁首 | 頁眉 | 多頁文件 |
| 頁尾 | 含頁碼的頁尾 | 書籍、報告 |
| 參考文獻 | 參考書目或引用 | 學術論文 |
| 圖說 | 圖片/表格說明文字 | 論文、報告 |
這種分類粒度使得複雜的下游處理成為可能:表格可被導向表格提取模型、公式導向方程式辨識、圖片導向圖片說明系統。
RapidLayout 與其他版面分析工具的比較
開源生態系統中存在多種文件版面分析工具,各有不同的優勢。RapidLayout 的定位在於其中英文雙語支援和靈活的後端架構。
| 工具 | 語言 | 後端 | 優勢 |
|---|---|---|---|
| RapidLayout | 中文、英文 | 多種(4 個後端) | 靈活部署、中文支援 |
| LayoutLMv3 | 英文、多語言 | PyTorch | 深度理解、預訓練 |
| Detectron2 | 英文 | PyTorch | 通用物體偵測 |
| PaddleOCR Layout | 中文、英文 | PaddlePaddle | 強大的中文生態系統 |
RapidLayout 的多後端支援提供了實際優勢:你可以在筆電上使用 OnnxRuntime 進行開發,然後在 GPU 伺服器上使用 Cpp-Shine 部署,無需修改應用程式碼。
開始使用 RapidLayout
安裝過程簡單直接,該函式庫提供了簡潔的 Python API,可整合到文件處理管線中:
# 基本安裝
pip install rapidlayout
# 使用特定後端
pip install rapidlayout[ort] # OnnxRuntime
pip install rapidlayout[openvino] # OpenVINO
RapidLayout 的 API 設計注重簡單整合。安裝後,載入文件影像並執行版面偵測只需極少的程式碼,輸出可直接與 RapidOCR 等 OCR 工具整合,實現端到端的文件數位化。
常見問題
什麼是 RapidLayout? RapidLayout 是由 RapidAI 開發的開源文件版面分析函式庫,可在文件影像上執行文字偵測、表格辨識和區域分類,支援中英文內容與多種模型後端。
RapidLayout 支援哪些語言? RapidLayout 原生支援中文和英文文件內容,其區域分類模型在涵蓋學術論文、表單、收據、發票和多欄版面的多樣化資料集上進行訓練。
有哪些模型後端可用? RapidLayout 支援多種推論後端,包括 OnnxRuntime、OpenVINO、Cpp-ZhuoYing(CPU)和 Cpp-Shine(GPU),可靈活部署於不同硬體環境。
如何安裝 RapidLayout?
可透過 pip 安裝,指令為 pip install rapidlayout。如需特定後端,可使用擴充套件,如 pip install rapidlayout[ort] 安裝 OnnxRuntime,或 pip install rapidlayout[openvino] 安裝 OpenVINO。
RapidLayout 的主要使用場景有哪些? 使用場景包括 OCR 前處理、文件數位化、表單處理、發票資料提取、學術論文解析,以及任何需要在掃描文件中進行結構化區域偵測的工作流程。
延伸閱讀
- RapidLayout GitHub 倉庫 – 原始碼、模型下載與文件
- RapidOCR GitHub 倉庫 – 與 RapidLayout 完美搭配的 OCR 引擎
- RapidAI GitHub 組織 – RapidAI 文件處理工具的完整生態系統
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!