最新开源的PDF版面分析工具 PDF-Extract-Kit

最近有一个新开源的版面分析的模型,做PDF版面分析效果非常好。而且对公式的解析效果比较好。虽然现在star数量不高,但是绝对会涨起来的。我们调研对比过很多开源的工具,效果都强差人意,这个是我看到的最满意的一个。甚至要比我们生产环境的都要好一些。这里分享一下详细的安装过程。
github上的的教程太粗糙了。我把遇到的问题和解决方法都写了出来。
这篇文章分享的 是在windows10下安装的案例。且以cpu启动。最终可以成功启动。
GitHub - opendatalab/PDF-Extract-Kit: A Comprehensive Toolkit for High-Quality PDF Content Extraction

关于PDF-Extract-Kit

由于文档类型的多样性,现有开源的布局检测和公式检测很难处理多样性的PDF文档,为此我们内容采集多样性数据进行标注和训练,使得在各类文档上取得精准的检测效果,细节参考布局检测公式检测部分。对于公式识别,UniMERNet方法可以媲美商业软件,在各种类型公式识别上均匀很高的质量。对于OCR,我们采用PaddleOCR,对中英文OCR效果不错。

效果展示

结合多样性PDF文档标注,我们训练了鲁棒的布局检测公式检测模型。在论文、教材、研报、财报等多样性的PDF文档上,我们的pipeline都能得到准确的提取结果,对于扫描模糊、水印等情况也有较高鲁棒性。

论文

公式

试卷

conda

为了隔离环境,减少版本冲突问题,这里推荐使用conda来隔离环境。如果有conda可以跳过这一步,如果没有conda,可以参考下边的链接,来安装conda。

Windows下的Anaconda详细安装教程(2023/10/7)_windows安装anaconda-CSDN博客

初始化环境

拉取代码

conda create -n pdf-extract python=3.10

conda activate pdf-extract

pip install -r requirements+cpu.txt

pip install https://github.com/opendatalab/PDF-Extract-Kit/raw/main/assets/whl/detectron2-0.6-cp310-cp310-win_amd64.whl

这个从github上拉取,可能会拉不到,多试几次。或者使用科学上网解决。

修改配置文件

修改 configs/model_configs.yaml 文件,把 cuda 改为 cpu:

修改 modules/layoutlmv3/layoutlmv3_base_inference.yaml 文件中的 DEVICE 为 cpu:

安装环境必备环境

需要安装imagemagick

如果不安装,就会有报错如下

需要下载imagemagick,但是这个域名打不开

在github上,可以找到安装包

Releases · ImageMagick/ImageMagick · GitHub

这个是windows环境的

下载完点击文件安装即可!

下载模型

模型,这里是模型没有下载,会报错如下

这里为了方便,我使用git来从魔搭上拉取

复制代码
git clone https://www.modelscope.cn/wanderkid/PDF-Extract-Kit.git`
`

加下载后的的models目录,剪切到PDF-Extract-Kit下,替换原来的 models

运行解析,进行测试

还是在 PDF-Extract-Kit 目录下,创建一个demo的文件夹,放一个pdf测试文件

启动测试

conda activate pdf-extract

python pdf_extract.py --pdf demo/page1.pdf

可以看到正常在解析了!

解析1页搞了35s

默认把json结果输出到output目录下了

这里只有版面分析的结果如果想要把PDF直接转成 md结构,或者json,看这篇文章

windows10 环境 安装超牛的PDF解析工具MinerU (CPU跑)-CSDN博客

minerU 的版面分析使用的 Extract-kit的结果。