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

表格结构识别的方法、装置、存储介质及电子设备

文献发布时间:2023-06-19 12:19:35


表格结构识别的方法、装置、存储介质及电子设备

技术领域

本公开涉及表格结构的识别领域,具体地,涉及一种表格结构识别的方法、装置、存储介质及电子设备。

背景技术

表格结构识别作为OCR(Optical Character Recognition,光学字符识别)技术中一个重要的子领域,在许多文字识别的应用中有着不可或缺的地位。

相关技术中可以使用图表示表格结构,运用表格图像特征和文字位置特征,基于图神经网络得到表征表格结构的图,但该方法在使用文本特征识别表格结构时,仅仅是基于文字位置以及文本字符串长度作为特征,该特征的引入并未对表格结构识别带来实质上的信息增益,使得表格结构识别的准确性不足,另外,该方法在对图像特征采样的过程中,是直接对图像特征图中ROI区域的中心位置进行采样,该采样后的图像特征并不能表示整体表格的图像特征信息,这也会影响表格结构识别的准确性。

发明内容

本公开的目的是提供一种表格结构识别的方法、装置、存储介质及电子设备。

第一方面,提供一种表格结构识别方法,所述方法包括:

将待识别表格对应的表格图像作为预先训练得到的目标检测模型的输入,得到所述待识别表格中每个表格元素的位置特征和元素类别,所述元素类别包括文字行;通过预先训练得到的文字识别模型对所述文字行进行文字识别,得到每个所述文字行的文本语义特征;通过预先训练得到的图像特征提取模型对所述表格图像进行特征提取,得到图像特征图,并根据所述位置特征对所述图像特征图进行采样,得到每个所述表格元素分别对应的目标图像特征;根据所述位置特征、所述文本语义特征以及所述目标图像特征,通过预设关系提取模型得到目标关系特征,所述目标关系特征用于表征所述待识别表格中每两个所述表格元素之间的拓扑关系;根据所述目标关系特征通过预设分类模型确定图邻接矩阵,所述图邻接矩阵用于表征所述待识别表格的表格结构。

可选地,所述元素类别还包括空白单元格和/或插图。

可选地,所述目标检测模型包括PSENet模型;所述将待识别表格对应的表格图像作为预先训练得到的目标检测模型的输入,得到所述待识别表格中每个表格元素的位置特征和元素类别包括:将所述表格图像输入所述PSENet模型,得到所述待识别表格中每个所述表格元素对应的所述元素类别和最小外接矩形的顶点位置,并将所述最小外接矩形的顶点位置作为该表格元素的位置特征。

可选地,所述文字识别模型包括文字内容识别模型以及与所述文字内容识别模型的输出层连接的文本语义识别模型;所述通过预先训练得到的文字识别模型对所述文字行进行文字识别,得到每个所述文字行的文本语义特征包括:通过所述文字内容识别模型对元素类别为所述文字行的表格元素进行文本识别,得到每个所述文字行的文本内容;针对每个所述文字行,按照预设分词算法对该文字行的文本内容进行分词处理得到多个子级词条以及每个子级词条分别对应的语言类别;将多个所述子级词条以及每个所述子级词条对应的所述语言类别输入所述文本语义识别模型,得到每个所述文字行的所述文本语义特征。

可选地,所述文本语义识别模型包括多语言预训练模型XLM-Roberta。

可选地,在所述将多个所述子级词条以及每个所述子级词条对应的所述语言类别输入所述文本语义识别模型之前,所述方法还包括:获取所述语言类别对应的目标文本语义识别模型;所述将多个所述子级词条以及每个所述子级词条对应的所述语言类别输入所述文本语义识别模型包括:将多个所述子级词条以及每个所述子级词条对应的所述语言类别输入所述目标文本语义识别模型,得到每个所述文字行的所述文本语义特征。

可选地,所述根据所述位置特征对所述图像特征图进行采样,得到每个所述表格元素分别对应的目标图像特征包括:根据所述位置特征确定每个所述表格元素在所述图像特征图中的特征区域;通过ROI Pooling方法对每个所述特征区域进行特征尺寸对齐,得到每个所述表格元素分别对应的所述目标图像特征。

可选地,所述预设关系提取模型包括动态图卷积网络DGCNN模型,所述根据所述位置特征、所述文本语义特征以及所述目标图像特征,通过预设关系提取模型得到目标关系特征包括:针对多个所述表格元素中的每个表格元素,将该表格元素对应的所述位置特征、所述文本语义特征以及所述目标图像特征进行特征融合,得到该表格元素对应的多模态特征;将每个所述表格元素对应的所述多模态特征输入所述DGCNN模型,得到所述待识别表格对应的所述目标关系特征。

可选地,所述DGCNN模型包括多个依次连接的边卷积层,所述将每个所述表格元素对应的所述多模态特征输入所述DGCNN模型,得到所述待识别表格对应的所述目标关系特征包括:针对每个所述边卷积层,通过K-近邻KNN算法确定每个表格元素分别对应的元素集合,所述元素集合包括当前表格元素以及与所述当前表格元素对应的K个邻近表格元素,所述当前表格元素为任一所述表格元素;对所述元素集合中每个表格元素分别对应的所述多模态特征进行边卷积运算,得到所述当前表格元素对应的新的表格元素特征;将当前变卷积层计算得到的每个表格元素分别对应的新的表格元素特征作为下一个边卷积层的输入,并将最后一个边卷积层输出的每个表格元素分别对应的新的表格元素特征作为所述目标关系特征。

