PDF 解析问题调研

  说点真实的感受 :网上看啥组件都好,实际测,啥组件都不行。效果好的不开源收费,开源的效果不好。测试下来,发现把组件融合起来,还是能不花钱解决问题的,都是麻烦折腾一些。
  这里分享了目前网上能够看到的资料。很多资料都是反复重复的,且效果不好的。目前网上基本没有太好用的工具,也没有太好的方案资料。剩下的就是收费效果好的。

PDF解析中的诸多挑战

版面分析:如何得到标题、如何的得到段落(正确的段落)、如何得到表格、如何得到图片,图和得到图片上的文字?

还有细节问题:双栏和多栏的问题、公式问题

扫描件:扫描件本质上是图片,如何从图片中解析得到文件。

PDF解析的主要思路

针对上述的挑战,PDF解析主要分为两个方向。一是标准PDF文件,程序可读。二是扫描文件,实际上就是图片,程序不可直接读。

  1. 解析和结构分析: PDF 抓取工具首先解析 PDF 文件并分析其结构以识别文档中的各种元素。 解析涉及检查布局、字体样式、表格、标题和其他结构组件,以了解内容的组织和安排。
  2. 文本提取: 然后,该工具采用 OCR 技术将扫描或基于图像的 PDF 转换为机器可读的文本。 OCR 算法通过分析 PDF 中的视觉数据并识别字符,将其转换为可编辑和可搜索的文本来实现此目的。
  3. 数据提取和模式识别: 一旦数据转换为机器可读格式,PDF 抓取工具就会应用模式识别算法来识别文本中的特定数据点,例如文档中的关键字、模式或预定义结构。 例如,抓取工具可以根据预定规则或正则表达式查找发票号码、日期、客户姓名或产品详细信息。
  4. 输出和格式: 然后,PDF 抓取工具将提取的数据组织成相关字段和结构化格式,例如电子表格、数据库或 JSON/XML,以供进一步分析。

OCR解析的路线

OCR是唯一的解决扫描版文件的方案,包括获取图片上的内容。

unstructured

GitHub - Unstructured-IO/unstructured: Open source libraries and APIs to build custom preprocessing pipelines for labeling, training, or production machine learning pipelines.

Paddle-structure

https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.7/ppstructure/table/README_ch.md#41-%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B

Meta的版面恢复大模型:Nougat

Meta的版面恢复大模型:Nougat  | Breezedeus.com

Nougat被戏称为富人的玩具。有一段这样的描述,就知道它有多慢了!“在一台配备有24GB VRAM的NVIDIA A10G显卡的机器上,可以并行处理6页内容。生成速度在很大程度上取决于给定页面上的文本量。在没做任何推理优化时,按平均每页有 ~1400 个 tokens算,Nougat base模型处理一个batch图片的平均时间为19.5秒。”

Nougat:结合光学神经网络,引领学术PDF文档的智能解析、挖掘学术论文PDF的价值 - 汀、人工智能 - 博客园

P2T检查走小模型的路线,目前拿来做内容识别还是OK的,特别是在公式方面。

GitHub - breezedeus/Pix2Text: Pix In, Latex & Text Out. Recognize Chinese, English Texts, and Math Formulas from Images. 80+ languages are supported.

PDF 解析工具对比

使用Python操作PDF:常用PDF库总结 - 知乎

大模型RAG问答下的实用开源文档解析工具总结及技术思考:从文档版本分析到单双栏处理

PDF信息提取技术的汇总(干货满满!) - 知乎

可以拿到bbox的组件

pdfplunber  pdfminer  pymupdf  papermage  这些组件是不是都可以拿到bbox?

  1. pdfplumber:pdfplumber 是一个基于 PDFMiner 的 Python 库,专门用于提取 PDF 文件中的文本和表格数据。它提供了一些方法来获取文本、表格和页面的 bounding box 信息。
  2. pdfminer:PDFMiner 是一个功能强大的 PDF 处理工具,可以用于提取 PDF 文件中的文本和布局信息。通过 PDFMiner,你可以获取文本、图片、表格等元素的位置信息,从而获得它们的 bounding box。
  3. pymupdf:PyMuPDF(也称为MuPDF)是一个用于处理 PDF 文件的 Python 库,提供了丰富的功能,包括提取文本、图像和其他元素的信息,以及获取它们的 bounding box。
  4. papermage:Papermage 是一个用于处理 PDF 文件的 Python 库,它使用了 PDFMiner 和其他一些工具,可以用于提取 PDF 文件中的文本、图像和布局信息,包括 bounding box。

