CN116503888A - 一种从图像中提取表格的方法、***和存储介质 - Google Patents
一种从图像中提取表格的方法、***和存储介质 Download PDFInfo
- Publication number
- CN116503888A CN116503888A CN202310783132.5A CN202310783132A CN116503888A CN 116503888 A CN116503888 A CN 116503888A CN 202310783132 A CN202310783132 A CN 202310783132A CN 116503888 A CN116503888 A CN 116503888A
- Authority
- CN
- China
- Prior art keywords
- dimensional matrix
- feature
- image
- column
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Image Analysis (AREA)
- Inspection Of Paper Currency And Valuable Securities (AREA)
Abstract
本申请公开了一种从图像中提取表格的方法、***和存储介质,所述方法包括:获取待处理图像;对待处理图像进行特征提取,以获得其一个以上特征图,其中,至少一个特征图融合有行注意力信息和/或列注意力信息;对特征图进行识别,得到原始图像包含的表格。
Description
技术领域
本申请涉及图像处理领域,特别涉及一种从图像中提取表格的方法、***和存储介质。
背景技术
表格结构识别旨在从包含表格的原始图像中提取表格的结构信息,包括每个单元格的坐标位置和每个单元格所属的行和列信息。目标检测方法可以基于少量的训练数据训练出卷积核对原始图像进行单元格检测。然而,表格中的空白单元格和检测框的尺寸限制会导致目标检测方法获取的表格结构信息中表格边框难以对齐,需要进一步对表格边框进行调整,这又会降低表格结构识别的效率。此外,对于包含密集单元格的表格,检测框的尺寸限制同样会导致表格结构识别效率的降低。
因此,有必要提供一种从图像中提取表格的方案,可以提高表格结构识别的准确率和效率。
发明内容
本说明书一个方面提供一种从图像中提取表格的方法,所述方法包括:获取待处理图像;对待处理图像进行特征提取,以获得其一个以上特征图,其中,至少一个特征图融合有行注意力信息和/或列注意力信息;对特征图进行识别,得到原始图像包含的表格。
本说明书一个方面提供一种从图像中提取表格的方法,所述方法包括:获取待处理图像;对待处理图像进行特征提取,以获得其一个以上特征图;特征图为三维图,包括在一个以上通道上的二维矩阵;对于一个以上特征图中的每一个:将其两个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵,进而得到重排特征图;对重排特征图进行识别,得到原始图像包含的表格。
本说明书另一个方面提供一种从图像中提取表格的***,所述***包括:获取模块,用于获取待处理图像;特征提取模块,用于对待处理图像进行特征提取,以获得其一个以上特征图,其中,至少一个特征图融合有行注意力信息和/或列注意力信息;识别模块,用于对所述特征图进行识别,得到原始图像包含的表格。
本说明书另一个方面提供一种从图像中提取表格的***,所述***包括:获取模块,用于获取待处理图像;特征提取模块,用于对待处理图像进行特征提取,以获得其一个以上特征图;特征图为三维图,包括在一个以上通道上的二维矩阵;识别模块,用于对于一个以上特征图中的每一个:将其两个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵,进而得到重排特征图,以及对重排特征图进行识别,得到原始图像包含的表格。
本说明书另一个方面提供一种计算机可读存储介质,其特征在于,所述存储介质存储计算机指令,当所述计算机指令被处理器执行时实现从图像中提取表格的方法。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的从图像中提取表格的***的应用场景图;
图2是根据本说明书一些实施例所示的从图像中提取表格的***的示例性模块图;
图3是根据本说明书一些实施例所示的从图像中提取表格的方法的示例性流程图;
图4是根据本说明书一些实施例所示的对待处理图像进行特征提取其中一轮融合行信息的迭代处理的示例性流程图;
图5是根据本说明书一些实施例所示的对待处理图像进行特征提取其中一轮融合列信息的迭代处理的示例性流程图;
图6是根据本说明书一些实施例所示的对待处理图像进行特征提取其中一轮融合行信息和列信息的迭代处理的示例性流程图;
图7是根据本说明书一些实施例所示的对待处理图像进行一轮以上迭代处理的示例性示意图;
图8A和图8B是根据本说明书一些实施例所示的检测框的示例性示意图;
图9A和图9B是根据本说明书一些实施例所示的对多个单元格检测框进行规则处理的示例性示意图;
图10A和图10B是根据本说明书一些实施例所示的对特征图的二维矩阵进行组合重排的示例性示意图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本说明书中所使用的“***”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的***所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是根据本说明书一些实施例所示的从图像中提取表格的***的应用场景图。如图1所示,应用场景100可以包括如下部分。
处理器110可以处理从其他设备或***组成部分中获得的数据和/或信息。处理器可以基于这些数据、信息和/或处理结果执行程序指令,以执行一个或多个本说明书中描述的功能。例如,处理器110可以从用户终端130获取待处理图像。又例如,处理器110可以对待处理图像进行特征提取,以获得其一个以上特征图。再例如,处理器110还可以对特征图进行识别,得到原始图像包含的表格。在一些实施例中,处理器110可以包含一个或多个子处理设备(例如,单核处理设备或多核多芯处理设备)。
存储设备120可以用于存储数据和/或指令。例如,存储设备120可以存储每轮迭代处理输出的特征图。又例如,存储设备120可以存储重排特征图。存储设备120可以包括一个或多个存储组件,每个存储组件可以是一个独立的设备,也可以是其他设备的一部分。在一些实施例中,存储设备120可包括随机存取存储器(RAM)、只读存储器(ROM)、大容量存储器、可移动存储器、易失性读写存储器等或其任意组合。在一些实施例中,所述存储设备120可在云平台上实现。
用户终端130指用户所使用的一个或多个终端设备或软件。在一些实施例中,用户终端130可以用于与用户进行交互和显示。例如,用户终端130可以向用户显示原始图像、待处理图像和表格。又例如,用户终端130可以从用户获取用户输入的原始图像。在一些实施例中,使用用户终端130的可以是一个或多个用户,可以包括直接使用服务的用户,也可以包括其他相关用户。在一些实施例中,用户终端130可以是移动设备130-1、平板计算机130-2、膝上型计算机130-3、台式计算机130-4等其他具有输入和/或输出功能的设备中的一种或其任意组合。
网络140可以连接***的各组成部分和/或连接***与外部资源部分。网络140使得各组成部分之间,以及与***之外其他部分之间可以进行通讯,促进数据和/或信息的交换。在一些实施例中,网络140可以是有线网络或无线网络中的任意一种或多种。各部分之间的网络连接可以是采用上述一种方式,也可以是采取多种方式。在一些实施例中,网络可以是点对点的、共享的、中心式的等各种拓扑结构或者多种拓扑结构的组合。在一些实施例中,网络140可以包括一个或以上网络接入点。例如,网络140可以包括有线或无线网络接入点,例如基站和/或网络交换点140-1、140-2、…,通过这些进出点***的一个或多个组件可连接到网络140上以交换数据和/或信息。
在一些实施例中,处理器110、用户终端130以及其他可能的***组成部分中可以包括存储设备120。在一些实施例中,用户终端130以及其他可能的***组成部分中可以包括处理器110。
应该注意的是,上述描述仅出于说明性目的而提供,并不旨在限制本说明书的范围。对于本领域普通技术人员而言,在本说明书内容的指导下,可做出多种变化和修改。可以以各种方式组合本说明书描述的示例性实施例的特征、结构、方法和其他特征,以获取另外的和/或替代的示例性实施例。然而,这些变化与修改不会背离本说明书的范围。
图2是根据本说明书一些实施例所示的从图像中提取表格的***模块图。如图2所示,从图像中提取表格的***200可以包括获取模块210、特征提取模块220和识别模块230。
获取模块210可以用于获取待处理图像。
特征提取模块220可以用于对待处理图像进行特征提取,以获得其一个以上特征图。在一些实施例中,至少一个特征图可以融合有行注意力信息和/或列注意力信息。在一些实施例中,特征图可以为三维图,包括在一个以上通道上的二维矩阵。在一些实施例中,特征提取模块220可以对待处理图像进行一轮以上迭代处理,得到一个以上特征图。在一些实施例中,一个以上特征图可以包括一轮以上迭代处理中一轮或多轮中得到的特征图。
在一些实施例中,其中一轮迭代处理可以包括以下一个或多个操作:对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图;获取初始特征图中各通道上二维矩阵中各行的第一特征信息;基于一个以上第一策略对各通道上二维矩阵中相同行的第一特征信息进行融合,得到一个以上第一策略分别对应的二维矩阵中各行的第一融合特征信息;基于一个以上第一策略分别对应的二维矩阵中各行的第一融合特征信息,得到初始特征图中各通道上二维矩阵中各行的行注意力权重;将初始特征图中各像素点的像素值乘以对应通道上对应行的行注意力权重,得到当前轮的特征图。在一些实施例中,初始特征图可以为三维图,包括在一个以上通道上的二维矩阵。在一些实施例中,第一特征信息可以包括二维矩阵中对应行的各元素的均值和/或各元素中的最大值。在一些实施例中,特征提取模块220可以执行以下一个或多个操作:基于一个以上第一策略对各通道上二维矩阵中相同行的第一特征信息进行卷积操作,得到一个以上第一策略分别对应的二维矩阵中各行的第一卷积信息;基于第一函数,将一个以上第一卷积信息映射为一个以上第一策略分别对应的二维矩阵中各行的第一融合特征信息。
在一些实施例中,其中一轮迭代处理可以包括以下一个或多个操作:对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图;获取初始特征图各通道上二维矩阵中各列的第二特征信息;基于一个以上第二策略对各通道上二维矩阵中相同列的第二特征信息进行融合,得到一个以上第二策略分别对应的二维矩阵中各列的第二融合特征信息;将基于一个以上第二策略分别对应的二维矩阵中各列的第二融合特征信息,得到初始特征图中各通道上二维矩阵中各列的列注意力权重;将初始特征图中各像素点的像素值乘以对应通道上对应列的列注意力权重,得到特征图。在一些实施例中,初始特征图可以为三维图,包括在一个以上通道上的二维矩阵。在一些实施例中,第二特征信息可以包括二维矩阵中对应列的各元素的均值和/或各元素中的最大值。
在一些实施例中,其中一轮迭代处理可以包括以下一个或多个操作:对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图;获取初始特征图中各通道上二维矩阵中各行的第一特征信息和各列的第二特征信息;其中,第一特征信息基于二维矩阵中对应行的各元素的均值和各元素中的最大值拼接获取,第二特征信息基于二维矩阵中对应列的各元素的均值和各元素中的最大值拼接获取;基于一个以上第三策略分别对各通道上二维矩阵中相同行的第一特征信息和相同列的第二特征信息进行融合,得到一个以上第三策略分别对应的二维矩阵中各行的第一融合特征信息和第二融合特征信息;基于一个以上第三策略分别对应的二维矩阵中各行的第一融合特征信息和各列的第二融合特征信息,得到初始特征图中各通道上二维矩阵中各行的行注意力权重和各列的列注意力权重;将初始特征图中各像素点的像素值乘以对应通道上对应行的行注意力权重和对应通道上对应列的列注意力权重,得到当前轮的特征图。在一些实施例中,初始特征图可以为三维图,包括在一个以上通道上的二维矩阵。
识别模块230可以用于对特征图进行识别,得到原始图像包含的表格。在一些实施例中,识别模块230可以用于对于一个以上特征图中的每一个:将其两个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵,进而得到重排特征图,以及对重排特征图进行识别,得到原始图像包含的表格。在一些实施例中,在对特征图进行识别以前,识别模块230可以对于一个以上特征图中的每一个,将其两个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵,进而得到重排特征图,以基于重排特征图进行识别。在一些实施例中,识别模块230可以将其各通道上的二维矩阵进行两两组合重排,得到重排特征图各通道上的重排二维矩阵。在一些实施例中,识别模块230可以将两个二维矩阵的行或者列依次交错排列,得到一个重排二维矩阵。在一些实施例中,识别模块230可以执行以下一个或多个操作:对一个以上特征图进行单元格检测,得到待处理图像上的多个单元格检测框;基于多个单元格检测框进行规则处理,得到表格。在一些实施例中,如果多个单元格检测框中在行和/或列方向上相邻的两个单元格检测框没有在列和/或行方向上对齐,则识别模块230可以将两个单元格检测框中在列和/或行方向上较小边界的单元格检测框对齐较大边界的单元格检测框。在一些实施例中,识别模块230可以执行以下一个或多个操作:获取待处理图像中对应两个以上单元格检测框的区域;基于非极大值抑制算法,确定区域最终对应的一个单元格检测框。
图3是根据本说明书一些实施例所示的从图像中提取表格的方法的示例性流程图。在一些实施例中,流程300可以由处理器和/或从图像中提取表格的***200实现。如图3所示,从图像中提取表格的方法流程300可以包括以下步骤。
步骤310,获取待处理图像。具体地,步骤310可以由获取模块210执行。
原始图像可以是包含表格的图像。待处理图像可以是原始图像中表格对应的图像。在一些实施例中,原始图像和待处理图像可以包含多个像素。例如,原始图像的宽度为1024个像素,长度为2048个像素,则可以包含1024×2048个像素;待处理图像的宽度为512个像素,长度为1024个像素,则可以包含512×1024个像素。
由此可知,待处理图像包含的多个像素的位置可以用其所在的宽度和长度描述。在一些实施例中,每个像素可以对应一个以上通道。其中,每个通道可以对应待处理图像中每个像素的一种颜色描述。例如,待处理图像的单通道可以描述待处理图像中每个像素的灰度值。又例如,待处理图像的R通道、G通道和B通道可以分别描述待处理图像中每个像素的红色分量、绿色分量和蓝色分量的深浅。因此,待处理图像可以用通道×宽度×长度的三维张量表示。例如,三通道的待处理图像(宽512个像素,长1024个像素)可以用三维张量A3×512×1024表示。
在一些实施例中,原始图像和待处理图像的格式可以包括Joint PhotographicExperts Group(JPEG)图像格式、Tagged Image File Format(TIFF)图像格式、GraphicsInterchange Format(GIF)图像格式、Kodak Flash PiX(FPX)图像格式、Digital Imagingand Communications in Medicine(DICOM)图像格式等。
在一些实施例中,获取模块210可以基于分割算法,从原始图像中分割出待处理图像。在一些实施例中,分割算法可以包括但不限于传统分割算法(例如,阈值法、区域生长法等)、结合特定工具的图像分割算法(例如,遗传算法、小波分析等)和/或分割模型(例如,全卷积网络(Fully Convolutional Networks,FCN)模型、视觉几何组网络(Visual GeometryGroup,VGG Net)模型等)中的一种或多种的组合。
步骤320,对待处理图像进行特征提取,以获得其一个以上特征图。具体地,步骤320可以由特征提取模块220执行。
特征图可以是表征待处理图像中表格特征信息的图像。在一些实施例中,特征图在一个以上通道的二维矩阵的维度可以和待处理图像在一个以上通道上的二维矩阵的维度相同。例如,特征图在第1个通道上的二维矩阵为H1256×512,待处理图像在第1个通道上的二维矩阵为A1256×512。
在一些实施例中,特征图和待处理图像的通道数可以不同。例如,待处理图像的通道数为3,特征图的通道数为64。在一些实施例中,特征图的通道数可以和初始特征图的通道数相同。例如,特征图的通道数可以和初始特征图的通道数均为64。
在一些实施例中,至少一个特征图可以融合有行注意力信息和/或列注意力信息。行注意力信息具体可以是行注意力权重,其反映特征图中对应行的总体特征信息或者说统计信息,具体的,所述特征图的像素值可以是将初始特征图的像素值与其所在行的行注意力权重进行运算得到。关于行注意力权重的详细描述可以参见图4及其相关描述。列注意力信息可以包含基于列注意力权重获取的特征图的列。关于列注意力权重的详细描述可以参见图5及其相关描述。
在一些实施例中,特征提取模块220可以对待处理图像进行一轮以上迭代处理,得到一个以上特征图。相应地,在一些实施例中,一个以上特征图可以包括一轮以上迭代处理中一轮或多轮中得到的特征图。
例如,图7是根据本说明书一些实施例所示的对待处理图像进行一轮以上迭代处理的示例性示意图,如图7所示,特征提取模块220可以对待处理图像进行n轮迭代处理,得到n个特征图,具体地,特征提取模块220可以先对待处理图像进行第一轮迭代处理,得到特征图-1;然后对特征图-1进行第二轮迭代处理,得到特征图-2;…;对特征图-n-1(未示出)进行第n轮迭代处理,得到特征图-n。
在一些实施例中,特征提取模块220对待处理图像进行一轮以上迭代处理的其中一轮迭代处理可以融合行注意力信息。关于融合行注意力信息的迭代处理的详细描述可以参见图4及其相关描述。
在一些实施例中,特征提取模块220对待处理图像进行一轮以上迭代处理的其中一轮迭代处理可以融合列注意力信息。关于融合列注意力信息的迭代处理的详细描述可以参见图5及其相关描述。
在一些实施例中,特征提取模块220对待处理图像进行一轮以上迭代处理的其中一轮迭代处理可以融合行注意力信息和列注意力信息。关于融合行注意力和列注意力信息的迭代处理的详细描述可以参见图6及其相关描述。
在本说明书的一些实施例中,一个以上特征图包括一轮以上迭代处理中一轮或多轮中得到的特征图,从而可以使得一个以上特征图包含不同深度的信息,丰富特征图中的特征层次,提高表格提取的准确率。以图7为例,所述一个以上特征图可以是n轮迭代处理中第一轮、第三轮得到的特征图。
步骤330,对特征图进行识别,得到原始图像包含的表格。具体地,步骤330可以由识别模块230执行。
在一些实施例中,识别模块230可以对一个以上特征图进行单元格检测,得到待处理图像上的多个单元格检测框。
单元格检测框可以是待处理图像中包含表格的图像块。在一些实施例中,识别模块230可以基于每个特征图,确定待处理图像中的多个检测框,每个检测框对应有分类预测结果,例如可以包括是否含有表格,或者含有表格的置信度,通过对检测框进行筛选,获取对应的多个单元格检测框。
检测框可以是待处理图像中的图像块。在一些实施例中,特征图的一个像素点可以在待处理图像中对应一定长宽的检测框,而这些检测框还可以重叠。如,特征图中的第1行第1列的像素点对应待处理图像中第1~3行、第1~3列的区域,特征图中的第1行第2列像素点对应待处理图像中第1~3行、第2~4列的区域。
在又一些实施例中,识别模块230可以基于特征图在宽度和长度上的尺寸和待处理图像在宽度和长度上的尺寸,确定特征图对应的检测框的尺寸。
仅作为示例,第一轮迭代处理输出的特征图-1:H64×256×512的宽度和长度分别为256个像素和512个像素,待处理图像的宽度和长度分别为512个像素和1024个像素,因此,特征图-1的像素点对应在待处理图像上的检测框的尺寸为宽512/128=4个像素,长1024/128=4个像素。
作为又一示例,第二轮迭代处理输出的特征图-2:H64×128×128的宽度和长度分别为128个像素和128个像素,待处理图像的宽度和长度分别为512个像素和1024个像素,因此,特征图-2的像素点对应在待处理图像上的单元格检测框尺寸为宽512/128=4个像素,长1024/128=8个像素。
在一些实施例中,每个特征图可以对应一组检测框,每个特征图中的一个向量可以对应待处理图像中一组检测框中的一个检测框。例如,图8A和图8B是根据本说明书一些实施例所示的检测框的示例性示意图,如图8A所示,第一轮迭代处理输出的特征图-1可以对应一组检测框,其中,特征图-1上的第1行第1列的向量1(64个通道)可以对应待处理图像的检测框1(3个通道,宽4个像素,长4个像素);特征图-1上的第1行第2列的向量2(64个通道)可以对应待处理图像的检测框2(3个通道,宽4个像素,长4个像素);…;特征图-1上的第512行第256列的向量131072(未示出)可以对应待处理图像的检测框131072(未示出)。
与此类似地,如图8B所示,第二轮迭代处理输出的特征图-2上的128×128个向量中的向量1’可以对应待处理图像上的128×128个检测框中的检测框1’ …;特征图-2上的第128行第128列的向量16384’(未示出)可以对应待处理图像的检测框16384’(未示出)。
在一些实施例中,识别模块230可以基于分类模型,获取待处理图像中的每个像素映射为对应的数值或概率、每个检测框对应的置信度和每个检测框对应的偏移量。在一些实施例中,分类模型可以包括分类分支和回归分支。具体地,识别模块230可以将一个以上特征图、每个特征图对应的多个检测框的位置信息和尺寸信息以及待处理图像输入分类模型,分类模型的分类分支可以基于输入的信息分别将待处理图像中的每个像素映射为对应的数值或概率,将每个检测框映射为对应的置信度,分类模型的回归分支可以将多个检测框映射为多个偏移向量。
在一些实施例中,分类模型还可以是但不限于支持向量机模型、Logistic回归模型、朴素贝叶斯分类模型、高斯分布贝叶斯分类模型、决策树模型、随机森林模型、KNN分类模型、神经网络模型等。
在一些实施例中,识别模块230可以基于数值或概率得到待处理图像中每个像素点是否属于表格的判断结果。
在一些实施例中,每个检测框对应的偏移向量可以包含对应检测框在宽度和长度上的偏移量。在一些实施例中,识别模块230可以基于每个检测框对应的偏移向量对对应检测框进行调整,以获取对应的单元格检测框。
在一些实施例中,识别模块230可以基于多个单元格检测框进行规则处理,得到表格。
在一些实施例中,如果多个单元格检测框中在行和/或列方向上相邻的两个单元格检测框没有在列和/或行方向上对齐,则识别模块可以将所述两个单元格检测框中在列和/或行方向上较小边界的单元格检测框对齐较大边界的单元格检测框。
图9A和图9B是根据本说明书一些实施例所示的基于多个单元格检测框进行规则处理的示意图。
如图9A示,待处理图像可以包括单元格检测框a、b、c和d,对于在行方向上相邻两个单元格检测框a和c没有在列方向上对齐,则识别模块230可以将在列方向上较小边界的单元格检测框a对齐在列方向上较大边界的单元格检测框c;对于在列方向上相邻两个单元格检测框a和b没有在列方向上对齐,则识别模块230可以将在行方向上较小边界的单元格检测框a对齐在行方向上较大边界的单元格检测框b。
在一些实施例中,识别模块230可以获取待处理图像中对应两个以上单元格检测框的区域。例如,如图9B所示,识别模块230可以检测到待处理图像中像素点q1、q2、q3、q4对应的区域同时对应单元格检测框1和单元格检测框1’。
在一些实施例中,识别模块230可以基于非极大值抑制(Non-MaximumSuppression,NMS) 算法,确定区域最终对应的一个单元格检测框。
例如,如图9B所示,识别模块230可以将单元格检测框1’确定为上述区域最终对应的一个单元格检测框。
在本说明书的一些实施例中,对一个以上特征图进行单元格检测,得到待处理图像上的多个单元格检测框,然后基于多个单元格检测框进行规则处理,得到表格,可以基于不同深度的特征图得到不同的单元格检测框,避免信息缺失导致的检测错误,同时可以从不同的单元格检测框中基于规则确定最适合的单元格检测框,从而提高表格提取的准确率。
在本说明书的一些实施例中,从待处理图像中提取融合有行注意力信息和/或列注意力信息的特征图,并对特征图进行识别,得到原始图像包含的表格,可以使特征图中包含表格的结构信息,从而提高表格结构识别的准确性。
图10A和图10B是根据本说明书一些实施例所示的对特征图的二维矩阵进行组合重排的示例性示意图。
结合步骤320的描述可知,在一些实施例中,特征图可以为三维图。在一些实施例中,特征图可以包括在一个以上通道上的二维矩阵。例如,第一轮迭代处理输出的特征图-1(未示出)可以包括在64个通道上的二维矩阵:在第1个通道上的二维矩阵1,在第2个通道上的二维矩阵2、…、在第64个通道上的二维矩阵64。
在一些实施例中,识别模块230可以对于一个以上特征图中的每一个,将其两个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵。
仅作为示例,以特征图-1为例,识别模块230可以将64个通道上的64个二维矩阵中的16个二维矩阵(例如,第4个、第8个、第12个、…第64个二维矩阵)进行组合重排,得到重排二维矩阵。
在一些实施例中,识别模块230可以将两个以上通道中任意多个通道上的二维矩阵进行组合重排,得到重排特征图各通道上的重排二维矩阵。
仅作为示例,继续前述示例,识别模块230可以将前述16个通道(第4个、第8个、第12个、…第64个)中任意8个通道上的4个二维矩阵进行组合重排,得到2个重排二维矩阵。
在一些实施例中,识别模块230可以将特征图中各通道上的二维矩阵两两进行组合重排,得到重排特征图各通道上的重排二维矩阵。
仅作为示例,继续前述示例,识别模块230可以将前述64个通道中相邻两个通道上的2个二维矩阵进行组合重排,得到32个重排二维矩阵。
出于便于说明的目的,以下将对各通道上的二维矩阵两两进行组合重排为例,说明获取重排二维矩阵的过程。
在一些实施例中,识别模块230可以将两个二维矩阵的行或者列依次交错排列,得到一个重排二维矩阵。例如,如图10A和图10B所示,特征图-1中可以包含在第1个通道上的二维矩阵1、在第2个通道上的二维矩阵2、在第3个通道上的二维矩阵3、在第4个通道上的二维矩阵4…在第64个通道上的二维矩阵64,其中每个二维矩阵可以包括4行4列。
仅作为示例,如图10A所示,识别模块230可以将二维矩阵1和二维矩阵2的行依次交错排列,得到8行4列的重排二维矩阵A1;将二维矩阵3和二维矩阵4的行依次交错排列,得到8行4列的重排二维矩阵A2;…;将二维矩阵63(未示出)和二维矩阵64(未示出)的行依次交错排列,得到8行4列的重排二维矩阵A32(未示出),其中,重排二维矩阵A1、A2、…A64的行数大于原二维矩阵的行数。
作为又一示例,如图10B所示,识别模块230可以将二维矩阵1和二维矩阵3的列依次交错排列,得到4行8列的重排二维矩阵B1;将二维矩阵2和二维矩阵4的行依次交错排列,得到4行8列的重排二维矩阵B2;…;将二维矩阵62(未示出)和二维矩阵64(未示出)的行依次交错排列,得到4行8列的重排二维矩阵B64(未示出),其中,重排二维矩阵B1、B2、…B64的列数大于原二维矩阵的行数。
在一些实施例中,识别模块230可以将两个二维矩阵的行或者列直接拼接排列,得到一个重排二维矩阵。
在一些实施例中,识别模块230可以将两个二维矩阵的行或者列通过其他任何方式排列,本说明书实施例不作限制。
在一些实施例中,识别模块230可以基于重排二维矩阵,进而得到重排特征图,以基于重排特征图进行识别。
具体地,识别模块可以将多个重排矩阵作为重排特征图在对应多个通道上的二维矩阵。例如,将32个8行4列的重排二维矩阵A1、A2、…A32分别作为重排特征图在32个通道上的二维矩阵。
在本说明书的一些实施例中,对特征图在一个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵,可以提高重排特征图在行和/或列方向上的分辨率,从而提高在行方向和/或列方向上表格密集的待处理图像的表格提取的精准性。
图4是根据本说明书一些实施例所示的对待处理图像进行特征提取其中一轮融合行信息的迭代处理的示例性流程图。在一些实施例中,流程400可以由特征提取模块220执行。如图4所示,流程400可以包括以下步骤。
步骤410,对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图。
当当前轮迭代处理为第一轮时,步骤410是对待处理图像进行卷积操作,当不是第一轮时,步骤410是对前一轮迭代得到的特征图进行卷积操作。关于前一轮迭代得到的特征图的相关描述还可以参见步骤450的相关描述。
初始特征图可以是表征输入图像(待处理图像或前一轮迭代处理得到的特征图)浅层特征的矩阵。在一些实施例中,初始特征图可以为三维图。在一些实施例中,初始特征图可以包括在一个以上通道上的二维矩阵。
在一些实施例中,特征提取模块220可以基于一个以上初始卷积核,对输入图像对应的三维张量进行卷积操作,得到初始特征图。
在一些实施例中,每个初始卷积核可以获取初始特征图在一个通道上的二维矩阵。由此可知,初始卷积核的数量可以和初始特征图的一个以上通道的数量相同。仅作为示例,第一轮迭代处理可以包括64个初始卷积核,则第一轮迭代处理的初始特征图可以包括在64个通道上的二维矩阵。
在一些实施例中,每个初始卷积核的数量可以是预先获取的参数。例如,人工预先设置的参数。又例如,通过预先训练获取的参数。
在一些实施例中,每个初始卷积核可以是一个三维张量。具体地,每个初始卷积核的维度可以是初始卷积核高度×初始卷积核宽度×初始卷积核长度。
其中,初始卷积核高度可以和输入图像的通道数相同。例如,第一轮迭代处理的输入图像为三通道的待处理图像,则初始卷积核高度可以为3。又例如,第二轮迭代处理的输入图像为第一轮迭代处理输出的64通道的特征图-1,则初始卷积核高度可以为64。
在一些实施例中,每个初始卷积核的宽度和长度可以是预先获取的参数。例如,人工预先设置的参数。又例如,通过预先训练获取的参数。仅作为示例,第一轮迭代处理的第1个初始卷积核的宽度和长度可以分别为7和7,则该初始卷积核Cov1的维度为3×7×7。
具体地,每个初始卷积核可以基于卷积步长依次从输入图像中取对应大小的图像块进行卷积操作,获取初始特征图在对应通道上的一个二维矩阵。为了避免初始特征图丢失边界信息,在一些实施例中,在对输入图像进行卷积操作之前,可以基于输入图像边界的像素点对输入图像边界进行像素点填充(padding操作)。
在一些实施例中,通道上二维矩阵的大小可以基于对应的初始卷积核的大小、卷积步长以及像素点填充数量确定。
例如,特征提取模块220可以基于初始卷积核Cov1对输入图像A3×512×1024进行卷积操作,可以获取第1个通道上的二维矩阵B1256×512。与此类似地,特征提取模块220可以基于64个初始卷积核获取64个通道上的二维矩阵:B1256×512、B2256×512、…、B64256×512,从而获取初始特征图对应的三维张量B64×256×512。
步骤420,获取初始特征图中各通道上二维矩阵中各行的第一特征信息。
初始特征图中各通道上二维矩阵中各行的第一特征信息可以是各行的浅层信息。在一些实施例中,第一特征信息可以包括初始特征图中各通道上二维矩阵中对应行的各元素的均值和/或各元素中的最大值。
仅作为示例,以初始特征图B64×256×512为例,B64×256×512中64个通道上二维矩阵的512行的第1行r1中包含256个元素,特征提取模块220可以获取第1行r1包含的256个元素的均值zr1 av和/或最大值zr1 mx;与此类似地,特征提取模块220可以进一步分别获取64个通道上二维矩阵的第2行、第3行、…、第512行中各元素的均值z1r2 av、z1r3 av、…、z1r512 av和/或最大值z1r2 mx、z1r3 mx、…、z1r512 mx,作为对应各行的第一特征信息。
在本说明书的一些实施例中,第一特征信息中包括的二维矩阵中对应行的各元素的均值可以表征每行元素的基本信息,使得后续获取的特征图中可以包含每行元素对应的检测框行尺寸信息,各元素中的最大值可以表征每行元素中尺寸最大的单元格的信息,使得后续获取的特征图中可以包含对每行元素对应的检测框在行方向上进行对齐调整的信息,从而提高表格中的每行单元格对齐的准确率。
步骤430,基于一个以上第一策略对各通道上二维矩阵中相同行的第一特征信息进行融合,得到一个以上第一策略分别对应的二维矩阵中各行的第一融合特征信息。
各通道上二维矩阵中相同行的第一特征信息可以是初始特征图的一个以上通道数量×每行第一特征信息中元素数量的二维矩阵。例如,初始特征图包含64个通道,每行第一特征信息包含2个元素(每行中各元素的均值和最大值),则各通道上二维矩阵中相同行的第一特征信息可以是64×2的二维矩阵64×【zri av,zri mx】,其中ri表示第i行。
二维矩阵中各行的第一融合特征信息可以是融合了初始特征图各通道上对应行特征的一维向量或单个数值。在一些实施例中,各个通道上二维矩阵中的某一行可以对应同一个第一融合特征信息。例如,继续以初始特征图B64×256×512为例,其中64个通道上二维矩阵的512行的第1行可以对应第一融合特征信息fr1,第2行可以对应第一融合特征信息fr2,…,第512行可以对应第一融合特征信息fr512。
具体地,特征提取模块220可以基于一个以上第一策略对各通道上二维矩阵中相同行的第一特征信息进行卷积操作,得到一个以上第一策略分别对应的各通道上二维矩阵中各行的第一卷积信息。
第一卷积信息可以是表征初始特征图各通道上第一特征信息深层特征的向量。例如,继续以初始特征图B64×256×512为例,其中第1~64个通道上的512行的第1行可以对应第一卷积信息Kr1,第2行可以对应第一卷积信息Kr2,…,第512行可以对应第一卷积信息Kr512。
第一策略可以是对第一特征信息进行卷积操作的第一卷积核。在一些实施例中,第一策略的数量可以基于初始特征图的一个以上通道的数量和缩小因子的比值确定。例如,继续前述示例,第一轮迭代处理中初始特征图的通道数量为64,缩小因子为8,则第一策略的数量为64/8=8。
在一些实施例中,每个第一策略可以获取各通道上二维矩阵中各行的第一卷积信息。由此可知,第一策略的数量可以和第一卷积信息的一个以上通道的数量相同。仅作为示例,第一轮迭代处理可以包括8个第一策略,则第一轮迭代处理可以获取所述各通道二维矩阵中各行在8个通道上的第一卷积信息。
在一些实施例中,与卷积核一致的,每个第一策略可以是一个三维张量。具体地,每个第一策略的维度可以是第一卷积核高度×第一卷积核宽度×第一卷积核长度。其中,第一卷积核的宽度和长度可以分别为1和1,第一卷积核高度可以和初始特征图的一个以上通道的数量相同。例如,第一轮迭代处理中初始特征图的通道数量为64,则对应的第一卷积核高度为64,第一策略的大小可以为64×1×1。
在一些实施例中,每个第一策略可以分别对各通道上每行对应的第一特征信息进行卷积操作,获取各通道上的第一卷积信息。关于卷积操作的详细描述可以参见步骤410。
例如,特征提取模块220可以基于第1个第一策略Cef1对初始特征图的64个通道上的二维矩阵的512行对应的第一特征信息【zr1 av,zr1 mx】、【zr2 av,zr2 mx】、…、【zr512 av,zr512 mx】进行卷积操作,获取第1个第一策略对应的第1个通道上的第一卷积信息【K1r1 av,K1r1 mx】、【K1r2 av,K1r2 mx】、…、【K1r512 av,K1r512 mx】。与此类似地,特征提取模块220可以基于8个第一策略获取对应的8个通道中每个通道上二维矩阵的512行对应的512个第一卷积信息。
进一步地,特征提取模块220可以基于第一函数,将一个以上第一卷积信息映射为一个以上第一策略分别对应的二维矩阵中各行的第一融合特征信息。
第一函数可以是非线性激活函数。例如,第一函数可以是ReLu激活函数。在一些实施例中,第一函数可以将小于0的第一卷积信息映射为0值,将大于0的第一卷积信息映射为其原值,从而使第一融合特征信息可以过滤掉第一卷积信息中的负值,突出最大值特征。
例如,继续上述示例,第一函数可以将第1个第一策略对应的第1个通道上的第一卷积信息K1r1 av、K1r1 mx、K1r2 av、K1r2 mx、…、K1r512 av、K1r512 mx映射为第一融合特征信息f1r1 av=0,f1r1 mx= K1r1 mx,f1r2 av= K1r2 av,f1r2 mx=0…, f1r512 av=0,f1r512 mx=0…。
由前述可知,第一特征信息可以包括二维矩阵中对应行的各元素的均值和各元素中的最大值,相对应地,在一些实施例中,第一融合特征信息可以包括第一均值融合特征信息和第一最大值融合特征信息。例如,第1行对应的第一融合特征信息f1r1可以包括第一均值融合特征信息f1r1 av和第一最大值融合特征信息f1r1 mx。在一些实施例中,特征图提取模块220可以将二维矩阵中每行对应的第一均值融合特征信息和第一最大值融合特征信息的加和作为对应的行的第一融合特征信息。例如,第1行对应的第一融合特征信息f1r1可以为f1r1=f1r1 av+f1r1 mx=K1r1 mx。
在本说明书的一些实施例中,基于第一策略,得到一个以上第一策略分别对应的二维矩阵中各行的第一卷积信息,基于缩小因子压缩了通道数,使得第一卷积信息的总数量减少,然后基于第一函数,过滤掉第一卷积信息中的较小的噪声特征,一方面提高了计算效率,另一方面使获取的第一卷积信息中包含更多的行方向上的最大值信息,从而使后续表格提取的单元格检测框可以基于最大值信息确定尺寸,避免单元格检测框尺寸过小导致的表格提取错误。
步骤440,基于一个以上第一策略分别对应的二维矩阵中各行的第一融合特征信息,得到初始特征图中各通道上二维矩阵中各行的行注意力权重。
行注意力权重可以是初始特征图中各通道上二维矩阵中各行的特征对判断初始特征图中各像素是否属于表格的重要程度。其中,行注意权重越大,则对应的重要程度越高。
例如,继续以初始特征图B64×256×512在64个通道上的二维矩阵为例,其中512行的第1行可以对应行注意力权重g1r1,第2行可以对应行注意力权重g1r2,…,第512行可以对应行注意力权重g1r512。
具体地,特征提取模块220可以利用一个以上第四卷积核,对一个以上第一策略分别对应的二维矩阵中各行的第一融合特征信息进行卷积操作,得到一个以上第一策略分别对应的二维矩阵中各行的第四卷积信息。
一个以上第一策略分别对应的二维矩阵可以是每个第一策略对应的通道上的多行第一卷积信息对应的二维矩阵。在一些实施例中,一个以上第一策略分别对应的二维矩阵的大小可以是初始特征图中二维矩阵的行数×1。例如,第1个第一策略对应的二维矩阵可以是第1个第一策略对应的第1个通道上的二维矩阵【f1r1,f1r2,…,f1r512】,第2个第一策略对应的二维矩阵可以是第2个第一策略对应的第2个通道上的二维矩阵【f2r1,f2r2,…,f2r512】,…,第8个第一策略对应的二维矩阵可以是第8个第一策略对应的第8个通道上的二维矩阵【f8r1,f8r2,…,f8r512】。
第四卷积信息可以是对第一融合特征信息进行信息增强和/或抑制的向量。
例如,以第1个第一策略对应的第1个通道上的二维矩阵【f1r1,f1r2,…,f1r512】为例,其中512行的第1行对应的第一融合特征信息f1r1可以对应第四卷积信息V1r1,第2行对应的第一融合特征信息f1r2可以对应第四卷积信息V1r2,…,第512行对应的第一融合特征信息f1r512可以对应第四卷积信息V1r512。
在一些实施例中,第一反卷信息可以对应初始特征图上各通道上二维矩阵的行。例如,继续前述示例,第四卷积信息V1r1可以对应初始特征图B64×256×512在64个通道上的二维矩阵的第1行。
第四卷积核是对第一融合特征信息进行卷积操作的卷积核。在一些实施例中,特征提取模块220可以基于一个以上第一策略确定对应的一个以上第四卷积核。
在一些实施例中,第四卷积核的数量可以和初始特征图一个以上通道的数量相同。例如,第一轮迭代处理中初始特征图的通道数量为64,则第四卷积核的数量为64。
在一些实施例中,每个第四卷积核可以是一个三维张量。具体地,每个第四卷积核的维度可以是第四卷积核高度×第四卷积核宽度×第四卷积核长度。第四卷积核的宽度和长度可以分别为1和1,第四卷积核高度可以和第一策略的数量相同。例如,第一轮迭代处理中第一策略的数量为16,则对应的第四卷积核高度为16,第四卷积核的大小可以为16×1×1。
在一些实施例中,每个第四卷积核可以获取一个第一策略对应的通道上二维矩阵中各行的第四卷积信息。
由此可知,第四卷积信息的一个以上通道的数量可以和第四卷积核的数量相同。仅作为示例,第一轮迭代处理可以包括64个第四卷积核,则第一轮迭代处理可以获取二维矩阵中各行在64个通道上的第四卷积信息。
例如,特征提取模块220可以基于第1个第四卷积核Cev1对64个第一策略对应的64个二维矩阵中512行的512个第一融合特征信息进行卷积操作,获取第1个第四卷积核对应的第1个通道上二维矩阵的512行对应的512个第四卷积信息V1r1、V1r2、…、V1r512。与此类似地,特征提取模块220可以基于64个第四卷积核获取64个通道中每个通道上512行对应的512个第四卷积信息。
进一步地,特征提取模块220可以基于第二函数,将一个以上第四卷积信息映射为初始特征图中各通道上二维矩阵中各行的行注意力权重。
第二函数可以是非线性激活函数。例如,第二函数可以是Sigmoid激活函数。在一些实施例中,第二函数可以将各通道上每行对应的第一反卷信息映射为0~1范围内的一个数值,作为行注意力权重。
在一些实施例中,特征提取模块220可以基于Sigmoid激活函数,将一个以上第四卷积核对应的各通道上的二维矩阵中各行对应的第四卷积信息映射为初始特征图在一个以上通道上的二维矩阵中对应的行注意力权重。例如,特征提取模块220可以基于Sigmoid激活函数,将第1个第四卷积核Cev1对应的第1个通道上二维矩阵中512行第四卷积信息V1r1、V1r2、…、V1r512分别映射为初始特征图在第1个通道上二维矩阵中512行对应的512个行注意力权重g1r1、g1r2、…、g1r512。
与此类似地,特征提取模块220可以获取初始特征图在2个通道上二维矩阵中512行对应的512个行注意力权重:g2r1、g2r2、…、g2r512;初始特征图在第3个通道上二维矩阵中512行对应的512个行注意力权重:g3r1、g3r2、…、g3r512;…;初始特征图在第64个通道上二维矩阵中512行对应的512个行注意力权重:g64r1、g64r2、…、g64r512。
步骤450,将初始特征图中各像素点的像素值乘以对应通道上对应行的行注意力权重,得到当前轮的特征图。
具体地,特征提取模块220可以将初始特征图在每个通道上的二维矩阵的各行的像素点的像素值乘以对应通道上对应行的行注意力权重,获取特征图在对应通道上的对应行像素点的像素值。
继续上述示例,第一轮迭代处理的初始特征图可以包括在64个通道上的二维矩阵B1256×512、B2256×512、…、B64256×512,可以将第1个通道上的二维矩阵B1256×512的第1行的像素点的像素值乘以第1个通道上第1行的注意力权重:g1r1,得到特征图在第1个通道上的第1行像素点的像素值。与此类似地,特征提取模块220可以获取特征图在第1个通道上512行的像素值。
进一步地,特征提取模块220可以基于初始特征图在每个通道上的所有行像素点的像素值,获取特征图在每个通道上的二维矩阵,从而得到当前轮的特征图。
继续前述示例,特征提取模块220可以基于初始特征图在第1个通道上512行的像素值,获取特征图在第1个通道上的二维矩阵H1256×512,与此类似地,特征提取模块220可以获取特征图在第64个通道上的二维矩阵H2256×512、H3256×512、…、H2256×512,从而获取第一轮迭代处理的特征图H64×256×512。
在本说明书的一些实施例中,第一融合特征信息融合了初始特征图中每行的信息,基于第一融合信息获取行注意力权重,使得基于行注意力权重获取的特征图中融合了每行的信息,使得基于后续基于特征图获取的表格可以提高行对齐的准确率。
图5是根据本说明书一些实施例所示的对待处理图像进行特征提取其中一轮融合列信息的迭代处理的示例性流程图。在一些实施例中,流程500可以由特征提取模块220执行。如图5所示,流程500可以包括以下步骤。
步骤510,对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图。关于得到初始特征图的详细描述可以参见步骤410,在此不再赘述。
步骤520,获取初始特征图各通道上二维矩阵中各列的第二特征信息。
初始特征图中各通道上二维矩阵中各列的第二特征信息可以是各列的浅层信息。在一些实施例中,第二特征信息可以包括初始特征图中各通道上二维矩阵中对应列的各元素的均值和/或各元素中的最大值。
仅作为示例,以初始特征图B64×256×512为例,B64×256×512中64个通道上二维矩阵的256列的第1列c1中包含512个元素,特征提取模块220可以获取第1列c1包含的512个元素的均值zc1 av和/或最大值zc1 mx;与此类似地,特征提取模块220可以进一步分别获取64个通道上二维矩阵的第2列、第3列、…、第256列中各元素的均值zc2 av、zc3 av、…、zc256 av和最大值zc2 mx、zc3 mx、…、zc256 mx,作为对应各列的第二特征信息。
在本说明书的一些实施例中,第二特征信息中包括的二维矩阵中对应列的各元素的均值可以表征每列元素的基本信息,使得后续获取的特征图中可以包含每列元素对应的检测框列尺寸信息,各元素中的最大值可以表征每列元素中尺寸最大的单元格的信息,使得后续获取的特征图中可以包含对每列元素对应的检测框在列方向上进行对齐调整的信息,从而提高表格中的每列单元格对齐的准确率。
步骤530,基于一个以上第二策略对各通道上二维矩阵中相同列的第二特征信息进行融合,得到一个以上第二策略分别对应的二维矩阵中各列的第二融合特征信息。
各通道上二维矩阵中相同列的第二特征信息可以是初始特征图的一个以上通道数量×每列第二特征信息中元素数量的二维矩阵。例如,初始特征图包含64个通道,每列第二特征信息包含2个元素(每列中各元素的均值和最大值),则各通道上二维矩阵中相同列的第二特征信息可以是64×2的二维矩阵64×【zcj av,zcj mx】,其中ci表示第j列。
二维矩阵中各列的第二融合特征信息可以是融合了初始特征图各通道上对应列特征的一维向量或单个数值。在一些实施例中,各个通道上二维矩阵中的某一列可以对应同一个第二融合特征信息。例如,继续以初始特征图B64×256×512为例,其中64个通道上二维矩阵的256列的第1列可以对应第二融合特征信息fc1,第2列可以对应第二融合特征信息fc2,…,第256列可以对应第二融合特征信息fc256。
具体地,特征提取模块220可以基于一个以上第二策略对各通道上二维矩阵中相同列的第二特征信息进行卷积操作,得到一个以上第二策略分别对应的二维矩阵中各列的第二卷积信息。
第二卷积信息可以是表征初始特征图各通道上第二特征信息深层特征的向量。例如,继续以初始特征图B64×256×512为例,其中64个通道上二维矩阵的256列的第1列可以对应第二卷积信息Kc1,第2列可以对应第二卷积信息Kc2,…,第256列可以对应第二卷积信息Kc256。
第二策略可以是对第二特征信息进行卷积操作的第二卷积核。关于第二策略的数量和大小的详细可以参见步骤430对第一策略的相关描述。
在一些实施例中,每个第二策略可以分别对每列对应的第二特征信息进行卷积操作,获取对应通道上的第二卷积信息。关于卷积操作的详细描述可以参见步骤410。
例如,特征提取模块220可以基于第1个第二策略Ces1分别对初始特征图的64个通道上的二维矩阵的256列对应的第二特征信息【zc1 av,zc1 mx】、【zc2 av,zc2 mx】、…、【zc256 av,zc256 mx】进行卷积操作,获取第1个第二策略对应的第1个通道上的第二卷积信息【K1c1 av,K1c1 mx】、【K1c2 av,K1c2 mx】、…、【K1c256 av,K1c256 mx】。与此类似地,特征提取模块220可以基于8个第二策略获取对应的8个通道中每个通道上二维矩阵的256列对应的256个第二卷积信息。
进一步地,特征提取模块220可以基于第一函数,将一个以上第二卷积信息映射为一个以上第二策略分别对应的二维矩阵中各列的第二融合特征信息。
关于第一函数的详细描述可以参见步骤430的描述。例如,继续上述示例,第一函数可以将第1个第二策略对应的第1个通道上的第二卷积信息K1c1 av、K1c1 mx、K1c2 av、K1c2 mx、…、K1c256 av、K1c256 mx映射为第二融合特征信息f1c1 av=0,f1c1 mx= 0,f1c2 av= K1c2 av,f1c2 mx= K1c2 mx…, f1c256 av=0,f1c256 mx=0…。
由前述可知,第二特征信息可以包括二维矩阵中对应列的各元素的均值和各元素中的最大值,相对应地,在一些实施例中,第二融合特征信息可以包括第二均值融合特征信息和第二最大值融合特征信息。例如,第1列对应的第二融合特征信息f1c1可以包括第二均值融合特征信息f1c1 av和第二最大值融合特征信息f1c1 mx。在一些实施例中,特征图提取模块220可以将二维矩阵中每列对应的第一均值融合特征信息和第一最大值融合特征信息的加和作为对应的列的第一融合特征信息。例如,第1列对应的第一融合特征信息f1c1可以为f1c1=f1c1 av+f1c1 mx=0。
步骤540,将基于一个以上第二策略分别对应的二维矩阵中各列的第二融合特征信息,得到初始特征图中各通道上二维矩阵中各列的列注意力权重。
列注意力权重可以是初始特征图中各通道上二维矩阵中各列的特征对判断初始特征图中各像素是否属于表格的重要程度。其中,列注意权重越大,则对应的重要程度越高。
例如,继续以初始特征图B64×256×512在64个通道上的二维矩阵为例,其中256列的第1列可以对应列注意力权重g1c1,第2列可以对应列注意力权重g1c2,…,第256列可以对应列注意力权重g1c256。
具体地,特征提取模块220可以利用一个以上第五卷积核,对一个以上第二策略分别对应的二维矩阵中各列的第二融合特征信息进行卷积操作,得到一个以上第二策略分别对应的二维矩阵中各列的第五卷积信息。
一个以上第二策略分别对应的二维矩阵可以是每个第二策略对应的通道上的多列第二卷积信息对应的二维矩阵。在一些实施例中,一个以上第二策略分别对应的二维矩阵的大小可以是初始特征图中二维矩阵的列数×1。例如,第1个第二策略对应的二维矩阵可以是第1个第二策略对应的第1个通道上的二维矩阵【f1c1,f1c2,…,f1c256】,第2个第二策略对应的二维矩阵可以是第2个第二策略对应的第2个通道上的二维矩阵【f2c1,f2c2,…,f2c256】,…,第8个第二策略对应的二维矩阵可以是第8个第二策略对应的第8个通道上的二维矩阵【f8c1,f8c2,…,f8c256】。
第五卷积信息可以是对第二融合特征信息进行增强和/或抑制的向量。
例如,以第1个第二策略对应的第1个通道上的二维矩阵【f1c1,f1c2,…,f1c256】为例,其中256列的第1列对应的第二融合特征信息f1c1可以对应第五卷积信息V1c1,第2列对应的第二融合特征信息f1c2可以对应第五卷积信息V1c2,…,第256列对应的第二融合特征信息f1c256可以对应第五卷积信息V1c256。
在一些实施例中,第二反卷信息可以对应初始特征图上各通道上二维矩阵的列。例如,继续前述示例,第五卷积信息V1c1可以对应初始特征图B64×256×512在64个通道上的二维矩阵的第1列。
第五卷积核是对第二融合特征信息进行卷积操作的卷积核。在一些实施例中,特征提取模块220可以基于一个以上第二策略确定对应的一个以上第五卷积核。关于第五卷积核的数量和大小的详细描述可以参见步骤430对第四卷积核的描述。
在一些实施例中,每个第五卷积核可以获取一个第二策略对应的一个通道上二维矩阵中各列的第五卷积信息。
由此可知,第五卷积信息的一个以上通道的数量可以和第五卷积核的数量相同。仅作为示例,第一轮迭代处理可以包括64个第五卷积核,则第一轮迭代处理可以获取二维矩阵中各列在64个通道上的第五卷积信息。
例如,特征提取模块220可以基于第1个第五卷积核Ces1对64个第二策略对应的64个二维矩阵中256列对应的256个第二融合特征信息进行卷积操作,获取第1个第五卷积核对应的第1个通道上二维矩阵的256行对应的256个第五卷积信息V1c1、V1c2、…、V1c256。与此类似地,特征提取模块220可以基于64个第五卷积核获取64个通道中每个通道上256列对应的256个第五卷积信息。
进一步地,特征提取模块220可以基于第二函数,将一个以上第五卷积信息映射为初始特征图中各通道上二维矩阵中各列的列注意力权重。关于第二函数的详细描述可以参见步骤430,在此不再赘述。
在一些实施例中,特征提取模块220可以基于Sigmoid激活函数,将一个以上第五卷积核对应的各通道上的二维矩阵中各列对应的第五卷积信息映射为初始特征图在一个以上通道上的二维矩阵中对应的列注意力权重。例如,特征提取模块220可以基于Sigmoid激活函数,将第1个第五卷积核Ces1对应的第1个通道上二维矩阵中256列第五卷积信息V1c1、V1c2、…、V1c256分别映射为初始特征图在第1个通道上二维矩阵中256列对应的256个列注意力权重g1c1、g1c2、…、g1c256。
与此类似地,特征提取模块220可以获取初始特征图在2个通道上二维矩阵中256列对应的256个列注意力权重:g2c1、g2c2、…、g2c256;初始特征图在第3个通道上二维矩阵中256列对应的256个列注意力权重:g3c1、g3c2、…、g3c256;…;初始特征图在第64个通道上二维矩阵中256列。
步骤550,将初始特征图中各像素点的像素值乘以对应通道上对应列的列注意力权重,得到特征图。
具体地,特征提取模块220可以将初始特征图在每个通道上的二维矩阵的各列的像素点的像素值乘以对应通道上对应列的列注意力权重,获取特征图在对应通道上的对应列像素点的像素值。
继续上述示例,第一轮迭代处理的初始特征图可以包括在64个通道上的二维矩阵B1256×256、B2256×256、…、B64256×256,可以将第1个通道上的二维矩阵B1256×256的第1列的像素点的像素值乘以第1个通道上第1列的注意力权重:g1c1,得到特征图在第1个通道上的第1列像素点的像素值。与此类似地,特征提取模块220可以获取特征图在第1个通道上256列的像素值。
进一步地,特征提取模块220可以基于初始特征图在每个通道上的所有列像素点的像素值,获取特征图在每个通道上的二维矩阵,从而得到当前轮的特征图。
继续前述示例,特征提取模块220可以基于初始特征图在第1个通道上256列的像素值,获取特征图在第1个通道上的二维矩阵H1256×256,与此类似地,特征提取模块220可以获取特征图在第64个通道上的二维矩阵H2256×256、H3256×256、…、H2256×256,从而获取第一轮迭代处理的特征图H64×256×256。
在本说明书的一些实施例中,第二融合特征信息融合了初始特征图中每列的信息,基于第二融合信息获取列注意力权重,使得基于列注意力权重获取的特征图中融合了每列的信息,使得基于后续基于特征图获取的表格可以提高列对齐的准确率。
图6是根据本说明书一些实施例所示的对待处理图像进行特征提取其中一轮融合行信息和列信息的迭代处理的示例性流程图。在一些实施例中,流程600可以由特征提取模块220执行。如图6所示,流程600可以包括以下步骤。
步骤610,对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图。关于得到初始特征图的详细描述可以参见步骤410,在此不再赘述。
步骤620,获取初始特征图中各通道上二维矩阵中各行的第一特征信息和各列的第二特征信息。
初始特征图中各通道上二维矩阵中各行的第一特征信息可以是各行的浅层信息。在一些实施例中,第一特征信息可以基于初始特征图中各通道上二维矩阵中对应行的各元素的均值和各元素中的最大值拼接获取。关于第一特征信息的详细描述可以参见步骤420。
初始特征图中各通道上二维矩阵中各列的第二特征信息可以是各列的浅层信息。在一些实施例中,第二特征信息可以基于初始特征图中各通道上二维矩阵中对应列的各元素的均值和各元素中的最大值拼接获取。关于第二特征信息的详细描述可以参见步骤520。
步骤630,基于一个以上第三策略分别对各通道上二维矩阵中相同行的第一特征信息和相同列的第二特征信息进行融合,得到一个以上第三策略分别对应的二维矩阵中各行的第一融合特征信息和第二融合特征信息。
第三策略可以是对第一特征信息和第二特征信息分别进行卷积操作的第三卷积核。关于第三策略的数量和大小的详细可以参见步骤430对第一策略的相关描述。
二维矩阵中各行的第一融合特征信息可以是融合了初始特征图各通道上对应行特征的一维向量或单个数值。例如,以初始特征图B64×256×512为例,其中64个通道上二维矩阵的512行的第1行可以对应第一融合特征信息fr1,第2行可以对应第一融合特征信息fr2,…,第512行可以对应第一融合特征信息fr512。关于获取第一融合特征信息的详细描述可以参见步骤430。
二维矩阵中各列的第二融合特征信息可以是融合了初始特征图各通道上对应列特征的一维向量或单个数值。例如,以初始特征图B64×256×512为例,其中64个通道上二维矩阵的256列的第1列可以对应第二融合特征信息fc1,第2列可以对应第二融合特征信息fc2,…,第256列可以对应第二融合特征信息fc256。关于获取第二融合特征信息的详细描述可以参见步骤530。
步骤640,基于一个以上第三策略分别对应的二维矩阵中各行的第一融合特征信息和各列的第二融合特征信息,得到初始特征图中各通道上二维矩阵中各行的行注意力权重和各列的列注意力权重。
行注意力权重可以是初始特征图中各通道上二维矩阵中各行的特征对判断初始特征图中各像素是否属于表格的重要程度。例如,以初始特征图B64×256×512在64个通道上的二维矩阵为例,其中512行的第1行可以对应行注意力权重g1r1,第2行可以对应行注意力权重g1r2,…,第512行可以对应行注意力权重g1r512。关于获取行注意力权重的详细描述可以参见步骤440。
列注意力权重可以是初始特征图中各通道上二维矩阵中各列的特征对判断初始特征图中各像素是否属于表格的重要程度。例如,以初始特征图B64×256×512在64个通道上的二维矩阵为例,其中256列的第1列可以对应列注意力权重g1c1,第2列可以对应列注意力权重g1c2,…,第256列可以对应列注意力权重g1c256。关于获取列注意力权重的详细描述可以参见步骤540。
步骤650,将初始特征图中各像素点的像素值乘以对应通道上对应行的行注意力权重和对应通道上对应列的列注意力权重,得到当前轮的特征图。
具体地,特征提取模块220可以先将初始特征图中各像素点的像素值乘以对应通道上对应行的行注意力权重,得到融合了行信息的特征图,然后将融合了行信息的特征图中各像素点的像素值乘以对应通道上对应列的列注意力权重,得到当前轮的特征图。
在本说明书的一些实施例中,第一融合信息和第二融合特征信息分别融合了初始特征图中每行和每列的信息,分别基于第一融合信息和第二融合信息获取行注意力权重和列注意力权重,使得同时基于行注意力权重和列注意力权重获取的特征图中融合了每行和每列的信息,使得基于后续基于特征图获取的表格可以提高行和列对齐的准确率。
应当注意,关于流程的以上描述仅是出于说明的目的而提供的,并且无意于限制本说明书的范围。对于本领域的普通技术人员来说,可以根据本说明书的描述,做出各种各样的变化和修改。然而,这些变化和修改不脱离本说明书的范围。上面呈现的流程的操作示意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成上述过程。例如,流程可以以程序或指令的形式存储在存储设备(例如,存储设备150、***的存储单元)中,当处理器110和/或从图像中提取表格的***200执行指令时,可以实现流程。另外,图中示出的和上面描述的流程的操作的顺序并非限制性的。
本说明书实施例可能带来的有益效果包括但不限于:(1)从待处理图像中提取融合有行注意力信息和/或列注意力信息的特征图,并对特征图进行识别,得到原始图像包含的表格,可以使特征图中包含表格的结构信息,从而提高表格结构识别的准确性;(2)一个以上特征图包括一轮以上迭代处理中一轮或多轮中得到的特征图,从而可以使得一个以上特征图包含不同深度的信息,丰富特征图中的特征层次,提高表格提取的准确率;(3)第一特征信息中包括的二维矩阵中对应行的各元素的均值可以表征每行元素的基本信息,使得后续获取的特征图中可以包含每行元素对应的检测框行尺寸信息,各元素中的最大值可以表征每行元素中尺寸最大的单元格的信息,使得后续获取的特征图中可以包含对每行元素对应的检测框在行方向上进行对齐调整的信息,从而提高表格中的每行单元格对齐的准确率;(4)第二特征信息中包括的二维矩阵中对应列的各元素的均值可以表征每列元素的基本信息,使得后续获取的特征图中可以包含每列元素对应的检测框列尺寸信息,各元素中的最大值可以表征每列元素中尺寸最大的单元格的信息,使得后续获取的特征图中可以包含对每列元素对应的检测框在列方向上进行对齐调整的信息,从而提高表格中的每列单元格对齐的准确率;(5)基于第一策略和/或第二策略,分别得到一个以上第一策略和/或一个以上第二策略分别对应的二维矩阵中各行的第一卷积信息和各列的第二卷积信息,基于缩小因子压缩了通道数,使得第一卷积信息和/或第二卷积信息的总数量减少,然后基于第一函数,过滤掉第一卷积信息和/或第二卷积信息中的较小的噪声特征,一方面提高了计算效率,另一方面使获取的第一卷积信息和或第二卷积信息中包含更多的行方向上的最大值信息和/或列方向上的最大值信息,从而使后续表格提取的单元格检测框可以基于最大值信息确定尺寸,避免单元格检测框尺寸过小导致的表格提取错误;(6)对一个以上特征图进行单元格检测,得到待处理图像上的多个单元格检测框,然后基于多个单元格检测框进行规则处理,得到表格,可以基于不同深度的特征图得到不同的单元格检测框,避免信息缺失导致的检测错误,同时可以从不同的单元格检测框中基于规则确定最适合的单元格检测框,从而提高表格提取的准确率;(7)对特征图在一个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵,可以提高重排特征图在行和/或列方向上的分辨率,从而提高在行方向和/或列方向上表格密集的待处理图像的表格提取的精准性。
需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“***”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行***、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的***组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的***。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (16)
1.一种从图像中提取表格的方法,所述方法包括:
获取待处理图像;
对待处理图像进行特征提取,以获得其一个以上特征图,其中,至少一个特征图融合有行注意力信息和/或列注意力信息;
对所述特征图进行识别,得到原始图像包含的表格。
2.如权利要求1所述的方法,对待处理图像进行特征提取,以获得其一个以上特征图,包括对待处理图像进行一轮以上迭代处理,得到一个以上特征图,其中一轮迭代处理包括:
对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图;所述初始特征图为三维图,包括在一个以上通道上的二维矩阵;
获取初始特征图中各通道上二维矩阵中各行的第一特征信息;
基于一个以上第一策略对各通道上二维矩阵中相同行的第一特征信息进行融合,得到一个以上第一策略分别对应的所述二维矩阵中各行的第一融合特征信息;
基于一个以上第一策略分别对应的所述二维矩阵中各行的第一融合特征信息,得到初始特征图中各通道上二维矩阵中各行的行注意力权重;
将初始特征图中各像素点的像素值乘以对应通道上对应行的行注意力权重,得到当前轮的特征图。
3.如权利要求2所述的方法,所述一个以上特征图包括所述一轮以上迭代处理中一轮或多轮中得到的特征图。
4.如权利要求2所述的方法,所述第一特征信息包括所述二维矩阵中对应行的各元素的均值和/或各元素中的最大值。
5.如权利要求2所述的方法,所述基于一个以上第一策略对各通道上二维矩阵中相同行的第一特征信息进行融合,得到一个以上第一策略分别对应的所述二维矩阵中各行的第一融合特征信息,包括:
基于一个以上第一策略对各通道上二维矩阵中相同行的第一特征信息进行卷积操作,得到一个以上第一策略分别对应的所述二维矩阵中各行的第一卷积信息;
基于第一函数,将一个以上第一卷积信息映射为一个以上第一策略分别对应的所述二维矩阵中各行的第一融合特征信息。
6.如权利要求1所述的方法,对待处理图像进行特征提取,以获得其一个以上特征图,包括对待处理图像进行一轮以上迭代处理,得到一个以上特征图,其中一轮迭代处理包括:
对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图;所述初始特征图为三维图,包括在一个以上通道上的二维矩阵;
获取初始特征图各通道上二维矩阵中各列的第二特征信息;
基于一个以上第二策略对各通道上二维矩阵中相同列的第二特征信息进行融合,得到一个以上第二策略分别对应的所述二维矩阵中各列的第二融合特征信息;
将基于一个以上第二策略分别对应的所述二维矩阵中各列的第二融合特征信息,得到初始特征图中各通道上二维矩阵中各列的列注意力权重;
将初始特征图中各像素点的像素值乘以对应通道上对应列的列注意力权重,得到所述特征图。
7.如权利要求6所述的方法,所述第二特征信息包括所述二维矩阵中对应列的各元素的均值和/或各元素中的最大值。
8.如权利要求1所述的方法,所述对待处理图像进行特征提取,以获得其一个以上特征图,包括对待处理图像进行一轮以上迭代处理,得到一个以上特征图,其中一轮迭代处理包括:
对待处理图像或前一轮迭代处理得到的特征图进行卷积操作,得到初始特征图;所述初始特征图为三维图,包括在一个以上通道上的二维矩阵;
获取初始特征图中各通道上二维矩阵中各行的第一特征信息和各列的第二特征信息;其中,第一特征信息基于二维矩阵中对应行的各元素的均值和各元素中的最大值拼接获取,第二特征信息基于二维矩阵中对应列的各元素的均值和各元素中的最大值拼接获取;
基于一个以上第三策略分别对各通道上二维矩阵中相同行的第一特征信息和相同列的第二特征信息进行融合,得到一个以上第三策略分别对应的所述二维矩阵中各行的第一融合特征信息和第二融合特征信息;
基于一个以上第三策略分别对应的所述二维矩阵中各行的第一融合特征信息和各列的第二融合特征信息,得到初始特征图中各通道上二维矩阵中各行的行注意力权重和各列的列注意力权重;
将初始特征图中各像素点的像素值乘以对应通道上对应行的行注意力权重和对应通道上对应列的列注意力权重,得到当前轮的特征图。
9.如权利要求1所述的方法,所述特征图为三维图,包括在一个以上通道上的二维矩阵;
在对所述特征图进行识别以前,该方法还包括:
对于所述一个以上特征图中的每一个,将其两个以上通道上的二维矩阵进行组合重排,得到行数和/或列数大于原二维矩阵的重排二维矩阵,进而得到重排特征图,以基于重排特征图进行所述识别。
10.如权利要求9所述的方法,所述对于所述一个以上特征图中的每一个,将其两个以上通道上的二维矩阵进行组合重排,包括:
将其各通道上的二维矩阵进行两两组合重排,得到重排特征图各通道上的重排二维矩阵。
11.如权利要求10所述的方法,所述将其各通道上的二维矩阵进行两两组合重排,包括:
将两个二维矩阵的行或者列依次交错排列,得到一个重排二维矩阵。
12.如权利要求1所述的方法,所述对所述特征图进行识别,得到原始图像包含的表格,包括:
对所述一个以上特征图进行单元格检测,得到待处理图像上的多个单元格检测框;
基于所述多个单元格检测框进行规则处理,得到所述表格。
13.如权利要求12所述的方法,所述基于所述多个单元格检测框进行规则处理,得到所述表格,包括:
如果多个单元格检测框中在行和/或列方向上相邻的两个单元格检测框没有在列和/或行方向上对齐,则将所述两个单元格检测框中在列和/或行方向上较小边界的单元格检测框对齐较大边界的单元格检测框。
14.如权利要求12所述的方法,所述基于所述多个单元格检测框进行规则处理,得到所述表格,包括:
获取待处理图像中对应两个以上单元格检测框的区域;
基于非极大值抑制算法,确定所述区域最终对应的一个单元格检测框。
15.一种从图像中提取表格的***,所述***包括:
获取模块,用于获取待处理图像;
特征提取模块,用于对待处理图像进行特征提取,以获得其一个以上特征图,其中,至少一个特征图融合有行注意力信息和/或列注意力信息;
识别模块,用于对所述特征图进行识别,得到原始图像包含的表格。
16.一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行如权利要求1~14中任一项所述的从图像中提取表格的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310783132.5A CN116503888B (zh) | 2023-06-29 | 2023-06-29 | 一种从图像中提取表格的方法、***和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310783132.5A CN116503888B (zh) | 2023-06-29 | 2023-06-29 | 一种从图像中提取表格的方法、***和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116503888A true CN116503888A (zh) | 2023-07-28 |
CN116503888B CN116503888B (zh) | 2023-09-05 |
Family
ID=87328861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310783132.5A Active CN116503888B (zh) | 2023-06-29 | 2023-06-29 | 一种从图像中提取表格的方法、***和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116503888B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111738055A (zh) * | 2020-04-24 | 2020-10-02 | 浙江大学城市学院 | 多类别文本检测***和基于该***的票据表单检测方法 |
CN112528863A (zh) * | 2020-12-14 | 2021-03-19 | 中国平安人寿保险股份有限公司 | 表格结构的识别方法、装置、电子设备及存储介质 |
CN112528813A (zh) * | 2020-12-03 | 2021-03-19 | 上海云从企业发展有限公司 | 表格识别方法、装置以及计算机可读存储介质 |
US20210374395A1 (en) * | 2020-06-02 | 2021-12-02 | Google Llc | System for Information Extraction from Form-Like Documents |
US20220121871A1 (en) * | 2020-10-16 | 2022-04-21 | Tsinghua University | Multi-directional scene text recognition method and system based on multi-element attention mechanism |
CN114724156A (zh) * | 2022-04-20 | 2022-07-08 | 北京百度网讯科技有限公司 | 表单识别方法、装置及电子设备 |
CN115331245A (zh) * | 2022-10-12 | 2022-11-11 | 中南民族大学 | 一种基于图像实例分割的表格结构识别方法 |
WO2022247823A1 (zh) * | 2021-05-25 | 2022-12-01 | 阿里巴巴(中国)有限公司 | 图像检测方法、设备和存储介质 |
WO2023279847A1 (zh) * | 2021-07-08 | 2023-01-12 | 京东科技信息技术有限公司 | 单元格位置的检测方法、装置和电子设备 |
CN116310744A (zh) * | 2023-03-23 | 2023-06-23 | 深圳市正浩创新科技股份有限公司 | 图像处理方法、装置、计算机可读介质及电子设备 |
-
2023
- 2023-06-29 CN CN202310783132.5A patent/CN116503888B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111738055A (zh) * | 2020-04-24 | 2020-10-02 | 浙江大学城市学院 | 多类别文本检测***和基于该***的票据表单检测方法 |
US20210374395A1 (en) * | 2020-06-02 | 2021-12-02 | Google Llc | System for Information Extraction from Form-Like Documents |
US20220121871A1 (en) * | 2020-10-16 | 2022-04-21 | Tsinghua University | Multi-directional scene text recognition method and system based on multi-element attention mechanism |
CN112528813A (zh) * | 2020-12-03 | 2021-03-19 | 上海云从企业发展有限公司 | 表格识别方法、装置以及计算机可读存储介质 |
CN112528863A (zh) * | 2020-12-14 | 2021-03-19 | 中国平安人寿保险股份有限公司 | 表格结构的识别方法、装置、电子设备及存储介质 |
WO2022247823A1 (zh) * | 2021-05-25 | 2022-12-01 | 阿里巴巴(中国)有限公司 | 图像检测方法、设备和存储介质 |
WO2023279847A1 (zh) * | 2021-07-08 | 2023-01-12 | 京东科技信息技术有限公司 | 单元格位置的检测方法、装置和电子设备 |
CN114724156A (zh) * | 2022-04-20 | 2022-07-08 | 北京百度网讯科技有限公司 | 表单识别方法、装置及电子设备 |
CN115331245A (zh) * | 2022-10-12 | 2022-11-11 | 中南民族大学 | 一种基于图像实例分割的表格结构识别方法 |
CN116310744A (zh) * | 2023-03-23 | 2023-06-23 | 深圳市正浩创新科技股份有限公司 | 图像处理方法、装置、计算机可读介质及电子设备 |
Non-Patent Citations (2)
Title |
---|
张伟信;刘斌;: "基于残差网络的特征加权行人重识别研究", 微电子学与计算机, no. 04 * |
张振宇;姜贺云;樊明宇;: "一种面向银行票据文字自动化识别的高效人工智能方法", 温州大学学报(自然科学版), no. 03 * |
Also Published As
Publication number | Publication date |
---|---|
CN116503888B (zh) | 2023-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220319155A1 (en) | Image Processing Method, Image Processing Apparatus, and Device | |
CN106778928B (zh) | 图像处理方法及装置 | |
CN111784602B (zh) | 一种生成对抗网络用于图像修复的方法 | |
CN109003282A (zh) | 一种图像处理的方法、装置及计算机存储介质 | |
CN110334585A (zh) | 表格识别方法、装置、计算机设备和存储介质 | |
CN109064396A (zh) | 一种基于深度成分学习网络的单幅图像超分辨率重建方法 | |
WO2022001237A1 (zh) | 鼻咽癌原发肿瘤图像自动识别方法及*** | |
CN110059728B (zh) | 基于注意力模型的rgb-d图像视觉显著性检测方法 | |
CN110675339A (zh) | 基于边缘修复和内容修复的图像修复方法及*** | |
KR20200140713A (ko) | 이미지 디테일 향상을 위한 신경 네트워크 모델 학습 방법 및 장치 | |
CN111028923B (zh) | 数字病理图像染色归一化方法、电子装置及存储介质 | |
JP2021531571A (ja) | 証明書画像抽出方法及び端末機器 | |
CN111127309B (zh) | 肖像风格迁移模型训练方法、肖像风格迁移方法以及装置 | |
CN111666890B (zh) | 脊柱变形人群识别方法、装置、计算机设备及存储介质 | |
CN115147862A (zh) | 底栖动物自动识别方法、***、电子设备和可读存储介质 | |
CN116091823A (zh) | 一种基于快速分组残差模块的单特征无锚框目标检测方法 | |
CN115588055A (zh) | 数字病理图像的色彩标准化方法及*** | |
CN113658091A (zh) | 一种图像评价方法、存储介质及终端设备 | |
CN111144407A (zh) | 一种目标检测方法、***、装置及可读存储介质 | |
CN113096023A (zh) | 神经网络的训练方法、图像处理方法及装置、存储介质 | |
CN116503888B (zh) | 一种从图像中提取表格的方法、***和存储介质 | |
CN116798041A (zh) | 图像识别方法、装置和电子设备 | |
CN110647898B (zh) | 图像处理方法、装置、电子设备及计算机存储介质 | |
CN112116598A (zh) | 一种花卉种类识别方法及*** | |
CN116912918B (zh) | 一种人脸识别方法、装置、设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |