掌桥专利:专业的专利平台
掌桥专利
首页

表格识别方法和装置

文献发布时间:2024-04-18 19:58:26


表格识别方法和装置

技术领域

本发明涉及图片识别领域,具体而言,涉及一种表格识别方法和装置。

背景技术

现有技术中,在识别图片中的表格时,通常需要使用正负样本来训练识别模型,然后,由成熟的识别模型来识别图片中是否存在表格。

然而,未包含表格的负样本图片通常携带有多种类型的标签,例如用于标记负样本图片的类型、颜色、包含的内容的标签。而上述标签无法统一用作负样本进行训练,而修改标签会造成样本获取的工作量大。

也就是说,现有技术中,如果没有足够准确的负样本的支撑,无法训练得到准确的识别模型,对图片中的表格进行识别的准确度低。

发明内容

本发明实施例提供了一种表格识别方法和装置,以至少解决在未包含表格的负样本图片不足时,识别图片中的表格准确度低的技术问题。

根据本发明实施例的一个方面,提供了一种表格识别方法,包括:提取待识别的目标图片的目标特征图;将所述目标特征图映射为高纬度特征向量;根据所述高纬度特征向量与样本中心图片的特征向量之间的距离,确定所述目标图片中是否包含表格,其中,所述样本中心图片为根据正样本图片确定的图片。

作为一种可选的示例,所述根据所述高纬度特征向量与样本中心图片的特征向量之间的距离,确定所述目标图片中是否包含表格,包括:在所述距离小于预设半径的情况下,确定所述目标图片中包含表格,其中,所述预设半径为根据所述正样本图片确定的半径;在所述距离大于或等于所述预设半径的情况下,确定所述目标图片中未包含表格。

作为一种可选的示例,所述方法还包括:响应于调整指令,获取所述调整指令中包括的目标值;将所述预设半径的值调整为所述目标值。

作为一种可选的示例,所述目标值属于1-x到1+x,其中,所述x为0到1之间的实数。

作为一种可选的示例,所述提取待识别的目标图片的目标特征图,包括:获取所述目标图片的原始特征图;对所述原始特征图进行非线性变换处理,得到所述目标特征图。

作为一种可选的示例,所述将所述目标特征图映射为高纬度特征向量,包括:对所述目标特征图进行线性变换处理,得到第一特征图;对所述第一特征图进行归一化处理,得到第二特征图;对所述第二特征图进行线性修正处理,得到所述高纬度特征向量。

作为一种可选的示例,在提取待识别的目标图片的目标特征图之前,所述方法还包括:使用所述正样本图片确定所述样本中心图片。

作为一种可选的示例,使用所述正样本图片确定所述样本中心图片,包括:获取多张正样本图片,并提取每张所述正样本图片的特征向量,其中,所述正样本图片中包含表格;计算所述多张正样本图片的特征向量的均值,得到均值特征向量;将所述特征向量与所述均值特征向量相同的正样本图片作为所述样本中心图片。

作为一种可选的示例,所述计算所述多张正样本图片的特征向量的均值,得到均值特征向量,包括:将所述多张正样本图片分为多份;确定每一份所述正样本图片的特征向量的均值,得到多个均值;在任意两个所述均值的差异小于第一阈值的情况下,将多个所述均值中的任意一个均值确定为所述均值特征向量。

根据本发明实施例的另一方面,提供了一种表格识别装置,包括:提取模块,用于提取待识别的目标图片的目标特征图;映射模块,用于将所述目标特征图映射为高纬度特征向量;第一确定模块,用于根据所述高纬度特征向量与样本中心图片的特征向量之间的距离,确定所述目标图片中是否包含表格,其中,所述样本中心图片为根据正样本图片确定的图片。

作为一种可选的示例,所述第一确定模块,包括:第一确定单元,用于在所述距离小于预设半径的情况下,确定所述目标图片中包含表格,其中,所述预设半径为根据所述正样本图片确定的半径;在所述距离大于或等于所述预设半径的情况下,确定所述目标图片中未包含表格。

作为一种可选的示例,所述装置还包括:获取模块,用于响应于调整指令,获取所述调整指令中包括的目标值;调整模块,用于将所述预设半径的值调整为所述目标值。

作为一种可选的示例,所述目标值属于1-x到1+x,其中,所述x为0到1之间的实数。