可以拿到bbox的组件组件对比

  1. pdfplumber
    1. 优点:pdfplumber 提供了简单易用的接口,使得提取文本和表格数据以及获取 bbox 变得非常方便。
      1. 它能够准确地提取文本的 bbox,并且支持表格的识别和提取。
      2. 在处理包含复杂布局的 PDF 文件时表现较好。
    2. 缺点:对于处理包含大量图像的 PDF 文件时,性能可能不如其他库。
      1. 对于一些特殊格式的 PDF 文件,可能会出现解析错误。
  2. pdfminer
    1. 优点:PDFMiner 是一个功能强大且灵活的库,可以用于处理各种类型的 PDF 文件。
      1. 它提供了丰富的功能和选项,使得用户可以对文本和布局信息进行更深入的处理和分析。
    2. 缺点:相比于其他库,PDFMiner 的接口相对较复杂,需要更多的代码来实现相同的功能。
      1. 在处理复杂布局的 PDF 文件时,可能需要额外的调整和处理,以获得准确的 bbox 信息。
  3. pymupdf
    1. 优点:PyMuPDF(MuPDF)是一个快速和高效的 PDF 处理库,对于大型 PDF 文件的处理效率较高。
      1. 它提供了一些简单的方法来获取文本、图像和布局信息,并且可以准确地提取 bbox。
    2. 缺点:PyMuPDF 的文档和社区支持相对较少,有时可能需要进行一些自行探索和调试。
  4. papermage
    1. 优点:Papermage 是一个基于 PDFMiner 和其他一些工具构建的库,它提供了一些简单的接口来处理 PDF 文件。
      1. 它支持获取文本、图像和布局信息,并且能够准确地提取 bbox。
    2. 缺点:Papermage 相对较新,可能还不够成熟,可能存在一些功能上的限制和问题。
      1. 相比于其他库,Papermage 的文档和社区支持较少。

  • 25
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 图像工程问题解析 pdf,指的是对图像工程中遇到的问题进行分析和解决,并将结果以 pdf 格式进行文档记录的过程。 首先,图像工程问题可能涉及到图像质量、图像处理、图像传输等方面。针对不同的问题,可以采用不同的解决方法。 对于图像质量问题,可以从图像清晰度、对比度、亮度等方面入手。通过分析图像本身的特征,可以确定问题所在,并采取相应的处理手段,如增加图像的清晰度、调整图像的对比度与亮度等。 对于图像处理问题,可以从算法的角度进行分析。通过研究图像处理算法的原理和应用场景,可以找到算法存在的问题,并提出改进方案,优化算法的效率和准确性。 对于图像传输问题,可以从网络传输和数据压缩两个方面入手。在网络传输方面,可以分析网络拥塞、延迟等问题,并提出优化网络传输的方法,如使用传输协议、增加传输带宽等。在数据压缩方面,可以分析图像压缩算法的性能,并提出改进方案,减少数据传输的带宽和存储空间。 解决了图像工程问题后,将结果以 pdf 格式进行文档记录,可以方便进行交流与分享。通过记录问题的解决过程和结果,可以使其他人了解如何解决类似问题,也方便后续复查和研究。同时,pdf 格式的文档可以保留图像的清晰度和格式,不会出现数据丢失或失真的情况。 总而言之,图像工程问题解析 pdf 是对图像工程问题进行分析和解决,并将结果以 pdf 格式进行文档记录的过程,旨在提高图像工程的质量和效率。 ### 回答2: 图像工程问题解析pdf是指对于图像工程中遇到的问题进行解析,并将解析结果整理成pdf文档的过程。 首先,图像工程问题解析需要经过以下步骤:问题定义、数据收集、问题分析、解决方案提出和结果验证。在问题定义阶段,我们需要明确问题的具体内容和要求,比如图像质量问题、图像处理算法问题等。然后,通过数据收集,我们可以收集到与问题相关的图像数据、图像处理算法、相关论文和文献等信息。接下来,在问题分析阶段,我们对问题进行分析,找出问题产生的原因和可能的解决办法。在提出解决方案时,我们可以根据问题的具体情况,选择适当的图像处理算法或者优化策略。最后,在结果验证阶段,我们需要对解决方案进行验证,通过实验或者对比等方式来评估解决方案的有效性和可行性。 在对图像工程问题解析的过程中,我们可以使用各种图像处理工具和算法,比如OpenCV、Matlab等。同时,需要一定的图像处理和计算机视觉的基础知识,以及对各种图像处理算法的了解和运用能力。 最后,将图像工程问题解析结果整理成pdf文档,可以使得解决方案更具可读性和可分享性。通过pdf文档的形式,我们可以清晰地展示问题的定义、解析过程、解决方案和验证结果等内容,方便其他人更好地理解和应用。此外,pdf格式的文档也便于保存和传播,方便后续的查阅和使用。 总之,图像工程问题解析pdf是一个系统性的解决图像工程问题的过程,需要经过多个步骤和使用各种工具和算法,最终整理成pdf文档形式,方便分享和应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值