一种版式文档中的含线表格信息提取办法与流程

文档序号:19689538发布日期:2020-01-14 19:07
本创造触及版式文档信息提取范畴,特别触及一种版式文档中的含线表格信息提取办法。
背景技巧
::版式文档格局是版面出现后果固定的电子文档格局,版式文档的出现与设备有关,在各类设备上浏览、打印或印刷时,其版面的出现成果都是分歧的。版式文档重要应用于成文后文件的发布、传播和存档。罕见的版式文档格局有pdf、ofd、cebx等。版式文档中存储的长短构造化的数据,没有记录文档的逻辑构造,没有段落、大年夜纲、表格等元素,倒霉于信息再应用。为了版式文档停止分析懂得,表格的提取和解析对版式文档的是重要的。然则版式文档中其实不存在表格构造,它是分别以文字块和直线、矩形等对象显示的,由于其相互之间不存在逻辑关系,当包含表格的版式文档转换为其他类型文档时,其排版、编辑后果都很差。关于多页面版式文档的表格信息辨认,现有技巧中:专利文献“一种文档转换中的表格处理办法及装配(请求号cn101866335a)”描述了一种根据表格线段划分表格逻辑单位区域的提取表格构造信息的办法,然则基于线段划分查找逻辑单位区域的计算价值较高,且并未处理不合逻辑单位区域之间的地位关系。专利文献“一种辨认文档中数据表格的办法及装配”(请求号cn101976232a)描述的办法仅基于版式文档中的文字块信息,未应用文档中的直线对象,由于应用信息不充分,关于较为复杂的表格构造,辨认后果会遭到较大年夜限制。专利文献“基于pdf文件的表格提取办法和装配”(请求号cn105988979a),更侧重单位格的组织,且需依附表格内的文字内容构建关键词属性表,关于新范畴未建立词表的文件处理后果会受限。已有的专利文献中,表格的提取都仅以忠诚地提取原表格构造为目标,所以重要以表格的直线为出发点提取,对表格内容的组织和便于懂得方面,仍有完善。技巧完成要素:为懂得决现有技巧存在的成绩,为达到以上目标,本创造供给一种版式文档中的含线表格信息提取办法。本创造采取的技巧筹划是:本创造采取的技巧筹划是:一种版式文档中的含线表格信息提取办法,包含以下步调:步调一、解析版式文档,逐页获得页面信息及页面中文字块和直线信息;步调2、对各页的直线停止归并;步调3、持续页拼接,将一切页面拼接,终究全部版式文件取得一个虚拟页;步调四、提取表格地点地位和表格中直线信息;步调五、结合文字块和表格线提取表格中各单位格内容和地位信息;步调六、表格单位格的组织构造分析。优选步调二的详细步调以下:对程度直线按垂直高度排序,竖直直线按程度偏向排序;以程度直线的归并为例,根据两条相邻程度直线的垂直地位和程度间隔断定能否处于同一向线,若二者纵轴地位之差和程度间隔均小于给定的许可误差范围,则归并该两端线段;经过上述归并,取得新的line_objs集合;优选述步调四的详细步调以下:定位表格能够的地点地位,详细步调以下:对归并的虚拟页中采取各页外部的直线归并雷同的战略停止直线归并,对文章中程度直线和竖直直线分别按从上到下从左到右的次序排序,查找各表格地点区域,遍历页面内程度直线,寻觅与其共顶点的左边垂直线left_line和左边垂直线right_line,若查找到,在程度直线集合中查找与left_line和right_line均共顶点的直线,若查找到满足条件的直线,则根据4条直线地位肯定表格地点矩形区域;其次,将取得的表格界线线所构成的矩形区域内的一切直线都提取出来,若可取到包抄表格线内存在直线,则取得表格的界线直线,和一切外部瓜分线,该直线的集合记为table_line_objs;不然认为第一步取得的表格界线线其实不构成一个表格。优选步调五的详细步调以下:提取一切与表格地点矩形区域存在堆叠的文字块,记为table_text_objs,以聚类的思路取得各文字块构成的表格单位格。优选步调六的详细步调以下:从上到下查找表格外部首个非表非分特别包抄直线的程度贯穿直线,取得其上方的一切表格单位格;对上一步取得的表格单位格,从左到右顺次搜刮贯穿该区域的垂直切分线,若不存在则以后以后行仅一个cell,记录为首行结点;若存在垂直切分线,对垂直切分线切分取得的非首个区域反复如上步调,若每个块均不存在横向切分线则记录以后行构造;每个横向贯穿程度线切分的行解析的成果停止列对齐;若输入的表格构造为标准的m×n表格,直接以标准表格构造输入;若存在一列对多行的构造,则首列伶仃输入,其对应的多行表格以标准表格构造输入。优选查找比来的表格直线步调以下:对表格中的程度直线包含顶端和底真个表格线从上到下排序,顺次遍历,对首个在以后cell文字块下方且和以后的文字块有程度地位堆叠的直线记录为以后表格cell的下方包抄直线,上一和以后的文字块有程度地位堆叠的直线记为以后表格cell的上方包抄直线;对包含表格界线线的一切垂直直线从左到右排序,顺次遍历,对首个在以后cell文字块右方且和以后文字块有垂直堆叠的直线记录为以后表格cell的右端包抄直线,上一和以后文字块有垂直地位堆叠的直线记为以后表格cell的左端包抄直线,为了进步查找效力,界线线的集合可以取查找块瓜分直线时查找到的一切瓜分直线加上全部表格的外界线线。本创造的有益后果:本创造对表格信息的提取以表格外部文字为出发点,存眷若何更高效更好地在将版式文本以纯文本情势输入时,尽能够公道地提取并保存表格的情势和信息更高效、精确地将版式中的表格数据提取和组织,能有效进步表格的辨认后果,特别是不规矩表格,增添了版式文档排版辨认、转换的艰苦,有助于进步版式文档解析的效力和后果。附图解释附图用于更好地理解本创造,不构成对本创造的欠妥限制。个中:图1为一种版式文档中含线表格的信息提取办法步调的表示图。详细实施方法以下结合附图对本创造的示范性实施方法做出解释,个中包含本创造实施方法的各类细节以助于懂得,应当将它们认为仅仅是示范性的。是以,本范畴浅显技巧人员应当熟悉到,可以对这里描述的实施方法做出各类改变和修改,而不会背叛本创造的范围和精力。异样,为了清楚和简明,以下的描述中省略了对公知功能和构造的描述,一种版式文档中含线表格的信息提取办法,包含以下步调:1.解析版式文档,逐页获得页面信息及页面中文字块和直线信息。个中详细包含:a)页面信息包含页面大年夜小信息b)文字块信息包含字符内码、色彩、地位(包抄矩形包含横轴坐标(x1,x2)和纵轴坐标(y1,y2))、字体字号等信息,文字块集合记为text_objsc)直线信息包含色彩、地位(矩形坐标宽度(x1,x2)和高度(y1,y2)),根据直线的宽度和高度肯定是程度直线照样竖直直线,详细而言,若线条宽度大年夜于高度,则为程度直线;反之为竖直直线。直线集合记为line_objs2.对各页的直线停止简单归并a)对程度直线按垂直高度排序,竖直直线按程度偏向排序;b)以程度直线的归并为例,根据两条相邻程度直线的垂直地位和程度间隔断定能否处于同一向线。若二者纵轴地位之差和程度间隔均小于给定的许可误差范围,则归并该两端线段;c)经过上述归并,取得新的line_objs集合3.持续页拼接,将一切页面拼接,终究全部版式文件取得一个虚拟页。关于随便任性持续的两个页面,归并思路以下a)逐一拼接页面,下一页的文字块和直线均加上一个偏移项y_off,包管上一页面尾部和下一页面顶端文字内容和表格内容持续浏览。辨认能否存在跨页需拼接的持续表格,若存在则取偏移项y_off使得两页直线可拼接取得一条直线;若不存在,以文章行距拼接。b)为了断定能否存在跨页表格,提取前一页的底端坐标达到以后页最下方(坐标值大年夜于等于一切文字块矩形坐标、直线矩形坐标)的一切竖直直线集合vlines_set1,和下一页顶端坐标达到以后页最上方的一切竖直直线vlines_set2。若两个集合均不为空,将两组直线均从左到右排序,若两组直线集合中的竖直直线可以逐一分别在可许可的误差范围内阁下对齐,则认为存在跨页表格。c)对认为存在跨页表格的两页,查找能否存在前一页页面底真个程度直线、下一页页面顶真个程度直线,若存在,则取y_off为前一页最底端程度直线的纵坐标y1,使得上述两条程度线归并为同一条。若不存在前一页页面底真个程度直线或下一页页面顶真个程度直线,则取y_off为前一页竖直直线集合vlines_set1的直线纵坐标y2,使得两页的竖直直线恰以0的间隔归并。4.提取表格地点地位和表格中直线信息a)起首,定位表格能够的地点地位,详细步调以下:i.对归并的虚拟页中采取各页外部的直线归并雷同的战略停止直线归并。ii.对文章中程度直线和竖直直线分别按从上到下从左到右的次序排序iii.顺次查找各表格地点区域。遍历页面内程度直线,顺次寻觅与其共顶点的左边垂直线left_line和左边垂直线right_line,若查找到,在程度直线集合中查找与left_line和right_line均共顶点的直线。若查找到满足条件的直线,则根据4条直线地位肯定表格地点矩形区域b)其次,将取得的表格界线线所构成的矩形区域内的一切直线都提取出来。若可取到包抄表格线内存在直线,则取得表格的界线直线,和一切外部瓜分线,该直线的集合记为table_line_objs;不然认为第一步取得的表格界线线其实不构成一个表格。5.对上一步提取的每个表格区域,结合文字块和表格线提取表格中各单位格内容和地位信息a)提取一切与表格地点矩形区域存在堆叠的文字块,记为table_text_objsb)以聚类的思路取得各文字块构成的表格单位格i.顺次遍历表格中的文字块,首个文字块起首构成一个单位格,记为cell0。厥后的每个文字块,对以后已构成的一切单位格cell0,cell1,……,celln-1,查找能否存在一个单位格中的文字块与以后文字块之间不存在表格线切分,若存在k使得cellk中的文字块与以后文字块之间无表格线切分,则将以后块参加cellk中,不然,以后文字块构成新的单位格celln。ii.断定两个文字块中心能否存在瓜分直线的思路以下:1.若两个文字块无纵向堆叠,且存在程度直线,与两个文字块的程度偏向均堆叠,且垂直坐标在两个文字块中心,则认为两个文字块存在程度直线切分;2.若两个文字块无程度堆叠,且存在垂直直线,与两个文字块的垂直偏向均堆叠,且程度坐标在两个文字块中心,则认为两个文字块存在垂直直线切分。iii.对每个cell,查找其高低阁下四个偏向比来的表格直线,以此肯定每个cell的包抄矩形。iv.查找比来的表格直线思路以下:1.对表格中的程度直线(包含顶端和底真个表格线)从上到下排序,顺次遍历,对首个在以后cell文字块下方且和以后的文字块有程度地位堆叠的直线记录为以后表格cell的下方包抄直线,上一和以后的文字块有程度地位堆叠的直线记为以后表格cell的上方包抄直线;2.对包含表格界线线的一切垂直直线从左到右排序,顺次遍历,对首个在以后cell文字块右方且和以后文字块有垂直堆叠的直线记录为以后表格cell的右端包抄直线,上一和以后文字块有垂直地位堆叠的直线记为以后表格cell的左端包抄直线3.为了进步查找效力,界线线的集合可以取查找块瓜分直线时查找到的一切瓜分直线加上全部表格的外界线线6.表格单位格的组织构造分析。对曾经提取的表格单位格集合cells,根据其包抄矩形地位肯定表格的cell组织方法a)从上到下查找表格外部首个非表非分特别包抄直线的程度贯穿直线,取得其上方的一切表格单位格;b)对上一步取得的表格单位格,从左到右顺次搜刮贯穿该区域的垂直切分线,若不存在则以后以后行仅一个cell,记录为首行结点;若存在垂直切分线,对垂直切分线切分取得的非首个区域反复如上步调,若每个块均不存在横向切分线则记录以后行构造;c)每个横向贯穿程度线切分的行解析的成果停止列对齐;d)若输入的表格构造为标准的m×n表格,直接以标准表格构造输入;若存在一列对多行的构造,则首列伶仃输入,其对应的多行表格以标准表格构造输入。以后第1页1 2 3 以后第1页1 2 3 
再多懂得一些
以后第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。出色留言会取得点赞!
1