如何将图像中的标题和标题与正文文本分开
Posted
技术标签:
【中文标题】如何将图像中的标题和标题与正文文本分开【英文标题】:How to separate title and headers from body text in image 【发布时间】:2018-12-21 12:57:05 【问题描述】:我正在使用 tesseract(通过 python 包装器)从文档中提取文本。这些文档不包含任何图像或表格,仅包含文本。
是否有任何选项可以将标题/标题与文本区分开来?理想情况下,我希望能够拥有类似 xml 树而不是完整的字符串链(我不需要查看文档布局)。
我发现了一些 third party tools 似乎可以提供帮助,但我想知道我是否可以直接从 tesseract 中做到这一点。
【问题讨论】:
您的问题解决了吗? 不,抱歉。我必须找到一个替代解决方案。但我很想找到这个特定问题的解决方案。 我也有同样的情况。您能否说明一下您的替代解决方案。谢谢。 如果文档遵循语法信息,为什么不使用正则表达式解析文本以查找标题。例如:罗蒙字母后跟句子是标题。一种基于规则的提取。 【参考方案1】:您可以使用Nanonets OCR api 创建您自己的模型,将标题和文本分开,也可以添加不同的标签。
【讨论】:
【参考方案2】:我很晚才回答,但这个答案可能会帮助其他正在寻找解决方案的人。
首先,tesseract 无法从文档中提取此类“特征”。但是你只需要对 ML 和视觉库有一点了解(比如 luminoth 或 detectronV2)
基本上,您必须提供一些带有标记的示例文档(如标题、标题 1、标题 2 等)并训练模型。训练后,您可以在不同的看不见的图像上使用该模型来获取此类详细信息。
【讨论】:
【参考方案3】:您可以使用基于 ml 的解决方案,但在这种用例中,我更喜欢使用基于 opencv 功能的轻量级解决方案。您可以使用常规文本检测并将其与形态转换配对以检测标题文本。
【讨论】:
以上是关于如何将图像中的标题和标题与正文文本分开的主要内容,如果未能解决你的问题,请参考以下文章
如何将图像文件传递到 Flutter 中的 Http 请求(POST)正文?