python - 如何在保持文本结构(标题/副标题/正文)的同时为 PDF 文本提取执行 OCR

标签 python opencv pdf ocr tesseract

我一直在无休止地寻找一种可以在保持结构的同时从 PDF 中提取文本的工具。也就是说,给定这样的文本:


标题

副标题1

正文1

副标题2

正文2



标题

副标题 1。正文1

副标题2。正文2


我想要一个可以输出标题、副标题和正文列表的工具。或者,如果有人知道如何执行此操作,那也会很有用:)

如果这 3 个类别采用相同的格式,这会更容易,但有时字幕可以是粗体、斜体、下划线或 3 种的随机组合。标题也是如此。从 HTML/PDF/Docx 简单解析的问题是这些文本没有标准,所以我们经常会遇到分成几个标签的句子(在 HTML 的情况下)并且真的很难解析。如您所见,字幕并不总是位于给定段落上方,有时也位于项目符号中。这么多可能的格式组合...

到目前为止,我在使用 Tesseract 的 here 和使用 OpenCV 的 here 中遇到过类似的查询,但没有一个能完全回答我的问题。

我知道有一些机器学习工具可以从科学论文中提取“目录”部分,但这并不能解决问题。 有谁知道包/库,或者是否已经实现了这样的东西?或者有人知道解决这个问题的方法,最好是用 Python 吗?

谢谢!

编辑:

我指的是来自公司的 10-Ks 文档,比如这个 https://www.sec.gov/Archives/edgar/data/789019/000119312516662209/d187868d10k.htm#tx187868_10 并且说,我想以我上面提到的程序化和结构化的方式提取项目 7。但并非所有这些都经过标准化来进行 HTML 解析。 (PDF文档就是将这个HTML保存为PDF)

最佳答案

有些工具可以在一定程度上完成您要求的功能。所谓“一定程度”,是指标题和标题字体属性将在 OCR 转换后保留。

看看 Adob​​e 的 Document Cloud 平台。它仍处于启动阶段,将于 2020 年初启动。但是,开发人员可以通过注册抢先体验计划来抢先体验。所有信息都可以在以下链接中找到:

https://www.adobe.com/devnet-docs/dcsdk/servicessdk/index.html

我亲自试用了该服务,结果看起来很有希望。所有标题和标题案例都会像在输入文档中一样得到识别。提供此确切功能的微服务是“ExportPDF”服务,可将扫描的 PDF 文档转换为 Microsoft Word 文档。

示例代码位于:https://www.adobe.com/devnet-docs/dcsdk/servicessdk/howtos.html#export-a-pdf

关于python - 如何在保持文本结构(标题/副标题/正文)的同时为 PDF 文本提取执行 OCR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51252872/

相关文章:

python - 标准化频率并将数据帧中的多个时间序列扩展到给定日期

python - 如何使用 OpenCV 捕获多个摄像头流?

python - 水印两个 pdf - 第一个的每一页和第二个的每一页

javascript - 禁用右键单击嵌入元素内的 pdf

python - 如何从Python打印A5尺寸的word文档?

python - 使用 zipfile 从一组文件中压缩文件

python - 如何用pyscard写智能卡

c++ - 使用 OpenCV 将视频写入文件

opencv - 如何在没有 root 权限的情况下安装 OpenCv 3.1.0?

python - 如何使用 PyPdf 将 Pdf 转换为 Unicode (utf-8) 格式的文本