作为一种可选的示例,所述提取模块,包括:第一获取单元,用于获取所述目标图片的原始特征图;变换单元,用于对所述原始特征图进行非线性变换处理,得到所述目标特征图。

作为一种可选的示例,所述映射模块,包括:处理单元,用于对所述目标特征图进行线性变换处理,得到第一特征图;对所述第一特征图进行归一化处理,得到第二特征图;对所述第二特征图进行线性修正处理,得到所述高纬度特征向量。

作为一种可选的示例,所述装置还包括:第二确定模块,用于在提取待识别的目标图片的目标特征图之前使用所述正样本图片确定所述样本中心图片。

作为一种可选的示例,第二确定模块,包括:第二获取单元,用于获取多张正样本图片,并提取每张所述正样本图片的特征向量,其中,所述正样本图片中包含表格;计算单元,用于计算所述多张正样本图片的特征向量的均值,得到均值特征向量;第二确定单元,用于将所述特征向量与所述均值特征向量相同的正样本图片作为所述样本中心图片。

作为一种可选的示例,所述计算单元,包括:处理子单元,用于将所述多张正样本图片分为多份;确定每一份所述正样本图片的特征向量的均值,得到多个均值;在任意两个所述均值的差异小于第一阈值的情况下,将多个所述均值中的任意一个均值确定为所述均值特征向量。

根据本发明实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被处理器运行时执行上述表格识别方法。

根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过上述计算机程序执行上述的表格识别方法。

在本发明实施例中,采用了提取待识别的目标图片的目标特征图;将所述目标特征图映射为高纬度特征向量;根据所述高纬度特征向量与样本中心图片的特征向量之间的距离,确定所述目标图片中是否包含表格,其中,所述样本中心图片为根据正样本图片确定的图片的方法,由于在上述方法中,在识别目标图片中是否存在表格的过程中,可以提取目标图片的目标特征图,并将提取的目标特征图映射为高纬度特征向量,通过比对高纬度特征向量与样本中心图片的特征向量的距离,来确定目标图片中是否存在表格,从而可以使用正样本图片就可以准确识别图片中是否有表格,解决了负样本图片不足时,识别图片中的表格的准确度低的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的表格识别方法的流程图;

图2是根据本发明实施例的一种可选的表格识别方法的高纬度空间示意图;

图3是根据本发明实施例的一种可选的表格识别方法的系统流程示意图;

图4是根据本发明实施例的一种可选的表格识别装置的结构示意图;

图5是根据本发明实施例的一种可选的电子设备的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明实施例的第一方面,提供了一种表格识别方法,可选地,如图1所示,上述方法包括:

S102,提取待识别的目标图片的目标特征图;

S104,将所述目标特征图映射为高纬度特征向量;

S106,根据所述高纬度特征向量与样本中心图片的特征向量之间的距离,确定所述目标图片中是否包含表格,其中,所述样本中心图片为根据正样本图片确定的图片。

可选的,本实施例中,待识别是否包含表格的图片可以为一张或者多张,如果图片为多张,则可以将每一张图片作为一个待识别的目标图片,并识别目标图片中是否包含表格。

本实施例中的表格的线条,可以为直线,或者为偏离幅度小的曲线或者折线,如果偏离幅度大于了预定的值,则可以认为不是表格,如果偏离幅度小于或等于预定的值,可以认为线条构成了表格。

本实施例中的样本中心图片为根据样本图片确定的图片,样本图片为包含表格的正样本图片。

由于在上述方法中,在识别目标图片中是否存在表格的过程中,可以提取目标图片的目标特征图,并将提取的目标特征图映射为高纬度特征向量,通过比对高纬度特征向量与样本中心图片的特征向量的距离,来确定目标图片中是否存在表格,从而可以使用正样本图片就可以准确识别图片中是否有表格。

作为一种可选的示例,根据高纬度特征向量与样本中心图片的特征向量之间的距离,确定目标图片中是否包含表格,包括:

在距离小于预设半径的情况下,确定目标图片中包含表格,其中,预设半径为根据正样本图片确定的半径;

在距离大于或等于预设半径的情况下,确定目标图片中未包含表格。

