CN117649675B - 一种表格生成方法、装置、设备及存储介质 - Google Patents
一种表格生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117649675B CN117649675B CN202410119360.7A CN202410119360A CN117649675B CN 117649675 B CN117649675 B CN 117649675B CN 202410119360 A CN202410119360 A CN 202410119360A CN 117649675 B CN117649675 B CN 117649675B
- Authority
- CN
- China
- Prior art keywords
- cell
- center point
- cells
- merging
- linked list
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000010276 construction Methods 0.000 claims abstract description 9
- 238000010586 diagram Methods 0.000 claims description 29
- 238000007781 pre-processing Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 11
- 230000006870 function Effects 0.000 description 16
- 238000013135 deep learning Methods 0.000 description 5
- 238000012015 optical character recognition Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Abstract
本申请公开了一种表格生成的方法、装置、设备及存储介质,涉及表格识别技术领域,该方法包括:获取表格图片数据;通过表格识别网络模型对表格图片数据进行预测,以得到预测结果,所述预测结果包括:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;基于各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值,进行目标表格的生成。从而提高了表格构建效果。
Description
技术领域
本申请涉及表格识别技术领域,尤其涉及一种表格生成方法、装置、设备及存储介质。
背景技术
光学字符识别(Optical Character Recognition,OCR)是指对文本资料的图像文件进行分析识别处理,获取文字及版面信息的过程。随着应用需求的不断挖掘和深入,表格识别作为OCR的分支也愈发重要。但由于表格大小、种类和样式复杂多样,例如表格中存在不同的背景填充,不同的行列合并方法,不同的内容文本类型等,并且现有文档既包括现代的、电子的文档,也有历史的、扫描的手写文档,它们的文档样式、所处光照环境以及纹理等都有比较大的差异,在一定程度反映出表格识别一直是文档识别领域的研究难点。
目前常见的表格识别方法为基于目标检测的深度学习方法,例如采用yolo等深度学习算法在图片中定位出表格的位置,包括表格的左上顶点和右下顶点的坐标等,但由于并不支持任意四边形表格单元格的情况,并不能带来良好的表格构建效果。
发明内容
有鉴于此,本申请的主要目的在于提供一种表格生成方法、装置、设备及存储介质,目的在于实现任意四边形单元格的识别,以提高表格构建效果。
本申请第一方面提供了一种表格生成方法,该方法包括:
获取表格图片数据;
通过表格识别网络模型对表格图片数据进行预测,以得到以下预测结果,预测结果包括:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;
基于各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值,进行目标表格的生成。
在本申请第一方面的一些实现方式中,表格识别网络模型的网络结构包括:骨干backbone网络、特征金字塔FPN网络以及头部Head网络;
backbone网络的输出连接FPN网络的输入,FPN网络的输出连接Head网络的输入。
在本申请第一方面的一些实现方式中,通过表格识别网络模型对表格图片数据进行预测,包括:
预处理表格图片数据;
将预处理后的表格图片数据输入至backbone网络,以得到backbone网络输出的第一特征值图;
将第一特征值图输入至FPN网络,以得到FPN网络输出的第二特征值图;
将第二特征值图输入至Head网络,通过Head网络的中心点热力图分支输出各单元格中心点坐标,通过Head网络的中心点偏置回归分支输出各单元格中心点偏置值,通过Head网络的单元格宽与高回归分支输出各单元格高度与宽度值,通过Head网络的单元格角点偏置回归分支输出各单元格的各角点偏置值,通过Head网络的单元格相邻偏置回归分支输出各单元格与相邻单元格的中心点偏置值。
在本申请第一方面的一些实现方式中,预处理表格图片数据,包括:
对表格图片数据进行大小对齐处理以及像素值归一化处理。
在本申请第一方面的一些实现方式中,基于各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元的各角点偏置值以及各单元格与相邻单元格的中心点偏置值,进行目标表格的生成,包括:
基于各单元格中心点坐标以及各单元格中心点偏置值,确定目标表格的各单元格中心点;
基于目标表格的各单元格中心点、各单元格高度与宽度值以及各单元格的各角点偏置值,确定目标表格的各单元格的各角点坐标;
基于各单元格与相邻单元格的中心点偏置值,构建单元格相邻关系有向图;
通过遍历单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表,合并单元格至少在一个方向上有至少两个相邻单元格;
基于各合并单元格的合并参数、下向单元格链表、至少一个右向单元格链表、目标表格的各单元格中心点以及目标表格的各单元格的各角点坐标,进行目标表格的生成。
在本申请第一方面的一些实现方式中,通过遍历单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表,包括:
确定单元格相邻关系有向图中代表根单元格的节点;
确定单元格相邻关系有向图中代表合并单元格的节点以及合并单元格参数,以得到各合并单元格的合并参数;
从代表根单元格的节点开始,通过遍历单元格相邻关系有向图中代表根单元格的节点向下的节点,生成下向单元格链表;
从下向单元格链表中的根单元格开始,通过执行以下步骤直至完成下向单元格链表的遍历,以生成至少一个右向单元格链表:从代表当前遍历位置的单元格的节点开始,通过遍历单元格向量关系有向图中代表当前遍历位置的单元格的节点向右的节点,生成右向单元格链表。
本申请第二方面提供了一种表格生成装置,该装置包括:
图片获取模块,用于获取表格图片数据;
模型预测模块,用于通过表格识别网络模型对表格图片数据进行预测,以得到以下预测结果:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;
表格生成模块,用于基于各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值,进行目标表格的生成。
在本申请第二方面的一些实现方式中,表格生成模块,包括:
中心点确定模块,用于基于各单元格中心点坐标以及各单元格中心点偏置值,确定目标表格的各单元格中心点;
角点确定模块,用于基于目标表格的各单元格中心点、各单元格高度与宽度值以及各单元格的各角点偏置值,确定目标表格的各单元格的各角点坐标;
有向图构建模块,用于基于各单元格与相邻单元格的中心点偏置值,构建单元格相邻关系有向图;
有向图遍历模块,用于通过遍历单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表;
目标表格生成模块,用于基于各合并单元格的合并参数、下向单元格链表、至少一个右向单元格链表、目标表格的各单元格中心点以及目标表格的各单元格的各角点坐标,进行目标表格的生成。
本申请第三方面提供了一种表格生成设备,该设备包括:包括存储器和处理器,处理器用于执行存储器中存储的程序,运行如本申请第一方面所提供的任一项表格生成方法。
本申请第四方面提供了一种可读存储介质,其上存储有计算机程序,其特征在于,计算机程序被处理器执行时,实现如本申请第一方面所提供的表格生成方法的各个步骤。
本申请所提供的技术方案具有如下有益效果:
本申请提供了一种表格生成方法,首先,获取表格图片数据;然后通过表格识别网络模型对表格图片数据进行预测,以得到各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;基于各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元的各角点偏置值以及各单元格与相邻单元格的中心点偏置值可以确定出任意的四边形单元格,能以更佳的表格构建效果生成目标表格。
附图说明
图1为本申请实施例提供的一种表格生成方法的流程示意图;
图2为本申请实施例提供的表格识别模型的网络结构图;
图3为本申请实施例提供的又一种表格生成方法的流程示意图;
图4为本申请实施例提供的中心点热力图示意图;
图5为本申请实施例提供的单元格角点偏置示意图;
图6为本申请实施例提供的中心点相邻偏置示意图;
图7为本申请实施例提供的又一种表格生成方法的流程示意图;
图8为本申请实施例提供的表格识别效果示意图;
图9为本申请实施例提供的又一种表格生成方法的流程示意图;
图10为本申请实施例提供的一种表格生成装置的结构示意图;
图11为本申请实施例提供的一种表格生成设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
正如背景技术中所说的,目前常见的表格识别方法为基于目标检测的深度学习方法,例如采用yolo等深度学习算法在图片中定位出表格的位置,包括表格的左上顶点和右下顶点的坐标等,但由于并不支持任意四边形表格单元格的情况,并不能带来良好的表格构建效果。有鉴于此,参见图1所示,本申请的实施例提供了一种表格生成方法,具体包括以下步骤:
S101:获取表格图片数据。
在本申请的实施例中,表格图片数据可以是任何一种常见的图片格式数据,例如JPEG、PNG、BMP等,并且可来源于不同的图像采集设备,例如扫描仪、相机、手机、电脑等。
S102:通过表格识别网络模型对表格图片数据进行预测,以得到预测结果,预测结果包括:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元的各角点偏置值以及各单元格与相邻单元格的中心点偏置值。
在本申请的实施例中,表格识别网络模型指的是预先训练好的用于识别表格的深度学习神经网络模型,其目的在于从表格图片数据中预测出以下数值:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值、各单元格与相邻单元格的中心点偏置值。通过进行单元格中心点的预测,可以预测表格每个单元格的关键点;通过预测中心点偏置值,可以进一步精准定位单元格中心点;通过预测单元格的宽高以及单元格角点的偏置值,可以计算出单元格四个角点;通过预测每个单元格中心点与相邻单元格的中心点距离,可以确定单元格相邻关系。本申请可以通过上述数值确定任意一个表格的单元格的位置、形状以及单元格之间的相邻关系。
具体而言,各单元格中心点坐标指的是模型预测的每个单元格的中心位置的横纵坐标,本申请实施例可以根据中心点坐标的值,找出每个单元格的中心点坐标。各单元格中心点偏置值指的是模型预测的每个单元格中心位置的偏置值,该偏置值又可称为偏移量,在本申请在找出每个单元格的中心点坐标后,可以结合各单元格中心点偏置值,进一步精确定位单元格的中心点,起到对各单元格中心点坐标的校正效果。各单元格的高度与宽度值指的是模型预测的每个单元格的高度与宽度,也就是每个单元格的大小。各单元格的各角点偏置值指的是模型预测的每个单元格的角点相对于中心点的偏置值,在本申请实施例中,可以根据单元格的高度与宽度值以及各角点的偏置值,可以推断出任意一个单元格的角点坐标,同时也可以推断出任意一个单元格的形状。各单元格与相邻单元格的中心点偏置值指的是模型预测的每个单元格的中心点到相邻单元格的中心点的偏置值,结合经由各单元格中心点坐标以及各单元格中心点偏置值确定的最终的各单元格中心点,对于任意一个单元格,通过确定该单元格中心点与相邻单元格中心点的偏置值,可以确定与该单元格相邻的所有单元格的归属。
在本申请实施例的一些实现方式中,本申请为实现上述预测结果的获取,采用了如图2所示的网络结构搭建表格识别网络模型,图2为本申请实施例所提供的表格识别网络模型的网络结构图,该表格识别网络模型的网络结构包括:骨干(backbone)网络、特征金字塔(Feature Pyramid Networks,FPN)网络以及头部(Head)网络,backbone网络的输出连接FPN网络的输入,FPN网络的输出连接Head网络的输入。其中,backbone网络用于提取表格图片数据的特征,FPN网络用于通过自上而下和侧边连接来补偿分辨率和标准化金字塔型的层级特征语义,FPN网络的输出作为共享特征传递给Head网络,Head网络用于预测表格的关键信息。
S103:基于单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元的各角点偏置值以及各单元格与相邻单元格的中心点偏置值,进行目标表格的生成。
在本申请的实施例中,利用表格识别模型输出的预测结果,重建表格的结构以生成目标表格,该目标表格也就是对表格图片数据的识别结果。其中,通过各单元格中心点坐标以及各单元格中心点偏置值可以精确地确定目标表格中各单元格的中心点坐标;通过目标表格的各单元格中心点、各单元格高度与宽度值以及各单元格的各角点偏置值,可以精确地确定目标表格中各单元格的角点坐标;通过各单元格与相邻单元格的中心点偏置值,可以精确地确定目标表格中各单元格的相邻关系,由此实现目标表格的生成。
在图1所示的流程中,首先,获取表格图片数据;然后通过表格识别网络模型对表格图片数据进行预测,以得到各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;基于各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元的各角点偏置值以及各单元格与相邻单元格的中心点偏置值可以推断出任意的四边形单元格,能以更佳的表格构建效果生成目标表格。
参见图3所示,本申请实施例又提供了一种表格生成方法,在图1所示的基础上,该表格识别网络模型采用了如图2所示的网络结构,包括:骨干backbone网络、特征金字塔FPN网络以及头部Head网络,基于此,S102具体可以包括以下步骤:
S301:预处理表格图片数据。
在本申请的实施中,表格图片数据在输入至表格识别网络模型之前,需要先进行适应性处理以符合图像识别网络模型的输入要求。在一实现方式中,预处理表格图片数据,具体包括:对表格图片数据进行大小对齐处理以及像素值归一化处理。其中,大小对齐指的是调整图像数据的尺寸以得到一个指定尺寸的表格图片,像素归一化处理指的是将表格图片数据中的像素值归一化调整到0至1的范围内。
S302:将预处理后的表格图片数据输入至backbone网络,以得到backbone网络输出的第一特征值图。
在本申请的实施例中,backbone网络用于提取表格图片数据的特征,也就是表格图片中的有用信息。将预处理后的表格图片数据输入至backbone网络后,backbone网络输出一个矩阵中每个元素代表一个像素点特征的多维矩阵,即第一特征值图。
需要说明的是,Backbone网络通常都是已在大型数据集上完成了预训练,是拥有预训练参数的卷积神经网络,本申请可以加载官方在大型数据集上训练好的模型参数,然后由技术人员根据实际情况进行微调即可。此外,该backbone网络可以使用不同的网络结构,比如残差网络Resnet50,深层聚合网络DLA,时序网络Hourglass等,根据不同的场景和需求均可以进行选择,以实现不同的速度和精度的平衡,均不影响本申请实施例的实现。
S303:将第一特征值图输入至FPN网络,以得到FPN网络输出的第二特征值图。
在本申请的实施例中,FPN网络用于通过自上而下和侧边连接来补偿分辨率和标准化金字塔型的层级特征语义,用来进一步提取第一特征值图的多尺度的特征,也就是图片表格数据中不同尺度的信息,以提高网络泛化能力。将第二特征值图输入至FPN网络后,该FPN网络输出一个矩阵中每个元素代表一个像素点的多尺度特征值的多维矩阵,即第二特征值图。
S304:将第二特征值图输入至Head网络,通过Head网络的中心点热力图分支输出各单元格中心点坐标,通过Head网络的中心点偏置回归分支输出各单元格中心点偏置值,通过Head网络的单元格宽与高回归分支输出各单元格高度与宽度值,通过Head网络的单元格角点偏置回归分支输出各单元格的各角点偏置值,通过Head网络的单元格相邻偏置回归分支输出各单元格与相邻单元格的中心点偏置值。
在本申请的实施例中,Head网络用于预测表格的关键信息,也就是表格中的关键点以及偏移值。其中,参见图2所示,该Head网络中的输出层包括:中心点热力图分支heatmap、中心点偏置回归分支reg、单元格宽与高回归分支size、单元格角点偏置回归分支vert、单元格相邻偏置回归分支adj。
其中,中心点热力图分支用于预测表格中每个单元格的中心点的位置,输出例如图4右侧所示的中心点热力图,图4为本申请实施例提供的中心点热力图的示意图,通过该中心点热力图分支可以获取各单元格中心点坐标。
中心点偏置回归分支用于预测每个单元格中心点相对于像素点的偏移量,用来精确地定位单元格中心点的位置,该中心点偏置回归分支的输出为各单元格中心点偏置值。
单元格宽与高回归分支用于预测每个单元格的宽度和高度,也就是单元格的大小,用来确定单元格的范围,该单元格宽与高回归分支的输出为各单元格高度与宽度值。
单元格角点偏置回归分支用于预测每个单元格的四个角点相对于中心点的偏移量,用来确定单元格的形状,该单元格角点偏置回归分支输出为各单元格的各角点偏置值。
单元格相邻偏置回归分支用于预测每个单元格的中心点与上下左右四个方向相邻单元格的中心点的距离,用来确定单元格之间的相邻关系,该单元格相邻偏置回归分支输出为各单元格与相邻单元格的中心点偏置值。
在本申请实施例的一些实现方式中,该表格识别网络模型在训练过程中,所构建的总目标损失函数为:
式中,表示总目标损失函数,/>表示单元格中心点损失函数,/>表示单元格中心点偏置损失函数,/>表示单元格高宽损失函数,/>表示单元格角点偏置损失函数,/>表示单元格相邻损失函数,其中,/>,/>,/>,/>均为模型超参,在本申请中可设置为0.1。
其中,单元格中心点损失采用聚焦损失Focal Loss的计算方式训练,具体损失函数的表达式如下:
其中,α和β是Focal Loss的超参数,可设置α和β分别是2和4;表示中心点热力图预测值,/>表示中心点热力图标注Ground-Truth值。/>是图像表格的单元格中心点数量,用于将所有的正样本计算出来的正则化聚焦损失positive focal loss标准化为1。
单元格中心的偏置损失采用平均绝对误差L1 loss计算方法训练,损失函数如下:
其中,为单元格中心点,具体表达式如下:
为中心点/>向下取整,/>为表格识别网络模型预测的偏置值,/>为下采样倍数,本申请中/>。
引入该单元格中心的偏置损失函数,主要因为表格识别网络模型对图像进行了的下采样动作,产生的特征图在重新映射到原始图像上时,会带来精度误差,因此对于每一个单元格中心点需要额外引入/>进行补偿。
单元格宽与高的损失函数,依然采用L1 loss 训练方法,损失函数如下:
其中,为第k个单元格的宽与高,其具体表达式如下:
单元格角点的偏置损失函数,用来预测倾斜表格或单元格角点的偏置情况,具体参见图5所示,图5为本申请实施例提供的单元格角点偏置示意图。
该单元格角点的偏置损失函数依然采用L1 loss 训练方法,损失函数如下:
其中,表示第k个边框的顶点的偏置值,其以单元格左上角点为相对点,有如下表达式:
表示倾斜单元格最左方角点和单元格四个角点最小y坐标的偏置距离;/>表示倾斜单元格最上方角点与单元格四个角点最小x坐标的偏置距离。
此外,通过各单元格的各角点偏置值可以确定各单元格之间的相邻关系,体现在表格重构过程中,通过偏置值计算偏移后的点落在哪个单元格,来判断单元格之间的上下左右相邻关系,参见图6所示,图6为本申请实施例提供的单元格中心点相邻偏置示意图。图中6,正中间单元格的四个箭头指向其相邻的四个单元格。表格识别网络模型负责预测这四组偏置值,即值,然后对正中间的单元格中心点进行四个方向的偏移操作,就能定位到上下左右四个相邻单元格。此部分模型相应的损失函数如下:
其中,,/>表示正中间的单元格与左边相邻单元格的中心点偏置值,/>表示正中间的单元格与右边相邻单元格的中心点偏置值,/>表示正中间的单元格与上边相邻单元格的中心点偏置值,/>表示正中间的单元格与下边相邻单元格的中心点偏置值。
在本申请的实施例中,表格识别网络模型预测出每个单元格与相邻单元格的中心点偏置后,可以进一步定位出每个单元格的相邻单元格,以便于后续进行目标表格的生成。
在图3所示的流程中,首先,预处理表格图片输入数据并输入至backbone网络进行特征提取得到第一特征值图;然后,将backbone网络输出的第一特征值图输入至FPN网络进行多尺度特征提取得到第二特征值图;最后,将第二特征值图输入至Head网络,分别通过Head网络的中心点热力图分支、中心点偏置回归分支、单元格宽与高回归分支、单元格角点偏置回归分支、单元格相邻偏置回归分支,输出各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值,从而实现了对表格图片数据的数值预测。
参见图7所示,本申请实施例又提供了一种表格生成方法,在图1所示流程的基础上,进一步说明了基于表格识别网络模型的输出结果实现表格生成的具体方式,S103具体可以包括以下步骤:
S701:基于单元格中心点坐标以及各单元格中心点偏置值,确定目标表格的各单元格中心点。
在本申请的实施例中,对于每个单元格可以通过中心点偏置值对中心点坐标进行补偿,以得到更精确的中心点位置,从而确定最终生成的目标表格中各单元格的中心点。
S702:基于目标表格的各单元格中心点、各单元格高度与宽度值以及各单元格的各角点偏置值,确定目标表格的各单元格的各角点坐标。
在本申请的实施例中,对于每个单元格可以根据其中心点位置、高度与宽度值以及各角点偏置值,计算出其四个角点的坐标,从而确定最终生成的目标表格中各单元格的角点坐标。其中,通过确定目标表格中各单元格的角点坐标,可以实现如图8所示的识别效果,图8为本申请实施例提供的表格识别效果示意图,实现对倾斜表格的识别与后续的重建。
S703:基于各单元格与相邻单元格的中心点偏置值,构建单元格相邻关系有向图。
在本申请的实施例中,将单元格作为节点、单元格与相邻单元格的相邻关系作为边,进行有向图的构建以得到单元格相邻关系有向图。对于每个单元格可以根据其中心点以及其上下左右四个方向与相邻单元格的中心点偏置值,确定其与相邻单元格的连接关系,也就是有向图中的边。例如,在单元格相邻关系有向图中,单元格A向下指向单元格B的边,则表示为单元格A位于单元格B的上方。
S704:通过遍历单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表。
在本申请的实施例中,表格中的单元格可分为合并单元格以及非合并单元格,其中,该合并单元格至少在一个方向上有至少两个相邻单元格。通过遍历单元格相邻关系有向图中的每个节点,确定合并单元格以及合并参数,该合并参数指的是合并单元格占据的列数和/或行数。例如第一行为合并单元格A以及非合并单元格B,第二行为合并单元格A和非合并单元格C,第三行为2个非已合并单元格E、F和G,由此该合并单元格A占据2行2列。需要说明的是,本申请默认非合并单元格占据的行数列数均为1。此外,通过上述举例还可说明单元格A在右侧有两个相邻单元格B和C,在下方有三个相邻单元格E、F以及G。
下向单元格链表指的是用来表示表格中纵向的单元格的数据链表。在该下向单元格链表中,除最后一个单元格之外,每个单元格都有一个指向下方相邻单元格的指针,由于最后一个单元格下方没有相邻单元格,因此没有指向下方的指针。同理,右向单元格链表指的是用于表示表格中横向的单元格的数据链表,在该右向单元格链表中,除最后一个单元格之外,每个单元格都有一个指向右方相邻单元格的指针。需要说明的是,在本申请的实施例中下向单元格链表可以用于确定目标表格的行数,由此仅需一份;而右向单元格可以用于确定目标表格中各行的单元格数,由此具体的右向单元格链表的数量取决于表格图片数据中的表格,例如,该表格是一个一行七列的表格,则右向单元格链表的数量为1;又例如该表格是如图4左侧所示的表格,则右向单元格链表的数量为9。
S705:基于各合并单元格的合并参数、下向单元格链表、至少一个右向单元格链表、目标表格的各单元格中心点以及目标表格的各单元的各角点坐标,进行目标表格的生成。
在本申请的实施例中,通过各合并单元格的合并参数,可以确定目标表格中各单元格占据的行数和/或列数;通过目标表格的各单元格中心点以及目标表格的各单元格的各角点坐标,可以确定目标表格中各单元格的位置与大小;通过下向单元格链表以及右向单元格链表,可以确定目标表格中各单元格的布局以及相邻关系。进而,在确定各合并单元格的行数或列数、位置大小、布局以及相邻关系的情况下,可以得到一张与该表格图片数据中的表格结构相同的目标表格,由此实现表格识别。
在图7所示的流程中,基于各单元格中心点坐标以及各单元格中心点偏置值,确定目标表格的各单元格中心点;基于目标表格的各单元格中心点、各单元格高度与宽度值以及各单元格的各角点偏置值,确定目标表格的各单元格的各角点坐标;基于各单元格与相邻单元格的中心点偏置值,构建单元格相邻关系有向图;通过遍历单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表;基于各合并单元格的合并参数、下向单元格链表、至少一个右向单元格链表、目标表格的各单元格中心点以及目标表格的各单元的各角点坐标,可以确认任意的单元格,具备较高的表格识别效果,
参见图9所示,本申请实施例又提供了一种表格生成方法,在图7所示流程的基础上,进一步说明下向单元格链表以及右向单元格列表的生成方式,即S704具体可以包括以下步骤:
S901:确定单元格相邻关系有向图中代表根单元格的节点。
在本申请的实施例中,根单元格指的是在表格中处于第一行第一列的单元格,该根单元格在单元格相邻关系有向图中,表现为无向上的边以及向左的边的节点,因为第一行第一列的单元格在左边以及上边均没有相邻的单元格,由此可以确定地在单元格相邻关系有向图中唯一地确定一个单元格为根单元格。
此外,也可以通过各单元格与相邻单元格的中心点偏置值,确定根单元格。具体而言,由于根单元格左边和上边均没有单元格,由此根单元格对于上边单元格和左边单元格的中心点偏置值为0,基于此可以进一步在单元格相邻关系有向图中,确定代表根单元格的节点。
S902:确定单元格相邻关系有向图中代表合并单元格的节点以及合并单元格参数,以得到各合并单元格的合并参数。
针对每个单元格,基于各单元格与相邻单元格的中心点偏置值,将所有上边或左边的单元格与相邻单元格的中心点偏置值落在同个单元的数量,记做上述同个单元格所指示单元格的合并参数,该合并单元格参数表示合并的单元格在水平方向或垂直方向上的列数或行数。例如,第一行为1个合并单元格,第二行是3个非合并单元格,那么第二行的3个非合并单元格的上边相邻单元格指向的是同一个单元格,即第二行的3个非合并单元格与上方相邻单元格的中心点偏置值落在第一行的合并单元格,由此第一行的合并单元格的合并参数在水平方向上就是第一列到第三列。同理适用于垂直方向的合并。
此外,可以通过单元格相邻关系有向图确定表格合并参数,例如,在有向图中三个节点的向上的边均指向某个节点,则可以确定该节点为合并单元格。同理适用于垂直方向上的合并。
S903:从代表根单元格的节点开始,通过遍历单元格相邻关系有向图中代表根单元格的节点向下的节点,生成下向单元格链表。
在本申请的实施例中,从根单元格开始,找出下边相邻单元格,并以此单元格为起点,继续沿着下向寻找相邻单元格,重复此过程,直到无下向相邻单元格为止,至此生成下向单元格链表。
S904:从下向单元格链表中的根单元格开始,通过执行以下步骤直至完成下向单元格链表的遍历,生成至少一个右向单元格链表:从代表当前遍历位置的单元格的节点开始,通过遍历单元格向量关系有向图中代表当前遍历位置的单元格的节点向右的节点,生成右向单元格链表。
在本申请的实施例中,从右向单元格链表中的根单元格开始,在遍历下向单元格链表过程中执行以下步骤直至完成遍历:从当前单元格开始,找出右边相邻单元格,并以此单元格,继续沿着右向寻找下一个相邻单元格,重复此过程,直到无右向相邻单元格为止,生成右向单元格链表。需要说明的是,上述当前单元格可以是右向单元格链表中的所有单元格,右向单元格链表的所有单元格从根单元格开始依次作为上述当前单元格。
参见图10所示,图10为本申请实施例提供的一种表格生成装置的结构示意图,该装置包括:
图片获取模块1001,用于获取表格图片数据;
模型预测模块1002,用于通过表格识别网络模型对表格图片数据进行预测,以得到以下预测结果:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;
表格生成模块1003,用于基于各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值,进行目标表格的生成。
在本申请实施例的一些实现方式中,表格识别网络模型的网络结构包括:骨干backbone网络、特征金字塔FPN网络以及头部Head网络。
在本申请实施例的一些实现方式中,模型预测模块,包括:
预处理子模块,用于预处理表格图片数据;
特征值输出子模块,用于将预处理后的表格图片数据输入至backbone网络,以得到backbone网络输出的第一特征值图;
特征值输出子模块,还用于将第一特征值图输入至FPN网络,以得到FPN网络输出的第二特征值图;
单元格预测子模块,用于将第二特征值图输入至Head网络,通过Head网络的中心点热力图分支输出各单元格中心点坐标,通过Head网络的中心点偏置回归分支输出各单元格中心点偏置值,通过Head网络的单元格宽与高回归分支输出各单元格高度与宽度值,通过Head网络的单元格角点偏置回归分支输出各单元格的各角点偏置值,通过Head网络的单元格相邻偏置回归分支输出各单元格与相邻单元格的中心点偏置值。
在本申请第一方面的一些实现方式中,预处理子模块,具体用于执行以下操作:
对表格图片数据进行大小对齐处理以及像素值归一化处理。
在本申请第二方面的一些实现方式中,表格生成模块,包括:
中心点确定子模块,用于基于各单元格中心点坐标以及单元格中心点偏置值,确定目标表格的各单元格中心点;
角点确定子模块,用于基于目标表格的各单元格中心点、各单元格高度与宽度值以及各单元格的各角点偏置值,确定目标表格的各单元格的各角点坐标;
有向图构建子模块,用于基于各单元格与相邻单元格的中心点偏置值,构建单元格相邻关系有向图;
有向图遍历子模块,用于通过遍历单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表;
目标表格生成子模块,用于基于各合并单元格的合并参数、下向单元格链表、至少一个右向单元格链表、目标表格的各单元格中心点以及目标表格的各单元格的各角点坐标,进行目标表格的生成。
在本申请第一方面的一些实现方式中,有向图遍历子模块具体用于执行以下操作:
确定单元格相邻关系有向图中代表根单元格的节点;
确定单元格相邻关系有向图中代表合并单元格的节点以及合并单元格参数,以得到各合并单元格的合并参数;
从代表根单元格的节点开始,通过遍历单元格相邻关系有向图中代表根单元格的节点向下的节点,生成下向单元格链表;
从下向单元格链表中的根单元格开始,通过执行以下步骤直至完成下向单元格链表的遍历,生成至少一个右向单元格链表:从代表当前遍历位置的单元格的节点开始,通过遍历单元格向量关系有向图中代表当前遍历位置的单元格的节点向右的节点,生成右向单元格链表。
如图11所示,本申请实施例还提供了一种表格生成设备,包括:存储器1101、处理器1102;
其中,存储器1101用于存储程序;
处理器1102用于执行存储器中的程序,以实现本申请实施例所提供如前图1、3、7、9所示的表格生成方法的各个步骤。
本申请实施例还提供了一种可读存储介质,其上存储有计算机程序,其特征在于,计算机程序被处理器执行时,实现如本申请实施例所提供的表格生成方法的各个步骤。
最后,还需要说明的是,在本申请实施例中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (5)
1.一种表格生成方法,其特征在于,所述方法包括:
获取表格图片数据;
通过表格识别网络模型对所述表格图片数据进行预测,以得到预测结果,所述预测结果包括:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;
基于所述各单元格中心点坐标、所述各单元格中心点偏置值、所述各单元格高度与宽度值、所述各单元格的各角点偏置值以及所述各单元格与相邻单元格的中心点偏置值,进行目标表格的生成;
所述基于所述各单元格中心点坐标、所述各单元格中心点偏置值、所述各单元格高度与宽度值、所述各单元的各角点偏置值以及所述各单元格与相邻单元格的中心点偏置值,进行目标表格的生成,包括:
基于所述各单元格中心点坐标以及所述各单元格中心点偏置值,确定目标表格的各单元格中心点;
基于所述目标表格的各单元格中心点、所述各单元格高度与宽度值以及所述各单元格的各角点偏置值,确定目标表格的各单元格的各角点坐标;
基于所述各单元格与相邻单元格的中心点偏置值,构建单元格相邻关系有向图;
通过遍历所述单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表,所述合并单元格至少在一个方向上有至少两个相邻单元格;
基于所述各合并单元格的合并参数、所述下向单元格链表、至少一个所述右向单元格链表、所述目标表格的各单元格中心点以及所述目标表格的各单元格的各角点坐标,进行所述目标表格的生成;
所述通过表格识别网络模型对所述表格图片数据进行预测,包括:预处理所述表格图片数据;将预处理后的表格图片数据输入至backbone网络,以得到所述backbone网络输出的第一特征值图;将所述第一特征值图输入至FPN网络,以得到所述FPN网络输出的第二特征值图;将所述第二特征值图输入至Head网络,通过所述Head网络的中心点热力图输出所述各单元格中心点坐标,通过所述Head网络的中心点偏置回归分支输出所述各单元格中心点偏置值,通过所述Head网络的单元格宽与高回归分支输出所述各单元格高度与宽度值,通过所述Head网络的单元格角点偏置回归分支输出所述各单元格的各角点偏置值,通过所述Head网络的单元格相邻偏置回归分支输出所述各单元格与相邻单元格的中心点偏置值;
所述通过遍历所述单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表,包括:确定所述单元格相邻关系有向图中代表根单元格的节点;确定所述单元格相邻关系有向图中代表合并单元格的节点以及合并单元格参数,以得到所述各合并单元格的合并参数;从所述代表根单元格的节点开始,通过遍历所述单元格相邻关系有向图中所述代表根单元格的节点向下的节点,生成所述下向单元格链表;从所述下向单元格链表中的根单元格开始,通过执行以下步骤直至完成所述下向单元格链表的遍历,以生成至少一个所述右向单元格链表:从代表当前遍历位置的单元格的节点开始,通过遍历所述单元格向量关系有向图中所述代表当前遍历位置的单元格的节点向右的节点,生成所述右向单元格链表。
2.根据权利要求1所述的方法,其特征在于,所述预处理所述表格图片数据,包括:
对所述表格图片数据进行大小对齐处理以及像素值归一化处理。
3.一种表格生成装置,其特征在于,所述装置包括:
图片获取模块,用于获取表格图片数据;
模型预测模块,用于通过表格识别网络模型对所述表格图片数据进行预测,以得到预测结果,所述预测结果包括:各单元格中心点坐标、各单元格中心点偏置值、各单元格高度与宽度值、各单元格的各角点偏置值以及各单元格与相邻单元格的中心点偏置值;
表格生成模块,用于基于所述各单元格中心点坐标、所述各单元格中心点偏置值、所述各单元格高度与宽度值、所述各单元格的各角点偏置值以及所述各单元格与相邻单元格的中心点偏置值,进行目标表格的生成;
所述表格生成模块包括:
中心点确定子模块,用于基于所述各单元格中心点坐标以及所述各单元格中心点偏置值,确定目标表格的各单元格中心点;
角点确定子模块,用于基于所述目标表格的各单元格中心点、所述各单元格高度与宽度值以及所述各单元格的各角点偏置值,确定目标表格的各单元格的各角点坐标;
有向图构建子模块,用于基于所述各单元格与相邻单元格的中心点偏置值,构建单元格相邻关系有向图;
有向图遍历子模块,用于通过遍历所述单元格相邻关系有向图,确定各合并单元格的合并参数,并生成下向单元格链表以及至少一个右向单元格链表,所述合并单元格至少在一个方向上有至少两个相邻单元格;
目标表格生成子模块,用于基于所述各合并单元格的合并参数、所述下向单元格链表、至少一个所述右向单元格链表、所述目标表格的各单元格中心点以及所述目标表格的各单元格的各角点坐标,进行所述目标表格的生成;
所述模型预测模块,具体用于:预处理所述表格图片数据;将预处理后的表格图片数据输入至backbone网络,以得到所述backbone网络输出的第一特征值图;将所述第一特征值图输入至FPN网络,以得到所述FPN网络输出的第二特征值图;将所述第二特征值图输入至Head网络,通过所述Head网络的中心点热力图输出所述各单元格中心点坐标,通过所述Head网络的中心点偏置回归分支输出所述各单元格中心点偏置值,通过所述Head网络的单元格宽与高回归分支输出所述各单元格高度与宽度值,通过所述Head网络的单元格角点偏置回归分支输出所述各单元格的各角点偏置值,通过所述Head网络的单元格相邻偏置回归分支输出所述各单元格与相邻单元格的中心点偏置值;
所述有向图遍历子模块,具体用于:确定所述单元格相邻关系有向图中代表根单元格的节点;确定所述单元格相邻关系有向图中代表合并单元格的节点以及合并单元格参数,以得到所述各合并单元格的合并参数;从所述代表根单元格的节点开始,通过遍历所述单元格相邻关系有向图中所述代表根单元格的节点向下的节点,生成所述下向单元格链表;从所述下向单元格链表中的根单元格开始,通过执行以下步骤直至完成所述下向单元格链表的遍历,以生成至少一个所述右向单元格链表:从代表当前遍历位置的单元格的节点开始,通过遍历所述单元格向量关系有向图中所述代表当前遍历位置的单元格的节点向右的节点,生成所述右向单元格链表。
4.一种表格生成设备,其特征在于,所述设备包括:包括存储器和处理器,所述处理器用于执行所述存储器中存储的程序,运行如权利要求1至2任一项所述的表格生成方法。
5.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至2中任一项所述的表格生成方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410119360.7A CN117649675B (zh) | 2024-01-29 | 2024-01-29 | 一种表格生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410119360.7A CN117649675B (zh) | 2024-01-29 | 2024-01-29 | 一种表格生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117649675A CN117649675A (zh) | 2024-03-05 |
CN117649675B true CN117649675B (zh) | 2024-03-29 |
Family
ID=90043665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410119360.7A Active CN117649675B (zh) | 2024-01-29 | 2024-01-29 | 一种表格生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117649675B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021147252A1 (zh) * | 2020-01-22 | 2021-07-29 | 平安科技(深圳)有限公司 | 基于ocr的表格版式恢复方法、装置、电子设备及存储介质 |
JP7054278B1 (ja) * | 2021-04-21 | 2022-04-13 | ▲広▼州大学 | 深層学習に基づくエッジ識別方法 |
WO2022166833A1 (zh) * | 2021-02-07 | 2022-08-11 | 杭州睿胜软件有限公司 | 图像处理方法和装置、电子设备和存储介质 |
CN115601774A (zh) * | 2022-12-12 | 2023-01-13 | 深圳前海环融联易信息科技服务有限公司(Cn) | 表格识别方法、装置、设备、存储介质和程序产品 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107093203A (zh) * | 2010-06-30 | 2017-08-25 | 巴里·林恩·詹金斯 | 图形信息的基于导航的预取发送或接收的控制方法和系统 |
CN114281823B (zh) * | 2021-12-17 | 2023-08-29 | 北京百度网讯科技有限公司 | 表格处理方法、装置、设备、存储介质及产品 |
-
2024
- 2024-01-29 CN CN202410119360.7A patent/CN117649675B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021147252A1 (zh) * | 2020-01-22 | 2021-07-29 | 平安科技(深圳)有限公司 | 基于ocr的表格版式恢复方法、装置、电子设备及存储介质 |
WO2022166833A1 (zh) * | 2021-02-07 | 2022-08-11 | 杭州睿胜软件有限公司 | 图像处理方法和装置、电子设备和存储介质 |
JP7054278B1 (ja) * | 2021-04-21 | 2022-04-13 | ▲広▼州大学 | 深層学習に基づくエッジ識別方法 |
CN115601774A (zh) * | 2022-12-12 | 2023-01-13 | 深圳前海环融联易信息科技服务有限公司(Cn) | 表格识别方法、装置、设备、存储介质和程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN117649675A (zh) | 2024-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103337052B (zh) | 面向宽幅遥感影像的自动几何纠正方法 | |
CN112967341B (zh) | 基于实景图像的室内视觉定位方法、系统、设备及存储介质 | |
CN104574347A (zh) | 基于多源遥感数据的在轨卫星图像几何定位精度评价方法 | |
CN111242221B (zh) | 基于图匹配的图像匹配方法、系统及存储介质 | |
CN110084299B (zh) | 基于多头融合注意力的目标检测方法和装置 | |
CN112800964A (zh) | 基于多模块融合的遥感影像目标检测方法及系统 | |
CN109635714B (zh) | 文档扫描图像的矫正方法及装置 | |
Xia et al. | A deep Siamese postclassification fusion network for semantic change detection | |
CN111310758A (zh) | 文本检测方法、装置、计算机设备和存储介质 | |
US20160048728A1 (en) | Method and system for optical character recognition that short circuit processing for non-character containing candidate symbol images | |
CN116645592A (zh) | 一种基于图像处理的裂缝检测方法和存储介质 | |
CN114067339A (zh) | 图像识别方法及其装置、电子设备、计算机可读存储介质 | |
CN111027551B (zh) | 图像处理方法、设备和介质 | |
CN113435266A (zh) | 基于极值点特征增强的fcos智能目标检测方法 | |
CN117649675B (zh) | 一种表格生成方法、装置、设备及存储介质 | |
CN114049569B (zh) | 一种深度学习模型性能评价方法及系统 | |
CN112232102A (zh) | 一种基于深度神经网络和多任务学习的建筑物目标识别方法和系统 | |
US20230073223A1 (en) | Method for detecting anomalies in images using a plurality of machine learning programs | |
CN112785529A (zh) | 模板图像匹配矫正方法 | |
CN114463503A (zh) | 三维模型和地理信息系统的融合方法及装置 | |
CN111435537B (zh) | 模型训练方法、装置及基于拼接图的位姿优化方法、装置 | |
CN112132835A (zh) | 基于SeFa和人工智能的光伏轨道相机果冻效应分析方法 | |
CN112990076A (zh) | 一种基于人工智能的数据整理方法和装置 | |
CN116740721B (zh) | 手指查句方法、装置、电子设备及计算机存储介质 | |
JPH0950531A (ja) | 画像処理装置 |
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 |