可选地,所述预设分类模型包括多个,不同的预设分类模型输出不同的图邻接矩阵,在所述根据所述目标关系特征通过预设分类模型确定图邻接矩阵之前,所述方法还包括:针对所述待识别表格中的每个表格元素,从所述待识别表格的全部表格元素中确定该表格元素对应的目标表格元素,并针对每个所述目标表格元素,将该表格元素与该目标表格元素组成顶点对;针对每个顶点对,将该顶点对中的两个表格元素分别对应的所述目标关系特征进行特征合并,得到该顶点对对应的目标特征;所述根据所述目标关系特征通过预设分类模型确定图邻接矩阵包括:针对多个所述预设分类模型中的每个预设分类模型,将每个所述顶点对对应的所述目标特征输入该预设分类模型,得到该预设分类模型对应的所述图邻接矩阵。

可选地,所述从所述待识别表格的全部表格元素中确定该表格元素对应的目标表格元素包括:从所述全部表格元素中确定与该表格元素存在连接关系的第一表格元素;从其它表格元素中随机选取N个第二表格元素,所述其它表格元素为所述全部表格元素中除所述第一表格元素和该表格元素以外的表格元素,所述N为所述第一表格元素的数量;将所述第一表格元素和所述第二表格元素作为所述目标表格元素。

可选地,所述根据所述目标关系特征通过预设分类模型确定图邻接矩阵后,所述方法还包括:根据所述图邻接矩阵构建待输出的目标表格。

可选地,所述图邻接矩阵包括单元格关系图邻接矩阵、行关系图邻接矩阵以及列关系图邻接矩阵,所述根据所述图邻接矩阵构建待输出的目标表格包括:对所述单元格关系图邻接矩阵进行最大团分解,得到多个第一最大团,不同的第一最大团对应不同的单元格;将每个所述第一最大团中的待定顶点合并为单个目标顶点,并根据合并结果更新所述行关系图邻接矩阵以及所述列关系图邻接矩阵,其中,所述待定顶点与所述表格元素一一对应;根据更新后的行关系图邻接矩阵和更新后的列关系图邻接矩阵构建所述目标表格。

可选地,所述根据更新后的行关系图邻接矩阵和更新后的列关系图邻接矩阵构建所述目标表格包括:对更新后的行关系图邻接矩阵进行最大团分解,得到多个第二最大团,并对更新后的列关系图邻接矩阵进行最大团分解,得到多个第三最大团,不同的第二最大团对应不同的行,不同的第三最大团对应不同的列;将所述第二最大团的数量作为所述待识别表格的目标行数,将所述第三最大团的数量作为所述待识别表格的目标列数;针对每个所述目标顶点,确定该目标顶点所在的所述第二最大团的第一数量,并确定该目标顶点所在的所述第三最大团的第二数量;根据所述第一数量确定该目标顶点对应的单元格所在的行数,根据所述第二数量确定该目标顶点对应的单元格所在的列数,并根据所述行数和所述列数确定该目标顶点对应的单元格的宽度和高度;根据所述目标行数、所述目标列数以及每个单元格的宽度和高度构建所述目标表格。

第二方面,提供一种表格结构识别装置,所述装置包括:

检测模块,用于将待识别表格对应的表格图像作为预先训练得到的目标检测模型的输入,得到所述待识别表格中每个表格元素的位置特征和元素类别,所述元素类别包括文字行;

文本语义识别模块,用于通过预先训练得到的文字识别模型对所述文字行进行文字识别,得到每个所述文字行的文本语义特征;

图像特征提取模块,用于通过预先训练得到的图像特征提取模型对所述表格图像进行特征提取,得到图像特征图,并根据所述位置特征对所述图像特征图进行采样,得到每个所述表格元素分别对应的目标图像特征;

关系特征提取模块,用于根据所述位置特征、所述文本语义特征以及所述目标图像特征,通过预设关系提取模型得到目标关系特征,所述目标关系特征用于表征所述待识别表格中每两个所述表格元素之间的拓扑关系;

确定模块,用于根据所述目标关系特征通过预设分类模型确定图邻接矩阵,所述图邻接矩阵用于表征所述待识别表格的表格结构。

第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。

第四方面,提供一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。

通过上述技术方案,将待识别表格对应的表格图像作为预先训练得到的目标检测模型的输入,得到所述待识别表格中每个表格元素的位置特征和元素类别,所述元素类别包括文字行;通过预先训练得到的文字识别模型对所述文字行进行文字识别,得到每个所述文字行的文本语义特征;通过预先训练得到的图像特征提取模型对所述表格图像进行特征提取,得到图像特征图,并根据所述位置特征对所述图像特征图进行采样,得到每个所述表格元素分别对应的目标图像特征;根据所述位置特征、所述文本语义特征以及所述目标图像特征,通过预设关系提取模型得到目标关系特征,所述目标关系特征用于表征所述待识别表格中每两个所述表格元素之间的拓扑关系;根据所述目标关系特征通过预设分类模型确定图邻接矩阵,所述图邻接矩阵用于表征所述待识别表格的表格结构,由于在表格中同属于同一个逻辑单元(可以是单元格,行或列等)的文本内容的语义具有极高的相关性,即文本内容的语义对于不同表格、不同表格元素间的逻辑关系具有较高的信息增益,另外,对于表格线缺失或布局复杂的表格中,仅依靠视觉线索(即表格的图像特征)不足以正确的解析表格结构,而表格中元素的文本语义特征则可以与图像特征互为补充,使得模型可以应对更为复杂的输入,因此,通过识别每个文字行的文本语义特征,并将该文本语义特征和图像特征以及位置特征组成多模态特征一起作为预设关系提取模型的输入,可以提升模型识别的准确率和鲁棒性,与此同时,可以根据每个表格元素的位置特征对待识别表格的图像特征图进行采样,避免了仅对感兴趣区域的中心位置进行采样,从而可以得到具有充分表达能力的每个表格元素分别对应的该目标图像特征,在将该目标图像特征输入模型进行表格结构识别时,可以进一步提高表格结构识别的准确性。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据一示例性实施例示出的一种表格结构识别的方法的流程图;

