掌桥专利:专业的专利平台
掌桥专利
首页

一种提取文档中文本行的方法、系统、设备及存储介质

文献发布时间:2023-06-19 13:26:15


一种提取文档中文本行的方法、系统、设备及存储介质

技术领域

本申请涉及图像识别领域,尤其涉及一种提取文档中文本行的方法、系统、设备及存储介质。

背景技术

随着计算机和通信技术的发展,信息和数据急剧增长,用户对自动化信息处理特别是文档处理的需求也越来越多。在文档处理中,需要先对文本行进行提取,然后再分析文本行内的结构和特征进行切分以及组合,从而提取有用信息。OCR(光学字符识别,OpticalCharacter Recognition)是文档处理的第一个步骤,但是当前最先进的OCR技术一般只能提供文档中所有文本块(位置紧凑且在同一文本行上的多个字符的组合)的位置以及文字内容,文本块之间是乱序的,因此需要一种后处理方法对文本块进行排序和关联,从而提取文本行。

通常的文本行提取方法是通过在水平方向和垂直方向上进行投影,利用行内排列成线以及行间存在较大空白的特征进行文本行提取。但是,由于文档排版的复杂性以及可能存在的噪声干扰,此类方法的适用性不强。

针对上述问题,业内有提出基于图论的方法、基于聚类的方法以及基于形态学的方法等等,但这些方法中的一些出错率较高,一些操作繁琐,给实际应用带来了很多不便。

因此,现有技术还有待改进。

发明内容

本申请的目的是解决现有技术文档的文本行提取过程繁琐,效率不高的问题。

本申请的上述技术目的是通过以下技术方案得以实现的:

一种提取文档中文本行的方法,其中,包括:

获取文档图像;

基于文档图像,确定文档首行的行标志文本块;

基于首行的行标志文本块,对首行的文本行进行文字提取;

待首行的文本行的文字提取完成后,获取相邻行的行标志文本块;

基于相邻行的行标志文本块,对相邻行的文本行进行文字提取;

待上一行的文本行的文字提取完成后,再次进行下一相邻行的行标志文本块的获取以及文本行提取,直至所有的文本行提取完成。

本申请上述方案,通过对文档图像进行行标志文件块确定,再基于行标志文件块对同一行的文本行进行提取,在提取完成后,获取相邻行的行标志文本块,进行相邻行的文本行提取,直至所有的文本行提取完成,操作简便,识别效率高。

可选的,所述的提取文档中文本行的方法,其中,基于首行的行标志文本块,对首行的文本行进行文字提取的步骤包括:

基于行标志文本块,获取相邻的同一行的文本块,设置为当前活动文本块;

获取与前次方向相同的当前活动文本块相邻的同一行的文本块,依次设置为当前活动文本块,直至相同方向的行文本块没有相邻的文本块;

基于行标志文本块,获取前次方向相反的同一行的文本块,设置为当前活动文本块,并依次设置相邻的文本块为当前活动文本块,直至相同方向的行文本块没有相邻的文本块。

本申请上述方案,进行首行的文本行提取时,通过确定的行标志文本块,获取相邻的文本块,进行延伸,并将相邻的文本块设置为当前活动文本块,再次获取与当前活动文本块相邻的文本块,依次延伸,最后,实现同一行进方向的文本块的提取,再基于行标志文本块,获取相邻的,与前次方向相反的一端的文本块,并依次延伸,直至从行标志文本块开始,两侧延伸,实现同一行的文本行提取,操作简单,精准度高。

可选的,所述的提取文档中文本行的方法,其中,获取相邻的同一行的文本块的步骤包括:

以行标志文本块或当前活动文本块的垂直方向引出一条射线;

顺时针或逆时针旋转所述射线;

确定射线旋转过程中在当前行方向经过的第一个文本块,为行标志文本块或当前活动文本块在同一行内相邻的文本块。

本申请上述方案,通过行标志文本块或当前活动文本块的垂直方向的射线的旋转,确定行方向首个经过的文本块为相邻的文本块,识别精度较高,降低了识别误差。