本实施例中,可以根据正样本图片确定样本中心图片,以及根据正样本图来确定预设半径。在确定出正样本中心图片与预设半径之后,在识别目标图片时,可以获取目标图片的目标特征图,然后对目标特征图进行高纬度的映射,映射得到高纬度特征向量。最后,对于高纬度特征向量与样本中心图片的特征向量计算距离,计算得到的距离与预设半径进行比对,如果超出了预设半径,则表示表格的特征与样本中心图片的特征的距离太远,与正样本图片差异太大,因此,可以确定目标图片为未包含表格的图片。

在本实施例中,通过判断距离与预设半径的关系来确定目标图片中是否包含表格,由于预设半径是用来区分正样本图片(包含表格的图片)与负样本图片(未包含表格的图片)的分界,因此,通过比对距离与预设半径的关系,可以快速准确的判断出目标图片中是否包含表格。

可选的,本实施例中的预设半径的值可以根据训练样本得到,也可以为自定义的数值。

作为一种可选的示例,当预设半径的值是自定义的数值时,在确定目标图片中是否包含表格之前,还包括半径设置过程,即:

响应于半径设置指令,获取半径设置指令中包括的预设值;

将预设值确定为预设半径。

这里,预设值可以为根据历史数据得到的经验值。通过半径设置指令,通过设置预设值,从而可以设置预设半径的数值。预设半径的取值可以为0到2之间的实数,取值也可以为0或2。

本实施例中,可以自定义预设半径的值,自定义预设半径的值可以通过经验值直接得到较为准确的预设半径,省去了学习得到预设半径的过程,提高了确定预设半径的效率。

作为一种可选的示例,当预设半径的值是根据训练样本得到的时,可以使用正样本图片训练原始识别模型。原始识别模型在被训练过程中,学习超平面半径参数。在原始识别模型稳定后,将学习到的超平面半径参数作为预设半径。正样本图片被输入到原始识别模型中。原始识别模型识别输入的正样本图片得到输出结果,输出结果可能正确也可能错误。随着训练的次数与周期的增加,原始识别模型对正样本图片的识别的准确度也越来越高。在此过程中,超平面半径参数的值可能会发生变化(也可能不变)。在原始识别模型的识别准确度大于一个预期的值,例如大于99%的情况下,将当前的超平面半径参数作为训练得到的预设半径,预设半径被固定,不再发生变化。

本实施例中,学习超平面半径参数得到预设半径,可以得到最为准确的预设半径。如果通过自定义预设半径,可以满足大部分的应用场景,预设半径的准确度可以得到基本的保证。而学习超平面半径参数得到预设半径,相比于自定义预设半径,所得到的预设半径的准确度更高。

作为一种可选的示例,上述方法还包括:

接收调整指令,其中,调整指令中包括目标值;

将预设半径的值由当前值调整为目标值。

如果自定义该预设半径,可以通过调整指令进行设定。系统根据调整指令调整预设半径的值。

预设半径可以灵活调整,目的在于使预设半径时刻处于准确的状态,适应各种场景的需求,避免由于场景调整后,预设半径仍处于原场景下造成的识别不准确的问题。

作为一种可选的示例,目标值属于1-x到1+x,其中,x为0到1之间的实数。

可选的,本实施例中,目标值可以设置为1附近的实数。目标值可以属于1-x到1+x,x为0到1之间的实数,需要说明的是,x的取值包含0和1。通常目标值可以设置为1,在具体环境下,可以设置在1-x到1+x之间。

在本实施例中,目标值取值位于1-x到1+x之间。按照经验值,预设半径基本位于1-x到1+x之间,因此,设置目标值时,将该值设置在1-x到1+x之间,保证预设半径的准确性。如果目标值位于1-x到1+x之外,则表示设置可能出错,需要进行更正。该方法可以保证设置的预设半径的准确性。而且,由于目标值位于1-x到1+x之间,因此,初始的预设半径就是较为准确的数值,如果后续需要训练得到更为准确的预设半径,则训练的过程也会比初始未得到较为准确的预设半径的训练过程短,耗时少。

作为一种可选的示例,提取待识别的目标图片的目标特征图,包括:

获取目标图片的原始特征图;

对原始特征图进行非线性变换处理,得到目标特征图。

可选的,本实施例中可以对目标图片的原始特征图进行提取,提取原始特征图后,对原始特征图进行非线性变换,得到目标图片的目标特征图。

原始特征图可以为X1*Y1*Z1的特征图。经过非线性变换后,可以得到X2*Y2*Z2的特征图。X1表示原始特征图的宽,Y1表示原始特征图的高,Z1表示原始特征图的通道数。X2表示非线性变换后的目标特征图的宽,Y2表示非线性变换后的目标特征图的高,Z2表示非线性变换后的目标特征图的通道数。

本实施例中,原始特征图可以为提取图像的“Hu不变矩”。“Hu不变矩”是图像的一种统计特征,具有平移、旋转与比例不变性。可以将目标图片的“Hu不变矩”作为原始特征图。“Hu不变矩”可以通过提取模型提取。提取模型可以在输入目标图片后,输出目标图片的“Hu不变矩”。

本实施例中对原始特征图进行非线性变换处理,可以为将原始特征图视为自变量,采用除f(x)=ax+b之外的公式,代入自变量,得到因变量f(x)。其中,x为自变量,a和b为常数。公式本实施例并不限定,只要是将自变量x变换为非线性的结果即可。例如,公式可以为f(x)=x

本实施例中,采用上述方法,可以将目标图片的原始特征图转换为目标特征图,由于采用了非线性变换处理,因此,目标特征图是非线性的。该方法可以引入目标图片的更多的非线性特征,提升原始识别模型的泛化能力。

作为一种可选的示例,将目标特征图映射为高纬度特征向量,包括:

对目标特征图进行线性变换处理,得到第一特征图;

对第一特征图进行归一化处理,得到第二特征图;

对第二特征图进行线性修正处理,得到高纬度特征向量。

本实施例中,线性变换处理可以为将目标特征图视为自变量,采用f(x)=ax+b的公式得到因变量f(x),在本实施例中,自变量x为原始特征图,代入f(x)=ax+b的公式,得到的f(x)为第一特征图。其中,a和b为常数。线性修正可以采用公式f(x)=max(0,x),其中,x为第二特征图,f(x)为高纬度特征向量。

可选的,本实施例中,可以通过一个子网络得到高纬度特征向量。子网络也可以称为投影网络,由线性层、标准化层BatchNorm层、线性修正层ReLU层组成。目标特征图经过线性层、BatchNorm层、ReLU层的处理,得到高纬度特征向量。高纬度特征向量可以为n*m的特征向量,表示图片在高维空间的特征。其中,n*m的特征向量表示含有m个n维特征的向量。其中的m和n为自然数。

本实施例中,上述线性变换处理、归一化处理和线性修正处理,可以使原始识别模型识别到更多的目标图片的特征,提高原始识别模型的识别准确度。

作为一种可选的示例,在提取待识别的目标图片的目标特征图之前,方法还包括:

使用正样本图片确定样本中心图片,其中,正样本图片中包含表格。

作为一种可选的示例,使用正样本图片确定样本中心图片,包括:

获取多张正样本图片,并提取每张正样本图片的特征向量;

计算多张正样本图片的特征向量的均值,得到均值特征向量;

将特征向量与均值特征向量相同的正样本图片作为样本中心图片。

可选的,本实施例中,在确定样本中心图片时,可以使用多张正样本图片确定。将多张正样本图片的特征向量求取平均值,得到均值特征向量。然后,将特征向量与均值特征向量相同的正样本图片作为样本中心图片。或者,将特征向量与均值特征向量距离最小的正常本图片作为样本中心图片。在确定预设半径时,可以使用正样本图片训练原始识别模型。原始识别模型在被训练过程中,学习超平面半径参数。在原始识别模型稳定后,将学习到的超平面半径参数作为预设半径。

在本实施例中,使用正样本图片训练原始识别模型时,可以将正样本图片输入到原始识别模型中,由原始识别模型识别正样本图片,给出识别结果。在每一次的训练中,调整原始识别模型中的模型参数,使模型越来越准确。采用该方法,可以使用正样本图片即可训练出可以识别目标图片中是否包含表格的原始识别模型,提高训练原始识别模型的效率。

作为一种可选的示例,计算多张正样本图片的特征向量的均值,得到均值特征向量,包括:

将多张正样本图片分为多份;

确定每一份正样本图片的特征向量的均值,得到多个均值;

在任意两个均值的差异小于第一阈值的情况下,将多个均值中的任意一个均值确定为均值特征向量。第一阈值可以取大于0的任意值。

可选的,本实施例中,可以使用原始识别模型来计算均值特征向量。原始识别模型可以为训练后的原始识别模型。在计算均值特征向量时,可以将多张正样本图片分为多份,分份时可以平均分,也可以份与份中正样本图片的数量存在不同。分份之后,可以使用原始识别模型确定每一份正样本图片的特征向量的均值,得到多个均值,然后比对均值的差异。如果均值差异过大,则调整模型参数,继续计算上述均值与均值的差异,直到计算得到的均值的差异小于上述第一阈值,则模型训练完成,将差异小于上述第一阈值的多个均值中的任意一个均值作为均值特征向量。

采用该方法,可以使用正样本图片训练出可以识别目标图片中是否包含表格的原始识别模型,然后使用该原始识别模型识别目标图片中是否包含表格,提高识别表格的效率。

本实施例中的特定词汇解释:

Backbone:表示一种深度学习主干网络,用于提取图像特征,如ResNet,MobileNet(均为深度学习网络)等。

FeatureMap:经过Backbone一系列特征提取操作后,得到的特征图,用于后续进行分类或者其他任务。

BatchNorm:是一种批量归一化方法,将输入的数据分布进行归一化,使训练过程中更加稳定。

ReLU:线性修正单元,一种常用的激活函数。

结合图2与图3进行说明。本实施例中在对图片进行分类的过程中,对于表格样本图片(正样本图片和负样本图片),均带有标签,标签用于标记图片中是否包含表格。包含表格可以作为正样本图片,不包含表格可以作为负样本图片。该算法可以将表格样本图片映射到高纬度特征空间中。将表格样本图片中的正样本图片包裹在高维球面内部,而负样本图片则排除在高维球面外部。当识别一个目标图片时,如果样本特征点落入高维球面内,则该目标图片中包含表格,,否则该目标图片中未包含表格。如图2所示。在(a)中,对于二维数据,小圆点为表格样本图片的高纬度特征向量在特征空间的分布图,虚线的圆圈为随机初始化的分类边界。在(b)中,实线圆圈为经过原始识别模型学习后得到的半径为1的分类边界;落在分类边界内部的样本点则视为正样本图片(即包含表格),边界外的样本点则为负样本图片(即不包含表格)。

流程图如图3所示。原始图片经过主干网络Backbone进行特征提取,得到高层级的特征图FeatureMap,如:原始图片输入形状是U1*U2*U3,其中,U1、U2和U3为正整数,U1为原始图片的宽,U3为原始图片的高,U3为原始图片的通道数,经过Mobilenetv2多层网络非线性变化后,得到V1*V2*V3形状的FeatureMap。其中,V1、V2和V3为正整数,V1为经过Mobilenetv2多层网络非线性变化后的FeatureMap的宽,V2为经过Mobilenetv2多层网络非线性变化后的FeatureMap的的高,V3为经过Mobilenetv2多层网络非线性变化后的FeatureMap的的通道数。

这里的Backbone可以是任意的深度学习网络模型。本实施例设计了一个小型的子网络,称之为投影网络,由线性层、BatchNorm层、ReLU层组成的三层网络,目的是将得到的FeatureMap,进行映射转换成高纬度的n*m特征向量,这个特征向量表示了该图片在高维空间的特征。然后将特征向量与样本中心图片(样本中心center)的特征向量进行计算距离,若距离小于半径R,则判定该图片包含表格(该图片为表格图片),否则图片不包含表格(该图片为非表格图片)。其中,样本中心图片的计算方式是在训练过程中,动态计算每一批次的表格样本图片输出的均值,该均值即为样本中心图片,也就是说刚开始训练过程中,每一轮所计算得到的样本中心图片都是不一样的,但当训练稳定之后,样本中心图片趋于一致。这里的半径R是表示原始识别模型学习到的超平面半径,一般为1,也可以是其他自定义的数值。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

根据本申请实施例的另一方面,还提供了一种表格识别装置,如图4所示,包括:

提取模块402,用于提取待识别的目标图片的目标特征图;

映射模块404,用于将所述目标特征图映射为高纬度特征向量;

第一确定模块406,用于根据所述高纬度特征向量与样本中心图片的特征向量之间的距离,确定所述目标图片中是否包含表格,其中,所述样本中心图片为根据正样本图片确定的图片。

可选的,本实施例中,待识别是否包含表格的图片可以为一张或者多张,如果图片为多张,则可以将每一张图片作为一个待识别的目标图片,并识别目标图片中是否包含表格。

本实施例中的表格的线条,可以为直线,或者为偏离幅度小的曲线或者折线,如果偏离幅度大于了预定的值,则可以认为不是表格,如果偏离幅度小于或等于预定的值,可以认为线条构成了表格。

本实施例中的样本中心图片为根据样本图片确定的图片,样本图片为包含表格的正样本图片。

由于在上述方法中,在识别目标图片中是否存在表格的过程中,可以提取目标图片的目标特征图,并将提取的目标特征图映射为高纬度特征向量,通过比对高纬度特征向量与样本中心图片的特征向量的距离,来确定目标图片中是否存在表格,从而可以使用正样本图片就可以准确识别图片中是否有表格。

作为一种可选的示例,所述第一确定模块,包括:第一确定单元,用于在所述距离小于预设半径的情况下,确定所述目标图片中包含表格,其中,所述预设半径为根据所述正样本图片确定的半径;在所述距离大于或等于所述预设半径的情况下,确定所述目标图片中未包含表格。

本实施例中,可以根据正样本图片确定样本中心图片,以及根据正样本图来确定预设半径。在确定出正样本中心图片与预设半径之后,在识别目标图片时,可以获取目标图片的目标特征图,然后对目标特征图进行高纬度的映射,映射得到高纬度特征向量。最后,对于高纬度特征向量与样本中心图片的特征向量计算距离,计算得到的距离与预设半径进行比对,如果超出了预设半径,则表示表格的特征与样本中心图片的特征的距离太远,与正样本图片差异太大,因此,可以确定目标图片为未包含表格的图片。

在本实施例中,通过判断距离与预设半径的关系来确定目标图片中是否包含表格,由于预设半径是用来区分正样本图片(包含表格的图片)与负样本图片(未包含表格的图片)的分界,因此,通过比对距离与预设半径的关系,可以快速准确的判断出目标图片中是否包含表格。

可选的,本实施例中的预设半径的值可以根据训练样本得到,也可以为自定义的数值。

作为一种可选的示例,当预设半径的值是自定义的数值时,在确定目标图片中是否包含表格之前,还包括半径设置过程,即:

响应于半径设置指令,获取半径设置指令中包括的预设值;

将预设值确定为预设半径。

这里,预设值可以为根据历史数据得到的经验值。通过半径设置指令,通过设置预设值,从而可以设置预设半径的数值。预设半径的取值可以为0到2之间的实数,取值也可以为0或2。

本实施例中,可以自定义预设半径的值,自定义预设半径的值可以通过经验值直接得到较为准确的预设半径,省去了学习得到预设半径的过程,提高了确定预设半径的效率。

作为一种可选的示例,当预设半径的值是根据训练样本得到的时,可以使用正样本图片训练原始识别模型。原始识别模型在被训练过程中,学习超平面半径参数。在原始识别模型稳定后,将学习到的超平面半径参数作为预设半径。正样本图片被输入到原始识别模型中。原始识别模型识别输入的正样本图片得到输出结果,输出结果可能正确也可能错误。随着训练的次数与周期的增加,原始识别模型对正样本图片的识别的准确度也越来越高。在此过程中,超平面半径参数的值可能会发生变化(也可能不变)。在原始识别模型的识别准确度大于一个预期的值,例如大于99%的情况下,将当前的超平面半径参数作为训练得到的预设半径,预设半径被固定,不再发生变化。

本实施例中,学习超平面半径参数得到预设半径,可以得到最为准确的预设半径。如果通过自定义预设半径,可以满足大部分的应用场景,预设半径的准确度可以得到基本的保证。而学习超平面半径参数得到预设半径,相比于自定义预设半径,所得到的预设半径的准确度更高。

作为一种可选的示例,所述装置还包括:获取模块,用于响应于调整指令,获取所述调整指令中包括的目标值;调整模块,用于将所述预设半径的值调整为所述目标值。

如果自定义该预设半径,可以通过调整指令进行设定。系统根据调整指令调整预设半径的值。

预设半径可以灵活调整,目的在于使预设半径时刻处于准确的状态,适应各种场景的需求,避免由于场景调整后,预设半径仍处于原场景下造成的识别不准确的问题。

