发明内容
有鉴于此,本发明提出一种文档图片识别方法、装置、计算机设备及计算 机可读存储介质,能够解决上述的文档图片识别过程中识别效果不佳、识别结 果不便于阅读的问题。
首先,为实现上述目的,本发明提供一种文档图片识别方法,所述方法包 括:
对待识别文档图片进行文字检测,得到包括多个文字检测框的文字检测框 集合,其中,每一个文字检测框区域内包括至少一个文字内容;对所述文字检 测框集合中的目标文字检测框的文字内容进行识别,得到所述目标文字检测框 对应的已识别文字,并记录到预设的已识别文字集合中,其中,所述目标文字 检测框为所述文字检测框集合中的任一文字检测框;根据已识别文字在所述待 识别文档图片上的位置关系将所述已识别文字集合中的已识别文字划分为文本 区块,以及根据预设段落格式对每一个文本区块中的已识别文字进行段落划分, 得到已处理文本区块;按照预设的排版顺序将所述已处理文本区块输出。
优选地,所述对待识别文档图片进行文字检测,得到包括多个文字检测框 的文字检测框集合包括:通过预设的文字区域检测模型对所述待识别文档图片 进行检测,检测出所述待识别文档图片上的每一个文字检测框,记录为文字检 测框集合,其中,所述文字区域检测模型是基于深度学习方式从采样的图片文 字数据中训练得到的。
优选地,所述对所述文字检测框集合中的目标文字检测框的文字内容进行 识别包括:通过预设的文字识别模型对所述文字检测框集合中的目标文字检测 框的文字内容进行识别,其中,所述文字识别模型是基于深度学习方式从采样 的文字数据中训练得到的。
优选地,所述根据已识别文字在所述待识别文档图片上的位置关系将所述 已识别文字集合中的已识别文字划分为文本区块包括:描绘出每一个已识别文 字的文字轮廓,并分别获取每一个已识别文字的文字轮廓的坐标;根据每一个 已识别文字的文字轮廓的坐标生成对应的最小外接矩形;计算相邻的已识别文 字对应的两个最小外接矩形之间的距离,并记录为最小外接矩形距离;分别判 断每一组相邻的已识别文字的所述最小外接矩形距离是否小于预设阈值;以及, 将所述最小外接矩形距离小于预设阈值的相邻的已识别文字划分为同一个文本 区块。
优选地,所述描绘出每一个已识别文字的文字轮廓包括:依次对所述待识 别文档图片执行灰度化、二值化、去除噪声以及形态学变化以描绘出所述待识 别文档图片中的已识别文字的轮廓。
优选地,所述根据预设段落格式对每一个文本区块中的已识别文字进行段 落划分包括:
获取每一个已识别文字对应的文字检测框的坐标;判断相邻的两个文字检 测框是否为同一行且横向间距是否小于第一阈值;若相邻两个文字检测框为同 一行且横向间距小于第一阈值,则合并所述两个文字检测框对应的已识别文字 成一个段落;和/或,若相邻两个文字检测框不是同一行时,则判断所述两个文 字检测框的纵向间距是否小于第二阈值、两个文字检测框的左边界横坐标距离 是否小于第三阈值以及两个文字检测框的右边界横坐标距离是否小于第四阈 值,其中,左边界横向坐标距离是指排序相邻的两个文字检测框中的后一个文 字检测框相对于前一个文字检测框的左边界横坐标之间的距离,右边界横坐标 距离是指排序相邻的两个文字检测框中的后一个文字检测框相对于前一个文字 检测框的右边界横坐标之间的距离;若所述纵向间距小于第二阈值、所述左边 界横坐标距离小于第三阈值且两个文字检测框的右边界横坐标距离小于第四阈 值,则合并所述两个文字检测框对应的已识别文字成一个段落;和/或,若所述 纵向间距小于第二阈值、所述左边界横坐标距离小于第三阈值且所述右边界横 坐标距离不小于第四阈值时,则判断所述两个文字检测框的所述右边界横坐标 距离是否大于第五阈值;若所述右边界横坐标距离大于第五阈值,则合并所述 两个文字检测框对应的已识别文字成一个段落;和/或,若所述纵向间距小于第 二阈值、所述左边界横坐标距离不小于第三阈值时,则判断所述两个文字检测 框的左边界横坐标距离是否大于第六阈值;若所述左边界横坐标距离大于第六阈值,则将所述两个文字检测框对应的已识别文字拆分为不同段落。
优选地,所述按照预设的排版顺序将所述已处理文本区块输出包括:根据 从上到下、从左到右的顺序将已处理文本区块进行输出。
此外,为实现上述目的,本发明还提供一种文档图片识别装置,所述装置 包括:
文字检测模块,用于对待识别文档图片进行文字检测,得到包括多个文字 检测框的文字检测框集合,其中,每一个文字检测框区域内包括至少一个文字 内容;文字识别模块,用于对所述文字检测框集合中的目标文字检测框的文字 内容进行识别,得到所述目标文字检测框对应的已识别文字,并记录到预设的 已识别文字集合中,其中,所述目标文字检测框为所述文字检测框集合中的任 一文字检测框;文字排版模块,用于根据已识别文字在所述待识别文档图片上 的位置关系将所述已识别文字集合中的已识别文字划分为文本区块,以及根据 预设段落格式对每一个文本区块中的已识别文字进行段落划分,得到已处理文 本区块;输出模块,用于按照预设的排版顺序将所述已处理文本区块输出。
进一步地,本发明还提出一种计算机设备,所述计算机设备包括存储器、 处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述计算 机程序被所述处理器执行时实现如上述的文档图片识别方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所 述计算机可读存储介质存储有计算机程序,所述计算机程序可被至少一个处理 器执行,以使所述至少一个处理器执行如上述的文档图片识别方法的步骤。
相较于现有技术,本发明所提出的文档图片识别方法、装置、计算机设备 及计算机可读存储介质,能够对待识别文档图片进行文字检测,得到包括多个 文字检测框的文字检测框集合;对所述文字检测框集合中的目标文字检测框的 文字内容进行识别,得到所述目标文字检测框对应的已识别文字,并记录到预 设的已识别文字集合中,其中,所述目标文字检测框为所述文字检测框集合中 的任一文字检测框;根据已识别文字在所述待识别文档图片上的位置关系将所 述已识别文字集合中的已识别文字划分为文本区块,以及根据预设段落格式对 每一个文本区块中的已识别文字进行段落划分,得到已处理文本区块;按照预 设的排版顺序将所述已处理文本区块输出。本发明能够将待识别文档图片进行 文字识别后根据已识别文字在所述待识别文档图片上的位置关系以及预算段落 格式对已识别文字进行排版,因此,可以有效识别出文档排版格式,提升了文 档图片识别的效果,提高了用户阅读体验。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅 用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通 技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申 请保护的范围。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的, 而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数 量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该 特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域 普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时 应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
图1是本申请一实施例的应用环境示意图。参阅图1所示,所述计算机设 备1可作为手机、平板、便携设备、PC机、服务器或者其他具有拍摄功能和显 示功能的电子设备等。所述计算机设备1能够通过拍摄的方式获取一张待识别 文档图片;然后对待识别文档图片进行文字检测,得到包括多个文字检测框的 文字检测框集合,其中,每一个文字检测框区域内包括至少一个文字内容;对 所述文字检测框集合中的目标文字检测框的文字内容进行识别,得到所述目标 文字检测框对应的已识别文字,并记录到预设的已识别文字集合中,其中,所 述目标文字检测框为所述文字检测框集合中的任一文字检测框;根据已识别文 字在所述待识别文档图片上的位置关系将所述已识别文字集合中的已识别文字 划分为文本区块,以及根据预设段落格式对每一个文本区块中的已识别文字进 行段落划分,得到已处理文本区块;按照预设的排版顺序将所述已处理文本区 块输出到显示界面的预设显示窗口。
当然,在其他实施例中,所述计算机设备1可以通过连接到其他终端设备, 从所述终端设备获取到待识别文档图片,也可以直接从所述计算机设备1自身 的存储单元获取到待识别文档图片。然后,所述计算机设备1对所述待识别文 档图片执行文字识别和排版;最后,输出排版好的可编辑文档,反馈给所述终 端设备或直接进行存储。也就是说,在该实施例中,所述计算机设备1也可以 不用具备拍摄功能和显示功能。
实施例一
图2是本申请文档图片识别方法一实施例的流程示意图。可以理解,本方法 实施例中的流程图不用于对执行步骤的顺序进行限定。下面以计算机设备1为执 行主体进行示例性描述。
如图2所示,所述文档图片识别方法可以包括步骤S200~S206。
步骤S200,对待识别文档图片进行文字检测,得到包括多个文字检测框的 文字检测框集合,其中,每一个文字检测框区域内包括至少一个文字内容。
具体的,所述计算机设备1先获取待识别文档图片,比如,通过自身摄像头 拍摄获取文档图片,或者通过与其他终端设备连接并接收其他终端设备发送的 待识别文档图片,再或者直接从自身存储单元中获取待识别文档图片。然后, 所述计算机设备1对所述待识别文档图片进行文字检测,得到包括多个文字检测 框的文字检测框集合。
在一具体实施例中,所述计算机设备1通过预设的文字区域检测模型对所述 待识别文档图片进行检测,检测出所述待识别文档图片上的每一个文字检测框, 记录为文字检测框集合,其中,所述文字区域检测模型是基于深度学习方式从 采样的图片文字数据中训练得到的。例如,所述计算机设备1利用EAST, PSENet,CTPN,DBNet等深度学习算法构建文字区域检测模型,然后直接将采 样的图片文字数据对所述文字区域检测模型进行训练,所述文字区域检测模型 能够基于采样的图片文字数据中的有效特征自我学习和完善,从而训练出精确 度较高的文字区域检测模型。最后,所述计算机设备1根据所述文字区域检测模 型对所述待识别文档图片进行文字检测,也就是定位出所述待识别文档图片上 的文字的位置并标记为文字检测框。
步骤S202,对所述文字检测框集合中的目标文字检测框的文字内容进行识 别,得到所述目标文字检测框对应的已识别文字,并记录到预设的已识别文字 集合中,其中,所述目标文字检测框为所述文字检测框集合中的任一文字检测 框。
具体的,所述计算机设备1将所述待识别文档图片上的文字进行定位并标记 为文字检测框之后,还会进一步对对所述文字检测框集合中的目标文字检测框 的文字内容进行识别。在本实施例中,所述计算机设备1通过预设的文字识别模 型对所述文字检测框集合中的目标文字检测框的文字内容进行识别,其中,所 述文字识别模型是基于深度学习方式从采样的文字数据中训练得到的。例如, 所述计算机设备1CRNN,Attention等深度学习算法构建文字识别模型,然后直 接将采样的文字数据对所述文字识别模型进行训练,所述文字识别模型能够基 于采样的文字数据中的有效特征自我学习和完善,从而训练出精确度较高的文 字识别模型。最后,所述计算机设备1根据所述文字识别模型对所述文字检测框 集合中的目标文字检测框的文字内容进行识别,得到所述目标文字检测框对应 的已识别文字,并记录到预设的已识别文字集合中。
步骤S204,根据已识别文字在所述待识别文档图片上的位置关系将所述已 识别文字集合中的已识别文字划分为文本区块,以及根据预设段落格式对每一 个文本区块中的已识别文字进行段落划分,得到已处理文本区块。
具体的,所述计算机设备1在识别出所述文字检测框集合对应的已识别文字 之后,还会根据已识别文字在所述待识别文档图片上的位置关系将所述已识别 文字集合中的已识别文字划分为文本区块,然后再根据预设的段落格式对每一 个文本块中的已识别文字进行段落划分,从而得到已处理文本块。
在本实施例中,所述计算机设备1描绘出每一个已识别文字的文字轮廓,并 分别获取每一个已识别文字的文字轮廓的坐标;根据每一个已识别文字的文字 轮廓的坐标生成对应的最小外接矩形;计算相邻的已识别文字对应的两个最小 外接矩形之间的距离,并记录为最小外接矩形距离;分别判断每一组相邻的已 识别文字的所述最小外接矩形距离是否小于预设阈值;以及,将所述最小外接 矩形距离小于预设阈值的相邻的已识别文字划分为同一个文本区块。其中,所 述计算机设备1描绘出每一个已识别文字的文字轮廓的步骤包括:依次对所述待 识别文档图片执行灰度化、二值化、去除噪声以及形态学变化以描绘出所述待 识别文档图片中的已识别文字的轮廓。例如,所述计算机设备1首先对文档图片 进行图像处理,包括灰度化,二值化,中值或高斯滤波去除噪声,以及形态学 变化;经由以上处理之后的文档图片中的相邻的文字则会变为白色连续区域, 然后将白色文字块从黑色背景中分割出来,得到文字块轮廓;接着,所述计算 机设备1计算每一个文字块轮廓在所述文档图片中的坐标;最后,根据文字块轮 廓的坐标点描绘出每个文字块轮廓最小外接矩形,从而实现文本块区域的划分。 其中,对于两个文字块轮廓的最小外接矩形有重叠部分的,则将两个文字块轮 廓对应的两个已识别文字合并到一个文本区块。
接着,所述计算机设备1根据预设段落格式对每一个文本区块中的已识别文 字进行段落划分,具体包括:获取每一个已识别文字对应的文字检测框的坐标; 判断相邻的两个文字检测框是否为同一行且横向间距是否小于第一阈值;若相 邻两个文字检测框为同一行且横向间距小于第一阈值,则合并所述两个文字检 测框对应的已识别文字成一个段落;和/或,若相邻两个文字检测框不是同一行 时,则判断所述两个文字检测框的纵向间距是否小于第二阈值、两个文字检测 框的左边界横坐标距离是否小于第三阈值以及两个文字检测框的右边界横坐标 距离是否小于第四阈值,其中,左边界横向坐标距离是指排序相邻的两个文字 检测框中的后一个文字检测框相对于前一个文字检测框的左边界横坐标之间的 距离,右边界横坐标距离是指排序相邻的两个文字检测框中的后一个文字检测 框相对于前一个文字检测框的右边界横坐标之间的距离;若所述纵向间距小于 第二阈值、所述左边界横坐标距离小于第三阈值且两个文字检测框的右边界横 坐标距离小于第四阈值,则合并所述两个文字检测框对应的已识别文字成一个 段落;和/或,若所述纵向间距小于第二阈值、所述左边界横坐标距离小于第三 阈值且所述右边界横坐标距离不小于第四阈值时,则判断所述两个文字检测框 的所述右边界横坐标距离是否大于第五阈值;若所述右边界横坐标距离大于第 五阈值,则合并所述两个文字检测框对应的已识别文字成一个段落;和/或,若 所述纵向间距小于第二阈值、所述左边界横坐标距离不小于第三阈值时,则判 断所述两个文字检测框的左边界横坐标距离是否大于第六阈值;若所述左边界 横坐标距离大于第六阈值,则将所述两个文字检测框对应的已识别文字拆分为 不同段落。
在一具体实施例中,例如,所述计算机设备1将每一个已识别文字对应的文 字检测框按照从上到下,从左到右的顺序进行排序;接着,所述计算机设备1 根据上述顺序获取每个文字检测框坐标,判断相邻的两个文字检测框是否为同 一行(即坐标中Y轴对应的值相等或近似相等时)且横向间距是否小于预设的 第一阈值,若相邻两个文字检测框为同一行且横向间距小于第一阈值,则合并 两个文字检测框对应的两个已识别文字成一个段落;若相邻两个文字检测框不 是同一行时,那么,所述计算机设备1则判断两个文字检测框的纵向间距是否小 于预设的第二阈值,并判断左边界横坐标距离或右边界横坐标距离是否分别小 于预设第三阈值和第四阈值,其中,左边界横向坐标距离和右边界横向左边距 离是指排序相邻的两个文字检测框中的后一个文字检测框相对于前一个文字检 测框的左边界横坐标距离或右边界横坐标距离,若纵向间距小于第二阈值且左 边界横坐标距离小于第三阈值或右边界横坐标距离小于第四阈值,则判断两个 文字检测框对应的两个已识别文字属于同一段落,并合并两个文字检测框对应 的两个已识别文字成一个段落;当若纵向间距小于第二阈值的情况下,而左边 界横坐标距离不小于第三阈值或右边界横坐标距离不小于第四阈值时,那么所 述计算机设备1继续判断两个相邻的文字检测框的右边界横坐标距离大于预设 的第五阈值或者两个相邻的文字检测框的左边界横坐标距离大于预设的第六阈 值,若两个相邻的文字检测框的右边界横坐标距离大于第五阈值,则认为两个 文字检测框属于同一个段落,且该两个文字检测框为一个段落的结束点;若两 个相邻的文字检测框的左边界横坐标距离大于第六阈值,则认为两个文字检测 框不属于同一个段落,且该两个文字检测框为两个段落的分界点。
参阅图3所示,是本发明一示例性例子中对文本区块中的已识别文字进行段 落划分的效果图。其中,所述计算机设备1对待识别文档图片进行识别并划分为 文本区块后,得到一个文本区块,该文本区块包括6个文字检测框对应的已识别 文字:1“那时候不知道谈些什么”,2“只记得”,3“闰土很高兴”,4“说是上 城之后,见了许”,6“第二日,我便要他捕鸟”。接着,所述计算机设备1根据 每一对相邻两个文字检测框的横向间距x_gap,纵向间距y_gap,左边界横坐标 距离left_gap,右边界横坐标距离right_gap,判断该两个相邻的文字检测框对应 的已识别文字是否属于同一段落。其中,编号1的已识别文字与编号2的已识别 文字横向间距小于第一阈值,属于同一段落;编号3的已识别文字与编号4的已 识别文字横向间距小于第一阈值,属于同一段落;编号4的已识别文字与编号2 的已识别文字纵向间距小于第二阈值且右边界横坐标距离小于第四阈值,属于 同一段落;编号5的已识别文字与编号3的已识别文字纵向间距小于第二阈值且 左边界横坐标距离小于第三阈值,属于同一段落;而编号6的已识别文字与编号 5的已识别文字纵向间距小于第二阈值且左边界横坐标距离大于第五阈值,不属 于同一段落,且编号6的已识别文字与编号5的已识别文字为两个段落的分界点。
参阅图4所示,是本发明一示例性例子中所述计算机设备1实现文档图片的 文字识别和排版的功能效果图。所述计算机设备1通过检测模块检测检测文档图 片中的文字区域;通过识别模块对检测出来的文字区域进行内容识别;通过版 面分析模块找到图片中的文字区域块。例如:双栏论文会切分为左右两块,多 区域文本会将各个区域分开;最后通过排版模块对各个区域块内的文字识别结 果进行排版,并将最终结果展示给用户。
参阅图5所示,是本发明一示例性例子中检测出待识别文档图片的文字检测 框的效果图。其中,所述计算机设备1的检测模块通过文字区域检测模型对待识 别文档图片中的文字区域进行检测,从而检测出其中包括的文字检测框,包括: “板块对PC门户的需求”,“PC门户栏目设置,包括匿名页和工作台,目前匿名 页包含了要闻、企业文化、工会园地、XX等,工作台主要是公告、人事任免、 全民营销,除此之外板块有没有其他需求和建议。”,“01”,“02”,“自定义板块 页面。板块设置个性化的页面,放置板块的通知公告、人事、制度、模板等。”, “03”和“对PC门户设计的建议”共7个文字检测框。
参阅图6所示,是基于图5的一示例性例子中将文字检测框进行文本区块划 分的效果图。其中,所述计算机设备1根据已识别文字在所述待识别文档图片上 的位置关系将所述已识别文字集合中的已识别文字划分为文本区块,以及根据 预设段落格式对每一个文本区块中的已识别文字进行段落划分,得到已处理文 本区块,从而得到文本区块包括:“板块对PC门户的需求”,“PC门户栏目设置, 包括匿名页和工作台,目前匿名页包含了要闻、企业文化、工会园地、XX等, 工作台主要是公告、人事任免、全民营销,除此之外板块有没有其他需求和建 议。”,“01”,“02”,“自定义板块页面。板块设置个性化的页面,放置板块的通 知公告、人事、制度、模板等。”和“对PC门户设计的建议03”共6个文本区块。
步骤S206,按照预设的排版顺序将所述已处理文本区块输出。
具体的,所述计算机设备1在划分出文本区块以及对文本区块中的已识别文 字进行段落划分之后,则会进一步按照预设的排版顺序将所有的所述已处理文 本区块输出,具体包括:根据从上到下、从左到右的顺序将已处理文本区块进 行输出。
例如,所述计算机设备1对于待识别文档图片通过步骤S200-S204的执行, 得到已处理文本区块为:
′那时候不知道谈些什么,′,′只记得′,′闰土很高兴,′,′说是上城之后,见了许′,′多没有见过的东西。′′第二日,我便要他捕鸟。′
最后,所述计算机设备1根据从上到下、从左到右的顺序将上述已处理文本 区块进行输出,得到:
′那时候不知道谈些什么,只记得闰土很高兴,说是上城之后,见了 许多没有见过的东西。′′第二日,我便要他捕鸟。′
当然,在另一具体实施例中,所述计算机设备1也可以通过现有的OCR技术 实现以上所述的步骤S200和步骤S202中的文字框检测和文字框集合中的文字 内容识别的步骤;然后经由步骤S204和步骤S206执行对于已识别文字的排版和 输出过程。
所述计算机设备1通过以上步骤的执行,对于文字检测框之间存在断开的情 况,能够进行自动合并,保持文字内容的完整性;通过对已识别文字集合的已 识别文字进行分块、分段处理,方便用户进行阅读。因此,所述计算机设备1 能够识别的文档图片的内容识别不仅限于正规文档,还可以对杂乱的排版的杂 志文件对应的文档图片进行识别,解决了双栏文档、分块文档识别结果排列错 乱,难以阅读的问题,泛化能力较强。
综上所述,本实施例所提出的文档图片识别方法能够对待识别文档图片进 行文字检测,得到包括多个文字检测框的文字检测框集合;对所述文字检测框 集合中的目标文字检测框的文字内容进行识别,得到所述目标文字检测框对应 的已识别文字,并记录到预设的已识别文字集合中,其中,所述目标文字检测 框为所述文字检测框集合中的任一文字检测框;根据已识别文字在所述待识别 文档图片上的位置关系将所述已识别文字集合中的已识别文字划分为文本区 块,以及根据预设段落格式对每一个文本区块中的已识别文字进行段落划分, 得到已处理文本区块;按照预设的排版顺序将所述已处理文本区块输出。本发 明能够将待识别文档图片进行文字识别后根据已识别文字在所述待识别文档图片上的位置关系以及预算段落格式对已识别文字进行排版,因此,可以有效识 别出文档排版格式,提升了文档图片识别的效果,提高了用户阅读体验。
实施例二
图7示意性示出了根据本申请实施例二的文档图片识别装置的框图,该文 档图片识别装置可以被分割成一个或多个程序模块,一个或者多个程序模块被 存储于存储介质中,并由一个或多个处理器所执行,以完成本申请实施例。本 申请实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令 段,以下描述将具体介绍本实施例中各程序模块的功能。
如图7所示,该文档图片识别装置400可以包括文字检测模块410、文字 识别模块420、文字排版模块430和输出模块440,其中:
文字检测模块410,用于对待识别文档图片进行文字检测,得到包括多个 文字检测框的文字检测框集合,其中,每一个文字检测框区域内包括至少一个 文字内容。
文字识别模块420,用于对所述文字检测框集合中的目标文字检测框的文 字内容进行识别,得到所述目标文字检测框对应的已识别文字,并记录到预设 的已识别文字集合中,其中,所述目标文字检测框为所述文字检测框集合中的 任一文字检测框。
文字排版模块430,用于根据已识别文字在所述待识别文档图片上的位置 关系将所述已识别文字集合中的已识别文字划分为文本区块,以及根据预设段 落格式对每一个文本区块中的已识别文字进行段落划分,得到已处理文本区块。
输出模块440,用于按照预设的排版顺序将所述已处理文本区块输出。
在示例性的实施例中,文字检测模块410,还用于:通过预设的文字区域 检测模型对所述待识别文档图片进行检测,检测出所述待识别文档图片上的每 一个文字检测框,记录为文字检测框集合,其中,所述文字区域检测模型是基 于深度学习方式从采样的图片文字数据中训练得到的。
在示例性的实施例中,文字识别模块420,还用于:通过预设的文字识别 模型对所述文字检测框集合中的目标文字检测框的文字内容进行识别,其中, 所述文字识别模型是基于深度学习方式从采样的文字数据中训练得到的。
在示例性的实施例中,文字排版模块430,还用于:
描绘出每一个已识别文字的文字轮廓,并分别获取每一个已识别文字的文 字轮廓的坐标;根据每一个已识别文字的文字轮廓的坐标生成对应的最小外接 矩形;计算相邻的已识别文字对应的两个最小外接矩形之间的距离,并记录为 最小外接矩形距离;分别判断每一组相邻的已识别文字的所述最小外接矩形距 离是否小于预设阈值;以及,将所述最小外接矩形距离小于预设阈值的相邻的 已识别文字划分为同一个文本区块。其中,所述描绘出每一个已识别文字的文 字轮廓包括:依次对所述待识别文档图片执行灰度化、二值化、去除噪声以及 形态学变化以描绘出所述待识别文档图片中的已识别文字的轮廓。以及,获取 每一个已识别文字对应的文字检测框的坐标;判断相邻的两个文字检测框是否为同一行且横向间距是否小于第一阈值;若相邻两个文字检测框为同一行且横 向间距小于第一阈值,则合并所述两个文字检测框对应的已识别文字成一个段 落;和/或,若相邻两个文字检测框不是同一行时,则判断所述两个文字检测框 的纵向间距是否小于第二阈值、两个文字检测框的左边界横坐标距离是否小于 第三阈值以及两个文字检测框的右边界横坐标距离是否小于第四阈值,其中, 左边界横向坐标距离是指排序相邻的两个文字检测框中的后一个文字检测框相 对于前一个文字检测框的左边界横坐标之间的距离,右边界横坐标距离是指排 序相邻的两个文字检测框中的后一个文字检测框相对于前一个文字检测框的右 边界横坐标之间的距离;若所述纵向间距小于第二阈值、所述左边界横坐标距 离小于第三阈值且两个文字检测框的右边界横坐标距离小于第四阈值,则合并 所述两个文字检测框对应的已识别文字成一个段落;和/或,若所述纵向间距小 于第二阈值、所述左边界横坐标距离小于第三阈值且所述右边界横坐标距离不 小于第四阈值时,则判断所述两个文字检测框的所述右边界横坐标距离是否大 于第五阈值;若所述右边界横坐标距离大于第五阈值,则合并所述两个文字检 测框对应的已识别文字成一个段落;和/或,若所述纵向间距小于第二阈值、所 述左边界横坐标距离不小于第三阈值时,则判断所述两个文字检测框的左边界 横坐标距离是否大于第六阈值;若所述左边界横坐标距离大于第六阈值,则将 所述两个文字检测框对应的已识别文字拆分为不同段落。
在示例性的实施例中,输出模块440,还用于:根据从上到下、从左到右 的顺序将已处理文本区块进行输出。
实施例三
图8示意性示出了根据本申请实施例三的适于实现文档图片识别方法的计 算机设备1的硬件架构示意图。本实施例中,计算机设备1是一种能够按照事 先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以 是具有网关功能的机架式服务器、刀片式服务器、塔式服务器或机柜式服务器 (包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图8所示, 计算机设备1至少包括但不限于:可通过系统总线相互通信链接存储器510、 处理器520、网络接口530。其中:
存储器510至少包括一种类型的计算机可读存储介质,可读存储介质包括 闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问 存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可 擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储 器、磁盘、光盘等。在一些实施例中,存储器510可以是计算机设备1的内部 存储模块,例如该计算机设备1的硬盘或内存。在另一些实施例中,存储器510 也可以是计算机设备1的外部存储设备,例如该计算机设备1上配备的插接式 硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital, 简称为SD)卡,闪存卡(Flash Card)等。当然,存储器510还可以既包括计 算机设备1的内部存储模块也包括其外部存储设备。本实施例中,存储器510 通常用于存储安装于计算机设备10的操作系统和各类应用软件,例如文档图片 识别方法的程序代码等。此外,存储器510还可以用于暂时地存储已经输出或 者将要输出的各类数据。
处理器520在一些实施例中可以是中央处理器(Central Processing Unit,简 称为CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器 520通常用于控制计算机设备1的总体操作,例如执行与计算机设备1进行数 据交互或者通信相关的控制和处理等。本实施例中,处理器520用于运行存储 器510中存储的程序代码或者处理数据。
网络接口530可包括无线网络接口或有线网络接口,该网络接口530通常 用于在计算机设备1与其他计算机设备之间建立通信链接。例如,网络接口530 用于通过网络将计算机设备1与外部终端相连,在计算机设备1与外部终端之 间的建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互 联网(Internet)、全球移动通讯系统(Global System of Mobile communication, 简称为GSM)、宽带码分多址(Wideband CodeDivision Multiple Access,简称 为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网 络。
需要指出的是,图8仅示出了具有部件510-530的计算机设备,但是应理 解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器510中的文档图片识别方法的程序代码,或 者文档图片识别方法的程序代码还可以被分割为一个或者多个程序模块,并由 一个或多个处理器(本实施例为处理器520)所执行,以完成本申请实施例。
实施例四
本实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储 有计算机程序,计算机程序被处理器执行时实现以下步骤:
对待识别文档图片进行文字检测,得到包括多个文字检测框的文字检测框 集合,其中,每一个文字检测框区域内包括至少一个文字内容;对所述文字检 测框集合中的目标文字检测框的文字内容进行识别,得到所述目标文字检测框 对应的已识别文字,并记录到预设的已识别文字集合中,其中,所述目标文字 检测框为所述文字检测框集合中的任一文字检测框;根据已识别文字在所述待 识别文档图片上的位置关系将所述已识别文字集合中的已识别文字划分为文本 区块,以及根据预设段落格式对每一个文本区块中的已识别文字进行段落划分, 得到已处理文本区块;按照预设的排版顺序将所述已处理文本区块输出。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储 器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存 储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、 可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中, 计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的 硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的 外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart MediaCard,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存 卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内 部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用 于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中文档图片 识别方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已 经输出或者将要输出的各类数据。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步 骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分 布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程 序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且 在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它 们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个 集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结 合。
以上仅为本申请实施例的优选实施例,并非因此限制本申请实施例的专利 范围,凡是利用本申请实施例说明书及附图内容所作的等效结构或等效流程变 换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请实施例的 专利保护范围内。