可选的,所述的提取文档中文本行的方法,其中,待首行的文本行的文字提取完成后,获取相邻行的行标志文本块的步骤包括:

以前一行作为平移行,按照前一行的文本行方向的垂直方向进行平移;

若在平移过程中,平移行存在文本块,则确定平移行的首个文本块为相邻行的行标志文本块。

本申请上述方案,在首行文本行提取完成后,进行相邻行的文本行提取,需要确定相邻行的行标志文本块,按照前一行的文本行方向的垂直方向进行平移,来确定相邻行,在平移过程中,平移行存在文本块,则确定平移行的首个文本块为相邻行的行标志文本块,通过上述方案,能够准确快捷的获取相邻行的行标志文本块,再对相邻行通过前述方法,进行行提取,从而最终实现所有的文本行提取,操作简便,文本提取精度高。

可选的,所述的提取文档中文本行的方法,其中,以前一行作为平移行,按照前一行的文本行方向的垂直方向进行平移的步骤包括:

获取前一行的第一个文本块和最后一个的文本块;

设置第一个文本块和最后一个文本块的连线为前一行的文本行方向。

本申请上述方案,通过获取前一行的首尾两个文本块,确定前一行的文本行方向,便于确定相邻行的行方向。

可选的,所述的提取文档中文本行的方法,其中,基于首行的行标志文本块,对首行的文本行进行文字提取的步骤还包括:

获取相邻的文本块,若两个文本块的高度差或在垂直方向上的位置差超出预定范围,则判定两个文本块不处于同一行,摒弃在后获取的文本块。

本申请上述方案,通过对获取的文本块进行对比,误差超出预定范围,则摒弃在后获取的文本块,提高识别精度,降低识别误差。

可选的,所述的提取文档中文本行的方法,其中,基于相邻行的行标志文本块,对相邻行的文本行进行文字提取的步骤还包括:

判断相邻行的文本行是否已被提取,若被提取,再次获取相邻的文本行的行标志文本块,并再次判断,待相邻行的文本行未被提取时,进行文本行提取。

本申请上述方案,对相邻行进行判断,在相邻行未被提取时,进行文本行提取,避免重复提取,提高文本提取精度。

另一方面,本申请还公开了一种提取文档中文本行的系统,其中,包括:

图像获取模块,用于获取文档图像;

首行行标志文本块确定模块,用于基于文档图像,确定文档首行的行标志文本块;

首行行文本提取模块,用于基于首行的行标志文本块,对首行的文本行进行文字提取;

相邻行行标志文本块获取模块,用于待首行的文本行的文字提取完成后,获取相邻行的行标志文本块;

相邻行文本行提取模块,用于基于相邻行的行标志文本块,对相邻行的文本行进行文字提取;

待上一行的文本行的文字提取完成后,相邻行行标志文本块获取模块再次进行下一相邻行的行标志文本块的获取,以及通过相邻行文本行提取模块进行文本行提取,直至所有的文本行提取完成。

本申请上述方案,通过对文档图像进行行标志文件块确定,再基于行标志文件块对同一行的文本行进行提取,在提取完成后,获取相邻行的行标志文本块,进行相邻行的文本行提取,直至所有的文本行提取完成,操作简便,识别效率高。

另一方面,本申请还公开了一种提取文档中文本行的设备,其中,包括存储器和处理器,所述存储器存储有能够被所述处理器加载并执行如上所述的提取文档中文本行的方法的计算机程序。

另一方面,本申请还公开了一种存储介质,其中,存储有能被处理器加载并执行如上所述的提取文档中文本行的方法的计算机程序。

综上所述,本申请公开了一种提取文档中文本行的方法、系统、设备及存储介质,其中,所述方法包括:获取文档图像;基于文档图像,确定文档首行的行标志文本块;基于首行的行标志文本块,对首行的文本行进行文字提取;待首行的文本行的文字提取完成后,获取相邻行的行标志文本块;基于相邻行的行标志文本块,对相邻行的文本行进行文字提取;待上一行的文本行的文字提取完成后,再次进行下一相邻行的行标志文本块的获取以及文本行提取,直至所有的文本行提取完成,通过本申请上述方案,能够准确高效地实现文档的文本行提取,提取过程简单直观,适用性强。

