【问题标题】:Text Extraction from pdf image file从pdf图像文件中提取文本
【发布时间】:2019-08-27 14:05:03
【问题描述】:

我有一个图像文件,我想从给定图像中提取文本,我尝试了各种 OCR 引擎,但我无法找到左侧实体和右侧实体之间的关系,因为 OCR 引擎只是提取没有关系的文本实体之间。 例如交易(公司借钱),账户#1:现金账户#2:应付贷款

我尝试过使用各种 OCR 引擎和 PyPDF2 和 pdftotextI have attached an image file for which I am trying extract text and trying to find the relationship between the left entity and right side entity 进行文本提取

【问题讨论】:

    标签: python image ocr text-extraction


    【解决方案1】:
    • 所有的图像都要这样分析吗?
    • 该示例是否反映了您将要分析的图像的真实情况?
    • 每列的界限是否总是在同一位置?

    由于您没有指定这一点,我将假设所有人都同意。

    主要的问题是得到OCR字符串后,你将无法判断空格是单词之间的空格,还是列之间的空格。

    要解决此问题,请裁剪每一列的图像并分别对每一列进行 OCR,因此您最终应该得到 3 个字符串,每列一个。

    用'\n'分割每个字符串,你应该有3个数组,每列包含行

    比较数组的大小,如果 3 个数组中的任何一个大小不同,则说明提取失败,您应该重试/清理图像。

    迭代第二个和/或第三个数组上的元素,寻找只是“\n”的元素,假设你不能在这里有空字段,如果一行只是一个“\n”,那一定意味着第一列的字段使用了 2 行或更多行,因此请删除第一个和第二个数组上的这个元素,并将这个元素和第一个数组上的下一个元素连接起来。

    如果所有三个数组的元素数量相同,并且您加入了使用多于一行的条目,那么您就可以知道关系是由数组的位置设置的。

    【讨论】: