PDF文档跨页表格合并方法、装置、电子设备及存储介质与流程

文档序号:23985369发布日期:2021-02-20 11:54阅读:177来源:国知局
pdf文档跨页表格合并方法、装置、电子设备及存储介质
技术领域
:[0001]本发明涉及人工智能中的文本处理
技术领域
:,具体涉及一种pdf文档跨页表格合并方法、装置、电子设备及存储介质。
背景技术
::[0002]pdf格式被广泛应用于各种文件的存储和传输,常常需要从pdf文档中提取信息。由于pdf文档中经常出现表格,但是由于pdf文档格式中不存在表格格式,解析pdf文档后得到的表格只有文字和图像线,当pdf文档中某一页面底部与下一页顶部同时出现表格时,需要对是否为同一表格进行判断。现有技术中,pdf文档跨页表格合并主要利用规则判断跨页的两个表格中是否含有相同的列数,对于复杂表格跨页的情况,规则方法不能起到很好的判断效果。技术实现要素:[0003]鉴于以上内容,有必要提出一种pdf文档跨页表格合并方法、装置、电子设备及存储介质以实现对复杂跨页表格是否需要合并进行判断。[0004]本申请的第一方面提供一种pdf文档跨页表格合并方法,所述pdf文档跨页表格合并方法包括:[0005]获取至少两个包含表格的pdf文档,并采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集;[0006]对所述表格数据集中的每个表格,随机选取每个所述表格中的一行进行划分,得到每个所述表格的上半区块的位置信息和每个所述表格的下半区块的位置信息,合并所述每个表格的上半区块的位置信息和每个所述表格的下半区块的位置信息得到正样本数据,将所述正样本数据标注为第一标记,随机选择所述每个表格的上半区块的位置信息和其他表格的上半区块的位置信息得到负样本数据,将所述负样本数据标注为第二标记,所述正样本数据与所述负样本数据组成样本训练数据,所述样本训练数据与对应的标注组成跨页表格训练数据集;[0007]构建基于深度双向变换器的预训练模型的深度学习模型,根据所述跨页表格训练数据集构造所述深度学习模型的输入数据,将所述跨页表格训练数据集中的每个所述表格中的单元格作为所述深度学习模型的输入的步长,将所述跨页表格训练数据集中每个样本训练数据标注对应的二分类预测值作为所述深度学习模型的输出,训练并优化所述深度学习模型,得到表格合并模型;[0008]获取pdf测试文档,采集所述pdf测试文档中每个页面的文本信息和位置信息,去除所述pdf测试文档中每个页面的页眉与页脚的文本信息和位置信息,根据所述每个页面的位置信息判断每个页面的底部和顶部是否存在表格,当所述页面底部与所述页面的下一页面顶部存在表格时,合并所述页面底部的表格的位置信息与所述页面的下一页面顶部的表格的位置信息,将合并结果作为跨页表格测试数据;[0009]根据所述跨页表格测试数据,利用所述表格合并模型预测得到二分类预测值,所述二分类预测值用于判断所述跨页表格测试数据是否需要合并;[0010]当判断所述跨页表格测试数据需要合并时,合并所述页面底部的表格与所述下一页面顶部的表格得到结果表格,并根据指令显示所述结果表格。[0011]优选地,所述根据所述跨页表格训练数据集构造所述深度学习模型的输入数据包括:[0012]将所述跨页表格训练数据集中的样本训练数据和样本训练数据的标注构造为符合模型输入格式的数据,并作为所述深度学习模型的输入数据,其中,所述模型输入格式为[sep]+table1_cell1+table1_cell2+…+table1_cellm+[sep]+table2_cell1+table2_cell2+…+table2_celln+[sep],其中,table1和table2表示两个区块,table_cell表示由区块中单元格位置信息构成的特征,m表示table1的单元格数量,n表示table2的单元格数量,当m大于或等于n时,[sep]为m个“1”组成的序列,当m小于n时,[sep]为n个“1”组成的序列,所述table_cell内的数据为[x_t,y_t,w_t,h_t,x_t+w_t,y_t+h_t,(x_t+w_t)/h_t,(y_t+h_t)/2,x_c,y_c,w_c,h_c,x_c+w_c,y_c+h_c,(x_c+w_c)/h_c,(y_c+h_c)/2,a],其中,x_t为区块左上角的x坐标,y_t为区块左上角的y坐标,w_t为区块的宽,h_t为区块的高,x_c为单元格左上角的x坐标,y_c为单元格左上角的y坐标,w_c为单元格的宽,h_c为单元格的高,a为0或1。[0013]优选地,所述将所述跨页表格训练数据集中每个样本训练数据标注对应的二分类预测值作为所述深度学习模型的输出包括:[0014]当所述样本训练数据的标注为所述第一标记时,所述深度学习模型的输出中[sep]处的二分类预测值为第一预设值;[0015]当所述样本训练数据的标注为所述第二标记时,所述深度学习模型的输出中[sep]处的二分类预测值为第二预设值。[0016]优选地,所述训练并优化所述深度学习模型,得到表格合并模型包括:[0017]利用所述深度学习模型的编码层对所述输入数据进行编码;[0018]训练所述深度学习模型的预测层,直至所述深度学习模型的预测层收敛,得到所述表格合并模型,所述表格合并模型的输出为预测所述样本训练数据是否需要合并的二分类预测值。[0019]优选地,所述去除所述pdf测试文档中每个页面的页眉与页脚的文本信息和位置信息包括:[0020]计算所述pdf测试文档中所有页面的页面高度均值;[0021]取所述页面平均高度的第一分位值的高度作为页眉的候选区域,取所述页面平均高度的第二分位值的高度作为页脚的候选区域;[0022]对所述pdf测试文档中的每个页面,提取所述页眉的候选区域中的文本信息和位置信息及所述页脚的候选区域中的文本信息和位置信息;[0023]对所述pdf测试文档中的每个页面,计算所述页眉的候选区域中的文本与该页面前后指定数量的页面中所述页眉的候选区域中文本的第一编辑距离,并计算所述页脚的候选区域中的文本与该页面前后指定数量的页面中所述页脚的候选区域中文本的第二编辑距离;[0024]当所述第一编辑距离小于预设的第一阈值时,判定所述候选区域中的所述文本为页眉,去除所述页眉的文本信息和位置信息,当所述第二编辑距离小于预设的第二阈值时,判定所述候选区域中的所述文本为页脚,去除所述页脚的文本信息和位置信息。[0025]优选地,所述根据所述跨页表格测试数据,利用所述表格合并模型预测得到二分类预测值包括:[0026]将所述跨页表格测试数据的格式转换为所述表格合并模型所要求的格式,并将格式转换后的跨页表格测试数据作为所述表格合并模型的输入数据;[0027]所述表格合并模型根据所述输入数据预测所述跨页表格测试数据中的所述页面底部的表格与所述下一页面的顶部的表格需要合并的二分类预测值。[0028]优选地,所述合并所述页面底部的表格与所述下一页面顶部的表格得到结果表格,并根据指令显示所述结果表格包括:[0029]根据提取到的所述页面底部的表格的所述位置信息和所述下一页面顶部的表格的位置信息合并所述页面底部的表格与所述下一页面顶部的表格,得到结果表格;[0030]将所述结果表格存储为表格文件,并存储所述完整的结果表格;[0031]当接收到指令时,显示所述结果表格。[0032]本申请的第二方面提供一种pdf文档跨页表格合并装置,所述pdf文档跨页表格合并装置包括:[0033]表格数据获取模块,用于获取至少两个包含表格的pdf文档,并采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集;[0034]训练数据集构造模块,用于对所述表格数据集中的每个表格,随机选取每个所述表格中的一行进行划分,得到每个所述表格的上半区块的位置信息和每个所述表格的下半区块的位置信息,合并所述每个表格的上半区块的位置信息和每个所述表格的下半区块的位置信息得到正样本数据,将所述正样本数据标注为第一标记,随机选择所述每个表格的上半区块的位置信息和其他表格的上半区块的位置信息得到负样本数据,将所述负样本数据标注为第二标记,所述正样本数据与所述负样本数据组成样本训练数据,所述样本训练数据与对应的标注组成跨页表格训练数据集;[0035]模型训练模块,用于构建基于深度双向变换器的预训练模型的深度学习模型,根据所述跨页表格训练数据集构造所述深度学习模型的输入数据,将所述跨页表格训练数据集中的每个所述表格中的单元格作为所述深度学习模型的输入的步长,将所述跨页表格训练数据集中每个样本训练数据标注对应的二分类预测值作为所述深度学习模型的输出,训练并优化所述深度学习模型,得到表格合并模型;[0036]测试数据构造模块,用于获取pdf测试文档,采集所述pdf测试文档中每个页面的文本信息和位置信息,去除所述pdf测试文档中每个页面的页眉与页脚的文本信息和位置信息,根据所述每个页面的位置信息判断每个页面的底部和顶部是否存在表格,当所述页面底部与所述页面的下一页面顶部存在表格时,合并所述页面底部的表格的位置信息与所述页面的下一页面顶部的表格的位置信息,将合并结果作为跨页表格测试数据;[0037]预测模块,用于根据所述跨页表格测试数据,利用所述表格合并模型预测得到二分类预测值,所述二分类预测值用于判断所述跨页表格测试数据是否需要合并;[0038]合并模块,用于当判断所述跨页表格测试数据需要合并时,合并所述页面底部的表格与所述下一页面顶部的表格得到结果表格,并根据指令显示所述结果表格。[0039]本申请的第三方面提供一种电子设备,所述电子设备包括:[0040]存储器,存储至少一个指令;及[0041]处理器,执行所述存储器中存储的指令以实现所述pdf文档跨页表格合并方法。[0042]本申请的第四发明提供一种计算机存储介质,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现所述pdf文档跨页表格合并方法。[0043]本发明中,获取至少两个pdf文档,并采集每个所述pdf文档中的至少一个表格,得到表格数据集;根据表格数据集生成跨页表格训练数据集;使用跨页表格训练数据集训练深度学习模型,得到表格合并模型,获取pdf测试文档,去除页眉和页脚,构建跨页表格测试数据利用表格合并模型预测跨页表格测试数据需要合并的二分类预测值,并根据二分类预测值判断跨页表格测试数据是否需要合并,合并并输出需要合并的跨页表格,可以有效地处理pdf文档中复杂表格跨页提取的任务,对判断跨页表格是否需要合并有较高的准确率。附图说明[0044]图1为本发明一实施方式中pdf文档跨页表格合并方法的流程图。[0045]图2为本发明一实施方式中pdf文档跨页表格合并装置的结构图。[0046]图3为本发明一实施方式中电子设备的示意图。具体实施方式[0047]为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。[0048]在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0049]除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的
技术领域
:的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。[0050]优选地,本发明pdf文档跨页表格合并方法应用在一个或者多个电子设备中。所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程门阵列(field-programmablegatearray,fpga)、数字处理器(digitalsignalprocessor,dsp)、嵌入式设备等。[0051]所述电子设备可以是桌上型计算机、笔记本电脑、平板电脑及云端服务器等计算设备。所述设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。[0052]实施例1[0053]图1是本发明一实施方式中pdf文档跨页表格合并方法的流程图。根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。[0054]参阅图1所示,所述pdf文档跨页表格合并方法具体包括以下步骤:[0055]步骤s11,获取至少两个包含表格的pdf文档,并采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集。[0056]具体地,在本发明的至少一个实施例中,采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集包括:[0057]使用pdfplumber库解析每个所述pdf文档得到每个所述pdf文档的位置信息和文本信息,并从所述位置信息中采集所述pdf文档中表格的位置信息以及所述表格中每个单元格的位置信息作为表格数据集。[0058]具体地,在本发明的其他实施方式中,采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集包括:[0059]使用其他pdf内容解析库,例如pdfminer、camelot等,解析每个所述pdf文档得到每个所述pdf文档的位置信息和文本信息,并从所述位置信息中采集所述pdf文档中的表格的位置信息和文本信息以及所述表格中每个单元格的位置信息。[0060]在本发明的一个实施例中,所述pdf文档可以是涉及不同领域的、记录各类不同信息的文档,例如:金融领域、商业领域、医疗领域等不同的
技术领域
:;所述文本信息为除图片外的所有文本信息,所述位置信息包括:页眉、页脚、标题、正文、表格的位置信息等。[0061]步骤s12,对所述表格数据集中的每个表格,随机选取每个所述表格中的一行进行划分,得到每个所述表格的上半区块的位置信息和每个所述表格的下半区块的位置信息,合并所述每个表格的上半区块的位置信息和每个所述表格的下半区块的位置信息得到正样本数据,将所述正样本数据标注为第一标记,随机选择所述每个表格的上半区块的位置信息和其他表格的上半区块的位置信息得到负样本数据,将所述负样本数据标注为第二标记,所述正样本数据与所述负样本数据组成样本训练数据,所述样本训练数据与对应的标注组成跨页表格训练数据集。[0062]例如,所述第一标记可以是1,所述第二标记可以是0。[0063]又例如,当所述表格数据集包括第一表格和第二表格时,根据所述表格数据集生成跨页表格训练数据集包括:[0064]对于所述第一表格,随机选取所述第一表格中除第一行和最后一行以外的一行进行划分,得到第一表格上半区块的位置信息和第一表格下半区块的位置信息,对于所述第二表格,随机选取所述第二表格中除第一行和最后一行以外的一行进行划分,得到第二表格上半区块的位置信息和第二表格下半区块的位置信息,所述上半区块和所述下半区块为表格划分后得到的表格上半部分和表格下半部分;[0065]合并所述第一表格上半区块的位置信息和所述第一表格下半区块的位置信息得到第一正样本数据,合并所述第二表格上半区块的位置信息和所述第二表格下半区块的位置信息得到第二正样本数据,将所述第一正样本数据和所述第二正样本数据标注为1;[0066]合并所述第一表格上半区块的位置信息和所述第二表格上半区块的位置信息得到第一负样本数据,合并所述第二表格上半区块的位置信息和所述第一表格上半区块的位置信息得到第二负样本数据,将所述第一负样本数据和所述第二负样本数据标注为0;[0067]所述第一正样本数据、所述第二正样本数据、所述第一负样本数据、所述第二负样本数据组成所述样本训练数据,所述样本训练数据与对应的标注组成跨页表格训练数据集。[0068]在本发明的一个实施例中,区块的位置信息包括:区块左上角的x坐标,区块左上角的y坐标,区块的宽,区块的高,单元格左上角的x坐标,单元格左上角的y坐标,单元格的宽,单元格的高,区块中列的数量。[0069]步骤s13,构建基于深度双向变换器的预训练模型的深度学习模型,根据所述跨页表格训练数据集构造所述深度学习模型的输入数据,将所述跨页表格训练数据集中的每个所述表格中的单元格作为所述深度学习模型的输入的步长,将所述跨页表格训练数据集中每个样本训练数据标注对应的二分类预测值作为所述深度学习模型的输出,训练并优化所述深度学习模型,得到表格合并模型。[0070]在本发明的至少一个实施例中,根据所述跨页表格训练数据集构造所述深度学习模型的输入数据包括:[0071]将所述跨页表格训练数据集中的样本训练数据和样本训练数据的标注构造为符合模型输入格式的数据,并作为所述深度学习模型的输入数据,其中,所述模型输入格式为[sep]+table1_cell1+table1_cell2+…+table1_cellm+[sep]+table2_cell1+table2_cell2+…+table2_celln+[sep],其中,table1和table2表示两个区块,table_cell表示由区块中单元格位置信息构成的特征,m表示table1的单元格数量,n表示table2的单元格数量,当m大于或等于n时,[sep]为m个“1”组成的序列,当m小于n时,[sep]为n个“1”组成的序列,所述table_cell内的数据为[x_t,y_t,w_t,h_t,x_t+w_t,y_t+h_t,(x_t+w_t)/h_t,(y_t+h_t)/2,x_c,y_c,w_c,h_c,x_c+w_c,y_c+h_c,(x_c+w_c)/h_c,(y_c+h_c)/2,a],其中,x_t为区块左上角的x坐标,y_t为区块左上角的y坐标,w_t为区块的宽,h_t为区块的高,x_c为单元格左上角的x坐标,y_c为单元格左上角的y坐标,w_c为单元格的宽,h_c为单元格的高,a为0或1。[0072]具体地,所述table1和table2可以表示同一表格的上半区块和下半区块,也可以表示不同表格的两个上半区块;当table1和table2的列的数量相同时,a为1,当table1和table2的列的数量不同时,a为0。[0073]在本发明的一个实施方式中,将所述跨页表格训练数据集中每个样本训练数据标注对应的二分类预测值作为所述深度学习模型的输出包括:[0074]当所述样本训练数据的标注为所述第一标记时,所述深度学习模型的输出中[sep]处的二分类预测值为第一预设值;[0075]当所述样本训练数据的标注为所述第二标记时,所述深度学习模型的输出中[sep]处的二分类预测值为第二预设值。[0076]例如,所述第一预设值可以是1,所述第二预设值可以是0。[0077]具体地,在本发明的至少一个实施例中,所述二分类预测值为所述样本训练数据中的两个区块来自同一表格的概率,当二分类预测值为第一预设值时,表示所述样本训练数据中的两个区块来自同一表格,所述样本训练数据需要合并的概率为1,即所述样本训练数据需要合并;当所述二分类预测值为第二预设值时,表示所述样本训练数据中的两个区块来自不同表格,所述样本训练数据需要合并的概率为0,即所述样本训练数据不需要合并。[0078]在本发明的至少一个实施例中,所述训练并优化所述深度学习模型,得到表格合并模型包括:[0079]利用所述编码层对所述输入数据进行编码;[0080]训练所述预测层,直至所述预测层收敛,得到所述表格合并模型,所述表格合并模型的输出为预测所述样本训练数据是否需要合并的二分类预测值。[0081]进一步地,在本发明的其他实施例中,若所述二分类预测值为介于0和1之间的任一数值时,可根据预设的比较值0.5来判断是否需要对某一条样本训练数据进行合并,当大于或等于0.5时,确定该条样本训练数据需要进行合并;当小于0.5时;确定该条样本训练数据不需要进行合并。[0082]例如,当所述表格合并模型根据所述样本训练数据预测得到的二分类预测值大于或等于0.5时,所述样本训练数据中的两个区块来自同一表格的概率大于或等于0.5,那么,可确定所述样本训练数据中的两个区块需要合并;或当所述表格合并模型根据所述样本训练数据预测得到的二分类预测值小于0.5时,所述样本训练数据中的两个区块来自同一表格的概率小于0.5,那么,可确定所述样本训练数据中的两个区块不需要合并。[0083]步骤s14,获取pdf测试文档,采集所述pdf测试文档中每个页面的文本信息和位置信息,去除所述pdf测试文档中每个页面的页眉与页脚的文本信息和位置信息,根据所述每个页面的位置信息判断每个页面的底部和顶部是否存在表格,当所述页面底部与所述页面的下一页面顶部存在表格时,合并所述页面底部的表格的位置信息与所述页面的下一页面顶部的表格的位置信息,将合并结果作为跨页表格测试数据。[0084]在本发明的至少一个实施例中,去除所述pdf测试文档中每个页面的页眉与页脚的文本信息和位置信息包括:[0085]计算所述pdf测试文档中所有页面的页面高度均值;[0086]取所述页面平均高度的第一分位值的高度作为页眉的候选区域,取所述页面平均高度的第二分位值的高度作为页脚的候选区域;[0087]对所述pdf测试文档中的每个页面,提取所述页眉的候选区域中的文本信息和位置信息及所述页脚的候选区域中的文本信息和位置信息;[0088]对所述pdf测试文档中的每个页面,计算所述页眉的候选区域中的文本与该页面前后指定数量的页面中所述页眉的候选区域中文本的第一编辑距离,并计算所述页脚的候选区域中的文本与该页面前后指定数量的页面中所述页脚的候选区域中文本的第二编辑距离;[0089]当所述第一编辑距离小于预设的第一阈值时,判定所述候选区域中的所述文本为页眉,去除所述页眉的文本信息和位置信息,当所述第二编辑距离小于预设的第二阈值时,判定所述候选区域中的所述文本为页脚,去除所述页脚的文本信息和位置信息。[0090]在本发明的至少一个实施方式中,所述编辑距离是针对二个字符串的差异程度的量化量测,具体地,所述编辑距离是从一个字符串通过插入、修改、删除等操作转换为另外一个字符串所需要最小的步骤。[0091]例如,当提取所述pdf测试文档的页眉时,计算所述pdf测试文档中所有页面的页面高度均值h_mean,取h_mean的上五分之一页面部分作为页眉的候选区域,对所述pdf测试文档中的每个页面,提取所述页眉的候选区域中的文本信息和位置信息,计算所述页眉的候选区域中的文本与该页面前后各3页候选区域中文本的编辑距离,判定编辑距离小于所述第一阈值的内容为页眉,去除所述页眉的文本信息和位置信息。[0092]又例如,当提取所述pdf测试文档的页脚时,计算所述pdf测试文档中所有页面的页面高度均值h_mean,取h_mean的下五分之一页面部分作为页脚的候选区域,对所述pdf测试文档中的每个页面,提取所述页脚的候选区域中的文本信息和位置信息,计算所述页脚的候选区域中的文本与该页面前后各3页候选区域中文本的编辑距离,判定编辑距离小于所述第二阈值的内容为页脚,去除所述页脚的文本信息和位置信息。[0093]步骤s15,根据所述跨页表格测试数据,利用所述表格合并模型预测得到二分类预测值,所述二分类预测值用于判断所述跨页表格测试数据是否需要合并。[0094]在本发明的至少一个实施例中,根据所述跨页表格测试数据,利用所述表格合并模型预测得到二分类预测值包括:[0095]将所述跨页表格测试数据的格式转换为所述表格合并模型所要求的格式,并将格式转换后的跨页表格测试数据作为所述表格合并模型的输入数据;[0096]所述表格合并模型根据所述输入数据预测所述跨页表格测试数据中的所述页面底部的表格与所述下一页面的顶部的表格需要合并的二分类预测值。[0097]具体地,在本发明的至少一个实施例中,当所述表格合并模型对所述跨页表格测试数据预测得到的二分类预测值大于或等于0.5时,表示所述跨页表格测试数据中的页面底部的表格与下一页面顶部的表格属于同一表格,因此判断所述页面底部的表格与所述下一页面的顶部的表格需要合并;当所述二分类预测值小于0.5时,表示所述跨页表格测试数据中的页面底部的表格与下一页面顶部的表格属于不同的表格,因此判断所述页面底部的表格与所述下一页面的顶部的表格不需要合并。[0098]步骤s16,当判断所述跨页表格测试数据需要合并时,合并所述页面底部的表格与所述下一页面顶部的表格得到结果表格,并根据指令显示所述结果表格。[0099]在本发明的至少一个实施例中,合并所述页面底部的表格与所述下一页面顶部的表格得到结果表格,并根据指令显示所述结果表格包括:[0100]根据提取到的所述页面底部的表格的所述位置信息和所述下一页面顶部的表格的位置信息合并所述页面底部的表格与所述下一页面顶部的表格,得到结果表格;[0101]将所述结果表格存储为表格文件,并存储所述完整的结果表格;[0102]当接收到指令时,显示所述结果表格。[0103]例如,在本发明的一个实施例中,根据提取到的所述页面底部的表格的所述位置信息和所述下一页面顶部的表格的位置信息合并所述页面底部的表格与所述下一页面顶部的表格,得到结果表格可以包括:[0104]根据提取到的所述页面底部的表格的所述位置信息和所述下一页面顶部的表格的位置信息,获得所述页面底部的表格的图片与所述下一页面顶部的表格的图片;[0105]缩放所述页面底部的表格的图片与所述下一页面顶部的表格的图片,使得所述页面底部的表格的图片宽度与所述下一页面顶部的表格的图片宽度相同;[0106]合并调整宽度后的所述页面底部的表格图片与所述下一页面顶部的表格图片,得到结果表格。[0107]又例如,在本发明的另一实施例中,根据提取到的所述页面底部的表格的所述位置信息和所述下一页面顶部的表格的位置信息合并所述页面底部的表格与所述下一页面顶部的表格,得到结果表格可以包括:[0108]解析所述页面底部的表格的文本信息和所述下一页面顶部的表格的文本信息;[0109]根据提取到的所述页面底部的表格的所述位置信息和所述下一页面顶部的表格的位置信息,确定与所述页面底部的表格中的列对应的所述下一页面顶部的表格的列;[0110]根据所述页面底部的表格中的列与对应的所述下一页面顶部的表格的列,合并所述页面底部的表格中的文本信息与对应的所述下一页面顶部的表格中的文本信息,得到结果表格。[0111]例如,当接收到指令时,显示所述结果表格可以包括:[0112]当指令为将所述结果表格展示为单独一页文档时,从所述数据库中提取所述结果表格,根据所述文档的页面尺寸,按照所述结果表格的高度宽度比例缩放对所述结果表格的边框与文字,使所述结果表格的高度小于所述文档的高度,并使所述结果表格的宽度小于所述文档的宽度,并将所述结果表格显示在一页文档上。[0113]又例如,当接收到指令时,显示所述结果表格可以包括:[0114]当指令为将所述结果表格展示为单独一页文档时,从所述数据库中提取所述结果表格,根据所述文档的页面尺寸,按照所述结果表格的高度宽度比例缩放对所述结果表格的边框与文字,使所述结果表格的高度小于所述文档的高度,并使所述结果表格的宽度小于所述文档的宽度,并将所述结果表格显示在一页文档上。[0115]需要说明的是,为保证上述处理过程中的数据和输出结果的私密性和安全性,所述处理过程中的数据和输出结果可存储于区块链中,比如所述人脸图像训练数据、所述第一特征图,所述第一几何关系矩阵、所述人脸图片测试数据、所述第二输入数据、所述人脸关键点等。[0116]本发明获取至少两个pdf文档,并采集每个所述pdf文档中的至少一个表格,得到表格数据集;根据表格数据集生成跨页表格训练数据集;使用跨页表格训练数据集训练深度学习模型,得到表格合并模型,获取pdf测试文档,去除页眉和页脚,构建跨页表格测试数据利用表格合并模型预测跨页表格测试数据需要合并的二分类预测值,并根据二分类预测值判断跨页表格测试数据是否需要合并,合并并输出需要合并的跨页表格,可以有效地处理pdf文档中复杂表格跨页提取的任务,对判断跨页表格是否需要合并有较高的准确率。[0117]实施例2[0118]图2为本发明一实施方式中pdf文档跨页表格合并装置30的结构图。[0119]在一些实施例中,所述pdf文档跨页表格合并装置30运行于电子设备中。所述pdf文档跨页表格合并装置30可以包括多个由程序代码段所组成的功能模块。所述pdf文档跨页表格合并装置30中的各个程序段的程序代码可以存储于存储器中,并由至少一个处理器所执行,以pdf文档跨页表格合并功能。[0120]本实施例中,所述pdf文档跨页表格合并装置30根据其所执行的功能,可以被划分为多个功能模块。参阅图2所示,所述pdf文档跨页表格合并装置30可以包括表格数据获取模块301、训练数据集构造模块302、模型训练模块303、测试数据构造模块304、预测模块305及合并模块306。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机可读指令段,其存储在存储器中。所述在一些实施例中,关于各模块的功能将在后续的实施例中详述。[0121]所述表格数据获取模块301获取至少两个包含表格的pdf文档,并采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集。[0122]具体地,在本发明的至少一个实施例中,所述表格数据获取模块301采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集包括:[0123]使用pdfplumber库解析每个所述pdf文档得到每个所述pdf文档的位置信息和文本信息,并从所述位置信息中采集所述pdf文档中表格的位置信息以及所述表格中每个单元格的位置信息作为表格数据集。[0124]具体地,在本发明的其他实施方式中,所述表格数据获取模块301采集每个所述pdf文档中的至少一个表格的位置信息和文本信息,并根据所述表格的位置信息得到表格数据集包括:[0125]使用其他pdf内容解析库,例如pdfminer、camelot等,解析每个所述pdf文档得到每个所述pdf文档的位置信息和文本信息,并从所述位置信息中采集所述pdf文档中的表格的位置信息和文本信息以及所述表格中每个单元格的位置信息。[0126]在本方式的一个实施例中,所述pdf文档可以是涉及不同领域的、记录各类不同信息的文档,例如:金融领域、商业领域、医疗领域等不同的
技术领域
:;所述文本信息为除图片外的所有文本信息,所述位置信息包括:页眉、页脚、标题、正文、表格的位置信息等。[0127]所述训练数据集构造模块302对所述表格数据集中的每个表格,随机选取每个所述表格中的一行进行划分,得到每个所述表格的上半区块的位置信息和每个所述表格的下半区块的位置信息,合并所述每个表格的上半区块的位置信息和每个所述表格的下半区块的位置信息得到正样本数据,将所述正样本数据标注为第一标记,随机选择所述每个表格的上半区块的位置信息和其他表格的上半区块的位置信息得到负样本数据,将所述负样本数据标注为第二标记,所述正样本数据与所述负样本数据组成样本训练数据,所述样本训练数据与对应的标注组成跨页表格训练数据集。[0128]例如,所述第一标记可以是1,所述第二标记可以是0。[0129]又例如,当所述表格数据集包括第一表格和第二表格时,所述训练数据集构造模块302根据所述表格数据集生成跨页表格训练数据集包括:[0130]对于所述第一表格,随机选取所述第一表格中除第一行和最后一行以外的一行进行划分,得到第一表格上半区块的位置信息和第一表格下半区块的位置信息,对于所述第二表格,随机选取所述第二表格中除第一行和最后一行以外的一行进行划分,得到第二表格上半区块的位置信息和第二表格下半区块的位置信息,所述上半区块和所述下半区块为表格划分后得到的表格上半部分和表格下半部分;[0131]合并所述第一表格上半区块的位置信息和所述第一表格下半区块的位置信息得到第一正样本数据,合并所述第二表格上半区块的位置信息和所述第二表格下半区块的位置信息得到第二正样本数据,将所述第一正样本数据和所述第二正样本数据标注为1;[0132]合并所述第一表格上半区块的位置信息和所述第二表格上半区块的位置信息得到第一负样本数据,合并所述第二表格上半区块的位置信息和所述第一表格上半区块的位置信息得到第二负样本数据,将所述第一负样本数据和所述第二负样本数据标注为0;[0133]所述第一正样本数据、所述第二正样本数据、所述第一负样本数据、所述第二负样本数据组成所述样本训练数据,所述样本训练数据与对应的标注组成跨页表格训练数据集。[0134]在本发明的一个实施例中,区块的位置信息包括:区块左上角的x坐标,区块左上角的y坐标,区块的宽,区块的高,单元格左上角的x坐标,单元格左上角的y坐标,单元格的宽,单元格的高,区块中列的数量。[0135]所述模型训练模块303构建基于深度双向变换器的预训练模型的深度学习模型,根据所述跨页表格训练数据集构造所述深度学习模型的输入数据,将所述跨页表格训练数据集中的每个所述表格中的单元格作为所述深度学习模型的输入的步长,将所述跨页表格训练数据集中每个样本训练数据标注对应的二分类预测值作为所述深度学习模型的输出,训练并优化所述深度学习模型,得到表格合并模型。[0136]在本发明的至少一个实施例中,根据所述跨页表格训练数据集构造所述深度学习模型的输入数据包括:[0137]将所述跨页表格训练数据集中的样本训练数据和样本训练数据的标注构造为符合模型输入格式的数据,并作为所述深度学习模型的输入数据,其中,所述模型输入格式为[sep]+table1_cell1+table1_cell2+…+table1_cellm+[sep]+table2_cell1+table2_cell2+…+table2_celln+[sep],其中,table1和table2表示两个区块,table_cell表示由区块中单元格位置信息构成的特征,m表示table1的单元格数量,n表示table2的单元格数量,当m大于或等于n时,[sep]为m个“1”组成的序列,当m小于n时,[sep]为n个“1”组成的序列,所述table_cell内的数据为[x_t,y_t,w_t,h_t,x_t+w_t,y_t+h_t,(x_t+w_t)/h_t,(y_t+h_t)/2,x_c,y_c,w_c,h_c,x_c+w_c,y_c+h_c,(x_c+w_c)/h_c,(y_c+h_c)/2,a],其中,x_t为区块左上角的x坐标,y_t为区块左上角的y坐标,w_t为区块的宽,h_t为区块的高,x_c为单元格左上角的x坐标,y_c为单元格左上角的y坐标,w_c为单元格的宽,h_c为单元格的高,a为0或1。[0138]具体地,所述table1和table2可以表示同一表格的上半区块和下半区块,也可以表示不同表格的两个上半区块;当table1和table2的列的数量相同时,a为1,当table1和table2的列的数量不同时,a为0。[0139]在本发明的一个实施方式中,将所述跨页表格训练数据集中每个样本训练数据标注对应的二分类预测值作为所述深度学习模型的输出包括:[0140]当所述样本训练数据的标注为所述第一标记时,所述深度学习模型的输出中[sep]处的二分类预测值为第一预设值;[0141]当所述样本训练数据的标注为所述第二标记时,所述深度学习模型的输出中[sep]处的二分类预测值为第二预设值。[0142]例如,所述第一预设值可以是1,所述第二预设值可以是0。[0143]具体地,在本发明的至少一个实施例中,所述二分类预测值为所述样本训练数据中的两个区块为同一表格的概率,当二分类预测值为第一预设值时,表示所述样本训练数据中的两个区块来自同一表格,所述样本训练数据需要合并的概率为1,即所述样本训练数据需要合并;当所述二分类预测值为第二预设值时,表示所述样本训练数据中的两个区块来自不同表格,所述样本训练数据需要合并的概率为0,即所述样本训练数据不需要合并。[0144]在本发明的至少一个实施例中,所述训练并优化所述深度学习模型,得到表格合并模型包括:[0145]利用所述编码层对所述输入数据进行编码;[0146]训练所述预测层,直至所述预测层收敛,得到所述表格合并模型,所述表格合并模型的输出为预测所述样本训练数据是否需要合并的二分类预测值。[0147]进一步地,在本发明的其他实施例中,若所述二分类预测值为介于0和1之间的任一数值时,可根据预设的比较值0.5来判断是否需要对某一条样本训练数据进行合并,当大于或等于0.5时,确定该条样本训练数据需要进行合并;当小于0.5时;确定该条样本训练数据不需要进行合并。[0148]所述测试数据构造模块304获取pdf测试文档,采集所述pdf测试文档中每个页面的文本信息和位置信息,去除所述pdf测试文档中每个页面的页眉与页脚的文本信息和位置信息,根据所述每个页面的位置信息判断每个页面的底部和顶部是否存在表格,当所述页面底部与所述页面的下一页面顶部存在表格时,合并所述页面底部的表格的位置信息与所述页面的下一页面顶部的表格的位置信息,将合并结果作为跨页表格测试数据。[0149]在本发明的至少一个实施例中,去除所述pdf测试文档中每个页面的页眉与页脚的文本信息和位置信息包括:[0150]计算所述pdf测试文档中所有页面的页面高度均值;[0151]取所述页面平均高度的第一分位值的高度作为页眉的候选区域,取所述页面平均高度的第二分位值的高度作为页脚的候选区域;[0152]对所述pdf测试文档中的每个页面,提取所述页眉的候选区域中的文本信息和位置信息及所述页脚的候选区域中的文本信息和位置信息;[0153]对所述pdf测试文档中的每个页面,计算所述页眉的候选区域中的文本与该页面前后指定数量的页面中所述页眉的候选区域中文本的第一编辑距离,并计算所述页脚的候选区域中的文本与该页面前后指定数量的页面中所述页脚的候选区域中文本的第二编辑距离;[0154]当所述第一编辑距离小于预设的第一阈值时,判定所述候选区域中的所述文本为页眉,去除所述页眉的文本信息和位置信息,当所述第二编辑距离小于预设的第二阈值时,判定所述候选区域中的所述文本为页脚,去除所述页脚的文本信息和位置信息。[0155]在本发明的至少一个实施方式中,所述编辑距离是针对二个字符串的差异程度的量化量测,具体地,所述编辑距离是从一个字符串通过插入、修改、删除等操作转换为另外一个字符串所需要最小的步骤。[0156]所述预测模块305根据所述跨页表格测试数据,利用所述表格合并模型预测得到二分类预测值,所述二分类预测值用于判断所述跨页表格测试数据是否需要合并。[0157]在本发明的至少一个实施例中,根据所述跨页表格测试数据,利用所述表格合并模型预测得到二分类预测值包括:[0158]将所述跨页表格测试数据的格式转换为所述表格合并模型所要求的格式,并将格式转换后的跨页表格测试数据作为所述表格合并模型的输入数据;[0159]所述表格合并模型根据所述输入数据预测所述跨页表格测试数据中的所述页面底部的表格与所述下一页面的顶部的表格需要合并的二分类预测值。[0160]具体地,在本发明的至少一个实施例中,当所述表格合并模型对所述跨页表格测试数据预测得到的二分类预测值大于或等于0.5时,表示所述跨页表格测试数据中的页面底部的表格与下一页面顶部的表格属于同一表格,因此判断所述页面底部的表格与所述下一页面的顶部的表格需要合并;当所述二分类预测值小于0.5时,表示所述跨页表格测试数据中的页面底部的表格与下一页面顶部的表格属于不同的表格,因此判断所述页面底部的表格与所述下一页面的顶部的表格不需要合并。[0161]所述合并模块306当判断所述跨页表格测试数据需要合并时,合并所述页面底部的表格与所述下一页面顶部的表格得到结果表格,并根据指令显示所述结果表格。[0162]在本发明的至少一个实施例中,合并所述页面底部的表格与所述下一页面顶部的表格得到结果表格,并根据指令显示所述结果表格包括:[0163]根据提取到的所述页面底部的表格的所述位置信息和所述下一页面顶部的表格的位置信息合并所述页面底部的表格与所述下一页面顶部的表格,得到结果表格;[0164]将所述结果表格存储为表格文件,并存储所述完整的结果表格;[0165]当接收到指令时,显示所述结果表格。[0166]本发明获取至少两个pdf文档,并采集每个所述pdf文档中的至少一个表格,得到表格数据集;根据表格数据集生成跨页表格训练数据集;使用跨页表格训练数据集训练深度学习模型,得到表格合并模型,获取pdf测试文档,去除页眉和页脚,构建跨页表格测试数据利用表格合并模型预测跨页表格测试数据需要合并的二分类预测值,并根据二分类预测值判断跨页表格测试数据是否需要合并,合并并输出需要合并的跨页表格,可以有效地处理pdf文档中复杂表格跨页提取的任务,对判断跨页表格是否需要合并有较高的准确率。[0167]实施例3[0168]图3为本发明一实施方式中电子设备6的示意图。[0169]所述电子设备6包括存储器61、处理器62以及存储在所述存储器61中并可在所述处理器62上运行的计算机可读指令。所述处理器62执行所述计算机可读指令时实现上述pdf文档跨页表格合并方法实施例中的步骤,例如图1所示的步骤s11~s16。或者,所述处理器62执行所述计算机可读指令时实现上述pdf文档跨页表格合并装置实施例中各模块/单元的功能,例如图2中的模块301~306。[0170]示例性的,所述计算机可读指令可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器62执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,所述指令段用于描述所述计算机可读指令在所述电子设备6中的执行过程。例如,所述计算机可读指令可以被分割成图2中的表格数据获取模块301、训练数据集构造模块302、模型训练模块303、测试数据构造模块304、预测模块305及合并模块306,各模块具体功能参见实施例2。[0171]本实施方式中,所述电子设备6可以是桌上型计算机、笔记本、掌上电脑、服务器及云端终端装置等计算设备。本领域技术人员可以理解,所述示意图仅仅是电子设备6的示例,并不构成对电子设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备6还可以包括输入输出设备、网络接入设备、总线等。[0172]所称处理器62可以是中央处理模块(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者所述处理器62也可以是任何常规的处理器等,所述处理器62是所述电子设备6的控制中心,利用各种接口和线路连接整个电子设备6的各个部分。[0173]所述存储器61可用于存储所述计算机可读指令和/或模块/单元,所述处理器62通过运行或执行存储在所述存储器61内的计算机可读指令和/或模块/单元,以及调用存储在存储器61内的数据,实现所述电子设备6的各种功能。所述存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备6的使用所创建的数据等。此外,存储器61可以包括易失性存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)、至少一个磁盘存储器件、闪存器件、或其他存储器件。[0174]所述电子设备6集成的模块/单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一计算机可读存储介质中,所述计算机可读指令在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机可读指令包括计算机可读指令代码,所述计算机可读指令代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机可读指令代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)等。[0175]本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每个个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。[0176]在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。[0177]另外,在本发明各个实施例中的各功能模块可以集成在相同处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在相同模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。[0178]对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标注视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他模块或步骤,单数不排除复数。电子设备权利要求中陈述的多个模块或电子设备也可以由同一个模块或电子设备通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。[0179]最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1