附图说明

图1是本申请所述提取文档中文本行的方法的步骤流程图。

具体实施方式

以下结合附图对本申请作进一步详细说明。

本申请实施例公开一种提取文档中文本行的方法,参照图1,为本申请提取文档中文本行的方法的步骤流程图。其中,包括:

获取文档图像;

基于文档图像,确定文档首行的行标志文本块;

基于首行的行标志文本块,对首行的文本行进行文字提取;

待首行的文本行的文字提取完成后,获取相邻行的行标志文本块;

基于相邻行的行标志文本块,对相邻行的文本行进行文字提取;

待上一行的文本行的文字提取完成后,再次进行下一相邻行的行标志文本块的获取以及文本行提取,直至所有的文本行提取完成。

本申请实施例中,为了实现文档的文本提取,获取文档图像,可以是拍照,或者扫描等方式,录入文档图像,基于文档图像,确定首行的行标志文本块,本申请具体实施时,会默认从文档顶端向下的方式,进行首行确定,在实际的操作中,并不限定首行的确定方式,可以为中间,或者底端都可以,在确定首行的行标志文本块后,通过行标志文本块,向两侧延伸,形成行文本,在行文本提取完成后,则获取相邻行的行标志文本块,再进行相邻行的行文本提取,重复步骤,直至所有的文本行提取完成。

在确定了首行的行标志文本块后,可以基于行标志文本块进行同一行的文本行提取,本申请实施例中,具体的,所述的提取文档中文本行的方法,其中,基于首行的行标志文本块,对首行的文本行进行文字提取的步骤包括:

基于行标志文本块,获取相邻的同一行的文本块,设置为当前活动文本块;

获取与前次方向相同的当前活动文本块相邻的同一行的文本块,依次设置为当前活动文本块,直至相同方向的行文本块没有相邻的文本块;

基于行标志文本块,获取前次方向相反的同一行的文本块,设置为当前活动文本块,并依次设置相邻的文本块为当前活动文本块,直至相同方向的行文本块没有相邻的文本块。

本申请较佳实施例中,在进行首行的文本行提取时,行标志文本块为最左侧的文本块,但是具体实施时,行标志文本块不一定为最左侧的文本块,在确定行标志文本块后,基于行标志文本块,获取相邻的位于同一行的文本块,设置为当前活动文本块,同一行的定义为,与行标志文本块处于同一确定的水平方向上,且相邻,在具体实施时,相邻包括左侧相邻和右侧相邻,如果左侧相邻,确定左侧相邻的一个文本块为当前活动文本块,再次获取与当前活动文本块左侧相邻的同一行的文本块,再次设置为当前活动文本块,依次进行左侧同一行的文本块提取,直至左侧没有文本块,左侧文本块提取完成,此时,返回行标志文本块,再进行右侧的同一行的文本块提取,与左侧文本块的提取方式一样,获取右侧相邻的文本块,设置为当前活动文本块,再获取右侧相邻的文本块,依次提取,直至右侧文本块提取完成,完成了整行的文本行提取。本申请较佳实施例中,行标志文本块为最左侧的文本块,因此,在获取左侧相邻的文本块时,不存在左侧相邻的文本块,则获取右侧相邻的文本块,直至右侧文本块提取完成,而如果行标志文本块在最右侧,则对左侧的所有文本块进行提取,根据具体的行标志文本块的位置,按照相邻的文本块,先进行同一侧的文本块提取,再进行反向的同一侧的文本块提取,直至整行提取完成。本申请实施例中,其他行的文本行提取与首行的文本行提取,步骤一致,区别仅在于,其他行的文本行提取,需要确定行标志文本块,在确定了行标志文本块后,进行同行提取的步骤一致,故不在此赘述。