图2是根据一示例性实施例示出的一种待识别表格的示意图;

图3是根据一示例性实施例示出的一种边卷积运算过程示意图;

图4是根据一示例性实施例示出的一种表格结构识别的方法的流程图;

图5a-5h是根据一示例性实施例示出的一种表格结构识别的过程示意图;

图6是根据一示例性实施例示出的一种表格结构识别装置的框图;

图7是根据上一示例性实施例示出的一种电子设备的结构框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

首先对本公开的应用场景进行介绍,本公开主要应用于文字识别中的表格结构识别的场景中,通常来说,表格结构识别是基于对待识别表格进行聚焦拍照、扫描OCR的识别技术,实现对图像表格的结构化识别,例如,可以识别表格中的每个单元格的位置信息、每个单元格的行列归属(每个单元格与哪些单元格同属一行,与哪些单元格同属一列)、各个单元格占用的行列数以及表格整体的行列结构等信息。

现有的表格结构识别方式主要有以下几种:

一、对待识别表格进行文字行检测,并根据文本框的空间布局信息推导表格结构信息,但该方法高度依赖人工规则设计,对于不同布局类型的表格需要做出针对性开发,泛化性能及可推广性较差;另外,在大量表格中,单元格内容可能为空白或不含文字的插图,对于这类表格该方法完全不能处理;并且对于文字布局完全相同的表格,其单元格布局情形有可能不同,该方法同样难以处理。

二、运用图像形态学变换、纹理提取、边缘检测等手段,提取表格线,再由表格线交叉点等信息推断表格中行、列与单元格信息,但是,该方法同样依赖人工设计的启发式规则,可推广性较差,并且极度依赖传统的数字图像处理技术来提取特征,而传统的图像处理算法的鲁棒性则高度依赖于图像的质量,轻微的噪声扰动(如拍摄角度带来的透视畸变,光照的强弱,阴影,以及各类数字图像成像过程中带来的噪声)都会对结果带来巨大差异。

三、将表格的结构表示为某种标记语言构成的序列如html或LATEX,并将表述表格结构的序列作为目标,使用图像到序列的深度学习模型进行端到端学习,但是,由于模型的准确率与序列长度呈负相关,对于复杂布局的表格对应的目标序列极长,使得模型的预测时间复杂度也较高,运行效率较低。

四、使用基于目标检测或实例分割的深度学习模型检测表格中单元格,再使用启发式方法进行行列关系的推断从而得到表格结构,该方法虽然使用了深度学习模型对单元格位置进行定位或分割,但仍然依赖于启发式算法重建表格结构,这在处理复杂布局的表格图像时还是受限于人工设计的规则的完备性。

五、使用图表示表格结构,运用表格图像特征和文字位置特征,使用图神经网络得到表征表格结构的图,但该方法在使用文本特征识别表格结构时,仅仅是基于文字位置以及文本字符串长度作为特征,该特征的引入并未对表格结构识别带来实质上的信息增益,使得表格结构识别的准确性不足,另外,该方法在对图像特征采样的过程中,是直接对图像特征图中ROI区域的中心位置进行采样,该采样后的图像特征并不能表示整体表格的图像特征信息,这也会影响表格结构识别的准确性,并且也没有考虑表格中单元格为空或内容不为纯文本的情况(例如,插图),针对不同类型的表格结构,无法进行准确的识别。

为解决上述存在的问题,本公开提供一种表格结构识别的方法、装置、存储介质及电子设备,可以将待识别表格对应的表格图像作为目标检测模型的输入,得到待识别表格中每个表格元素的位置特征和元素类别,元素类别包括文字行;通过文字识别模型对文字行进行文字识别,得到每个文字行的文本语义特征;通过图像特征提取模型对表格图像进行特征提取,得到图像特征图,并对图像特征图进行采样,得到每个表格元素分别对应的目标图像特征;根据位置特征、文本语义特征以及目标图像特征,通过预设关系提取模型得到用于表征待识别表格中每两个表格元素之间的拓扑关系的目标关系特征,根据目标关系特征通过预设分类模型确定用于表征待识别表格的表格结构的图邻接矩阵。

本公开不使用启发式算法推断表格结构,而是使用动态图卷积神经网络直接对表格元素进行建模,得到表征表格结构的图邻接矩阵,从而可以基于图邻接矩阵重建表格。

