paddle的版面分析的环境搭建及使用

一、什么是版面分析

版面分析技术,主要是对图片形式的文档进行版面分析,将文档划分为文字、标题、表格、图片以及列表5类区域,如下图所示:

二、应用场景

2.1 合同比对

2.2 文本类型划分

2.3 通用文档的还原

版面分析技术可将以word、pdf、图片等非结构化文档存储的信息还原为半结构化的电子数据,是非结构化文档信息利用首要任务。

三、paddle的版面分析

3.1 快速体验

参考网址链接

https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.7/ppstructure/docs/quickstart.md

环境搭建:

1)安装paddlepaddle

python3 -m pip install paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simple【GPU版本】

python3 -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple【CPU版本】

2) 安装 paddleocr,推荐使用2.6版本

pip3 install "paddleocr>=2.6.0.3"

安装 图像方向分类依赖包paddleclas(如不需要图像方向分类功能,可跳过)

pip3 install paddleclas>=2.4.3

运行命令:

1)图像方向分类+版面分析+表格识别

paddleocr --image_dir=ppstructure/docs/table/1.png --type=structure --image_orientation=true

2) 版面分析+表格识别

paddleocr --image_dir=ppstructure/docs/table/1.png --type=structure

3)版面分析

paddleocr --image_dir=ppstructure/docs/table/1.png --type=structure --table=false --ocr=false

4)表格识别

复制代码
paddleocr --image_dir=ppstructure/docs/table/table.jpg --type=structure --layout=false

5)版面恢复(作用将PDF的文档转换成通用(word)文档)

仅仅处理pdf文档

paddleocr --image_dir=ppstructure/recovery/UnrealText.pdf --type=structure --recovery=true --use_pdf2docx_api=true

3.2 源码程序实现

  1. 安装PaddlePaddle

环境搭建

python3 -m pip install --upgrade pip

GPU安装

python3 -m pip install "paddlepaddle-gpu>=2.3" -i https://mirror.baidu.com/pypi/simple

CPU安装

python3 -m pip install "paddlepaddle>=2.3" -i https://mirror.baidu.com/pypi/simple

2)安装PaddleDetection

git clone https://github.com/PaddlePaddle/PaddleDetection.git

cd PaddleDetection

python3 -m pip install -r requirements.txt

需要自己训练数据集的,可以参考链接的攻略:

PaddleOCR/ppstructure/layout/README_ch.md at release/2.7 · PaddlePaddle/PaddleOCR · GitHub

预训练模型或者预测模型下载的官方网址为:

PaddleOCR/ppstructure/docs/models_list.md at release/2.7 · PaddlePaddle/PaddleOCR · GitHub

使用源码测试的命令,更换weights模型路径:

python 复制代码
python3 tools/infer.py \
    -c configs/picodet/legacy_model/application/layout_analysis/picodet_lcnet_x1_0_layout.yml \
    --slim_config configs/picodet/legacy_model/application/layout_analysis/picodet_lcnet_x2_5_layout.yml \
    -o weights='output/picodet_lcnet_x2_5_layout/best_model.pdparams' \
    --infer_img='docs/images/layout.jpg' \
    --output_dir=output_dir/ \
    --draw_threshold=0.5

直接使用推理模型进行预测:

python 复制代码
python3 deploy/python/infer.py \
    --model_dir=output_inference/picodet_lcnet_x1_0_layout/ \
    --image_file=docs/images/layout.jpg \
    --device=GPU

备注:一些推理模型下载后,没有对应的yaml文件,会导致执行上面的指令出错,所以在运行上面的命令的时候,将下载的模型看看是否有对应的yaml文件。

相关推荐
喵~来学编程啦1 小时前
【论文精读】LPT: Long-tailed prompt tuning for image classification
人工智能·深度学习·机器学习·计算机视觉·论文笔记
蒙娜丽宁6 小时前
《Python OpenCV从菜鸟到高手》——零基础进阶,开启图像处理与计算机视觉的大门!
python·opencv·计算机视觉
好喜欢吃红柚子6 小时前
万字长文解读空间、通道注意力机制机制和超详细代码逐行分析(SE,CBAM,SGE,CA,ECA,TA)
人工智能·pytorch·python·计算机视觉·cnn
AI小杨7 小时前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程
人工智能·opencv·计算机视觉·霍夫变换·车道线检测
撞南墙者9 小时前
OpenCV自学系列(1)——简介和GUI特征操作
人工智能·opencv·计算机视觉
王哈哈^_^10 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!
人工智能·深度学习·算法·yolo·目标检测·计算机视觉·pyqt
柳鲲鹏10 小时前
OpenCV视频防抖源码及编译脚本
人工智能·opencv·计算机视觉
浮生如梦_15 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover15 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
Eric.Lee202120 小时前
yolo v5 开源项目
人工智能·yolo·目标检测·计算机视觉