作为一种可选的示例,所述目标值属于1-x到1+x,其中,所述x为0到1之间的实数。

可选的,本实施例中,目标值可以设置为1附近的实数。目标值可以属于1-x到1+x,所述x为0到1之间的实数。通常目标值可以设置为1,在具体环境下,可以设置在1-x到1+x之间。

可选的,本实施例中,目标值可以设置为1附近的实数。目标值可以属于1-x到1+x,x为0到1之间的实数,需要说明的是,x的取值包含0和1。通常目标值可以设置为1,在具体环境下,可以设置在1-x到1+x之间。

在本实施例中,目标值取值位于1-x到1+x之间。按照经验值,预设半径基本位于1-x到1+x之间,因此,设置目标值时,将该值设置在1-x到1+x之间,保证预设半径的准确性。如果目标值位于1-x到1+x之外,则表示设置可能出错,需要进行更正。该方法可以保证设置的预设半径的准确性。而且,由于目标值位于1-x到1+x之间,因此,初始的预设半径就是较为准确的数值,如果后续需要训练得到更为准确的预设半径,则训练的过程也会比初始未得到较为准确的预设半径的训练过程短,耗时少。

作为一种可选的示例,所述提取模块,包括:第一获取单元,用于获取所述目标图片的原始特征图;变换单元,用于对所述原始特征图进行非线性变换处理,得到所述目标特征图。

可选的,本实施例中可以对目标图片的原始特征图进行提取,提取原始特征图后,对原始特征图进行非线性变换,得到目标图片的目标特征图。

原始特征图可以为X1*Y1*Z1的特征图。经过非线性变换后,可以得到X2*Y2*Z2的特征图。X1表示原始特征图的宽,Y1表示原始特征图的高,Z1表示原始特征图的通道数。X2表示非线性变换后的目标特征图的宽,Y2表示非线性变换后的目标特征图的高,Z2表示非线性变换后的目标特征图的通道数。

本实施例中,原始特征图可以为提取图像的“Hu不变矩”。“Hu不变矩”是图像的一种统计特征,具有平移、旋转与比例不变性。可以将目标图片的“Hu不变矩”作为原始特征图。“Hu不变矩”可以通过提取模型提取。提取模型可以在输入目标图片后,输出目标图片的“Hu不变矩”。

本实施例中对原始特征图进行非线性变换处理,可以为将原始特征图视为自变量,采用除f(x)=ax+b之外的公式,代入自变量,得到因变量f(x)。其中,x为自变量,a和b为常数。公式本实施例并不限定,只要是将自变量x变换为非线性的结果即可。例如,公式可以为f(x)=x

本实施例中,采用上述方法,可以将目标图片的原始特征图转换为目标特征图,由于采用了非线性变换处理,因此,目标特征图是非线性的。该方法可以引入目标图片的更多的非线性特征,提升原始识别模型的泛化能力。

作为一种可选的示例,所述映射模块,包括:处理单元,用于对所述目标特征图进行线性变换处理,得到第一特征图;对所述第一特征图进行归一化处理,得到第二特征图;对所述第二特征图进行线性修正处理,得到所述高纬度特征向量。

本实施例中,线性变换处理可以为将目标特征图视为自变量,采用f(x)=ax+b的公式得到因变量f(x),在本实施例中,自变量x为原始特征图,代入f(x)=ax+b的公式,得到的f(x)为第一特征图。其中,a和b为常数。线性修正可以采用公式f(x)=max(0,x),其中,x为第二特征图,f(x)为高纬度特征向量。

可选的,本实施例中,可以通过一个子网络得到高纬度特征向量。子网络也可以称为投影网络,由线性层、标准化层BatchNorm层、线性修正层ReLU层组成。目标特征图经过线性层、BatchNorm层、ReLU层的处理,得到高纬度特征向量。高纬度特征向量可以为n*m的特征向量,表示图片在高维空间的特征。其中,n*m的特征向量表示含有m个n维特征的向量。其中的m和n为自然数。

本实施例中,上述线性变换处理、归一化处理和线性修正处理,可以使原始识别模型识别到更多的目标图片的特征,提高原始识别模型的识别准确度。

作为一种可选的示例,所述装置还包括:第二确定模块,用于在提取待识别的目标图片的目标特征图之前使用所述正样本图片确定所述样本中心图片。