另外,由于在表格中同属于同一个逻辑单元(可以是单元格,行或列等)的文本内容的语义具有极高的相关性,即文本内容的语义对于不同表格、不同表格元素间的逻辑关系具有较高的信息增益,另外,对于表格线缺失或布局复杂的表格中,仅依靠视觉线索(即表格的图像特征)不足以正确的解析表格结构,而表格中元素的文本语义特征则可以与图像特征互为补充,使得模型可以应对更为复杂的输入,因此,通过识别每个文字行的文本语义特征,并将该文本语义特征和图像特征以及位置特征组成多模态特征一起作为预设关系提取模型的输入,可以提升模型识别的准确率和鲁棒性。

与此同时,可以根据每个表格元素的位置特征对待识别表格的图像特征图进行采样,避免了仅对感兴趣区域的中心位置进行采样,从而可以得到具有充分表达能力的每个表格元素分别对应的该目标图像特征,在将该目标图像特征输入模型进行表格结构识别时,可以进一步提高表格结构识别的准确性。

下面结合附图对本公开的具体实施方式进行详细说明。

图1是根据一示例性实施例示出的一种表格结构识别的方法的流程图,如图1所示,该方法包括以下步骤:

在步骤S101中,将待识别表格对应的表格图像作为预先训练得到的目标检测模型的输入,得到该待识别表格中每个表格元素的位置特征和元素类别,该元素类别包括文字行。

在实际的表格结构识别场景中,可以先通过扫描或者拍照的方式采集该待识别表格对应的该表格图像,另外,对于含有表格元信息的电子文档(如html页面,PDF文件,doc文件等),可以采用文档截图的方式采集该表格图像。

其中,该目标检测模型可以包括PSENet模型,PSENet模型是一种语义分割类模型,因此相对于常规的目标检测类模型来说,对目标尺度的变化更加鲁棒,另外,该目标检测模型还可以使用其它目标检测或语义分割类模型,本公开对此不作限定,该表格元素即为该待识别表格中的单元格(包括合并单元格以及非合并单元格),该元素类别可以包括文字行、空白单元格以及非文本内容(如插图),例如,图2是根据一示例性实施例示出的一种待识别表格的示意图,如图2所示,该待识别表格中同时存在文字行、空白单元格以及插图三类表格元素。

在本步骤中,可以将该表格图像输入该PSENet模型,得到该待识别表格中每个该表格元素对应的该元素类别,和每个表格元素对应的最小外接矩形的顶点位置,并将该最小外接矩形的顶点位置作为该表格元素的位置特征,其中,该最小外接矩形的顶点可以包括该最小外接矩形的四个顶点或者包括该最小外接矩形任一对角线对应的两个顶点。

在步骤S102中,通过预先训练得到的文字识别模型对该文字行进行文字识别,得到每个该文字行的文本语义特征。

其中,该文字识别模型可以包括文字内容识别模型以及与该文字内容识别模型的输出层连接的文本语义识别模型,该文字内容识别模型可以为CRNN(ConvolutionalRecurrent Neural Network,卷积循环神经网络)模型,考虑到在教育场景下,表格来源于不同学科,表格中的语料内容可能是跨语言的,因此,为了能够对不同语言类型的文本内容进行语义识别,该文本语义识别模型可以包括多语言预训练模型XLM-Roberta,具体地,可以基于XLM-Roberta模型中的XLM-7作为提取文本语义特征的模块。

在本步骤中,可以通过该文字内容识别模型对元素类别为该文字行的表格元素进行文本识别,得到每个该文字行的文本内容;针对每个该文字行,按照预设分词算法对该文字行的文本内容进行分词处理得到多个子级词条(sub-word level token)以及每个子级词条分别对应的语言类别;将多个该子级词条以及每个该子级词条对应的该语言类别输入该文本语义识别模型,得到每个该文字行的该文本语义特征,该语言类别可以包括中文、英文或者日文等。

在一种可能的实现方式中,该预设分词算法可以选用XLM-Roberta自带的BPE(Byte Pair Encoding)分词算法,该文本语义识别模型的输出可以记为:

F

其中,v1表示元素类别为文字行的表格元素的数量,r表示该文本语义识别模型的输出层特征向量的通道数。

对于目标场景的语言确定的情况下,该文本语义识别模型可以选用在目标语言上精度更高的语言模型,以此提高识别结果的准确性,因此,在一种可能的实现方式中,可以根据不同的语言类别设置不同的文本语义识别模型,这样,在将多个该子级词条以及每个该子级词条对应的该语言类别输入该文本语义识别模型之前,本公开还可以获取该语言类别对应的目标文本语义识别模型,从而可以将多个该子级词条以及每个该子级词条对应的该语言类别输入该目标文本语义识别模型,得到每个该文字行的该文本语义特征。

另外,对于实时性要求较高或硬件算力较弱的应用场景下,可以选择更加轻量级的算法或模型来进行文本语义特征的提取,因此,本公开对该文本语义识别模型的具体模型不作限定。

需要说明的是,为了后续过程的可计算性,不同表格元素之间的文本语义特征需要对齐,而每个表格元素的输入序列并不是等长序列,在本公开一种可能的实现方式中,可以选取Transformer Encoder输出序列的第一个时间片的特征向量代表整个序列的特征,由于在Transformer Encoder中每一层都包含一个self-attention Layer(自注意力层),因此每一个时间片都一定程度上包含整个序列的全局信息,又因为模型输出序列第一个时间片并不参与损失函数的计算与梯度更新,因此第一个时间片的特征可以表征序列的全局特征。

