一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

表格识别方法及相关装置和电子设备、存储介质与流程

2021-10-24 09:51:00 来源:中国专利 TAG:电子设备 图像处理 表格 识别 装置


1.本技术涉及图像处理技术领域,特别是涉及一种表格识别方法及相关装置和电子设备、存储介质。


背景技术:

2.表格作为一种组织整理数据的有效手段,通常存在于诸如科研文章、期刊报纸、调研报告等诸多文件中。因此,在基于上述文件执行诸如篇章解析、摘要生成等任务的情况下,需要先对表格进行识别。
3.表格识别任务通常包括表格结构识别和表格内容识别,即一方面需要识别出表格各个单元格,另一方面还需要识别出各个单元格内的表格文本,由此可见表格识别任务之复杂。而目前,现有的表格图像的识别方式,在面对复杂的表格识别任务时,仍然存在处理负荷较高的技术问题。有鉴于此,如何降低表格识别的处理负荷成为亟待解决的问题。


技术实现要素:

4.本技术主要解决的技术问题是提供一种表格识别方法及相关装置和电子设备、存储介质,能够降低表格识别的处理负荷。
5.为了解决上述技术问题,本技术第一方面提供了一种表格识别方法,包括:提取表格图像的表格特征图;表格图像包含若干目标单元格;基于表格特征图进行行列识别,得到行分隔线和列分隔线;在表格特征图提取得到若干基础单元格的第一特征;其中,若干基础单元格是利用行分隔线和列分隔线划分得到的;基于若干基础单元格的第一特征,得到目标单元格;基于目标单元格的第二特征,得到目标单元格内表格文本;其中,第二特征是在表格特征图提取得到的。
6.为了解决上述技术问题,本技术第二方面提供了一种表格识别装置,包括:表格特征提取模块、行列分割线识别模块、单元格特征提取模块、目标单元格识别模块和表格文本识别模块,表格特征提取模块用于提取表格图像的表格特征图;表格图像包含若干目标单元格;行列分隔线识别模块用于基于表格特征图进行行列识别,得到行分隔线和列分隔线;单元格特征提取模块用于在表格特征图提取得到若干基础单元格的第一特征;其中,若干基础单元格是利用行分隔线和列分隔线划分得到的;目标单元格识别模块用于基于若干基础单元格的第一特征,得到目标单元格;表格文本识别模块用于基于目标单元格的第二特征,得到目标单元格内表格文本;其中,第二特征是在表格特征图提取得到的。
7.为了解决上述技术问题,本技术第三方面提供了一种电子设备,包括相互耦接的存储器和处理器,存储器中存储有程序指令,处理器用于执行程序指令以实现上述第一方面中的表格识别方法。
8.为了解决上述技术问题,本技术第四方面提供了一种计算机可读存储介质,存储有能够被处理器运行的程序指令,程序指令用于实现上述第一方面中的表格识别方法。
9.上述方案,提取表格图像的表格特征图,且表格图像包含若干目标单元格,基于表
格特征图进行行列识别,得到行分隔线和列分隔线,并在表格特征图提取得到若干基础单元格的第一特征,且若干基础单元格是利用行分隔线和列分隔线划分得到的,在此基础上,基于若干基础单元格的第一特征,得到目标单元格,并基于目标单元格的第二特征,得到目标单元格内表格文本,且第二特征是在表格特征图提取得到的,由此可见,在表格识别的整个过程中,所涉及到的行列分隔线、目标单元格和表格文本归根结底均是通过表格特征图识别得到的,即能够有效提高表格特征图的复用率,有利于大大降低表格识别的处理负荷。
附图说明
10.图1是本技术表格识别方法一实施例的流程示意图;
11.图2是表格图像一实施例的示意图;
12.图3是表格图像另一实施例的示意图;
13.图4是本技术表格识别方法一实施例的过程示意图;
14.图5是表格图像又一实施例的示意图;
15.图6是表格图像又一实施例的示意图;
16.图7是表格图像又一实施例的示意图;
17.图8是图1中步骤s14一实施例的流程示意图;
18.图9是本技术表格识别装置一实施例的框架示意图;
19.图10是本技术电子设备一实施例的框架示意图;
20.图11是本技术计算机可读存储介质一实施例的框架示意图。
具体实施方式
21.下面结合说明书附图,对本技术实施例的方案进行详细说明。
22.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本技术。
23.本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
24.请参阅图1,图1是本技术表格识别方法一实施例的流程示意图。
25.具体而言,可以包括如下步骤:
26.步骤s11:提取表格图像的表格特征图。
27.本公开实施例中,表格图像包含若干目标单元格。需要说明的是,目标单元格之间可以通过至少一条表格线予以区分,或者,目标单元格之间也可以不存在表格线,在此不做限定。请结合参阅图2和图3,图2是表格图像一实施例的示意图,图3是表格图像另一实施例的示意图。图2和图3中实线表示表格线,图2中横向表格线和纵向表格线划分出12个目标单元格,且横向相邻或纵向相邻的目标单元格之间通过表格线予以区分。例如,对于“姓名”所在目标单元格和“语文”所在目标单元格而言,两者之间可以通过第二条纵向表格线区分,而对于“姓名”所在目标单元格和“张三”所在目标单元格而言,两者之间可以通过第二条横向表格线予以区分,其他目标单元格可以以此类推,在此不再一一举例。图3中仅存在横向
表格线,表格文本基于横向表格线在横向对齐,且在纵向也对齐,可以将各个表格文本所在的对齐区域作为目标单元格,如可以将包围“姓名”的虚线矩形框作为“姓名”所在的目标单元格,将包围“语文”的虚线矩形框作为“语文”所在的目标单元格,其他表格文本可以以此类推,在此不再一一举例。在此基础上,对于“姓名”所在的目标单元格和“语文”所在的目标单元格而言,两者之间并不存在纵向表格线予以区分,其他情况可以以此类推,在此不再一一举例。
28.在一个实施场景中,请结合参阅图4,图4是本技术表格识别方法一实施例的过程示意图。如图4所示,为了提高表格识别的效率,可以预先训练一个表格识别模型,且该表格识别模型可以包括表格特征提取网络。在此基础上,可以利用表格特征提取网络对表格图像进行特征提取,得到表格特征图。需要说明的是,表格特征图可以包含与表格文本相关的特征信息、与行列结构相关的特征信息、与单元格关系相关的特征信息中至少一者。此外,表格特征提取网络具体可以包括多层卷积神经网络,在此不做限定。为了便于描述,表格图像可以记为i,则表格特征图f可以表示为:
29.f=cnn(i)
……
(1)
30.上述公式(1)中,cnn表示卷积神经网络。
31.在一个实施场景中,表格特征图的分辨率可以与表格图像的分辨率相同;或者,表格特征图的分辨率也可以与表格图像的分辨率不同,如表格特征图的分辨率可以小于表格图像的分辨率,在此不做限定。
32.步骤s12:基于表格特征图进行行列识别,得到行分隔线和列分隔线。
33.具体地,可以基于表格特征图,获取表格图像中各个像素线的特征,为了与下述基础单元格的第一特征以及目标单元格的第二特征予以区分,像素线的特征可以称之为第三特征。在此基础上,可以利用像素线的第三特征进行分类,得到像素线的分类结果,且分类结果包括像素线是否为分隔线。需要说明的是,在像素线为像素行的情况下,分隔线为行分隔线,而在像素线为像素列的情况下,分隔线为列分隔线。上述方式,通过基于表格特征图,获取各个像素线的第三特征,并利用像素线的第三特征进行分类,得到像素线是否为分隔线的分类结果,有利于提高分隔线识别的准确性。
34.在一个实施场景中,请结合参阅图4,为了提高行分隔线识别的效率,可以预先训练一个表格识别模型,且该表格识别模型包括行分隔线识别网络,行分隔线识别网络具体可以包括第一池化层和第一分类层。在此基础上,可以利用第一池化层对表格特征图进行池化处理,得到表格图像中各个像素行的第三特征。为了便于描述,第i个像素行的第三特征可以记为f
ir
,第i个像素行的第三特征f
ir
可以表示为:
[0035][0036]
上述公式(2)中,w表示图像宽度,f
i,j
表示第i行第j列像素的特征。如公式(2)所示,通过在第i行方向对像素特征进行平均,可以得到第i个像素行的第三特征。在此基础上,可以利用第一分类层对像素行的第三特征进行分类处理,得到像素行属于行分隔线的第一概率值。为了便于描述,仍以第i个像素行为例,其第一概率值可以表示为:
[0037]
[0038]
上述公式(3)中,classfier表示第一分类层,第一分类层具体可以包括顺序连接的全连接层和归一化层。在此基础上,可以预先设置第一阈值t
r
,则第一概率值大于第一阈值t
r
的情况下,可以确定第i个像素行为行分隔线,反之可以确定第i个像素行并不是行分隔线。需要说明的是,第一阈值t
r
的取值范围可以设置为0至1。
[0039]
在一个实施场景中,请继续结合参阅图4,为了提高列分隔线的识别效率,可以预先训练一个表格识别模型,且该表格识别模型包括列分隔线识别网络,列分隔线识别网络具体可以包括第二池化层和第二分类层。在此基础上,可以利用第二池化层对表格特征图进行池化处理,得到表格图像中各个像素列的第三特征。为了便于描述,第j个像素列的第三特征可以记为第j个像素列的第三特征可以表示为:
[0040][0041]
上述公式(4)中,h表示图像宽度,f
i,j
表示第i行第j列像素的特征。如公式(4)所示,通过在第j列方向对像素特征进行平均,可以得到第j个像素列的第三特征。在此基础上,可以利用第二分类层对像素列的第三特征进行分类处理,得到像素列属于列分隔线的第二概率值。为了便于描述,仍以第j个像素列为例,其第二概率值可以表示为:
[0042][0043]
上述公式(5)中,classfier表示第二分类层,第二分类层具体可以包括顺序连接的全连接层和归一化层。在此基础上,可以预先设置第二阈值t
c
,则第二概率值大于第二阈值t
c
的情况下,可以确定第j个像素列为列分隔线,反之可以确定第j个像素列并不是列分隔线。需要说明的是,第二阈值t
c
的取值范围可以设置为0至1。
[0044]
需要说明的是,除了可以通过行分隔线识别网络、列分隔线识别网络分别进行行分隔线识别、列分隔线识别之外,上述表格识别模型也可以包括行列识别网络,且该行列识别网络可以同时实现行分隔线识别和列分隔线识别,在此不做限定。
[0045]
在一个实施场景中,为了适应于诸如图3所示表格图像中少线/无线等情况,利用像素线的第三特征进行分类,可以得到像素线的分类结果,且分类结果包括像素线是否属于分隔线区域,若像素线不属于分隔线区域,则可以认为像素线不为分隔线;而若像素线属于分隔线区域,则可以认为像素线可以作为分隔线。具体地,可以在连续多条属于分隔线区域的像素线中选取一条像素线作为分隔线。例如,可以在连续多条属于分隔线区域的像素线中,选取位于中间位置的像素线作为分隔线;或者,也可以在连续多条属于分隔线区域的像素线中,随机选取一条像素线作为分隔线,在此不做限定。请结合参阅图5,图5是表格图像又一实施例的示意图。如图5所示,虚线所示为连续3条属于分隔线区域的像素线,则可以将中间位置(即第二条)像素线作为分隔线;或者,也可以在图5中随机选取一条虚线所示的像素线,作为分隔线。其他情况可以以此类推,在此不再一一举例。
[0046]
在一个具体的实施场景中,以表格识别模型包括行列识别网络为例,可以基于样本特征图,获取样本图像中各个样本像素线的样本特征,且样本特征图是对样本图像提取得到的,样本像素线标注有第一标记或第二标记,第一标记表示样本像素线不属于分隔线区域,第二标记表示样本像素线属于分隔线区域。提取样本像素线的样本特征的具体过程,
可以参考前述第三特征的提取过程,在此不再赘述。基于此可以利用行列识别网络对样本像素线的样本特征进行分类,得到样本像素线的分类标记,且分类标记表示样本像素线是否预测为属于分隔线区域。在此基础上,对于不属于分隔线区域的样本像素线而言,可以利用样本像素线的第一标记与分类标记之间的差异,得到第一损失。进一步地,对于属于分隔线区域的样本像素线而言,可以利用样本像素线的第二标记与分隔线区域的整体标记之间的差异,得到第二损失。在计算得到第一损失和第二损失的基础上,可以再基于第一损失和第二损失,调整行列识别网络的网络参数。需要说明的是,整体标记可以是基于属于分隔线区域的样本像素线的分类标记得到的。上述方式,通过约束分隔线区域的整体标记与第二标记之间的差异,能够属于对分隔线区域这一路径中的样本像素线进行整体约束,能够大大提升行列识别网络的准确性。
[0047]
在另一个具体的实施场景中,可以通过行列识别网络对样本像素线的样本特征进行分类,可以得到样本像素线的分类概率值,在分类概率值大于预设阈值的情况下,可以确定样本像素线属于分隔线区域,而在样本像素线不高于预设阈值的情况下,可以确定样本像素线不属于分隔线区域。
[0048]
在又一个具体的实施场景中,在属于分隔线区域的样本像素线均预测为属于分隔线区域的情况下,整体标记与第二标记之间存在第一差异,在属于分隔线区域的样本像素线预测为不属于分隔线区域的情况下,整体标记与第二标记之间存在第二差异,且第一差异小于第二差异。具体地,第一标记和第二标记可以均为数值,则可以计算属于分隔线区域的样本像素线的分类标记之积(或之和),得到整体标记,或者,也可以将属于分隔线区域的样本像素线中中间位置的样本像素线的分类标记,作为整体标记,在此不做限定。上述方式,在属于分隔线区域的样本像素线均预测为属于分隔线区域的情况下,整体标记与第二标记之间存在第一差异,在属于分隔线区域的样本像素线预测为不属于分隔线区域的情况下,整体标记与第二标记之间存在第二差异,且第一差异小于第二差异,即通过将第一差异设置为小于第二差异,并约束整体标记与第二标记之间的差异,能够使得行列识别网络充分学习分隔线区域的特征信息,以尽可能地将属于分隔线区域的样本像素线全部预测为属于分隔线区域,有利于在少线/无线的情况下,尽可能地提高行列识别的准确性和鲁棒性。
[0049]
在又一个具体的实施场景中,对于不属于分隔线区域的样本像素线而言,可以利用ce loss(即交叉熵损失函数)处理不属于分隔线区域的样本像素线的第一标记和分类标记,得到第一损失,具体计算过程,可以参阅交叉熵损失函数的技术细节,在此不再赘述。而对于属于分隔线区域的样本像素线而言,可以利用ctc loss(即connectionist temporal classification loss)处理第二标记和分隔线区域的整体标记,得到第二损失,具体计算过程,可以参阅ctc loss的技术细节,在此不再赘述。
[0050]
需要说明的是,在表格识别模型包括行分隔线识别网络和列分隔线识别网络,两者的训练过程,可以参考上述行列识别网络的训练过程。具体地,在对行分隔线识别网络进行训练的情况下,上述样本像素线为样本行像素线,上述分隔线区域为行分隔线区域;而在对列分隔线识别网络进行训练的情况下,上述样本像素线为样本列像素线,上述分隔线区域为列分隔线区域。具体训练过程,可以参考上述相关描述,在此不再赘述。
[0051]
在一个实施场景中,请结合参阅图6,图6是表格图像又一实施例的示意图。如图6所示,通过上述行列识别,可以得到行分隔线(如图6中加粗点划线所示)和列分隔线(如图6
中加粗虚线表示)。其他可以以此类推,在此不再一一举例。
[0052]
步骤s13:在表格特征图提取得到若干基础单元格的第一特征。
[0053]
本公开实施例中,若干基础单元格是利用行分隔线和列分隔线划分得到的。请结合继续参阅图6,由行分隔线(即加粗点划线)和列分隔线(即加粗虚线)划分得到的矩形区域(如,图6中斜线填充矩形区域),即为基础单元格。此外,表格图像中也可以包括由基础单元格合并而来的合并单元格。请结合参阅图7,图7是表格图像又一实施例的示意图。如图7所示,表格文本“应发”所在目标单元格为图中虚线矩形框所示的基础单元格合并而来。其他情况可以以此类推,在此不再一一举例。
[0054]
在一个实施场景中,可以直接将表格特征图中与各个基础单元格对应的图像区域,作为基础单元格的第一特征。
[0055]
在另一个实施场景中,为了提高特征提取效率,可以预先训练一个表格识别模型,且该表格识别模型可以包括基础特征提取网络。在此基础上,可以利用基础特征提取网络在表格特征图中提取得到各个基础单元格的第一特征。为了便于描述,可以将第i行第j列的基础单元格的第一特征记为该第一特征可以表示为:
[0056][0057]
上述公式(6)中,(c
j
,r
i
,c
j 1
,r
i 1
)可以构成第i行第j列基础单元格左上角坐标和右下角坐标,其中,c
j
表示第j个列分隔线,r
i
表示第i个行分隔线,两者之间的交点即为第i行第j列的基础单元格左上角坐标;类似地,c
j 1
表示第j 1个列分隔线,r
i 1
表示第i 1个行分隔线,两者之间的交点即为第i行第j列的基础单元格右下角坐标。此外,roi_align表示基础特征提取网络,其具体可以包含若干全连接层,在此不做限定。
[0058]
步骤s14:基于若干基础单元格的第一特征,得到目标单元格。
[0059]
如前所述,表格图像中也可以包括由基础单元格合并而来的合并单元格,故此,为了适应于表格图像中存在合并单元格的情况,可以基于基础单元格之间的相关分值,得到若干候选单元格的存在分值,且相关分值是利用第一特征得到,候选单元格是由基础单元格合并得到的,存在分值表示候选单元格存在于表格图像的可能性,在此基础上,可以基于若干候选单元格的存在分值,识别得到目标单元格。上述方式,基于基础单元格之间的相关分值,得到若干候选单元格的存在分值,基于此再基于若干候选单元格的存在分值,识别得到目标单元格,故能够适用于表格图像中存在合并单元格的情况,有利于提高表格识别的适用范围。
[0060]
步骤s15:基于目标单元格的第二特征,得到目标单元格内表格文本。
[0061]
本公开实施例中,第二特征是在表格特征图提取得到的。具体地,可以直接从表格特征图中提取与目标单元格对应的图像区域,作为目标单元格的第二特征。
[0062]
此外,为了提高表格识别的效率,可以预先训练一个表格识别模型,且该表格识别模型包括表格文本识别网络,在此基础上,可以利用表格文本识别网络对第二特征进行识别,得到目标单元格内表格文本。表格文本识别网络可以包括但不限于:textboxes、fots(fast oriented text spotting)等等,在此不做限定。
[0063]
上述方案,提取表格图像的表格特征图,且表格图像包含若干目标单元格,基于表格特征图进行行列识别,得到行分隔线和列分隔线,并在表格特征图提取得到若干基础单
元格的第一特征,且若干基础单元格是利用行分隔线和列分隔线划分得到的,在此基础上,基于若干基础单元格的第一特征,得到目标单元格,并基于目标单元格的第二特征,得到目标单元格内表格文本,且第二特征是在表格特征图提取得到的,由此可见,在表格识别的整个过程中,所涉及到的行列分隔线、目标单元格和表格文本归根结底均是通过表格特征图识别得到的,即能够有效提高表格特征图的复用率,有利于大大降低表格识别的处理负荷。
[0064]
请参阅图8,图8是图1中步骤s14一实施例的流程示意图。具体而言,可以包括如下步骤:
[0065]
步骤s81:基于基础单元格之间的相关分值,得到若干候选单元格的存在分值。
[0066]
本公开实施例中,相关分值是利用第一特征得到的,候选单元格是由基础单元格合并得到的,且存在分值表示候选单元格存在于表格图像的可能性。具体地,存在分值越高,候选单元格存在于表格图像的可能性越高;反之,存在分值越低,候选单元格存在于表格图像的可能性越低。
[0067]
在一个实施场景中,可以将若干基础单元格分别作为第一当前单元格,并利用第一当前单元格的第一特征和若干参考单元格的第一特征,得到第一当前单元格分别与若干参考单元格之间的相关分值,且若干参考单元格为分别位于第一当前单元格若干预设方位的基础单元格,而相关分值表示参考单元格是第一当前单元格所在的候选单元格的边缘单元格的可能性。在此基础上,可以将候选单元格内各个基础单元格分别作为第二当前单元格,并利用第二当前单元格与其边缘单元格之间的相关分值,得到第二当前单元格的子分值,以及统计候选单元格内各个基础单元格的子分值,得到候选单元格的存在分值。上述方式,通过先计算每一基础单元格分别与其参考单元格之间的相关分值,再依据候选单元格内每一基础单元格分别与其边缘单元格之间的相关分值,得到每一基础单元格的子分值,并统计候选单元格内所有基础单元格的子分值,得到候选单元格的存在分值,能够有利于提高存在分值的准确性。
[0068]
在一个具体的实施场景中,若干预设方位可以包括:水平左侧、水平右侧、垂直上侧、垂直下侧中至少一者,在此情况下,若干参考单元格可以包括第一单元格、第二单元格、第三单元格、第四单元格以及第一当前单元格中至少一者,且第一单元格位于第一当前单元格的水平左侧,第二单元格位于第一当前单元格的水平右侧,第三单元格位于第一当前单元格的垂直上侧,第四单元格位于第一当前单元格的垂直下侧。请结合参阅图7,在以斜线填充的基础单元格作为第一当前单元格的情况下,可以将该基础单元格本身以及箭头所指的各个基础单元格,作为参考单元格。其他情况可以以此类推,在此不再一一举例。上述方式,通过将第一当前单元格本身以及水平左侧的第一单元格、水平右侧的第二单元格、垂直上侧的第三单元格、垂直下侧的第四单元格中至少一者,作为参考单元格,能够有利于提高参考单元格的全面性。
[0069]
在另一个具体的实施场景中,以若干预设方位包括水平左侧为例,如前所述,可以将第一当前单元格和位于其水平左侧的第一单元格作为参考单元格。在此基础上,可以基于注意力机制,获取第一当前单元格与其水平左侧的各个参考单元格之间的注意力权重,并将注意力权重进行归一化处理,得到第一当前单元格与其水平左侧的各个参考单元格之间的相关分值。第一当前单元格与其他预设方位的参考单元格之间的相关分值,可以以此类推计算得到,在此不再一一举例。请结合参阅图4,为了提高表格识别效率,可以预先训练
一个表格识别模型,且该表格识别模型包括目标单元格识别网络,目标单元格识别网络可以包括第一注意力机制层、第二注意力机制层、第三注意力机制层和第四注意力机制层,其中,第一注意力机制层用于计算第一当前单元格与其水平左侧的第一单元格之间的注意力权重,第二注意力机制层用于计算第一当前单元格与其水平右侧的第二单元格之间的注意力权重,第三注意力机制层用于计算第一当前单元格与其垂直上侧的第三单元格之间的注意力权重,第四注意力机制层用于计算第一当前单元格与其垂直下侧的第四单元格之间的注意力权重。为了便于描述,在第i行第j列的基础单元格作为第一当前单元格的情况下,可以将第一当前单元格的第一特征记为并将位于其水平左侧第i行第k列的基础单元格的第一特征记为两者之间的注意力权重可以表示为:
[0070][0071]
其中,w
lkey
、w
lquery
均表示第一注意力机制层的学习参数,其可以在目标单元格识别网络训练过程中进行优化调整。此外,两者之间的相关分值可以表示为:
[0072][0073]
通过上述方式,对于每个第一当前单元格,均可以分别计算得到其与水平左侧的第一单元格之间的相关分值,其与水平右侧的第二单元格之间的相关分值,其与垂直上侧的第三单元格之间的相关分值,其与垂直下侧的第四单元格之间的相关分值,其与其本身之间的相关分值。具体计算过程,可以参考前述步骤,在此不再一一举例。
[0074]
在又一个具体的实施场景中,相邻基础单元格可以视为可以合并为候选单元格,该候选单元格可能真实存在于表格图像中。在此情况下,可以以任一基础单元格为起点向右侧、下侧或右下侧方向定位一个终点,并基于上述起点和终点得到一个候选区域,以将候选区域内基础单元格视为可以合并为候选单元格。基于此,第二当前单元格的边缘单元格可以包括:位于其水平左侧且处于候选单元格边缘的基础单元格,位于其水平右侧且处于候选单元格边缘的基础单元格,位于其垂直上侧且处于候选单元格边缘的基础单元格,位于其垂直下侧且处候选单元格边缘的基础单元格。请继续结合参阅图7,以斜线填充的基础单元格为起点可以确定加粗矩形所示的候选单元格。在将以斜线填充的基础单元格作为第二当前单元格的情况下,其边缘单元格可以包括:位于其水平左侧且处于候选单元格边缘的基础单元格(即其本身),位于其水平右侧且处于候选单元格边缘的基础单元格(即其水平右侧相邻的基础单元格),位于其垂直上侧且处于候选单元格边缘的基础单元格(即其本身),位于其垂直下侧且处于候选单元格边缘的基础单元格(即其垂直下侧相邻的基础单元格)。其他情况可以以此类推,在此不再一一举例。需要说明的是,图7所示的候选单元格仅仅为实际应用过程中可能存在的一个候选单元格,并不因此而对候选单元格进行限定。
[0075]
在一个具体的实施场景中,可以分别将该候选单元格内基础单元格作为第二当前单元格,并计算第二当前单元格与其边缘单元格之间的相关分值的平均值,作为第二当前单元格的子分值。在此基础上,可以计算候选单元格内各个基础单元格的子分值的平均值,
作为候选单元格的存在分值。为了便于描述,以第j行第i列的基础单元格为起点,并以第n行第m列的基础单元格作为终点,确定一个候选单元格。该候选单元格的存在分值p(i,j,m,n)可以表示为:
[0076][0077]
上述公式(9)中,分别表示:第y行第x列基础单元格与其水平左侧的边缘单元格(即第y行第i列)之间的相关分值,第y行第x列基础单元格与其水平右侧的边缘单元格(即第y行第m列)之间的相关分值,第y行第x列基础单元格与其垂直上侧的边缘单元格(即第j行第x列)之间的相关分值,第y行第x列基础单元格与其垂直下侧的边缘单元格(即第n行第x列)之间的相关分值。此外,(m 1

i)(n 1

j)表示候选单元格内基础单元格的总数。
[0078]
步骤s82:基于若干候选单元格的存在分值,识别得到目标单元格。
[0079]
具体地,可以基于若干候选单元格的存在分值,利用非极大值抑制从若干候选单元格中选择得到目标单元格。例如,可以预先设置一个目标单元格集合,初始化其为空集,并将若干候选单元格按照存在分值由高到低的顺序进行排序,得到候选单元格集合,取出候选单元格集合中第一个候选单元格作为目标单元格,并添加至目标单元格集合,并剔除候选单元格集合中与目标单元格之间存在交集的候选单元格,并重新执行上述取出候选单元格集合中第一个候选单元格作为目标单元格的步骤以及后续,直至候选单元格集合中不存在候选单元格为止。上述方式,基于若干候选单元格的存在分值,利用非极大值抑制从若干候选单元格中选择得到目标单元格,能够有利于提高筛选目标单元格的效率和准确性。
[0080]
上述方案,基于基础单元格之间的相关分值,得到若干候选单元格的存在分值,基于此再基于若干候选单元格的存在分值,识别得到目标单元格,故能够适用于表格图像中存在合并单元格的情况,有利于提高表格识别的适用范围。
[0081]
请参阅图9,图9是本技术表格识别装置90一实施例的框架示意图。表格识别装置90包括:表格特征提取模块91、行列分割线识别模块92、单元格特征提取模块93、目标单元格识别模块94和表格文本识别模块95,表格特征提取模块91用于提取表格图像的表格特征图;表格图像包含若干目标单元格;行列分隔线识别模块92用于基于表格特征图进行行列识别,得到行分隔线和列分隔线;单元格特征提取模块93用于在表格特征图提取得到若干基础单元格的第一特征;其中,若干基础单元格是利用行分隔线和列分隔线划分得到的;目标单元格识别模块94用于基于若干基础单元格的第一特征,得到目标单元格;表格文本识别模块95用于基于目标单元格的第二特征,得到目标单元格内表格文本;其中,第二特征是在表格特征图提取得到的。
[0082]
上述方案,在表格识别的整个过程中,所涉及到的行列分隔线、目标单元格和表格文本归根结底均是通过表格特征图识别得到的,即能够有效提高表格特征图的复用率,有利于大大降低表格识别的处理负荷。
[0083]
在一些公开实施例中,目标单元格识别模块94包括存在分值计算子模块,用于基于基础单元格之间的相关分值,得到若干候选单元格的存在分值;其中,相关分值是利用第
一特征得到的,候选单元格是由基础单元格合并得到的,且存在分值表示候选单元格存在于表格图像的可能性;目标单元格识别模块94包括目标单元格筛选子模块,用于基于若干候选单元格的存在分值,识别得到目标单元格。
[0084]
因此,基于基础单元格之间的相关分值,得到若干候选单元格的存在分值,基于此再基于若干候选单元格的存在分值,识别得到目标单元格,故能够适用于表格图像中存在合并单元格的情况,有利于提高表格识别的适用范围。
[0085]
在一些公开实施例中,存在分值计算子模块包括相关分值计算单元,用于将若干基础单元格分别作为第一当前单元格,并利用第一当前单元格的第一特征和若干参考单元格的第一特征,得到第一当前单元格分别与若干参考单元格之间的相关分值;其中,若干参考单元格为分别位于第一当前单元格若干预设方位的基础单元格,相关分值表示参考单元格是第一当前单元格所在的候选单元格的边缘单元格的可能性;存在分值计算子模块包括存在分值计算单元,用于将候选单元格内各个基础单元格分别作为第二当前单元格,并利用第二当前单元格与其边缘单元格之间的相关分值,得到第二当前单元格的子分值,以及统计候选单元格内各个基础单元格的子分值,得到候选单元格的存在分值。
[0086]
因此,通过先计算每一基础单元格分别与其参考单元格之间的相关分值,再依据候选单元格内每一基础单元格分别与其边缘单元格之间的相关分值,得到每一基础单元格的子分值,并统计候选单元格内所有基础单元格的子分值,得到候选单元格的存在分值,能够有利于提高存在分值的准确性。
[0087]
在一些公开实施例中,若干预设方位包括:水平左侧、水平右侧、垂直上侧、垂直下侧中至少一者,若干参考单元格包含第一单元格、第二单元格、第三单元格、第四单元格、第一当前单元格中至少一者,第一单元格位于第一当前单元格的水平左侧,第二单元格位于第一当前单元格的水平右侧,第三单元格位于第一当前单元格的垂直上侧,第四单元格位于第一当前单元格的垂直下侧。
[0088]
因此,通过将第一当前单元格本身以及水平左侧的第一单元格、水平右侧的第二单元格、垂直上侧的第三单元格、垂直下侧的第四单元格中至少一者,作为参考单元格,能够有利于提高参考单元格的全面性。
[0089]
在一些公开实施例中,相关分值计算单元包括第一平均子单元,用于将第二当前单元格与其边缘单元格之间的相关分值进行平均,得到第二当前单元格的子分值;其中,第二当前单元格的边缘单元格位于候选单元格的边缘且位于第二当前单元格的若干预设方位;相关分值计算单元包括第二平均子单元,用于将候选单元格内各个基础单元格的子分值进行平均,得到候选单元格的存在分值。
[0090]
因此,通过统计第二当前单元格与其边缘单元格之间的相关分值的平均值,得到第二当前单元格的子分值,以及通过统计候选单元格内各个基础单元格的子分值的平均值,得到候选单元格的存在分值,能够有利于降低存在分值的计算复杂度。
[0091]
在一些公开实施例中,行列分割线识别模块92包括像素线特征提取子模块,用于基于表格特征图,获取表格图像中各个像素线的第三特征;行列分割线识别模块92包括像素线分类识别子模块,用于利用像素线的第三特征进行分类,得到像素线的分类结果;其中,分类结果包括像素线是否为分隔线;其中,在像素线为像素行的情况下,分隔线为行分隔线,在像素线为像素列的情况下,分隔线为列分隔线。
[0092]
因此,通过基于表格特征图,获取各个像素线的第三特征,并利用像素线的第三特征进行分类,得到像素线是否为分隔线的分类结果,有利于提高分隔线识别的准确性。
[0093]
在一些公开实施例中,行列识别是利用行列识别网络执行的,表格识别装置90还包括样本特征提取模块,用于基于样本特征图,获取样本图像中各个样本像素线的样本特征;其中,样本特征图是对样本图像提取得到的,且样本像素线标注有第一标记或第二标记,第一标记表示样本像素线不属于分隔线区域,第二标记表示样本像素线属于分隔线区域;表格识别装置90还包括样本分类识别模块,用于利用行列识别网络对样本像素线的样本特征进行分类,得到样本像素线的分类标记;其中,分类标记表示样本像素线是否预测为属于分隔线区域;表格识别装置90还包括第一损失计算模块,用于对于不属于分隔线区域的样本像素线,利用第一标记与分类标记之间的差异,得到第一损失;表格识别装置90还包括第二损失计算模块,用于对于属于分隔线区域的样本像素线,利用第二标记与分隔线区域的整体标记之间的差异,得到第二损失;其中,整体标记是基于属于分隔线区域的样本像素线的分类标记得到的;表格识别装置90还包括网络参数调整模块,用于基于第一损失和第二损失,调整行列识别网络的网络参数。
[0094]
因此,通过约束分隔线区域的整体标记与第二标记之间的差异,能够属于对分隔线区域这一路径中的样本像素线进行整体约束,能够大大提升行列识别网络的准确性。
[0095]
在一些公开实施例中,在属于分隔线区域的样本像素线均预测为属于分隔线区域的情况下,整体标记与第二标记之间存在第一差异,在属于分隔线区域的样本像素线预测为不属于分隔线区域的情况下,整体标记与第二标记之间存在第二差异,且第一差异小于第二差异。
[0096]
因此,在属于分隔线区域的样本像素线均预测为属于分隔线区域的情况下,整体标记与第二标记之间存在第一差异,在属于分隔线区域的样本像素线预测为不属于分隔线区域的情况下,整体标记与第二标记之间存在第二差异,且第一差异小于第二差异,即通过将第一差异设置为小于第二差异,并约束整体标记与第二标记之间的差异,能够使得行列识别网络充分学习分隔线区域的特征信息,以尽可能地将属于分隔线区域的样本像素线全部预测为属于分隔线区域,有利于在少线/无线的情况下,尽可能地提高行列识别的准确性和鲁棒性。
[0097]
请参阅图10,图10是本技术电子设备100一实施例的框架示意图。电子设备100包括相互耦接的存储器101和处理器102,存储器101中存储有程序指令,处理器102用于执行程序指令以实现上述任一表格识别方法实施例中的步骤。具体地,电子设备100可以包括但不限于:台式计算机、笔记本电脑、服务器、手机、平板电脑等等,在此不做限定。
[0098]
具体而言,处理器102用于控制其自身以及存储器101以实现上述任一表格识别方法实施例中的步骤。处理器102还可以称为cpu(central processing unit,中央处理单元)。处理器102可能是一种集成电路芯片,具有信号的处理能力。处理器102还可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field

programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器102可以由集成电路芯片共同实现。
[0099]
上述方案,在表格识别的整个过程中,所涉及到的行列分隔线、目标单元格和表格文本归根结底均是通过表格特征图识别得到的,即能够有效提高表格特征图的复用率,有利于大大降低表格识别的处理负荷。
[0100]
请参阅图11,图11是本技术计算机可读存储介质110一实施例的框架示意图。计算机可读存储介质110存储有能够被处理器运行的程序指令111,程序指令111用于实现上述任一表格识别方法实施例中的步骤。
[0101]
上述方案,在表格识别的整个过程中,所涉及到的行列分隔线、目标单元格和表格文本归根结底均是通过表格特征图识别得到的,即能够有效提高表格特征图的复用率,有利于大大降低表格识别的处理负荷。
[0102]
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
[0103]
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
[0104]
在本技术所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
[0105]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
[0106]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0107]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