作为一种可选的示例,第二确定模块,包括:第二获取单元,用于获取多张正样本图片,并提取每张所述正样本图片的特征向量,其中,所述正样本图片中包含表格;计算单元,用于计算所述多张正样本图片的特征向量的均值,得到均值特征向量;第二确定单元,用于将所述特征向量与所述均值特征向量相同的正样本图片作为所述样本中心图片。

可选的,本实施例中,在确定样本中心图片时,可以使用多张正样本图片确定。将多张正样本图片的特征向量求取平均值,得到均值特征向量。然后,将特征向量与均值特征向量相同的正样本图片作为样本中心图片。或者,将特征向量与均值特征向量距离最小的正常本图片作为样本中心图片。在确定预设半径时,可以使用正样本图片训练原始识别模型。原始识别模型在被训练过程中,学习超平面半径参数。在原始识别模型稳定后,将学习到的超平面半径参数作为预设半径。

在本实施例中,使用正样本图片训练原始识别模型时,可以将正样本图片输入到原始识别模型中,由原始识别模型识别正样本图片,给出识别结果。在每一次的训练中,调整原始识别模型中的模型参数,使模型越来越准确。采用该方法,可以使用正样本图片即可训练出可以识别目标图片中是否包含表格的原始识别模型,提高训练原始识别模型的效率。

作为一种可选的示例,所述计算单元,包括:处理子单元,用于将所述多张正样本图片分为多份;确定每一份所述正样本图片的特征向量的均值,得到多个均值;在任意两个所述均值的差异小于第一阈值的情况下,将多个所述均值中的任意一个均值确定为所述均值特征向量。第一阈值可以取大于0的任意值。

可选的,本实施例中,可以使用原始识别模型来计算均值特征向量。原始识别模型可以为训练后的原始识别模型。在计算均值特征向量时,可以将多张正样本图片分为多份,分份时可以平均分,也可以份与份中正样本图片的数量存在不同。分份之后,可以使用原始识别模型确定每一份正样本图片的特征向量的均值,得到多个均值,然后比对均值的差异。如果均值差异过大,则调整模型参数,继续计算上述均值与均值的差异,直到计算得到的均值的差异小于上述第一阈值,则模型训练完成,将差异小于上述第一阈值的多个均值中的任意一个均值作为均值特征向量。

采用该方法,可以使用正样本图片训练出可以识别目标图片中是否包含表格的原始识别模型,然后使用该原始识别模型识别目标图片中是否包含表格,提高识别表格的效率。

本实施例的其他示例请参见上述示例,在此不在赘述。

图5是根据本申请实施例的一种可选的电子设备的结构框图,如图5所示,包括处理器502、通信接口504、存储器506和通信总线508,其中,处理器502、通信接口504和存储器506通过通信总线508完成相互间的通信,其中,

存储器506,用于存储计算机程序;

处理器502,用于执行存储器506上所存放的计算机程序时,实现如下步骤:

提取待识别的目标图片的目标特征图;

将所述目标特征图映射为高纬度特征向量;

根据所述高纬度特征向量与样本中心图片的特征向量之间的距离,确定所述目标图片中是否包含表格,其中,所述样本中心图片为根据正样本图片确定的图片。

可选地,在本实施例中,上述的通信总线可以是PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线、或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括RAM,也可以包括非易失性存储器(non-volatile memory),例如,至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。

作为一种示例,上述存储器506中可以但不限于包括上述表格识别装置中的提取模块402、映射模块404以及第一确定模块406。此外,还可以包括但不限于上述请求的处理装置中的其他模块单元,本示例中不再赘述。

上述处理器可以是通用处理器,可以包含但不限于:CPU(Central ProcessingUnit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(DigitalSignal Processing,数字信号处理器)、ASIC(Application Specific IntegratedCircuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。

本领域普通技术人员可以理解,图5所示的结构仅为示意,实施上述表格识别方法的设备可以是终端设备,该终端设备可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图5其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图5中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图5所示的不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、ROM、RAM、磁盘或光盘等。

根据本发明的实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被处理器运行时执行上述表格识别方法中的步骤。

可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 表格识别方法和装置、表格语义识别方法和装置
  • 图片表格识别方法及图片表格识别装置
技术分类

06120116495804