还需说明的是,本步骤仅需对元素类别为文字行的表格元素进行特征提取,对于表格元素为空白单元格或者插图的类型,则可以直接使用统一的预设值(如0)作为向量元素,得到一个维度为r的向量表示(或者可以使用可训练的embedding向量表示这两类表格元素的特征),然后将这两类表格元素的特征与基于文本语义识别模型提取的文字行的文本语义特征进行合并,得到最终的文本特征矩阵:

F

其中,v表示待识别表格中表格元素的总数量。

在步骤S103中,通过预先训练得到的图像特征提取模型对该表格图像进行特征提取,得到图像特征图,并根据该位置特征对该图像特征图进行采样,得到每个该表格元素分别对应的目标图像特征。

其中,该图像特征提取模型可以包括CNN(Convolutional Neural Networks,卷积神经网络)模型,例如,该图像特征提取模型可以为resNet50。

在根据该位置特征对该图像特征图进行采样,得到每个该表格元素分别对应的目标图像特征的过程中,可以根据该位置特征确定每个该表格元素在该图像特征图中的特征区域;通过ROI Pooling方法对每个该特征区域进行特征尺寸对齐,得到每个该表格元素分别对应的该目标图像特征。

在一种可能的实施方式中,可以根据每个表格元素的位置特征和该CNN模型的下采样倍率计算每个表格元素在该图像特征图中对应的位置,然后通过ROI Pooling方法将每个表格元素在该图像特征图上所对应的特征归一化为一个维度为q的向量,即为该目标图像特征,将每个表格元素对应的该目标图像特征进行拼接组合后得到该待识别表格整体的图像特征可以表示为:

F

其中,v表示待识别表格中表格元素的总数量,q表示每个表格元素对应的该目标图像特征的维度。

在步骤S104中,根据该位置特征、该文本语义特征以及该目标图像特征,通过预设关系提取模型得到目标关系特征,该目标关系特征用于表征该待识别表格中每两个该表格元素之间的拓扑关系。

其中,该文本语义特征包括合并后的文本语义特征,该合并后的文本语义特征是指将通过文本语义特征提取模型提取出的每个文字行的文本语义特征与该待识别表格中的空白单元格和插图分别对应的预设文本语义特征(指使用统一的预设值(如0)作为向量元素的特征)进行合并后的特征,该预设关系提取模型可以包括动态图卷积神经网络DGCNN模型,待识别表格中每两个表格元素之间的拓扑关系可以包括以下三类:该两个表格元素是否属于同一单元格,该两个表格元素是否属于同一行,以及该两个表格元素是否属于同一列。

另外,该目标关系特征可以理解为语境化特征,语境化是指每个表格元素与其它表格元素之间的信息传递,因为每个表格元素与其它表格元素的关系不仅仅取决于自身的特征,同时取决于若干其它表格元素的特征,因此在本公开中引入了动态图卷积神经网络来构建图顶点(本文中提到的顶点均与表格元素一一对应)间的拓扑关系,并完成此类信息传递。

在本步骤中,可以针对多个该表格元素中的每个表格元素,将该表格元素对应的该位置特征、该文本语义特征以及该目标图像特征进行特征融合,得到该表格元素对应的多模态特征;将每个该表格元素对应的该多模态特征输入该DGCNN模型,得到该待识别表格对应的该目标关系特征。

在一种可能的实现方式中,该待识别表格中的全部表格元素对应的该位置特征可以表示为:

F

其中,v表示该待识别表格中表格元素的数量。

如上所述,该待识别表格整体的图像特征可以表示为:F

F∈R

其中,v表示该待识别表格中表格元素的数量,该矩阵的第i行代表待识别表格中第i个表格元素对应的该多模态特征。

该DGCNN模型可以包括多个依次连接的边卷积层,在得到顶点的多模态特征之后,即可以使用动态图卷积神经网络提取表格元素之间隐含的关系特征,不同于普通的GCN(图卷积网络),在DGCNN中图的拓扑结构不是固定的,而是在网络中的每一层动态更新,并在每一层中对连接邻居顶点对的边进行edge-conv(边卷积)运算得到新的特征。由于图的拓扑结构是未知的,每个顶点的邻接关系也是未知的,因此在每一层进行边卷积运算之前需要先计算每个顶点的邻域,因此,在将每个该表格元素对应的该多模态特征输入该DGCNN模型,得到该待识别表格对应的该目标关系特征的过程中,一种可能的实现方式可以是:针对每个该边卷积层,通过K-近邻KNN算法确定每个表格元素分别对应的元素集合(表征该当前表格元素对应的顶点的邻域),该元素集合包括当前表格元素以及与该当前表格元素对应的K个邻近表格元素,该当前表格元素为任一该表格元素;然后对该元素集合中每个表格元素分别对应的该多模态特征进行边卷积运算,得到该当前表格元素对应的新的表格元素特征;将当前变卷积层计算得到的每个表格元素分别对应的新的表格元素特征作为下一个边卷积层的输入,并将最后一个边卷积层输出的每个表格元素分别对应的新的表格元素特征作为该目标关系特征。

示例地,图3是根据一示例性实施例示出的一种边卷积运算过程示意图,如图3所示,以x

relu(x)=max(0,x)

