也看文档处理分而治之策略:PDF文档的Pipeline式处理逻辑

今天是2024年4月17日,周三,北京,天气晴。

最近文档处理这块受到的关注比较多。

我们今天来看看PDF文档的处理逻辑,以及PPstructure开源工具,供大家一起参考。

一、先看PDF文档的处理逻辑

针对给定的文档,可以根据是否可以直接提取内容来选择是走通用解析,还是走OCR方案,如下,图来自于参考文献1。

而进一步处理细节上,其具体执行逻辑,按照pipeline,可以分成文档方向分类,版面分析,而在版式分析之后,分别对不同的区域进行处理,例如表格识别、公式识别、文字识别,之后对工作进行聚合,包括阅读顺序等。

二、比较流行的PPStructure系列文档开源模型

版面分析指的是对图片形式的文档进行区域划分,定位其中的关键区域,如文字、标题、表格、图片等,PPStrucure提供了版面分析、表格识别、关键信息抽取以及版面恢复等多个功能:

使用的手册如下:https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.7/ppstructure/docs/quickstart.md,https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.7/ppstructure/docs/PP-StructureV2_introduction.md

代码比较简单,例如图像方向分类+版面分析+表格识别实现如下:

import os
import cv2
from paddleocr import PPStructure,draw_structure_result,save_structure_res

table_engine = PPStructure(show_log=True, image_orientation=True)

save_folder = './output'
img_path = 'ppstructure/docs/table/1.png'
img = cv2.imread(img_path)
result = table_engine(img)
save_structure_res(result, save_folder,os.path.basename(img_path).split('.')[0])

for line in result:
    line.pop('img')
    print(line)

from PIL import Image

font_path = 'doc/fonts/simfang.ttf' # PaddleOCR下提供字体包
image = Image.open(img_path).convert('RGB')
im_show = draw_structure_result(image, result,font_path=font_path)
im_show = Image.fromarray(im_show)
im_show.save('result.jpg')

地址:https://github.com/PaddlePaddle/PaddleOCR/blob/133d67f27dc8a241d6b2e30a9f047a0fb75bebbe/ppstructure/layout/README_ch.md

总结

本文主要介绍了两个工作,一个是PDF的处理逻辑,另一块儿是PPstructure的开源工具,虽然使用过程中有很多bad case,但可以针对其中的模块进行魔改。

参考文献

1、https://github.com/RapidAI

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

关于我们

老刘,刘焕勇,NLP开源爱好者与践行者,主页:https://liuhuanyong.github.io。

老刘说NLP,将定期发布语言资源、工程实践、技术总结等内容,欢迎关注。

对于想加入更优质的知识图谱、事件图谱、大模型AIGC实践、相关分享的,可关注公众号,在后台菜单栏中点击会员社区->会员入群加入。


相关推荐

  • 阻止无谓消耗、提升学习效率的CHROME小插件
  • 注意,把Python库都安装在一个环境里,可能会“非常危险”!
  • 每日prompt:安静的猫
  • 2024 年人工智能指数报告值得看一下
  • 从失业低谷到月收入10w+,这一年我做对了什么
  • 参战万亿MoE模型!上海大模型独角兽出手,腾讯阿里米哈游参投
  • 欧洲版OpenAI又要融资!估值50亿美元,Llama 2“套壳”也能半年估值翻番?
  • 天工3.0正式开放!4000亿参数MoE开源,开启音乐生成ChatGPT时刻
  • 今日代码大赏 | 懒汉式单例模式
  • 用 OJ 项目拿下鹅厂,真爽!
  • 跟自己之前的领导聊合作。。
  • 为什么现在的LLM都是Decoder only的架构?
  • 突破数据存储瓶颈!转转业财系统亿级数据存储优化实践
  • QQ 9“傻快傻快”的?!带你看看背后的技术秘密
  • 【研发效能·创享大会-嗨享技术轰趴】-IDCF五周年专场
  • 我调研了一下工业大数据中心用的组件
  • 19K Star大公司都在用的开源电子表格组件
  • 图解浏览器的各种距离
  • 小学生都开始学 Python 了!
  • OpenAI CEO:AI 成本可降至“接近零”;李飞飞团队发布《2024年人工智能指数报告》 | 极客头条