CN108470021B - Pdf文档中表格的定位方法及装置 - Google Patents

Pdf文档中表格的定位方法及装置 Download PDF

Info

Publication number
CN108470021B
CN108470021B CN201810253203.XA CN201810253203A CN108470021B CN 108470021 B CN108470021 B CN 108470021B CN 201810253203 A CN201810253203 A CN 201810253203A CN 108470021 B CN108470021 B CN 108470021B
Authority
CN
China
Prior art keywords
line
text
lines
pdf document
wireless
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
Application number
CN201810253203.XA
Other languages
English (en)
Other versions
CN108470021A (zh
Inventor
余宙
杨永智
汪贤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Abotsde Beijing Technology Co ltd
Original Assignee
Abotsde Beijing Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Abotsde Beijing Technology Co ltd filed Critical Abotsde Beijing Technology Co ltd
Priority to CN201810253203.XA priority Critical patent/CN108470021B/zh
Priority to US15/984,195 priority patent/US10853565B2/en
Publication of CN108470021A publication Critical patent/CN108470021A/zh
Application granted granted Critical
Publication of CN108470021B publication Critical patent/CN108470021B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/183Tabulation, i.e. one-dimensional positioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Character Input (AREA)

Abstract

本发明涉及一种PDF文档中表格的定位方法及装置,所述方法包括步骤:接收包含表格的PDF文档;从所述PDF文档的矢量流信息中提取字符信息和直线信息;根据所提取的字符信息和直线信息,定位所述PDF文档中的表格区域。本发明方法及装置是基于页面中所有的直线和文本块进行表格区域定位,相比于现有技术可以提高表格区域定位的准确性,继而为表格信息的准确解析提供基础。

Description

PDF文档中表格的定位方法及装置
技术领域
本发明涉及数据处理技术领域,特别涉及一种PDF文档中表格的定位方法及装置。
背景技术
PDF文档以PostScript语言图像模型为基础,对于任何打印机,PDF均能忠实地再现原稿的每一个字符、颜色以及图像。PDF与生具有的与操作***平台无关的特点,使其成为电子文档发行和数字化信息传播中最为广泛使用的理想文档格式。
PDF文档虽然能够精确的展现版面,然而对于PDF中结构信息,例如表格的位置信息却没有进行有效记录和存储,从而导致在对PDF中表格信息进行还原时难度较大。公开号为CN105589841A的中国专利申请提供了一种PDF文档表格识别方法,其使用标题特征和表格线特征进行表格定位,若仅存在疑似表格线,则用线集合和行集合先检测全线表再检测三线表;若仅存在疑似表标题,则用基于表标题和行集合的区域生长法识别表格;若既无疑似表格线也无疑似表标题,则判定该页无表格。该方法侧重于使用标题特征和表格线特征进行表格定位,实际中只能识别PDF文档中含有标题或者表格线特征的部分表格,而对于没有明确的表标题和表格线的表格不能进行有效识别。公开号为CN107622230A的中国专利申请提供了另一种表格解析方法,该方法首先将指定页面转换为灰阶图像,获取其中的数据部分并保存到二维数组中,然后基于图像投影方法进行表格区域的识别。该方法将PDF文档转换为图像进行处理,一方面PDF流信息转化为图像以及图像数据处理均需要耗费较长时间,对于线上实时处理的要求较难满足;另一方面,转化为灰度图像后部分颜色信息以及字符流信息均有丢失,影响表格识别的准确性。
发明内容
本发明的目的在于改善现有方法表格识别准确性较差的缺陷,提供一种PDF文档中表格的定位方法及装置。
为了实现上述发明目的,本发明实施例提供了以下技术方案:
一方面,本发明实施例中提供了一种PDF文档中表格的定位方法,包括以下步骤:
接收包含表格的PDF文档;
从所述PDF文档的矢量流信息中提取字符信息和直线信息;以及
根据所提取的字符信息和直线信息,定位所述PDF文档中的表格区域,
其中,所述PDF文档中包含近全线表格和近无线表格中的至少一种,其中,所述近全线表格中的所有单元格均由至少三条表格线围绕而成,所述近无线表格中存在单元格由少于三条表格线围绕而成。
当所述PDF文档中仅包含所述近无线表格时,定位所述近无线表格的步骤包括:
将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;将PDF文档中的文本行或文本行与直线的结合作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域。
当所述PDF文档中同时包含所述近全线表格和所述近无线表格时,定位所述近全线表格的步骤包括:根据相交或者未相交但相邻的直线组合为一个直线集的策略,将PDF文档中所有的直线进行组合得到一个或多个直线集,将每个直线集的最大外接矩形作为近全线表格区域;
定位所述近无线表格的步骤包括:将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;将PDF文档中去掉近全线表格区域后的文本行、或文本行与直线的结合,作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域。
另一方面,本发明实施例提供了一种PDF文档中表格的定位装置,包括:
PDF文档接收模块,用于接收包含表格的PDF文档;
字符和直线提取模块,用于从所述PDF文档的矢量流信息中提取字符信息和直线信息;以及
表格区域定位模块,用于根据所提取的字符信息和直线信息,定位所述PDF文档中的表格区域,
其中,所述PDF文档中包含近全线表格和近无线表格中的至少一种,其中,所述近全线表格中的所有单元格均由至少三条表格线围绕而成,所述近无线表格中存在单元格由少于三条表格线围绕而成。
当所述PDF文档中仅包含所述近无线表格时,所述表格区域定位模块包括聚类模块和近无线表格定位模块;其中,
所述聚类模块,用于将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;
所述近无线表格定位模块,用于将PDF文档中的文本行或文本行与直线的结合作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域。
再一方面,本发明实施例同时提供了一种包括计算机可读指令的计算机可读存储介质,所述计算机可读指令在被执行时使处理器执行本发明实施例中所述方法中的操作。
再一方面,本发明实施例同时提供了一种电子设备,包括:存储器,存储程序指令;处理器,与所述存储器相连接,执行存储器中的程序指令,实现本发明实施例中所述方法中的步骤。
与现有技术相比,本发明方法及装置,是基于页面中所有的直线和文本块进行表格区域定位,对于PDF文档中近全线表格和近无线表格都能够进行准确定位,相较于使用图像方法以及基于表格线和标题定位方法的表格定位准确率更高,继而为表格信息的准确解析提供基础,且定位速度也更快,能够满足线上实时处理的要求。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明较佳实施例中所述的一种PDF文档中表格的定位方法的流程图。
图2为本发明较佳实施例中所述的另一种PDF文档中表格的定位方法的流程图。
图3为原始的PDF文档。
图4为图3根据PDF字符流顺序和字符间距合并文本块后的示意图。
图5为根据PDF文本块合并文本行后的示意图。
图6为从PDF文档的矢量流中提取出原始路径信息后的示意图。
图7为近无线表格区域定位步骤中表格种子点向下合并的流程图。
图8为PDF无线表格区域定位步骤中无线表格区域修正后的示意图。
图9为表格文本行对齐的示意图。
图10为采用图2所示方法得到的结果图。
图11为实施例中提供的另一种PDF文档中表格的定位方法的流程图。
图12为采用图11所示方法得到的结果图。
图13为实施例中提供的又一种PDF文档中表格的定位方法的流程图。
图14为本实施例中提供的一种PDF文档中表格的定位装置的功能模块图。
图15为本实施例中提供的一种电子设备的结构框图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本实施例提供的一种PDF文档中表格的定位方法,包括以下步骤:
S10,接收包含表格的PDF文档。
S20,从所述PDF文档的矢量流信息中提取字符信息和直线信息。
S30,根据所提取的字符信息和直线信息,定位所述PDF文档中的表格区域。
所述PDF文档中可能仅包含近全线表格,也可能仅包含近无线表格,也可能同时包含近全线表格和近无线表格,所述近全线表格中的所有单元格均由至少三条表格线围绕而成,也即单元格可以通过表格线准确划分而成;所述近无线表格中存在单元格由少于三条表格线围绕而成,近无线表格包括完全没有表格线和有一部分表格线的情况。
本实施例中,将以PDF文档中同时包含近全线表格和近无线表格的情况为例,对本发明方法做进一步详细的阐述。
请参阅图2,图2所示方法是对同时包含近全线表格和近无线表格的PDF文档中表格的定位方法。在图2所示方法中,包括以下步骤:
S101,从所述PDF文档的矢量流信息中提取字符信息,将提取的字符聚类为文本块,并将属于同一行的文本块聚类为文本行。
本步骤中,作为可实施方式的举例,实现时可以是提取出PDF文档中所有的字符,然后将相邻字符根据字符流顺序和字符间距聚类为文本块。字符流顺序也即PDF描绘页面信息时的矢量流顺序,一般按照从上到下,从左到右的顺序进行绘制,然而PDF进行矢量流信息绘制时并没有记录字符行以及段落的信息,因此实际中仅根据字符流顺序不足以准确确定两个字符是否属于同一行以及同一个段落;字符间距是指两个字符在页面水平方向上的字符间隔,通过同时结合字符流顺序和字符间距可以将相邻字符合并为一个文本块。如图4中所示,灰色框区域为根据字符流顺序和字符间距聚类的文本块。
最后将属于同一行的文本块聚类为文本行,所述同一行的文本块是指满足垂直方向的间距小于(包括相交)一定阈值的文本块,例如垂直方向的间距小于页面平均字符高度的0.5倍的文本块。如图5中所示,图中仅画出部分文本块合并后的文本行区域,其中短小的灰色区域为文本块,长条的灰色区域为由文本块聚类得到的文本行。
S102,从PDF文档的矢量流信息中提取直线信息。例如作为一种可实施方式的举例,可以从PDF矢量流中筛选出表格线的直线段,然后再将筛选出的相隔较近且方向一致的直线段合并为一条直线。此处的相隔较近是指间距小于等于设定的距离门限,例如可以是间距小于等于一个平均字符间距。
PDF文档中的表格线采用矢量流路径信息进行保存,具有“细、平直、长”的特点,根据此特点可以将PDF矢量流中满足要求的直线段提取以及筛选出来,PDF的表格线在矢量流中并不是一条完整的线条,而是由多个直线段组成,因此可以从筛选出来的直线段中将相隔较近且方向一致的合并为整条直线,然后再从得到的直线中,根据直线的方向,选择出水平线和垂直线。如图6中所示,不同颜色(用不同颜色深度表示)的线段为PDF矢量流信息中提取的原始路径信息。例如图6中标号为A和B的两条直线段,其距离为零,小于设定的距离门限,且方向一致,因此将其合并为一条直线。
S103,根据提取的直线确定出近全线表格区域。
实现时,可以根据相交或者未相交但相邻的直线组合为一个直线集的策略,将PDF文档中所有的直线进行组合,即是说将相互之间相交或者未相交但相邻的所有直线组合为一个直线集,将PDF文档中提取出的所有的直线组合后得到一个或多个直线集,将每个直线集的最大外接矩形作为一个区域。此处的未相交指的是直线间没有交叉点,无论直线是水平线还是垂直线。
由于部分框线图(是图形而不是表格,例如带方框的流程图)和仅有外接框包围的正文也有完整的直线包围结构,但本质上不属于表格区域,所以当存在此类情况时,如果不将不属于表格的区域去除,将会导致定位得到的近全线表格区域不准确。
因此在更优的实施方案中,需要将此类不属于表格的区域进行去除,即在得到所有的区域中,去除掉不含近全线表格特征的区域,则保留下来的区域中,一个区域即为一个近全线表格区域。去除掉不含近全线表格特征的区域的方式可以是:统计各个区域中水平线和垂直线的数量及由水平线和垂直线划分的网格块的数量,去除不满足以下条件的区域:水平线和垂直线分别至少为两条,且水平线与垂直线有交点,且由水平线和垂直线划分的网格块的数量至少为两个。
如图10所示,经过本步骤处理之后,如果PDF文档中存在近全线表格,则可以准确定位出近全线表格区域。
S104,将PDF文档中去掉近全线表格区域的文本行和直线作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域。
作为可实施方式的举例,实现时可以基于该初始元素集并根据文本行中文本块的对齐信息,和/或文本行周围的直线信息进行近无线表格定位,确定出近无线表格区域,得到包含一个或多个近无线表格区域的集合。
具体地,首先,从初始元素集中找出可能组成表格区域的文本行,将找出的所有文本行组成初始种子点集合A1。此处所谓的可能组成表格区域的文本行是指,例如文本行中文本块数目大于2且文本块之间的水平间距大于页面的平均字符宽度的2倍(实际可根据PDF本身特点调整相应阈值),或文本行上下均有直线,或某文本行上下有不同背景颜色的文本行。
然后,根据相邻且距离小于例如2倍PDF文档的平均字符高度(实际可根据PDF本身特点调整相应的距离阈值)的初始种子点合并为一个区域的策略,将初始种子点集合A1中所有的初始种子点进行合并,得到一个或多个区域,一个区域就是一个种子点,一个或多个区域组成种子点集合A2。
然后,请参阅图7,将种子点集合A2按区域中含有的初始种子点的数目对各个区域进行从大到小(或者从小到大)排序,然后依次选择一个种子点进行先向下再向上的文本行搜索,针对于每一个种子点,将上下文本行中文本块满足列对齐或者文本行之间存在多条并列且大于设定宽度阈值(例如0.5倍种子点区域宽度,实际可根据PDF本身特点相应调整)的直线的文本行(可称为第一合并规则)与该种子点进行合并,组成新种子点;遍历完整个初始元素集后得到多个新种子点。然后再将多个新种子点进行比较,将距离小于设定高度阈值(例如2倍页面平均高度,实际可根据PDF本身特点相应调整)且首尾文本行(即前一个新种子点的最后一个(或第一个)文本行与相邻的后一个新种子点的第一个(或最后一个)文本行)的文本块满足对齐关系(可称为第二合并规则)的相邻新种子点进行合并,合并之后的区域即为一个近无线表格区域,不满足第二合并规则的一个新种子点也为一个近无线表格区域。
需要说明的是,在搜索过程中,也可以是先向上再向下的方式进行搜索,但先向下再向上实际中效果更好,因为表格向上搜索容易受到标题或者单位行的干扰而将标题行也误合并到表格中,先向下合并,则满足合并规则的文本行会进一步增加当前种子点集合的种子数目,从而更加有利于搜集种子点的整体结构特征,即提高无线表格区域定位的准确性。
近无线表格区域定位的难点在于无法准确定位表格区域边界,也即种子点搜索的截止文本行,因此实际中有可能将不属于表格区域的部分误合并为表格区域,如表头上方的单位说明行和表格下方的注释行。所以在更优的实施方案中,还包括去除误合并的单位说明行和注释行的步骤。如果存在将标题行和/或注释行误合并的情况,则通过本步骤可以去除误合并的文本行,可以提高近无线表格区域定位的准确性,如果不存在将标题行和/或注释行误合并的情况,则执行本步骤的结果为空。
单位说明行一般位于表格主体的上方,常用于描述表格中元素的单位信息,常带有“单位”关键词;注释行一般位于表格主体下方,常用于对表格进行解释说明或者备注,常带有“注”关键词。对于误合并的文本行可以通过关键词匹配或者文本块对齐信息的方法进行文本行过滤,文本块对齐是指上一行的每一个文本块至多与下一行的其中一个文本块在水平方向上有交集,如图9所示,长条形灰色框区域为文本行,短小的灰色框区域为对齐的文本块,图9中所示的两个文本行满足上下文本块对齐策略,如果上下文本行的所有文本块不满足对齐规则或者文本行中字符符合对应关键词匹配规则,则将该文本行区域从表格区域中去除。最终对已过滤的文本行区域进行区域修正,最终得到准确的近无线表格区域。如图8所示,绿色框(用细线条框表示)的区域为真正的表格区域,而红色框(用粗线条框表示)的部分为单位说明行,通过关键词匹配即可以将该行信息进行去除,然后再对表格区域进行修正得到较为准确的近无线表格区域,如图10所示。
如图10所示,从近无线表格中的具体文字内容来看,该近无线表格也可以认为是两个并列的近无线表格,因为两个表格的行和列均是对齐结构,所以按照上述方法将其定位成了一个近无线表格区域,但是由于两个表格结构相似但内容上属于不同方面,因此如果定位为两个表格也是可以的,也就是说将图10所示的近无线表格定位成一个近无线表格区域或两个近无线表格区域都是可以的。因此,在另一个实施方案中,如图11所示,上述方法还包括步骤:
S105,若确定出的近无线表格区域中,存在垂直坐标相等且间距大于等于设定门限(例如5倍的页面的平均字符宽度,实际可根据PDF本身特点进行相应调整)的一对或多对水平直线,则将该近无线表格区域根据每一对或多对水平直线之间的中心位置进行表格拆分,拆分为两个或多个近无线表格区域。
如图12所示,图10中上方的一个表格区域经过本步骤后被准确拆分为两个近无线表格区域。
由于部分表格区域同时存在由完整表格线包围的近全线表格区域以及没有完整表格线包围的近无线表格区域,即是说完整的表格由近全线表格区域和近无线表格区域共同构成,为了兼顾此种情况,应当对此种情况下的近全线表格区域和近无线表格区域进行合并,才能得到更加准确的表格区域定位。因此,如图13所示,在另一个实施方案中,PDF文档中的表格定位方法还包括步骤:
S105’,检查所有的近全线表格区域和近无线表格区域,若存在距离小于设定阈值(例如2倍的页面的平均字符高度,实际可根据PDF本身特点相应调整)且满足文本行对齐关系的近全线表格区域和近无线表格区域,则将该近全线表格区域和近无线表格区域合并为一个表格区域。此处所谓的文本行对齐是指上面表格区域的最后一行文本和下面表格区域的第一行文本的文本块满足上下对齐,即上面表格区域的最后一行的每一个文本块至多与下面表格区域的第一行文本的其中一个文本块在水平方向上有交集。
当然地,如果不存在此类情况,则检查所有的近全线表格区域和近无线表格区域后不执行其他任何操作。
需要说明的是,如果PDF文档中仅包含近全线表格,则PDF文档中表格的定位方法中,不包含近无线表格定位步骤(即步骤S104)和近全线表格区域和近无线表格区域合并步骤(即步骤S105)。
需要说明的是,如果PDF文档中仅包含近无线表格,则PDF文档中表格的定位方法中,不包含近全线表格定位步骤(即步骤S103)和近全线表格区域和近无线表格区域合并步骤(即步骤S105),此时步骤S104中所述的初始元素集则是直接由将PDF文档中的文本行或文本行与直线的结合构成。另外,若此时PDF文档中完全没有直线,则也不包含直线提取步骤(即步骤S102)。
通过本实施例中任一实施方案中所述的方法,相比于现有技术,可以更加准确地定位出表格区域,且定位速度快,满足线上实时处理的要求。
基于相同的发明构思,本实施中同时提供了一种PDF文档中表格的定位装置,本装置实施例中未描述之处,请参见前述定位方法实施例部分的相应内容。请参阅图14,本实施中同时提供的PDF文档中表格的定位装置包括:
PDF文档接收模块41,用于接收包含表格的PDF文档;
字符和直线提取模块42,用于从所述PDF文档的矢量流信息中提取字符信息和直线信息;
表格区域定位模块43,用于根据所提取的字符信息和直线信息,定位所述PDF文档中的表格区域。
其中,当所述PDF文档中仅包含所述近无线表格时,所述表格区域定位模块43包括聚类模块431和近无线表格定位模块432;其中,
所述聚类模块431,用于将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;
所述近无线表格定位模块432,用于将PDF文档中的文本行或文本行与直线的结合作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域。
当所述PDF文档中仅包含所述近全线表格时,所述表格区域定位模块43包括近全线表格定位模块433:用于根据相交或者未相交但相邻的直线组合为一个直线集的策略,将PDF文档中所有的直线进行组合得到一个或多个直线集,将每个直线集的最大外接矩形作为一个区域。
当所述PDF文档中同时包含所述近全线表格和近无线表格时,表格区域定位模块43包括聚类模块431和近无线表格定位模块432、近全线表格定位模块433,且所述近无线表格定位模块用于将PDF文档中去除近全线表格区域后的文本行或文本行与直线的结合作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域。
可选的,表格区域定位模块43还可以包括合并模块434,用于当存在距离小于设定阈值且满足文本行对齐关系的近全线表格区域和近无线表格区域时,将该近全线表格区域和近无线表格区域合并为一个表格区域。
可选的,表格区域定位模块43还可以包括拆分模块435,用于当确定出的近无线表格区域中,存在垂直坐标相等且间距大于等于设定门限的一对或多对水平直线时,将该近无线表格区域根据一对或多对水平直线之间的中心位置进行表格拆分。
在一个实施方案中,近全线表格定位模块433可以通过如下方式确定近全线表格区域:根据相交或者未相交但相邻的直线组合为一个直线集的策略,将PDF文档中所有的直线组合得到一个或多个直线集,将每个直线集的最大外接矩形作为一个区域,并去除不含有表格特征的区域,保留下来的每一个区域即为一个近全线表格区域。
在一个实施方案中,近无线表格定位模块432可以包括以下子模块:
初始种子点收集子模块,用于从初始元素集中找出可能组成表格区域的文本行,将找出的所有文本行组成初始种子点集合A1。
初始种子点合并子模块,用于根据相邻且距离小于设定的距离阈值的初始种子点合并为一个区域的策略,将初始种子点集合A1中所有的初始种子点合并得到一个或多个区域,一个区域就是一个种子点,一个或多个区域组成种子点集合A2。
近无线表格定位子模块,用于将种子点集合A2按区域中含有的初始种子点的数目对各个区域进行从大到小排序,然后依次选择一个种子点进行先向下再向上的文本行搜索,针对于每一个种子点,将上下文本行中文本块满足列对齐或者文本行之间存在多条并列且大于设定宽度阈值(例如0.5倍种子点区域宽度,实际可根据PDF本身特点相应调整)的直线的文本行(可称为第一合并规则)与该种子点进行合并,组成新种子点;遍历完整个初始元素集后得到多个新种子点。然后再将多个新种子点进行比较,将距离小于设定高度阈值(例如2倍页面平均高度,实际可根据PDF本身特点相应调整)且首尾文本行的文本块满足对齐关系(可称为第二合并规则)的相邻新种子点进行合并,合并之后的区域即为一个近无线表格区域,不满足第二合并规则的一个新种子点也为一个近无线表格区域。
近无线表格修正子模块,用于通过关键词匹配或者文本块对齐信息进行文本行过滤,删除初始无线框区域确定子模块中误合并的单位说明行或注释行,得到修正后的近无线表格区域。
如图15所示,本实施例同时提供了一种电子设备,该电子设备可以包括处理器51和存储器52,其中存储器52耦合至处理器51。值得注意的是,该图是示例性的,还可以使用其他类型的结构来补充或替代该结构,实现数据提取、图表重绘、通信或其他功能。
如图15所示,该电子设备还可以包括:输入单元53、显示单元54和电源55。值得注意的是,该电子设备也并不是必须要包括图15中显示的所有部件。此外,电子设备还可以包括图15中没有示出的部件,可以参考现有技术。
处理器51有时也称控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该处理器51接收输入并控制电子设备的各个部件的操作。
其中,存储器52例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其他合适装置中的一种或多种,可存储上述处理器51的配置信息、处理器51执行的指令、记录的表格数据等信息。处理器51可以执行存储器52存储的程序,以实现信息存储或处理等。在一个实施例中,存储器52中还包括缓冲存储器,即缓冲器,以存储中间信息。
输入单元53例如用于向处理器51提供待处理的PDF文档。显示单元54用于显示处理过程中的各种状态图,该显示单元例如可以为LCD显示器,但本发明并不限于此。电源55用于为电子设备提供电力。
本发明实施例还提供一种计算机可读指令,其中当在电子设备中执行所述指令时,所述程序使得电子设备执行本发明方法所包含的操作步骤。
本发明实施例还提供一种存储有计算机可读指令的存储介质,其中所述计算机可读指令使得电子设备执行本发明方法所包含的操作步骤。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种PDF文档中表格的定位方法,其特征在于,包括以下步骤:
接收包含表格的PDF文档;
从所述PDF文档的矢量流信息中提取字符信息和直线信息;以及
根据所提取的字符信息和直线信息,定位所述PDF文档中的表格区域,
其中,所述PDF文档中包含近全线表格和近无线表格中的至少一种,其中,所述近全线表格中的所有单元格均由至少三条表格线围绕而成,所述近无线表格中存在单元格由少于三条表格线围绕而成;
当所述PDF文档中仅包含所述近无线表格时,定位所述近无线表格的步骤包括:将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;将PDF文档中的文本行或文本行与直线的结合作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域;
当所述PDF文档中同时包含所述近全线表格和近无线表格时,定位所述近全线表格的步骤包括:根据相交或者未相交但相邻的直线组合为一个直线集的策略,将PDF文档中所有的直线进行组合得到一个或多个直线集,将每个直线集的最大外接矩形作为近全线表格区域;定位所述近无线表格的步骤包括:将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;将PDF文档中去掉近全线表格区域后的文本行、或文本行与直线的结合,作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域;
所述基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域的步骤包括:从初始元素集中找出可能组成表格区域的文本行,将找出的所有文本行组成初始种子点集合A1;根据相邻且距离小于设定的距离阈值的初始种子点合并为一个种子点的策略,将初始种子点集合A1中所有的初始种子点进行合并,得到包含一个或多个种子点的种子点集合A2;将种子点集合A2按种子点中含有的初始种子点的数目,对各个种子点进行从大到小或从小到大排序,依次选择一个种子点进行先向下再向上或者先向上再向下的文本行搜索,针对每个种子点,将上下文本行中文本块满足列对齐、或者文本行之间存在多条并列且大于设定宽度阈值的直线的文本行,与该种子点进行合并,组成新种子点;遍历完整个初始元素集后得到多个新种子点;将所述多个新种子点进行比较,将距离小于设定高度阈值且首尾文本行的文本块满足对齐关系的相邻的新种子点进行合并,最终得到一个或多个近无线表格区域。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括步骤:
若存在距离小于设定阈值且满足文本行对齐关系的近全线表格区域和近无线表格区域,则将该近全线表格区域和近无线表格区域合并为一个表格区域。
3.根据权利要求1所述的方法,其特征在于,在所述基于该初始元素集并根据文本行中文本块的对齐信息,和/或文本行周围的直线信息进行近无线表格定位的步骤还包括:
通过关键词匹配或者文本块对齐信息进行文本行过滤,删除误合并的单位说明行或注释行,得到修正后的近无线表格区域。
4.根据权利要求1述的方法,其特征在于,所述定位所述近无线表格的步骤还包括:
若确定出的近无线表格区域中,存在垂直坐标相等且间距大于等于设定门限的一对或多对水平直线,则将该近无线表格区域根据该一对或多对水平直线之间的中心位置进行表格拆分。
5.根据权利要求1所述的方法,其特征在于,提取PDF文档中直线的步骤包括:
从PDF矢量流中筛选出表格线的直线段;
将距离小于设定的距离门限且方向一致的直线段合并为一条直线。
6.一种PDF文档中表格的定位装置,其特征在于,包括:
PDF文档接收模块,用于接收包含表格的PDF文档;
字符和直线提取模块,用于从所述PDF文档的矢量流信息中提取字符信息和直线信息;以及
表格区域定位模块,用于根据所提取的字符信息和直线信息,定位所述PDF文档中的表格区域,
其中,所述PDF文档中包含近全线表格和近无线表格中的至少一种,其中,所述近全线表格中的所有单元格均由至少三条表格线围绕而成,所述近无线表格中存在单元格由少于三条表格线围绕而成;
当所述PDF文档中仅包含所述近无线表格时,所述表格区域定位模块包括:
聚类模块,用于将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;以及近无线表格定位模块,用于将PDF文档中的文本行或文本行与直线的结合作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域;
当所述PDF文档中同时包含所述近全线表格和近无线表格时,所述表格区域定位模块包括:近全线表格定位模块,用于根据相交或者未相交但相邻的直线组合为一个直线集的策略,将PDF文档中所有的直线进行组合得到一个或多个直线集,将每个直线集的最大外接矩形作为近全线表格区域;聚类模块,用于将相邻字符根据字符流顺序和字符间距聚类为文本块,并将属于同一行的文本块聚类为文本行;以及近无线表格定位模块,用于将PDF文档中去除近全线表格区域后的文本行或文本行与直线的结合作为近无线表格定位的初始元素集,基于该初始元素集并根据文本行及文本行中的文本块,确定出近无线表格区域;
所述近无线表格定位模块包括:近无线表格修正子模块,用于通过关键词匹配或者文本块对齐信息进行文本行过滤,删除误合并的单位说明行或注释行,得到修正后的近无线表格区域。
7.根据权利要求6所述的装置,其特征在于,所述表格区域定位模块还包括:
合并模块,用于当存在距离小于设定阈值且满足文本行对齐关系的近全线表格区域和近无线表格区域时,将该近全线表格区域和近无线表格区域合并为一个表格区域。
8.根据权利要求6所述的装置,其特征在于,所述表格区域定位模块还包括:
拆分模块,用于当确定出的近无线表格区域中,存在垂直坐标相等且间距大于等于设定门限的一对或多对水平直线时,将该近无线表格区域根据该一对或多对水平直线之间的中心位置进行表格拆分。
9.一种包括计算机可读指令的计算机可读存储介质,其特征在于,所述计算机可读指令在被执行时使处理器执行权利要求1-5任一所述方法中的操作。
10.一种电子设备,其特征在于,所述的设备包括:
存储器,存储程序指令;
处理器,与所述存储器相连接,执行存储器中的程序指令,实现权利要求1-5任一所述方法中的步骤。
CN201810253203.XA 2018-03-26 2018-03-26 Pdf文档中表格的定位方法及装置 Active CN108470021B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810253203.XA CN108470021B (zh) 2018-03-26 2018-03-26 Pdf文档中表格的定位方法及装置
US15/984,195 US10853565B2 (en) 2018-03-26 2018-05-18 Method and device for positioning table in PDF document

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810253203.XA CN108470021B (zh) 2018-03-26 2018-03-26 Pdf文档中表格的定位方法及装置

Publications (2)

Publication Number Publication Date
CN108470021A CN108470021A (zh) 2018-08-31
CN108470021B true CN108470021B (zh) 2022-06-03

Family

ID=63264755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810253203.XA Active CN108470021B (zh) 2018-03-26 2018-03-26 Pdf文档中表格的定位方法及装置

Country Status (2)

Country Link
US (1) US10853565B2 (zh)
CN (1) CN108470021B (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11614857B2 (en) * 2017-06-02 2023-03-28 Oracle International Corporation Importing, interpreting, and presenting data
CN110889310B (zh) * 2018-09-07 2023-05-09 深圳市赢时胜信息技术股份有限公司 金融文档信息智能提取***及方法
CN109284495B (zh) * 2018-11-03 2023-02-07 上海犀语科技有限公司 一种对文本进行无表格线切表的方法及装置
CN109522539A (zh) * 2018-11-26 2019-03-26 常诚 基于移动设备的pdf学术论文重排版***及方法
CN109685052A (zh) * 2018-12-06 2019-04-26 泰康保险集团股份有限公司 文本图像处理方法、装置、电子设备及计算机可读介质
CN109871743B (zh) * 2018-12-29 2021-01-12 口碑(上海)信息技术有限公司 文本数据的定位方法及装置、存储介质、终端
CN109635268B (zh) * 2018-12-29 2023-05-05 南京吾道知信信息技术有限公司 Pdf文件中表格信息的提取方法
WO2020202324A1 (ja) * 2019-03-29 2020-10-08 日本電気株式会社 文書解析装置、文書解析方法、及びコンピュータ読み取り可能な記録媒体
CN110032718B (zh) * 2019-04-12 2023-04-18 广州广燃设计有限公司 一种表格转换方法、***和存储介质
CN110399878B (zh) * 2019-06-14 2023-05-26 南京火眼锐视信息科技有限公司 表格版式恢复方法,计算机可读介质以及计算机
CN110334346B (zh) * 2019-06-26 2020-09-29 京东数字科技控股有限公司 一种pdf文件的信息抽取方法和装置
CN110413962A (zh) * 2019-06-28 2019-11-05 南京智录信息科技有限公司 文档图像中的无边框表格解析技术
CN110659346B (zh) * 2019-08-23 2024-04-12 平安科技(深圳)有限公司 表格提取方法、装置、终端及计算机可读存储介质
CN110516048A (zh) * 2019-09-02 2019-11-29 苏州朗动网络科技有限公司 pdf文档中表格数据的提取方法、设备和存储介质
CN110728240A (zh) * 2019-10-14 2020-01-24 北京华宇信息技术有限公司 一种对电子卷宗的标题自动识别的方法及装置
CN110727962B (zh) * 2019-10-17 2023-07-07 武汉英思工程科技股份有限公司 一种适用于全流程过程化的电子签章方法
CN110795919B (zh) * 2019-11-07 2023-10-31 达观数据有限公司 一种pdf文档中的表格抽取方法、装置、设备及介质
CN110968667B (zh) * 2019-11-27 2023-04-18 广西大学 一种基于文本状态特征的期刊文献表格抽取方法
CN112287660B (zh) * 2019-12-04 2024-05-31 上海柯林布瑞信息技术有限公司 Pdf文件中的表格解析方法及装置、计算设备、存储介质
CN111223109B (zh) * 2020-01-03 2023-06-06 四川新网银行股份有限公司 一种复杂的表格图像解析方法
CN113627143B (zh) * 2020-05-09 2024-02-02 北京金山数字娱乐科技有限公司 一种表格创建方法、装置、电子设备及存储介质
CN111797685B (zh) * 2020-05-27 2022-04-15 贝壳找房(北京)科技有限公司 表格结构的识别方法及装置
CN114077830A (zh) * 2020-08-17 2022-02-22 税友软件集团股份有限公司 一种基于位置的pdf表格文档的解析方法、装置及设备
CN111914805A (zh) * 2020-08-18 2020-11-10 科大讯飞股份有限公司 表格结构化方法、装置、电子设备及存储介质
CN112069991B (zh) * 2020-09-04 2024-08-09 税友软件集团股份有限公司 一种pdf的表格信息提取方法及相关装置
CN112380812B (zh) * 2020-10-09 2022-02-22 北京中科凡语科技有限公司 Pdf不完整框线表格提取方法、装置、设备及存储介质
CN112434496B (zh) * 2020-12-11 2021-06-22 深圳司南数据服务有限公司 一种公告文档表格数据识别方法及终端
CN112434495A (zh) * 2020-12-14 2021-03-02 万兴科技(湖南)有限公司 一种选择方法、装置、计算机设备及存储介质
US11720541B2 (en) 2021-01-05 2023-08-08 Morgan Stanley Services Group Inc. Document content extraction and regression testing
US20220335240A1 (en) * 2021-04-15 2022-10-20 Microsoft Technology Licensing, Llc Inferring Structure Information from Table Images
CN113343658B (zh) * 2021-07-01 2024-04-09 湖南四方天箭信息科技有限公司 一种pdf文件信息抽取方法、装置以及计算机设备
CN113283398A (zh) * 2021-07-13 2021-08-20 国网电子商务有限公司 一种基于聚类的表格识别方法及***
CN113705175B (zh) * 2021-08-18 2024-02-23 厦门海迈科技股份有限公司 一种电子表格行列精简的方法、服务器及存储介质
CN114201620A (zh) * 2021-12-17 2022-03-18 上海朝阳永续信息技术股份有限公司 用于挖掘pdf文件中的pdf表格的方法、设备和介质
CN114936542A (zh) * 2022-05-13 2022-08-23 智慧芽信息科技(苏州)有限公司 表格重建方法和装置、计算机可读存储介质和电子设备
CN117496545B (zh) * 2024-01-02 2024-03-15 物产中大数字科技有限公司 一种面向pdf文档的表格数据融合处理方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976232A (zh) * 2010-09-19 2011-02-16 深圳市万兴软件有限公司 一种识别文档中数据表格的方法及装置
CN102317933A (zh) * 2009-01-02 2012-01-11 苹果公司 用于文档重构的方法和***
CN103377177A (zh) * 2012-04-27 2013-10-30 北大方正集团有限公司 一种数字版式文件中识别表格的方法及装置
CN104063364A (zh) * 2013-03-19 2014-09-24 福建福昕软件开发股份有限公司北京分公司 一种pdf文档识别方法
CN104517112A (zh) * 2013-09-29 2015-04-15 北大方正集团有限公司 一种表格识别方法与***
CN105589841A (zh) * 2016-01-15 2016-05-18 同方知网(北京)技术有限公司 一种pdf文档表格识别的方法
CN107622041A (zh) * 2017-09-18 2018-01-23 北京神州泰岳软件股份有限公司 隐性表格提取方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6173073B1 (en) * 1998-01-05 2001-01-09 Canon Kabushiki Kaisha System for analyzing table images
US7707488B2 (en) * 2006-02-09 2010-04-27 Microsoft Corporation Analyzing lines to detect tables in documents
WO2013110289A1 (en) * 2012-01-23 2013-08-01 Microsoft Corporation Borderless table detection engine
US9251413B2 (en) * 2013-06-14 2016-02-02 Lexmark International Technology, SA Methods for automatic structured extraction of data in OCR documents having tabular data
US10706218B2 (en) * 2016-05-16 2020-07-07 Linguamatics Ltd. Extracting information from tables embedded within documents

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102317933A (zh) * 2009-01-02 2012-01-11 苹果公司 用于文档重构的方法和***
CN101976232A (zh) * 2010-09-19 2011-02-16 深圳市万兴软件有限公司 一种识别文档中数据表格的方法及装置
CN103377177A (zh) * 2012-04-27 2013-10-30 北大方正集团有限公司 一种数字版式文件中识别表格的方法及装置
CN104063364A (zh) * 2013-03-19 2014-09-24 福建福昕软件开发股份有限公司北京分公司 一种pdf文档识别方法
CN104517112A (zh) * 2013-09-29 2015-04-15 北大方正集团有限公司 一种表格识别方法与***
CN105589841A (zh) * 2016-01-15 2016-05-18 同方知网(北京)技术有限公司 一种pdf文档表格识别的方法
CN107622041A (zh) * 2017-09-18 2018-01-23 北京神州泰岳软件股份有限公司 隐性表格提取方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PDF-TREX: An Approach for Recognizing and Extracting Tables from PDF Documents;Ermelinda Oro 等;《2009 10th International Conference on Document Analysis and Recognition》;20091231;第906-910页 *
非结构化表格文档数据抽取与组织模型研究;张元鸣 等;《浙江工业大学学报》;20161031;第44卷(第5期);第487-494页 *

Also Published As

Publication number Publication date
US10853565B2 (en) 2020-12-01
CN108470021A (zh) 2018-08-31
US20190294663A1 (en) 2019-09-26

Similar Documents

Publication Publication Date Title
CN108470021B (zh) Pdf文档中表格的定位方法及装置
CN108446264B (zh) Pdf文档中的表格矢量解析方法及装置
CN110069767B (zh) 基于电子书的排版方法、电子设备及计算机存储介质
CN106940799B (zh) 文本图像处理方法和装置
CN106709032B (zh) 抽取电子表格文档中结构化信息的方法及装置
CN107784301A (zh) 用于识别图像中文字区域的方法和装置
US20140184610A1 (en) Shaping device and shaping method
WO2019041442A1 (zh) 图表数据结构化提取方法、***、电子设备及计算机可读存储介质
CN112380812B (zh) Pdf不完整框线表格提取方法、装置、设备及存储介质
US7680329B2 (en) Character recognition apparatus and character recognition method
CN115620322B (zh) 一种基于关键点检测的全线表表格结构识别方法
CN110135407B (zh) 样本标注方法及计算机存储介质
CN107145888A (zh) 视频字幕实时翻译方法
JP2012190434A (ja) 帳票定義装置、帳票定義方法、プログラム及び記録媒体
CN101901333B (zh) 文本图像中切分词的方法及使用该方法的识别装置
JP2926066B2 (ja) 表認識装置
CN109409180A (zh) 图像分析装置和图像分析方法
CN111428446A (zh) 问卷生成方法、问卷识别方法及问卷识别***
CN109145916B (zh) 一种图像文字识别切割方法及一种存储设备
CN114937279A (zh) 基于rpa和ai实现ia的bom识别方法及装置
CN108021900A (zh) 版面分栏方法及装置
CN104112287B (zh) 切分图片中文字的方法和装置
JP2000207484A (ja) 画像デ―タの解析方法及び解析装置、及び画像デ―タの解析を行うためのプログラム・プロダクトを格納した記録媒体
JP4244692B2 (ja) 文字認識装置及び文字認識プログラム
JP7178445B2 (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