1.一种抽取电子表格文档中结构化信息的方法,其特征在于,包括:
通过孤立表格识别算法获取电子表格文档中所有业务表格;
对所述业务表格进行布局分析;
根据布局分析结果从所述业务表格中抽取内容,并做对应的转换处理得到结构化信息。
2.根据权利要求1所述的方法,其特征在于,所述通过孤立表格识别算法获取电子表格文档中所有业务表格,包括:
建立与所述电子表格文档的尺寸相同的两个二维bit数组,记为A和B;
遍历所述电子表格文档中的所有单元格,若单元格中有内容,则A中相应位置标记为1,否则标记为0;
遍历所述电子表格文档中的所有单元格,根据单元格的边框线对B进行标记;
若B中的值为1,则A中相同位置的值设为1;
根据更新后的A获取所述电子表格文档中的业务表格坐标。
3.根据权利要求2所述的方法,其特征在于,所述遍历所述电子表格文档中的所有单元格,根据单元格的边框线对B进行标记,包括:
遍历所述电子表格文档中的所有单元格,若单元格的四个边角至少有一个边角存在两条边框线,则B中相应位置标记为1。
4.根据权利要求3所述的方法,其特征在于,所述遍历所述电子表格文档中的所有单元格,若单元格的四个边角至少有一个边角存在两条边框线,则B中相应位置标记为1后,还包括:
步骤S132,再次遍历所述电子表格文档中的所有单元格,若单元格存在边框线,且B上对应值为0,且与所述单元格相邻的上下左右四个单元格在B中的值至少有一个被标记为1,则将所述单元格在B中的位置标记为1;
步骤S133,再次遍历所述电子表格文档中的所有单元格,若单元格在B上对应值为0,且在包含所述单元格的2×2的区域内,其它三个单元格在B上对应值都是1,则在B上标记所述单元格为1,并且计数器加1;
步骤S134,若所述计数器不为0,则所述计数器清零,重新执行步骤S133。
5.根据权利要求2所述的方法,其特征在于,所述根据更新后的A获取所述电子表格文档中的业务表格坐标,包括:
对更新后的A进行缩小操作,得到LA;
根据LA获取所述电子表格文档中的业务表格坐标业务表格坐标。
6.根据权利要求5所述的方法,其特征在于,所述对更新后的A进行缩小操作,得到LA,包括:
从A的最左侧开始遍历A中所有的列,若列中存在1的值,则记录列的列坐标X1,终止遍历;
从A的最右侧开始遍历A中所有的列,若列中存在1的值,则记录列的列坐标X2,终止遍历;
从A的最上侧开始遍历A中所有的行,若行中存在1的值,则记录行的行坐标Y1,终止遍历;
从A的最下侧开始遍历A中所有的行,若行中存在1的值,则记录行的行坐标Y2,终止遍历;
提取出A中[X1,X2,Y1,Y2]位置的数据,形成二维bit数组LA,并根据X1、X2、Y1、Y2确定LA和A的坐标映射关系。
7.根据权利要求6所述的方法,其特征在于,所述根据LA获取所述电子表格文档中的业务表格坐标,包括:
若LA中所有值都为1,则所述电子表格文档中只有一个表格,业务表格坐标为[X1,X2,Y1,Y2];
否则,检测所述电子表格文档中第X1列、第Y1行的单元格是否为空,若单元格不为空,则一直向右检测其余单元格,直到检测到空单元格,记录空单元格的列坐标为X3,
从上向下检测第X1列的单元格是否为空,直到检测到空单元格,记录空单元格的行坐标为第X1列的最大行坐标,继续检测下一列,直到检测完第X3列,
若所有最大行坐标中最大值为Y3,则业务表格坐标为[X1,X3,Y1,Y3],将LA中与[X1,X3,Y1,Y3]相对应位置的内容设为0,得到新的LA;
根据更新后的LA获取所述电子表格文档中的业务表格坐标,直到提取出所述电子表格文档中所有业务表格。
8.根据权利要求1所述的方法,其特征在于,所述对所述业务表格进行布局分析,包括:
检测所述业务表格中的标题部分;
抽取所述业务表格中除标题部分的多维度信息;
根据抽取的所述多维度信息判断表格布局。
9.一种抽取电子表格文档中结构化信息的装置,其特征在于,包括:
业务表格获取模块,用于通过孤立表格识别算法获取电子表格文档中所有业务表格;
表格布局分析模块,用于对所述业务表格进行布局分析;
表格信息抽取模块,用于根据布局分析结果从所述业务表格中抽取内容,并做对应的转换处理得到结构化信息。
10.根据权利要求9所述的装置,其特征在于,所述业务表格获取模块具体用于:
建立与所述电子表格文档的尺寸相同的两个二维bit数组,记为A和B;
遍历所述电子表格文档中的所有单元格,若单元格中有内容,则A中相应位置标记为1,否则标记为0;
遍历所述电子表格文档中的所有单元格,根据单元格的边框线对B进行标记;
若B中的值为1,则A中相同位置的值设为1;
根据更新后的A获取所述电子表格文档中的业务表格坐标。