本申请前述方案提到了,对所有文本行的文本块进行提取,是通过对相邻的文本块进行提取的方式,因此,本申请实施例中,具体的,所述的提取文档中文本行的方法,其中,获取相邻的同一行的文本块的步骤包括:

以行标志文本块或当前活动文本块的垂直方向引出一条射线;

顺时针或逆时针旋转所述射线;

确定射线旋转过程中在当前行方向经过的第一个文本块,为行标志文本块或当前活动文本块在同一行内相邻的文本块。

本申请实施例中,为了获取相邻的同一行的文本块,以行标志文本块,或者是当前活动文本块,都需要进行获取相邻的同一行的文本块,因此,以行标志文本块或当前活动文本块的垂直方向引出一条射线,将射线进行旋转,确定左侧相邻的文本块则将射线进行逆时针旋转,若需要确定右侧的相邻的文本块,则将射线进行顺时针旋转,在射线当前行方向上经过的第一个文本块,则为相邻的文本块,当前的行方向与前一行的文本行方向大体一致,控制在误差范围内即可。

前述方案提到了在首行文本行提取后,需要进行相邻行的文本行提取,本申请实施例中,具体的,所述的提取文档中文本行的方法,其中,待首行的文本行的文字提取完成后,获取相邻行的行标志文本块的步骤包括:

以前一行作为平移行,按照前一行的文本行方向的垂直方向进行平移;

若在平移过程中,平移行存在文本块,则确定平移行的首个文本块为相邻行的行标志文本块。

本申请实施例中,在进行相邻行的文本行提取时,提取步骤与首行提取步骤一致,区别在于需要确定行标志文本块,在具体实施时,前一行提取完成后,由于行与行之前的方向大致相同,因此,以在前完成文本行提取的文本行作为平移行,按照前一行的文本行方向的垂直方向进行平移,例如,行方向为标准的水平方向,那么就按照竖直方向进行平移,在平移过程中,判断平移行上是否有文本块,在平移行上有文本块时,则表明,当前平移行为相邻行,再确定平移行的首个文本块为相邻行的行标志文本块,平移行的首个文本块优选为最左侧或最右侧的文本块,确定了行标志文本块后,提取文本行的步骤与首行的提取步骤一致,再进行下一个相邻行提取时,获取下一行的行标志文本块,依次重复,直至所有的文本行提取完成。

前述方案提到了,以前一行作为平移行,按照前一行的文本行方向的垂直方向进行平移,因此,为了获取前一行的文本方向,本申请实施例中,所述的提取文档中文本行的方法,其中,以前一行作为平移行,按照前一行的文本行方向的垂直方向进行平移的步骤包括:

获取前一行的第一个文本块和最后一个的文本块;

设置第一个文本块和最后一个文本块的连线为前一行的文本行方向。

本申请实施例中,通过获取前一行的首尾两个文本块,确定前一行的文本行方向,便于确定相邻行的行方向。

本申请具体实施时,由于文档中可能存在错字或者识别过程中,有干扰因素,例如污点,或者拍照扫描有阴影等,会造成识别干扰,因此,本申请实施例汇总,所述的提取文档中文本行的方法,其中,基于首行的行标志文本块,对首行的文本行进行文字提取的步骤还包括:

获取相邻的文本块,若两个文本块的高度差或在垂直方向上的位置差超出预定范围,则判定两个文本块不处于同一行,摒弃在后获取的文本块。

本申请实施例中,为了降低识别误差,在文档的文本行提取时,文本块之间的差别较小,在一个误差范围内,则判定为文本块,而文本块之间的差别在误差范围外,则需要摒弃掉识别的文本块,确保识别精度,因此,本申请具体实施例中,优选进行相邻的文本块的对比,如果相邻的文本块差异较大,则摒弃掉在后获取的文本块,如果第一个文本块与第二个文本块差异较大,第一个文本块与第三个差异也较大,则比较第二个文本块和第三个文本块,判断第一个文本块是否为干扰项,确定整个文档的文本块提取精度。

前述方案提到了,在同一行的文本行提取完成,需要进行相邻行的文本行提取,为了避免重复提取,本申请实施例中,所述的提取文档中文本行的方法,其中,基于相邻行的行标志文本块,对相邻行的文本行进行文字提取的步骤还包括:

判断相邻行的文本行是否已被提取,若被提取,再次获取相邻的文本行的行标志文本块,并再次判断,待相邻行的文本行未被提取时,进行文本行提取。

本申请实施例中,为了避免重复提取,在一行提取完成后,获取相邻行的行标志文本块,进行下一行的文本行提取时,需要判断,下一行的文本行是否已被提取,在已被提取时,跳过下一行,再进行往后的文本行提取,避免重复提取,提高了文本行提取精度。

本申请具体实施例中,整体的操作流程举例说明:

设置当前文本行方向为完全水平。第一行没有其它行作为参照物,因此假定文本行方向为完全水平。

所有未处理的文本块沿当前文本行方向进行投影,选取从上往下遇到的第一个文本块作为当前行标志文本块。

投影操作相当于将文档旋转到当前文本行方向处于水平,从当前行标志文本块开始以递归的方式向左、向右扩展连接成行。向左、向右扩展的方法是一样的,这里仅以向左扩展为例进行说明。首先将当前行标志文本块设置为当前活动文本块,从剩下的文本块中选择最有可能与当前活动文本块处于同一行且为左侧相邻的文本块,如果确实满足同为一行且左侧相邻,则将文本块连接到当前文本行最左侧,然后将此文本块设置为当前活动文本块,重复该操作直至条件无法满足则当前行向左扩展完毕。向左、向右扩展都完成之后,行内文本块按照连接的顺序排列即为行内文本块的顺序。

选择最有可能与当前活动文本块处于同一行且为左侧相邻的文本块:从当前活动文本块引出一条垂直向上的射线,射线按照顺时针或者逆时针方向旋转,遇到的第一个文本块即为要选择的文本块。

本申请实施例中,满足同为一行且左侧相邻或右侧相邻的条件为:两个文本块高度差异不大于2.0倍,且在文本行垂直方向上的位置差异不大于两个文本块平均高度的0.5倍。

更新当前文本行方向。由于文档存在变形以及拍摄产生的透视效果,所有文本行的方向是不一致的,但是相邻两行的方向是基本接近的,因此可以用前一行的方向近似下一行的方向,具体做法为计算当前文本行最左侧和最右侧文本块连线的方向。

重复行提取步骤以及更新当前文本行方向步骤,直至所有文本块被提取成行。

本申请第二实施例,基于上述方法,公开了一种提取文档中文本行的系统,其中,包括:

图像获取模块,用于获取文档图像;

首行行标志文本块确定模块,用于基于文档图像,确定文档首行的行标志文本块;

首行行文本提取模块,用于基于首行的行标志文本块,对首行的文本行进行文字提取;

相邻行行标志文本块获取模块,用于待首行的文本行的文字提取完成后,获取相邻行的行标志文本块;

相邻行文本行提取模块,用于基于相邻行的行标志文本块,对相邻行的文本行进行文字提取;

待上一行的文本行的文字提取完成后,相邻行行标志文本块获取模块再次进行下一相邻行的行标志文本块的获取,以及通过相邻行文本行提取模块进行文本行提取,直至所有的文本行提取完成。

本申请实施例中,所述系统,各个模块的具体实施,在方法步骤中对应描述了,功能以及具体操作流程,与方法中对应,故不在此赘述。

另一方面,本申请还公开了一种提取文档中文本行的设备,其中,包括存储器和处理器,所述存储器存储有能够被所述处理器加载并执行如上所述的提取文档中文本行的方法的计算机程序。

另一方面,本申请还公开了一种存储介质,其中,存储有能被处理器加载并执行如上所述的提取文档中文本行的方法的计算机程序。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

本具体实施方式的实施例均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。

相关技术
  • 一种提取文档中文本行的方法、系统、设备及存储介质
  • 文本行提取方法和文本行提取设备
技术分类

06120113677716