其中,θ={θ

出于对模型识别效率与模型复杂度的考虑,在一种可能的实现方式中可以使用5层连续的edge-conv组建动态图卷积网络,即该DGCNN模型可以包括5层依次连接的边卷积层,从而得到最终的关系特征矩阵:

F

其中,s为最后一层edge-conv的卷积核数量,例如,s=1024,该卷积核数量可以根据实际情况进行调整,本公开对此不作限定。

在步骤S105中,根据该目标关系特征通过预设分类模型确定图邻接矩阵,该图邻接矩阵用于表征该待识别表格的表格结构。

其中,该预设分类模型可以包括包括多个,并且该预设分类模型可以为全连接网络模型,其中不同的预设分类模型输出不同的图邻接矩阵,上述已经提及,每两个表格元素之间的拓扑关系可以包括该两个表格元素是否属于同一单元格、是否属于同一行以及是否属于同一列这三种关系,对于任意表格,仅需确定所有表格元素之间的这三类关系即可完整表达任意复杂度的表格布局,该图邻接矩阵可以包括单元格关系图邻接矩阵、行关系图邻接矩阵以及列关系图邻接矩阵,其中,单元格关系图邻接矩阵可以用于表征每两个表格元素是否属于同一单元格,行关系图邻接矩阵可以用于表征每两个表格元素是否属于同一行,列关系图邻接矩阵可以用于表征每两个表格元素是否属于同一列,在下文中,为便于描述,可以使用M

在本公开中可以使用三个相互独立的无相无权图分别表示这三类关系,并使用三个N*N矩阵分别表示这三个无向图(N为表格中顶点数量),该矩阵即为图邻接矩阵,该图邻接矩阵中的第i行第j列表示待识别表格中第i个表格元素与第j个表格元素之间的关系,由于图中的边没有权重属性,所以矩阵元素的取值范围仅限于{0,1},这样,可以用0表示两个表格元素之间的关系不存在,用1表示两个表格元素之间的关系存在,此处仅是举例,本公开对此不作限定。

在本步骤中,可以设置三个该预设分类模型,分别用于输出表征上述三类关系的图邻接矩阵,这样,针对三个该预设分类模型中的每个预设分类模型,可以将各个表格元素对应的该目标关系特征组合成特征矩阵后输入该预设分类模型,以分类结果填充图邻接矩阵,得到该预设分类模型对应的该图邻接矩阵,其中,图邻接矩阵中对角线上的元素表示每个表格元素与自身的关系,所以无需填充,且无相图邻接矩阵关于对角线对称,因此仅需填充该矩阵的对角线以上的部分。

还需说明的是,本公开中对于表格结构的定义不限于上述三类关系,若需要表达更多表格元素之间的逻辑关系亦可以定义其它类型的图,例如,同属于一列的单元格之间可能存在从属关系,那么则可以用有向图表达这类非对称关系;再比如,表格元素之间的关系可能有不同强弱,那么则可以使用有权图中边的权重来体现关系的强弱或重要程度,本公开对此不作限定。

采用上述方法,使用动态图卷积神经网络直接对表格元素进行建模,得到表征表格结构的图邻接矩阵,由于在表格中同属于同一个逻辑单元(可以是单元格,行或列等)的文本内容的语义具有极高的相关性,即文本内容的语义对于不同表格、不同表格元素间的逻辑关系具有较高的信息增益,另外,对于表格线缺失或布局复杂的表格中,仅依靠视觉线索(即表格的图像特征)不足以正确的解析表格结构,而表格中元素的文本语义特征则可以与图像特征互为补充,使得模型可以应对更为复杂的输入,因此,通过识别每个文字行的文本语义特征,并将该文本语义特征和图像特征以及位置特征组成多模态特征一起作为预设关系提取模型的输入,可以提升模型识别的准确率和鲁棒性。

与此同时,可以根据每个表格元素的位置特征对待识别表格的图像特征图进行采样,避免了仅对感兴趣区域的中心位置进行采样,从而可以得到具有充分表达能力的每个表格元素分别对应的该目标图像特征,在将该目标图像特征输入模型进行表格结构识别时,可以进一步提高表格结构识别的准确性。

考虑到实际的分类场景中,分类算法会倾向于数量较多的类别,假设待识别表格中有100个顶点(或者称之为表格元素),顶点间共有200条边,即可以理解为有200组顶点对之间存在关系,可以将这200组顶点视为正样本,所有可能的变数(包含正负两类)为N*(N-1)=9900,N为顶点数,因此负样本之间边数为9900–200=9700,因此正负类别比为2:97,正负样本数量严重不均衡,在这种情况下,分类器即使对所有输入样本均预测类别为负,该模型对应的识别准确率也较高,但这明显不符合实际的分类情况,而这正是由于正负样本不均衡所造成的,因此,为了应对正负样本不均衡问题,可以在将每个表格元素对应的该目标关系特征输入该预设分类模型之前,先进行非均匀采样。

图4是根据图1所示实施例示出的一种表格结构识别的方法的流程图,如图4所示,在执行步骤S105之前,该方法还包括以下步骤:

在步骤S106中,针对该待识别表格中的每个表格元素,从该待识别表格的全部表格元素中确定该表格元素对应的目标表格元素,并针对每个该目标表格元素,将该表格元素与该目标表格元素组成顶点对。

在本步骤中,可以从该全部表格元素中确定与该表格元素存在连接关系的第一表格元素;从其它表格元素中随机选取N个第二表格元素,该其它表格元素为该全部表格元素中除该第一表格元素和该表格元素以外的表格元素,该N为该第一表格元素的数量;将该第一表格元素和该第二表格元素作为该目标表格元素。

基于本步骤中的顶点对采样的方法,使得该目标表格元素中包含的与该表格元素存在连接关系的表格元素和该目标表格元素中包含的与该表格元素不存在连接关系的表格元素的数量相等,从而解决正负样本不均衡的问题。

在步骤S107中,针对每个顶点对,将该顶点对中的两个表格元素分别对应的该目标关系特征进行特征合并,得到该顶点对对应的目标特征。

一种可能的实现方式中,可以将该顶点对中的两个表格元素分别对应的该目标关系特征进行组合得到特征矩阵,即为该目标特征。

这样,在执行步骤S105的过程中,可以针对多个该预设分类模型中的每个预设分类模型,将每个该顶点对对应的该目标特征输入该预设分类模型,得到该预设分类模型对应的该图邻接矩阵。

如图4所示,在执行步骤S105之后,该方法还包括以下步骤:

在步骤S108中,根据该图邻接矩阵构建待输出的目标表格。

其中,该目标表格的格式可以包括HTML、Excel或Latex等任一格式。

在本步骤中,可以对该单元格关系图邻接矩阵进行最大团分解,得到多个第一最大团,不同的第一最大团对应不同的单元格;将每个该第一最大团中的待定顶点合并为单个目标顶点,并根据合并结果更新该行关系图邻接矩阵以及该列关系图邻接矩阵,其中,该待定顶点与该表格元素一一对应;根据更新后的行关系图邻接矩阵和更新后的列关系图邻接矩阵构建该目标表格。

在根据更新后的行关系图邻接矩阵和更新后的列关系图邻接矩阵构建该目标表格的过程中,可以对更新后的行关系图邻接矩阵进行最大团分解,得到多个第二最大团,并对更新后的列关系图邻接矩阵进行最大团分解,得到多个第三最大团,不同的第二最大团对应不同的行,不同的第三最大团对应不同的列;将该第二最大团的数量作为该待识别表格的目标行数,将该第三最大团的数量作为该待识别表格的目标列数;针对每个该目标顶点,确定该目标顶点所在的该第二最大团的第一数量,并确定该目标顶点所在的该第三最大团的第二数量;根据该第一数量确定该目标顶点对应的单元格所在的行数,根据该第二数量确定该目标顶点对应的单元格所在的列数,并根据该行数和该列数确定该目标顶点对应的单元格的宽和高;根据该目标行数、该目标列数以及每个单元格的宽和高构建该目标表格。

示例地,图5a-5h是根据一示例性实施例示出的一种表格结构识别的过程示意图,如图5a所示,为获取到的待识别表格的表格图像,图5b为将该表格图像输入目标检测模型后得到的该待识别表格中每个表格元素(即顶点)的识别结果,并按照顺序给予编号(图中有若干空白单元格并未检测到,但并不影响最终的结果正确性),基于图5b得到的对该待识别表格中每个表格元素的识别结果,通过DGCNN模型和与单元格关系图邻接矩阵对应的预设分类模型,可以得到如图5c所示的单元格无向图(该单元格无向图为与单元格关系图邻接矩阵对应的无向图),在图5c中,每个圆点对应一个输入顶点(即该表格元素),顶点之间的线段表征所连接的顶点对属于同一个单元格,对图5c所示的单元格无向图中的每个顶点进行最大团分解,得到图5d所示的单元格最大团分解结果,如图5c所示,每个矩形代表一个第一最大团,不同的该第一最大团对应不同的单元格;基于图5b得到的对该待识别表格中每个表格元素的识别结果,通过DGCNN模型和与行关系图邻接矩阵对应的预设分类模型,可以得到如图5e所示的行无向图(该行无向图为与行关系图邻接矩阵对应的无向图),如图5e所示,顶点间的每一条线段代表所连接的顶点对属于同一行,对图5e所示的行无向图中的每个顶点进行最大团分解,得到图5f所示的行最大团分解结果,如图5f所示,同一直线连接的顶点属于同一个第二最大团;基于图5b得到的对该待识别表格中每个表格元素的识别结果,通过DGCNN模型和与行关系图邻接矩阵对应的预设分类模型,可以得到如图5g所示的列无向图(该列无向图为与列关系图邻接矩阵对应的无向图),如图5g所示,顶点间的每一条线段代表所连接的顶点对属于同一列,对图5g所示的列无向图中的每个顶点进行最大团分解,得到图5h所示的行最大团分解结果,如图5h所示,同一折线连接的顶点属于同一个第三最大团。

其中,在对图5c所示的单元格无向图中的每个顶点进行最大团分解,得到图5d所示的单元格最大团分解结果后,可以将该第一最大团中的待定顶点合并为单个目标顶点,例如,如图5c和5d所示,在经过最大团分解后可以确定顶点0和顶点1属于同一个第一最大团、顶点3和顶点4属于同一个第一最大团、顶点6和顶点7属于同一个第一最大团,顶点11和顶点12属于同一个第一最大团,其它顶点各自属于一个第一最大团,基于该单元格无向图的最大团分解结果,可以确定顶点0和顶点1属于同一单元格,可以将顶点0和顶点1合并为一个目标顶点,顶点3和顶点4属于同一单元格,可以将顶点3和顶点4合并为一个目标顶点,顶点6和顶点7属于同一单元格,可以将顶点6和顶点7合并为一个目标顶点,顶点11和顶点12属于同一单元格,可以将顶点11和顶点12合并为一个目标顶点,之后,可以根据据合并结果更新图5e所示的行无向图对应的行关系图邻接矩阵,以及根据据合并结果更新图5g所示的列无向图对应的列关系图邻接矩阵,即将行无向图和列无向图中属于同一单元格的顶点也进行合并,得到更新后的该行关系图邻接矩阵和列关系图邻接矩阵,并基于更新后的行关系图邻接矩阵和更新后的列关系图邻接矩阵分别进行最大团分解,得到该第二最大团和该第三最大团,上述示例仅是举例说明,本公开对此不作限定。

可以理解的是,该第二最大团的数量即为该待识别表格对应的目标行数,可以记为N,该第三最大团的数量即为该待识别表格对应的目标列数,可以记为M,此时可将该待识别表格视为一个N*M的网格,然后针对每个该目标顶点,根据该目标顶点所在的该第二最大团的第一数量确定该目标顶点对应的单元格所在的行数,根据预设行高确定该目标顶点所在的单元格的高度,根据该目标顶点所在的该第三最大团的第二数量确定该目标顶点对应的单元格所在的列数,根据预设列宽确定该目标顶点所在的单元格的宽度,这样,可以根据该目标行数、该目标列数、以及每个单元格的宽度和高度从上至下将每一行内容分别转化成HTML字符串,最终得到待识别表格的HTML的完整表达,构建完成待识别表格对应的该目标表格,上述仅以HTML格式的表格生成为例,本公开对此不作限定,其它格式的表格生成方式与上述步骤类似,在此不再赘述。

上述方法不使用启发式算法推断表格结构,而是使用动态图卷积神经网络直接对表格元素进行建模,得到表征表格结构的图邻接矩阵,从而可以基于图邻接矩阵重建表格。

下面对本公开中涉及到的模型的训练过程进行说明,如上所述,本公开涉及到的模型主要分为四个:用于提取图像特征的卷积神经网络模型,用于提取文本语义特征的文字识别模型、用于提取表格元素之间拓扑关系的动态图卷积神经网络模型以及最终的分类模型,由于每个部分都是可微的,因此整个模型可以端到端地使用梯度下降法进行训练,另外,模型的训练数据可以包括训练样本和训练标签,训练样本包括多个待识别的表格,对于每个训练样本,输入包括表格图像、该训练样本中每个表格元素的位置、元素类别以及每个表格元素对应的文字内容,该训练标签可以包括每个表格所对应的表征表格结构的三个无向图的图邻接矩阵(即上文中所述的M

另外,模型训练过程中的损失函数可以使用交叉熵损失函数:

L=-∑c

其中,c

对于单元格、行、列三种情况可以分别设置该损损失函数为:L

L

例如,α值取0.5,β与γ取1。

图6是根据一示例性实施例示出的一种表格结构识别装置的框图,如图6所示,该装置包括:

检测模块601,用于将待识别表格对应的表格图像作为预先训练得到的目标检测模型的输入,得到该待识别表格中每个表格元素的位置特征和元素类别,该元素类别包括文字行;

文本语义识别模块602,用于通过预先训练得到的文字识别模型对该文字行进行文字识别,得到每个该文字行的文本语义特征;

图像特征提取模块603,用于通过预先训练得到的图像特征提取模型对该表格图像进行特征提取,得到图像特征图,并根据该位置特征对该图像特征图进行采样,得到每个该表格元素分别对应的目标图像特征;

关系特征提取模块604,用于根据该位置特征、该文本语义特征以及该目标图像特征,通过预设关系提取模型得到目标关系特征,该目标关系特征用于表征该待识别表格中每两个该表格元素之间的拓扑关系;

确定模块605,用于根据该目标关系特征通过预设分类模型确定图邻接矩阵,该图邻接矩阵用于表征该待识别表格的表格结构。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

采用上述装置,使用动态图卷积神经网络直接对表格元素进行建模,得到表征表格结构的图邻接矩阵,由于在表格中同属于同一个逻辑单元(可以是单元格,行或列等)的文本内容的语义具有极高的相关性,即文本内容的语义对于不同表格、不同表格元素间的逻辑关系具有较高的信息增益,另外,对于表格线缺失或布局复杂的表格中,仅依靠视觉线索(即表格的图像特征)不足以正确的解析表格结构,而表格中元素的文本语义特征则可以与图像特征互为补充,使得模型可以应对更为复杂的输入,因此,通过识别每个文字行的文本语义特征,并将该文本语义特征和图像特征以及位置特征组成多模态特征一起作为预设关系提取模型的输入,可以提升模型识别的准确率和鲁棒性。

图7是根据一示例性实施例示出的一种电子设备700的框图。如图7所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。

其中,处理器701用于控制该电子设备700的整体操作,以完成上述的表格结构识别方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。

在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的表格结构识别方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的表格结构识别方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的表格结构识别方法。

在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的表格结构识别方法的代码部分。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,

为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

相关技术
  • 表格结构识别的方法、装置、存储介质及电子设备
  • 一种图像表格结构识别方法、系统、终端以及存储介质
技术分类

06120113255024