本发明涉及文档处理技术领域,具体是一种基于分类算法的文档表格内容识别方法及装置。
背景技术:
在对表格的解读过程中,人类有独有的学习和识别方法。想要建立一套自动化识别表格内容的装置是非常困难的,难点在于1、如何有效的判断表格范围,尤其是无表格线的表格;2、一张完整的pdf版式文档表格识别,在文档换页情况下,如何判断换页前后的表格块属于同一张表;3、表格中的具体文本内容及数值所表达的意思。传统的识别方式一般基于大量规则,开发成本大且难以维护,难以达到高准确率和灵活适应。
技术实现要素:
本发明的目的在于提供一种基于分类算法的文档表格内容识别方法及装置,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种基于分类算法的文档表格内容识别方法,其特征在于,包含以下步骤:
a、对文档进行解析;
b、实现文表分离;
c、根据表格第一列和表格前的文本对表格进行分类;
d、将表格还原并结构化入库。
作为本发明的进一步方案:所述步骤a具体是:基于文档的不同类型,分别用不同的处理方式对文档进行解析,获取以字为最小颗粒度的文本信息。
作为本发明的进一步方案:所述文档是word文件时,使用word解析器将word转成xml文件。
作为本发明的进一步方案:所述文档是pdf文件时,使用word解析器将word转成xml文件。
作为本发明的进一步方案:所述步骤b具体是实现在word和pdf情形下的文表分离。
作为本发明的进一步方案:所述文档是word文件时,用word文件解析组件将表格信息抽取出来。
作为本发明的进一步方案:所述文档是pdf文件时,判定表格的范围,并判定每一行是否在表格内。
作为本发明的进一步方案:所述步骤c具体是:分别实现表格分类,即给每一张表自动预测一个标准表名,基于步骤b,已经实现表格和文本的分离,随后将表格前的文本,以及包含文本的目录层级信息,还有表格内具有详细内容单元格的文字信息作为表格的特征,进行标准表名的分类模型训练。
作为本发明的进一步方案:所述步骤d具体是:根据每个表格的单元格的坐标进行拆分,将合并的单元格拆分成多个单元格,使得原始表格转变成每行每列有相同的单元格数的表格,识别表头和表体,随后结构化入库。
一种基于分类算法的文档表格内容识别装置,包括文档解析模块、文表分离模块、表名识别模块和表格还原入库模块,文档解析模块、文表分离模块、表名识别模块和表格还原入库模块依次连接。
与现有技术相比,本发明的有益效果是:本发明通过利用深度学习技术巧妙地设计相关的分类模型,高效精确地实现文表分离、表名识别、表格还原等模块,最后准确地实现表格内容识别且结构化入库,避免了大量的规则,开发成本小且易于维护。
附图说明
图1为本发明的流程图。
图2为本发明的装置原理方框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-2,本发明实施例中,一种基于分类算法的文档表格内容识别方法及装置,包含以下步骤:
a、步骤a、对文档进行解析;
基于文档的不同类型(pdf/docx/doc),分别用不同的处理方式对文档进行解析,获取以字为最小颗粒度的文本信息。
步骤a1在word的情形下,使用python中的docx包将word转成xml文件。
步骤a2在pdf的情形下,使用tet将pdf转成xml文件。
b、实现文表分离;分别实现在word和pdf情形下的文表分离。
步骤b1在word情形下,用word解析器将表格信息抽取出来。
步骤b2在pdf情形下又分两种情况:表格有表格线和表格没有表格线。
b21在有表格线情形下,采取图像处理的方法,判定表格的范围。
b22在无表格线情形下,采用序列标注的方法将每一行进行标注,学习一个行分类模型。判定每一行是否在表格内。
c、根据表格第一列和表格前的文本对表格进行分类;
实现表格分类,即给每一张表配一个标准表名。基于步骤b,已经实现表格和文本的分离。随后将表格前的文本,包含文本的目录层级信息,以及表格内第一列的单元格的文字信息作为表格的特征,进行标准表名的分类模型训练。
d、将表格还原并结构化入库。
根据每个表格的单元格的坐标进行拆分,将合并的单元格拆分成多个单元格,使得原始表格转变成每行每列有相同的单元格数的表格。识别表头和表体,随后结构化入库。
实施例2:一种基于分类算法的文档表格内容识别装置,包括文档解析模块、文表分离模块、表名识别模块和表格还原入库模块,文档解析模块、文表分离模块、表名识别模块和表格还原入库模块依次连接。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
1.一种基于分类算法的文档表格内容识别方法,其特征在于,包含以下步骤:
a、对文档进行解析;
b、实现文表分离;
c、根据表格第一列和表格前的文本对表格进行分类;
d、将表格还原并结构化入库。
2.根据权利要求1所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述步骤a具体是:基于文档的不同类型,分别用不同的处理方式对文档进行解析,获取以字为最小颗粒度的文本信息。
3.根据权利要求2所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述文档是word文件时,使用word解析器将word转成xml文件。
4.根据权利要求2所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述文档是pdf文件时,使用word解析器将word转成xml文件。
5.根据权利要求4所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述步骤b具体是实现在word和pdf情形下的文表分离。
6.根据权利要求4所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述文档是word文件时,用word文件解析组件将表格信息抽取出来。
7.根据权利要求4所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述文档是pdf文件时,判定表格的范围,并判定每一行是否在表格内。
8.根据权利要求1所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述步骤c具体是:分别实现表格分类,即给每一张表自动预测一个标准表名,基于步骤b,已经实现表格和文本的分离,随后将表格前的文本,以及包含文本的目录层级信息,还有表格内具有详细内容单元格的文字信息作为表格的特征,进行标准表名的分类模型训练。
9.根据权利要求1所述的一种基于分类算法的文档表格内容识别方法,其特征在于,所述步骤d具体是:根据每个表格的单元格的坐标进行拆分,将合并的单元格拆分成多个单元格,使得原始表格转变成每行每列有相同的单元格数的表格,识别表头和表体,随后结构化入库。
10.一种基于分类算法的文档表格内容识别装置,其特征在于,包括文档解析模块、文表分离模块、表名识别模块和表格还原入库模块,文档解析模块、文表分离模块、表名识别模块和表格还原入库模块依次连接。