PDF-Extract-Kit提取PDF数据

链接:
https://github.com/opendatalab/PDF-Extract-Kit

记录一下

首先是clone该项目,
然后新建一个虚拟环境
进入环境,进入项目
https://github.com/opendatalab/PDF-Extract-Kit?tab=readme-ov-file#installation-guide

如果报错没有PIL.Image.LINEAR,就

pip uninstall detectron2
git clone https://github.com/facebookresearch/detectron2.git
python -m pip install -e detectron2

然后下载模型:

git lfs clone https://huggingface.co/wanderkid/PDF-Extract-Kit

这一步是得到一个文件夹,里面有models文件夹,把models替换到上面clone的项目的models,这样才能有权重。

最后放入pdf文件,run

nohup python pdf_extract.py --pdf ../data/mrag.pdf --output ../output --vis > log.log 2>&1 &

最后提取为json保存

PDF-Extract-Kit输出格式
{
    "layout_dets": [    # 页中的元素
        {
            "category_id": 0, # 类别编号, 0~9,13~15
            "poly": [
                136.0, # 坐标为图片坐标,需要转换回pdf坐标, 顺序是 左上-右上-右下-左下的x,y坐标
                781.0,
                340.0,
                781.0,
                340.0,
                806.0,
                136.0,
                806.0
            ],
            "score": 0.69,   # 置信度
            "latex": ''      # 公式识别的结果,只有13,14有内容,其他为空,另外15是ocr的结果,这个key会换成text
        },
        ...
    ],
    "page_info": {         # 页信息:提取bbox时的分辨率大小,如果有缩放可以基于该信息进行对齐
        "page_no": 0,      # 页数
        "height": 1684,    # 页高
        "width": 1200      # 页宽
    }
}


{0: 'title',              # 标题
 1: 'plain text',         # 文本
 2: 'abandon',            # 包括页眉页脚页码和页面注释
 3: 'figure',             # 图片
 4: 'figure_caption',     # 图片描述
 5: 'table',              # 表格
 6: 'table_caption',      # 表格描述
 7: 'table_footnote',     # 表格注释
 8: 'isolate_formula',    # 行间公式(这个是layout的行间公式,优先级低于14)
 9: 'formula_caption',    # 行间公式的标号

 13: 'inline_formula',    # 行内公式
 14: 'isolated_formula',  # 行间公式
 15: 'ocr_text'}              # ocr识别结果
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
`mini-css-extract-plugin` 是一个 Webpack 插件,用于从 JavaScript bundle 中提取 CSS 到单独的文件中。与使用 `style-loader` 将 CSS 插入 `<style>` 标签不同,`mini-css-extract-plugin` 可以帮助您创建一个单独的 CSS 文件,该文件可以在浏览器中缓存,从而提高网站的性能和加载速度。 使用 `mini-css-extract-plugin` 非常简单。首先,您需要在 Webpack 配置文件中安装和导入插件: ```javascript const MiniCssExtractPlugin = require('mini-css-extract-plugin'); ``` 然后,您需要在插件配置中指定输出文件的名称和路径: ```javascript plugins: [ new MiniCssExtractPlugin({ filename: 'css/[name].[contenthash].css', }), ], ``` 在上面的代码中,`filename` 选项指定输出文件的名称和路径。`[name]` 会被替换为入口名称,`[contenthash]` 会被替换为根据文件内容生成的哈希值,这样可以确保每次构建生成的文件都有一个唯一的文件名。 最后,您需要在 Webpack 配置文件的加载器中使用 `mini-css-extract-plugin`,以便在构建期间从 JavaScript bundle 中提取 CSS: ```javascript module: { rules: [ { test: /\.css$/, use: [MiniCssExtractPlugin.loader, 'css-loader'], }, ], }, ``` 在上面的代码中,`MiniCssExtractPlugin.loader` 用于从 JavaScript bundle 中提取 CSS,`css-loader` 用于将 CSS 转换为 JavaScript 可以理解的模块格式。这些加载器可以根据您的需要进行修改,以便处理不同类型的 CSS。 以上是使用 `mini-css-extract-plugin` 的基本步骤。使用此插件可以帮助您提高网站的性能和加载速度,特别是对于大型网站和长时间运行的应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灵海之森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值