PDF-Extract-Kit通過集成多個(gè)模型實(shí)現(xiàn)了PDF高質(zhì)量提取,適用于學(xué)術(shù)論文、教科書、研究報(bào)告和財(cái)務(wù)報(bào)表等多種文檔類型,在掃描模糊或有水印的情況下也能保持高魯棒性
1、布局檢測(cè)采用LayoutLMv3模型進(jìn)行區(qū)域檢測(cè),包括圖像、表格、標(biāo)題、文本等
2、公式檢測(cè)上采用YOLOv8,包含行內(nèi)公式和行間公式
3、公式識(shí)別上采用UniMERNet識(shí)別
4、光學(xué)字符識(shí)別使用PaddleOCR進(jìn)行文本識(shí)別
對(duì)于公式識(shí)別,UniMERNet可以媲美商業(yè)軟件;OCR上使用PaddleOCR,對(duì)中英文OCR效果不錯(cuò),之前分享過
PDF內(nèi)容提取框架如下圖所示
布局檢測(cè)
和公式檢測(cè)
模型。在論文、教材、研報(bào)、財(cái)報(bào)等多樣性的PDF文檔上,我們的pipeline都能得到準(zhǔn)確的提取結(jié)果,對(duì)于掃描模糊、水印等情況也有較高魯棒性。現(xiàn)有開源模型多基于Arxiv論文類型數(shù)據(jù)進(jìn)行訓(xùn)練,面對(duì)多樣性的PDF文檔,提前質(zhì)量遠(yuǎn)不能達(dá)到實(shí)用需求。相比之下,我們的模型經(jīng)過多樣化數(shù)據(jù)訓(xùn)練,可以適應(yīng)各種類型文檔提取。
我們與現(xiàn)有的開源Layout檢測(cè)模型做了對(duì)比,包括DocXchain、Surya、360LayoutAnalysis的兩個(gè)模型。而LayoutLMv3-SFT指的是我們?cè)贚ayoutLMv3-base-chinese預(yù)訓(xùn)練權(quán)重的基礎(chǔ)上進(jìn)一步做了SFT訓(xùn)練后的模型。論文驗(yàn)證集由402張論文頁(yè)面構(gòu)成,教材驗(yàn)證集由587張不同來源的教材頁(yè)面構(gòu)成。
模型 | 論文驗(yàn)證集 | 教材驗(yàn)證集 | ||||
---|---|---|---|---|---|---|
mAP | AP50 | AR50 | mAP | AP50 | AR50 | |
DocXchain | 52.8 | 69.5 | 77.3 | 34.9 | 50.1 | 63.5 |
Surya | 24.2 | 39.4 | 66.1 | 13.9 | 23.3 | 49.9 |
360LayoutAnalysis-Paper | 37.7 | 53.6 | 59.8 | 20.7 | 31.3 | 43.6 |
360LayoutAnalysis-Report | 35.1 | 46.9 | 55.9 | 25.4 | 33.7 | 45.1 |
LayoutLMv3-SFT | 77.6 | 93.3 | 95.5 | 67.9 | 82.7 | 87.9 |
我們與開源的模型Pix2Text-MFD做了對(duì)比。另外,YOLOv8-Trained是我們?cè)赮OLOv8l模型的基礎(chǔ)上訓(xùn)練后的權(quán)重。論文驗(yàn)證集由255張論文頁(yè)面構(gòu)成,多源驗(yàn)證集由789張不同來源的頁(yè)面構(gòu)成,包括教材、書籍等。
模型 | 論文驗(yàn)證集 | 多源驗(yàn)證集 | ||
---|---|---|---|---|
AP50 | AR50 | AP50 | AR50 | |
Pix2Text-MFD | 60.1 | 64.6 | 58.9 | 62.8 |
YOLOv8-Trained | 87.7 | 89.9 | 82.4 | 87.3 |
公式識(shí)別
公式識(shí)別我們使用的是Unimernet的權(quán)重,沒有進(jìn)一步的SFT訓(xùn)練,其精度驗(yàn)證結(jié)果可以在其GitHub頁(yè)面獲取。
conda create -n pipeline python=3.10
pip install -r requirements.txt
pip install --extra-index-url https://miropsota.github.io/torch_packages_builder detectron2==0.6+pt2.3.1cu121
安裝完環(huán)境后,可能會(huì)遇到一些版本沖突導(dǎo)致版本變更,如果遇到了版本相關(guān)的報(bào)錯(cuò),可以嘗試下面的命令重新安裝指定版本的庫(kù)。
pip install pillow==8.4.0
除了版本沖突外,可能還會(huì)遇到torch無法調(diào)用的錯(cuò)誤,可以先把下面的庫(kù)卸載,然后重新安裝cuda12和cudnn。
pip uninstall nvidia-cusparse-cu12
https://github.com/opendatalab/PDF-Extract-Kit/blob/main/README-zh_CN.md
聯(lián)系客服