文本图像的内容提取方法、装置、设备及存储介质与流程

文档序号:15983804发布日期:2018-11-17 00:38阅读:144来源:国知局

本申请实施例涉及图像处理技术领域,特别涉及一种文本图像的内容提取方法、装置、设备及存储介质。

背景技术

文本图像是指包含有文本内容的图像。例如,文本图像可以是采用手机对书本、名片或者其它包含有文本内容的物体进行拍摄得到的图像。

相关技术采用下述方法提取文本图像中的文本内容:对文本图像进行二值化,也即采用01阈值法来判定文本图像中的每一个像素是否为文本内容,然后根据二值化结果从文本图像中提取文本内容。

由于文本图像中可能包含阴影、边角杂质、纸张颜色等内容,采用二值化的方式提取文本图像中的文本内容,结果不够准确。



技术实现要素:

本申请实施例提供了一种文本图像的内容提取方法、装置、设备及存储介质,可用于解决相关技术所存在的提取结果不够准确的问题。所述技术方案如下:

一方面,本申请实施例提供一种文本图像的内容提取方法,所述方法包括:

获取待处理的文本图像;

从所述文本图像中选取已知背景区域;

对于所述文本图像中除所述已知背景区域以外的n个剩余区域,采用插值算法分别计算所述n个剩余区域的背景像素值,所述n为正整数;

根据所述已知背景区域的背景像素值和所述n个剩余区域的背景像素值,确定所述文本图像的背景像素值;

根据所述文本图像的原始像素值和所述文本图像的背景像素值,对所述文本图像进行背景减除,得到所述文本图像的内容图像。

另一方面,本申请实施例提供一种文本图像的内容提取装置,所述装置包括:

图像获取模块,用于获取待处理的文本图像;

背景选取模块,用于从所述文本图像中选取已知背景区域;

背景插值模块,用于对于所述文本图像中除所述已知背景区域以外的n个剩余区域,采用插值算法分别计算所述n个剩余区域的背景像素值,所述n为正整数;

背景整合模块,用于根据所述已知背景区域的背景像素值和所述n个剩余区域的背景像素值,确定所述文本图像的背景像素值;

背景减除模块,用于根据所述文本图像的原始像素值和所述文本图像的背景像素值,对所述文本图像进行背景减除,得到所述文本图像的内容图像。

再一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行上述方面所述的文本图像的内容提取方法。

还一方面,本申请实施例提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述方面所述的文本图像的内容提取方法。

又一方面,本申请实施例提供一种计算机程序产品,当该计算机程序产品被执行时,其用于执行上述方面所述的文本图像的内容提取方法。

本申请实施例提供的技术方案中,通过获取待处理的文本图像的背景像素值,然后根据文本图像的原始像素值和该文本图像的背景像素值,对文本图像进行背景减除,得到文本图像的内容图像,克服了阴影、边角杂质、纸张颜色等内容对提取文本内容的影响,使得最终得到的内容图像中的文本内容更加准确、清晰。

另外,基于已知背景区域的背景像素值,插值计算得到文本图像中的剩余区域的背景像素值,使得最终得到的整个文本图像的背景像素值更加准确平滑。相较于相关技术中采用01阈值法提取得到的文本内容,采用本申请技术方案提取得到的文本内容,从视觉上看更加柔和悦目。

而且,在采用插值算法计算文本图像中除已知背景区域以外的其它区域的背景像素值时,并没有对整个文本图像进行插值计算,而是将文本图像中除已知背景区域以外的其它区域进行分块,分为若干个剩余区域,然后分别对每一个剩余区域单独进行插值计算,这样能够去除冗余的插值计算,提高计算效率。

附图说明

图1是本申请一个实施例提供的文本图像的内容提取方法的流程图;

图2示例性示出了文本图像中的已知背景区域和剩余区域的示意图;

图3示例性示出了一个剩余区域的示意图;

图4示例性示出了第一滑动窗口的示意图;

图5示例性示出了文本图像背景减除的示意图;

图6示例性示出了获取文本图像的流程图;

图7示例性示出了从拍摄图像中提取文本图像的示意图;

图8示例性示出了一种实际拍摄图像的示意图;

图9示例性示出了一种文字校正方法的流程图;

图10示例性示出了连通分量的中心点的示意图;

图11示例性示出了一行文字校正前的示意图;

图12示例性示出了一行文字校正后的示意图;

图13是本申请一个实施例提供的文本图像的内容提取装置的框图;

图14是本申请一个实施例提供的终端的结构框图。

具体实施方式

下面将结合附图对本申请实施方式作进一步地详细描述。

本公开实施例提供的方法,各步骤的执行主体可以是终端。终端可以是诸如手机、平板电脑、电子书阅读器、多媒体播放设备、pc(personalcomputer,个人计算机)等电子设备。

在一种可能的应用场景中,终端配备有摄像头。终端通过摄像头对书本、名片或者其它包含有文本内容的物体进行拍摄,得到包含有文本内容的图像。之后,终端通过执行本申请实施例提供的方法,以对上述图像进行处理,从中提取文本内容。采用本申请实施例提供的方法,能够从文本图像中准确地提取清晰的文本内容,对移动无纸化办公有着推动意义。

当然,上文介绍的应用场景仅是本申请实施例提供的技术方案的一种可适用的应用场景。本申请实施例提供的技术方案对于解决其它应用场景中的类似问题,同样适用。

请参考图1,其示出了本申请一个实施例提供的文本图像的内容提取方法的流程图。在本实施例中,以各步骤的执行主体为终端进行介绍说明。该方法可以包括如下几个步骤:

步骤101,获取待处理的文本图像。

文本图像是指包含有文本内容的图像。文本内容至少包括文字,在本申请实施例中,对文字的语言类型不作限定,其可以是中文、英文、日语、汉语、德语、法语等任意一种语言或多种语言的组合。可选地,文本内容中还包括以下至少一种内容:图形、表格。

在一种可能的实施方式中,文本图像由终端直接拍摄得到。例如,终端通过摄像头对书本、名片或者其它包含有文本内容的物体进行拍摄,得到文本图像。

在另一种可能的实施方式中,文本图像由终端从包含有文本内容的拍摄图像中提取得到。例如拍摄图像中除了包含有诸如书本、名片或者其它包含有文本内容的物体之外,还包括一些不属于文本内容的图像内容,如桌面、笔、茶杯或者其它物体,通过从拍摄图像中提取出文本图像,然后再从文本图像中提取出文本内容,有助于提升文本内容提取的精度。有关从拍摄图像中提取出文本图像的过程,可参见下文实施例中的介绍说明。另外,上述拍摄图像可以是终端拍摄的图像,也可以是终端获取的其它设备拍摄的图像。

步骤102,从文本图像中选取已知背景区域。

已知背景区域是指文本图像中,像素值变化较为平滑的区域。上述像素值可以是灰度、rgb颜色分量或者其它能够表征像素特征的参数,本申请实施例对此不作限定。已知背景区域通常是文本图像中未显示有文本内容的区域,如文本图像中的空白区域。

在一种可能的实施方式中,本步骤可以包括如下几个子步骤:

1、获取文本图像中的各个像素的梯度值;

2、将梯度值小于第一阈值的像素所形成的区域,确定为已知背景区域。

以获取文本图像中的像素x的梯度值g(x)为例,可以采用下述公式计算:

g(x)=(dxu(x))2+(dyu(x))2

其中,u(x)表示像素x的像素值,dx表示水平方向的梯度运算符,dy表示垂直方向的梯度运算符。

假设第一阈值为t,则当g(x)<t时,确定该像素x属于已知背景区域。第一阈值可以是根据实验结果预先设定的经验值。

在本申请实施例中,基于梯度值实现从文本图像中选取像素值变化较为平滑的区域作为已知背景区域。

步骤103,对于文本图像中除已知背景区域以外的n个剩余区域,采用插值算法分别计算n个剩余区域的背景像素值,n为正整数。

如图2所示,文本图像21中除已知背景区域22(如图2中斜线填充部分所示)以外,还可能存在若干个剩余区域23。在图2中,仅以圆圈、方框等不同形状示例性示出。上述n个剩余区域中,各个剩余区域的形状可能相同,也可能不同,且每一个剩余区域可以是规则或者不规则的形状,本申请实施例对此不作限定。

在一种可能的实施方式中,以计算上述n个剩余区域中的第i个剩余区域的背景像素值为例,i为小于或等于n的正整数,可以包括如下几个步骤:

1、对于第i个剩余区域,采用第一滑动窗口在第i个剩余区域中滑动;

2、当第一滑动窗口的中心像素与第i个剩余区域中的第j个像素重合时,根据第一滑动窗口中的第一已知像素的背景像素值、以及第一已知像素与第j个像素之间的距离,确定第j个像素的背景像素值;其中,第一已知像素是指已经确定背景像素值的像素,j为正整数。

第一滑动窗口的尺寸可以根据实际需求预先设定,例如第一滑动窗口的尺寸可以是3×3、5×5或7×7等,本申请实施例对此不作限定。另外,对于第一滑动窗口在第i个剩余区域中的滑动路径,本申请实施例也不作限定,例如可以按照从左往右、从上到下的顺序,依次在第i个剩余区域中各个像素间滑动。

结合参考图3和图4,图3示例性示出了某一剩余区域31的示意图,每一个小方格代表一个像素。如图4所示,采用3×3的第一滑动窗口41在剩余区域31中滑动。当第一滑动窗口41的中心像素与剩余区域31中的第1个像素(图4中以标号1表示的像素)重合时,根据该第一滑动窗口41的第一已知像素的背景像素值、以及第一已知像素与该第1个像素之间的距离,确定该第1个像素的背景像素值。以图4为例,第一已知像素包括图4中以标号a、b、c、d和e表示的5个像素。

可选地,对于第i个剩余区域中的任意一个像素x,采用下述公式计算该像素x的背景像素值u(x):

其中,n表示第一滑动窗口中的第一已知像素的个数,n为正整数;i表示第一滑动窗口(也即上述n个第一已知像素)中的第i个第一已知像素,i的取值范围是[1,n];ui表示第一滑动窗口中的第i个第一已知像素的背景像素值;d(x,xi)表示像素x和第一滑动窗口中的第i个第一已知像素之间的距离,wi(x)与d(x,xi)呈负相关关系。

上述计算剩余区域中像素的背景像素值的公式可称为shepard(谢别德)插值法,这种方法不需要解方程组,计算量较小,适用于在诸如手机之类的移动端上运行。

当然,在其它可能的实施方式中,还可采用其它插值算法来计算剩余区域中像素的背景像素值,如反距离加权插值法、克里金插值法、最小曲率插值法、自然邻点插值法、最近邻点插值法、多元回归法等等,本申请实施例对此不作限定。

在本申请实施例中,在采用插值算法计算文本图像中除已知背景区域以外的其它区域的背景像素值时,并没有对整个文本图像进行插值计算,而是将文本图像中除已知背景区域以外的其它区域进行分块,分为若干个剩余区域,然后分别对每一个剩余区域单独进行插值计算,这样能够去除冗余的插值计算,提高计算效率。由于文本图像中除已知背景区域以外的其它区域在整个文本图像中的占比有限,通常在10%-20%左右,因此采用本申请实施例提供的方法进行插值计算,相较于对整个文本图像进行插值计算,计算效率能够增加5倍以上。

步骤104,根据已知背景区域的背景像素值和n个剩余区域的背景像素值,确定文本图像的背景像素值。

终端在确定出各个剩余区域的背景像素值之后,整合已知背景区域的背景像素值,便可得到整个文本图像的背景像素值。

在本申请实施例中,背景像素值是指图像背景对应的像素值。对于已知背景区域中的像素,该像素的背景像素值即为该像素的原始像素值,某一像素的原始像素值是指该像素在文本图像中的实际像素值;对于剩余区域中的像素,该像素的背景像素值根据其周围的第一已知像素的背景像素值进行插值计算得到。

步骤105,根据文本图像的原始像素值和文本图像的背景像素值,对文本图像进行背景减除,得到文本图像的内容图像。

终端将文本图像中的背景和内容进行分离,对文本图像进行背景减除,得到文本图像的内容图像。在内容图像中,去除了阴影、边角杂质、纸张颜色等内容的影响,仅保留文本内容,从而使得文本内容的显示更加清晰。

在一个示例中,对于文本图像中的每一个像素,对该像素的原始像素值进行归一化,且对该像素的背景像素值也进行归一化,而后将归一化后的原始像素值除以归一化后的背景像素值,得到归一化后的内容像素值,再根据归一化后的内容像素值确定该像素的内容像素值。整合文本图像中各个像素的内容像素值,即可得到文本图像的内容图像。例如,对于文本图像中的每一个像素,将该像素的原始像素值中的rgb三个通道的颜色分量分别除以255,得到归一化后的原始像素值,将该像素的背景像素值中的rgb三个通道的颜色分量分别除以255,得到归一化后的背景像素值,将归一化后的原始像素值除以归一化后的背景像素值,得到归一化后的内容像素值,再将归一化后的内容像素值中的rgb三个通道的颜色分量分别乘以255,得到该像素的内容像素值。

结合参考图5,图5中(a)部分示出了原始的文本图像,该文本图像中包含光照阴影,图5中(b)部分示出了采用插值算法提取到的文本图像的完整背景区域,图5中(c)部分示出了对文本图像进行背景减除后得到的内容图像。

综上所述,本申请实施例提供的技术方案中,通过获取待处理的文本图像的背景像素值,然后根据文本图像的原始像素值和该文本图像的背景像素值,对文本图像进行背景减除,得到文本图像的内容图像,克服了阴影、边角杂质、纸张颜色等内容对提取文本内容的影响,使得最终得到的内容图像中的文本内容更加准确、清晰。

另外,基于已知背景区域的背景像素值,插值计算得到文本图像中的剩余区域的背景像素值,使得最终得到的整个文本图像的背景像素值更加准确平滑。相较于相关技术中采用01阈值法提取得到的文本内容,采用本申请技术方案提取得到的文本内容,从视觉上看更加柔和悦目。

而且,在采用插值算法计算文本图像中除已知背景区域以外的其它区域的背景像素值时,并没有对整个文本图像进行插值计算,而是将文本图像中除已知背景区域以外的其它区域进行分块,分为若干个剩余区域,然后分别对每一个剩余区域单独进行插值计算,这样能够去除冗余的插值计算,提高计算效率。

在基于图1实施例提供的一个可选实施例中,如图6所示,上述获取待处理的文本图像的步骤可以包括如下几个子步骤:

步骤101a,获取包含有文本内容的拍摄图像。

在上文已经介绍,由于拍摄图像是采用摄像头对诸如书本、名片或者其它包含有文本内容的物体进行拍摄得到的,因此拍摄图像中除了包含有文本内容之外,还可能包括一些不属于文本内容的图像内容,如桌面、笔、茶杯或者其它物体。在本实施例中,介绍如何从拍摄图像中提取出文本图像。

结合参考图7,图7中(a)部分示出了一张拍摄图像71,该拍摄图像71是采用摄像头对一张名片进行拍摄得到的图像。拍摄图像71中除了包括这张名片之外,边角部分还包括一些其它物体。

步骤101b,提取拍摄图像中的边缘线段。

终端采用边缘检测算法提取拍摄图像中的边缘像素,而后通过霍夫变换将边缘像素转换成边缘线段。示例性地,终端采用cnn(convolutionalneuralnetwork,卷积神经网络)提取拍摄图像中的边缘像素。

结合参考图7,图7中(b)部分示出了从拍摄图像71中提取边缘线段的示意图,每一个边缘线段在图中以白色线条示意。

步骤101c,获取由边缘线段组成的k个候选四边形,k为正整数。

终端提取拍摄图像中的边缘线段之后,对各条边缘线段的位置进行分析,组合出若干个候选四边形。

需要说明的是,由于书本、名片等物体通常为四边形,因此本步骤中采用构建四边形的方式来定位文本图像,在其它可能的实施例中,当包含有文本内容的物体不是四边形时,本步骤中也可采用构建其它规则或非规则的多边形的方式来定位文本图像,本申请实施例对此不作限定。

步骤101d,从k个候选四边形中选取目标候选四边形。

目标候选四边形是最有可能是文本图像的四边形。

可选地,本步骤包括如下几个子步骤:

1、对于k个候选四边形中的第w个候选四边形,获取第w个候选四边形的特征信息,w为小于或等于k的正整数;

特征信息包括但不限于以下至少一项:面积、角度、iou(intersection-over-union,交并比)。其中,面积是指候选四边形的面积,角度是指候选四边形的各个角的角度,交并比是指候选四边形与其对应的边缘线段之间的交叠率。

2、根据第w个候选四边形的特征信息,计算第w个候选四边形的打分值;

打分值用于表征该候选四边形为文本图像的概率。可选地,打分值越高,表示该候选四边形为文本图像的概率越高;反之,打分值越低,表示该候选四边形为文本图像的概率越低。

示例性地,采用下述公式计算第w个候选四边形的打分值p(w):

p(w)=area0.5+angle+2×iou;

其中,area表示第w个候选四边形的面积,angle表示第w个候选四边形的角度,iou表示第w个候选四边形的交并比。

3、从k个候选四边形中选取打分值最高的候选四边形为目标候选四边形。

结合参考图7,图7中(c)部分示出了选取的目标候选四边形72。

步骤101e,根据目标候选四边形中的图像得到待处理的文本图像。

在一个示例中,终端直接将目标候选四边形中的图像作为待处理的文本图像。

在另一个示例中,终端对目标候选四边形中的图像进行透视校正,得到矩形形状的待处理的文本图像。

诸如书本、名片等矩形形状的物体,由于拍摄角度的原因,其在拍摄图像中会呈现非矩形形状,这种现象可称为透视失真。在本申请实施例中,通过对目标候选四边形中的图像进行透视校正,使得其恢复为矩形形状,从而还原出物体的真实形态。

可选地,终端可以获取目标候选四边形的各条边的长度,根据各条边的长度确定长宽比,而后基于上述确定出的长宽比得到矩形形状的待处理的文本图像,该文本图像的长宽比即为上述确定出的长宽比。

结合参考图7,图7中(d)部分示出了对目标候选四边形72中的图像进行透视校正后,得到的矩形形状的待处理的文本图像73。

综上所述,本申请实施例提供的技术方案中,通过从拍摄图像中提取边缘线段,基于边缘线段构建候选四边形,然后从候选四边形中选取待处理的文本图像,实现了自动化地从拍摄图像中提取文本图像,相较于需要用户手动从拍摄图像中选择切割文本图像的方式,本申请实施例提供的方式更为自动、高效,且提取的文本图像更为精确。

另外,通过对目标候选四边形中的图像进行透视校正,得到矩形形状的待处理的文本图像,从而还原出物体的真实形态。

由于拍摄角度、被拍摄物体自身形态等原因,文本内容在图像中可能存在失真,其表现为文字呈曲线排列,而非直线排列。例如,如图8所示,其示例性示出了对《没有任何借口》一书的某一页文字进行拍摄得到的图像81,可以看出,一些行的文字是呈曲线排列的。

如图9所示,本公开一示例性实施例还提供了一种文字校正方法,该方法可以包括如下几个步骤:

步骤901,从内容图像中检测出p行文字,p为正整数。

内容图像是指包含有文本内容的图像。内容图像可以是经过图1实施例的处理,对文本图像进行背景减除后得到的内容图像,内容图像也可以是未经过图1实施例的处理的图像,本申请实施例对此不作限定。

可选地,本步骤包括如下几个子步骤:

1、从内容图像中获取v个连通分量,v为正整数;

内容图像可以看作是一个无向图,无向图的极大连通子图称为该无向图的一个连通分量(connectedcomponent)。通俗地说,内容图像的文本内容中,相邻且连续的像素构成一个连通分量。一个连通分量可能对应于一个文字,也可能对应于一个文字的一部分(如互相连接的笔画),还可能对应于一个文字的某一个笔画,也可能对应于一个标点符号,等等。以“跃”为例,其可以包括2个连通分量,其中一个连通分量对应于左半部分足字旁另一个连通分量对应于右半部分“夭”。以“口”为例,其可以包括一个连通分量,这一个连通分量对应于整个文字“口”。

2、获取v个连通分量中的每一个连通分量的中心点;

终端在获取到内容图像中的各个连通分量之后,分别获取每一个连通分量的中心点。对于每一个连通分量,终端获取该连通分量的最小边界框,将该最小边界框的中心点确定为该连通分量的中心点。连通分量的最小边界框是指将该连通分量包含在内的最小矩形区域。

如图10所示,对于连通分量11,其最小边界框12的中心点13即为该连通分量11的中心点。

3、沿内容图像中的文字排列方向依次遍历各个连通分量,将中心点在文字排列方向的垂直方向上的高度差小于第二阈值的连通分量,确定为同一行文字。

第二阈值可以结合内容图像中的文字大小、行间距等因素进行设定。例如,第二阈值可根据内容图像中各个连通分量在文字排列方向的垂直方向上的高度进行设定,示例性地,第二阈值为2×h,h为内容图像中各个连通分量在文字排列方向的垂直方向上的高度的平均值。

上文介绍的文字排列方向是指按照正常阅读顺序所对应的方向。以图8为例,其文字排列方向为横向。当文字排列方向为横向时,文字排列方向的垂直方向即为纵向。当文字排列方向为纵向时,文字排列方向的垂直方向即为横向。

步骤902,对于p行文字中的第q行文字,采用曲线对第q行文字的走向进行拟合,得到第q行文字对应的曲线方程,q为小于或等于p的正整数。

可选地,采用二次曲线对第q行文字的走向进行拟合,得到第q行文字对应的二次曲线方程。上述第q行文字可以是p行文字中的任意一行文字。终端分别对p行文字中的每一行文字进行曲线拟合,得到每一行文字各自对应的曲线方程。

可选地,本步骤包括如下几个子步骤:

1、根据第q行文字中包含的各个连通分量的中心点的坐标,构建第q行文字对应的曲线方程的线性方程组;

2、求解线性方程组,得到第q行文字对应的曲线方程。

假设第q行文字中包含的各个连通分量的中心点的坐标依次为:(x1,y1),(x2,y2),…,(xn,yn),则该第q行文字对应的曲线方程的线性方程组如下:

求解上述线性方程组,得到参数a、b、c的值,则第q行文字对应的曲线方程即可表示为y=ax2+bx+c。

步骤903,根据第q行文字对应的曲线方程,得到第q行文字对应的运动场。

终端获取第q行文字对应的曲线方程之后,进一步计算得到该第q行文字对应的运动场(motionfield)。假设第q行文字对应的曲线方程为y=ax2+bx+c,则该第q行文字对应的运动场为

步骤904,根据p行文字各自对应的运动场,插值得到内容图像的全图运动场。

上述步骤903中计算得到的每一行文字对应的运动场,是指该行文字对应的曲线上的像素的运动场。终端根据每行文字对应的曲线上的像素的运动场,插值得到其它像素的运动场,最终得到内容图像的全图运动场。

可选地,本步骤包括如下几个子步骤:

1、采用第二滑动窗口在内容图像中滑动;

2、当第二滑动窗口的中心像素与内容图像中的第x个像素重合时,根据第二滑动窗口中的第二已知像素的运动场、以及第二已知像素与第x个像素之间的距离,确定第x个像素的运动场;其中,第二已知像素是指已经确定运动场的像素,x为正整数。

本步骤中采用的差值算法可以是上文介绍的shepard插值法,也可以是其它插值算法,本申请实施例对此不作限定。另外,由于在步骤903中已经计算得到运动场的像素数量在整个内容图像中的占比较小,因此在步骤904中可以对整个内容图像进行插值计算。

步骤905,根据内容图像的全图运动场,将内容图像中的文字由曲线排列校正为直线排列。

假设内容图像中的某个像素的原始坐标为(u,v),其运动场为则该像素校正后的坐标为

结合参考图11和图12,图11示例性示出了一行文字15在校正前的示意图,该行文字15呈曲线排列,图12示例性示出了该行文字15在校正后的示意图,校正后的文字15呈直线排列。

可选地,上述步骤905之后还包括如下步骤:分别获取p行文字中的每一行文字在内容图像中的文字排列方向上的长度;将p行文字各自对应的长度校正为相同值。

例如,终端分别获取p行文字中的每一行文字各自的最小边界框,根据每一行文字各自的最小边界框的两侧边界坐标,计算每一行文字在文字排列方向上的长度;之后,终端通过调整文字之间的间距和/或调整文字的大小,将各行文字的长度校正为相同值。通过将各行文字的长度校正为相同值,使得文本内容的布局更加符合实际。

综上所述,本申请实施例提供的技术方案中,通过识别图像中的各行文字,采用曲线拟合各行文字的走向,然后分别对各行文字进行校正,实现将曲线排列的文字校正为直线排列,尽可能地还原出文字的真实排布样式,提高了最终呈现给用户的文本内容的质量。

并且,本申请实施例提供的文字校正方法,并未通过构建文本内容对应的三维模型来实现文字校正,算法所占用的内存和执行时间均得到改善,适用于在诸如手机之类的移动端上运行。

需要补充说明的一点是,本申请实施例提供的技术方案,不论是在文本内容提取部分,还是在文字校正部分,均对算法进行了优化,使得算法能够高效地在诸如手机之类的移动端上运行,给移动无纸化办公提供了技术支持。当然,本申请实施例提供的方法,同样可以在pc或者服务器中运行,本申请实施例对此不作限定。

下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。

请参考图13,其示出了本申请一个实施例提供的文本图像的内容提取装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以包括:图像获取模块1310、背景选取模块1320、背景插值模块1330、背景整合模块1340和背景减除模块1350。

图像获取模块1310,用于获取待处理的文本图像。

背景选取模块1320,用于从所述文本图像中选取已知背景区域。

背景插值模块1330,用于对于所述文本图像中除所述已知背景区域以外的n个剩余区域,采用插值算法分别计算所述n个剩余区域的背景像素值,所述n为正整数。

背景整合模块1340,用于根据所述已知背景区域的背景像素值和所述n个剩余区域的背景像素值,确定所述文本图像的背景像素值。

背景减除模块1350,用于根据所述文本图像的原始像素值和所述文本图像的背景像素值,对所述文本图像进行背景减除,得到所述文本图像的内容图像。

综上所述,本申请实施例提供的技术方案中,通过获取待处理的文本图像的背景像素值,然后根据文本图像的原始像素值和该文本图像的背景像素值,对文本图像进行背景减除,得到文本图像的内容图像,克服了阴影、边角杂质、纸张颜色等内容对提取文本内容的影响,使得最终得到的内容图像中的文本内容更加准确、清晰。

在基于图13实施例提供的一个可选实施例中,背景插值模块1330,用于:

对于所述n个剩余区域中的第i个剩余区域,采用第一滑动窗口在所述第i个剩余区域中滑动,所述i为小于或等于n的正整数;

当所述第一滑动窗口的中心像素与所述第i个剩余区域中的第j个像素重合时,根据所述第一滑动窗口中的第一已知像素的背景像素值、以及所述第一已知像素与所述第j个像素之间的距离,确定所述第j个像素的背景像素值;其中,所述第一已知像素是指已经确定背景像素值的像素,所述j为正整数。

在基于图13实施例提供的另一个可选实施例中,背景选取模块1320,用于:

获取所述文本图像中的各个像素的梯度值;

将所述梯度值小于第一阈值的像素所形成的区域,确定为所述已知背景区域。

在基于图13实施例提供的另一个可选实施例中,图像获取模块1310,包括:

拍摄图像获取单元,用于获取包含有文本内容的拍摄图像;

线段提取单元,用于提取所述拍摄图像中的边缘线段;

四边形获取单元,用于获取由所述边缘线段组成的k个候选四边形,所述k为正整数;

目标选取单元,用于从所述k个候选四边形中选取目标候选四边形;

文本图像获取单元,用于根据所述目标候选四边形中的图像得到所述待处理的文本图像。

可选地,所述目标选取单元,用于:

对于所述k个候选四边形中的第w个候选四边形,获取所述第w个候选四边形的特征信息,所述特征信息包括以下至少一项:面积、角度、交并比,所述w为小于或等于k的正整数;

根据所述第w个候选四边形的特征信息,计算所述第w个候选四边形的打分值;

从所述k个候选四边形中选取所述打分值最高的候选四边形为所述目标候选四边形。

可选地,所述文本图像获取单元,用于对所述目标候选四边形中的图像进行透视校正,得到矩形形状的所述待处理的文本图像。

可选地,所述线段提取单元,用于:

采用cnn提取所述拍摄图像中的边缘像素;

通过霍夫变换将所述边缘像素转换成所述边缘线段。

在基于图13实施例提供的另一个可选实施例中,所述装置还包括:文字校正模块。可选地,文字校正模块包括:

文字检测单元,用于从所述内容图像中检测出p行文字,所述p为正整数;

曲线拟合单元,用于对于所述p行文字中的第q行文字,采用曲线对所述第q行文字的走向进行拟合,得到所述第q行文字对应的曲线方程,所述q为小于或等于p的正整数;

运动场获取单元,用于根据所述第q行文字对应的曲线方程,得到所述第q行文字对应的运动场;

插值计算单元,用于根据所述p行文字各自对应的运动场,插值得到所述内容图像的全图运动场;

文字校正单元,用于根据所述内容图像的全图运动场,将所述内容图像中的文字由曲线排列校正为直线排列。

可选地,所述文字检测单元,用于:

从所述内容图像中获取v个连通分量,所述v为正整数;

获取所述v个连通分量中的每一个连通分量的中心点;

沿所述内容图像中的文字排列方向依次遍历各个所述连通分量,将中心点在所述文字排列方向的垂直方向上的高度差小于第二阈值的连通分量,确定为同一行文字。

可选地,所述曲线拟合单元,用于:

根据所述第q行文字中包含的各个连通分量的中心点的坐标,构建所述第q行文字对应的曲线方程的线性方程组;

求解所述线性方程组,得到所述第q行文字对应的曲线方程。

可选地,所述插值计算单元,用于:

采用第二滑动窗口在所述内容图像中滑动;

当所述第二滑动窗口的中心像素与所述内容图像中的第13个像素重合时,根据所述第二滑动窗口中的第二已知像素的运动场、以及所述第二已知像素与所述第13个像素之间的距离,确定所述第13个像素的运动场;其中,所述第二已知像素是指已经确定运动场的像素,所述13为正整数。

可选地,所述文字校正模块还包括:长度校正单元。

所述长度校正单元,用于:分别获取所述p行文字中的每一行文字在所述内容图像中的文字排列方向上的长度;将所述p行文字各自对应的长度校正为相同值。

需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

请参考图14,其示出了本申请一个实施例提供的终端1400的结构框图。该终端1400可以是手机、平板电脑、pc、多媒体播放设备、可穿戴设备等。

通常,终端1400包括有:处理器1401和存储器1402。

处理器1401可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1401可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(fieldprogrammablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1401也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1401可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1401还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器1402可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1402还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1402中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1401所执行以实现本申请中方法实施例提供的文本图像的内容提取方法。

在一些实施例中,终端1400还可选包括有:外围设备接口1403和至少一个外围设备。处理器1401、存储器1402和外围设备接口1403之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1403相连。具体地,外围设备包括:射频电路1404、触摸显示屏1405、摄像头1406、音频电路1407、定位组件1408和电源1409中的至少一种。

外围设备接口1403可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1401和存储器1402。在一些实施例中,处理器1401、存储器1402和外围设备接口1403被集成在同一芯片或电路板上;在一些其他实施例中,处理器1401、存储器1402和外围设备接口1403中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路1404用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路1404通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1404将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1404包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1404可以通过至少一种无线通信协议来与其它设备进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wi-fi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路1404还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏1405用于显示ui。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1405是触摸显示屏时,显示屏1405还具有采集在显示屏1405的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1401进行处理。此时,显示屏1405还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1405可以为一个,设置终端1400的前面板;在另一些实施例中,显示屏1405可以为至少两个,分别设置在终端1400的不同表面或呈折叠设计;在再一些实施例中,显示屏1405可以是柔性显示屏,设置在终端1400的弯曲表面上或折叠面上。甚至,显示屏1405还可以设置成非矩形的不规则图形,也即异形屏。显示屏1405可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件1406用于采集图像或视频。可选地,摄像头组件1406包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1406还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路1407可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1401进行处理,或者输入至射频电路1404以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1400的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1401或射频电路1404的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1407还可以包括耳机插孔。

定位组件1408用于定位终端1400的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件1408可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。

电源1409用于为终端1400中的各个组件进行供电。电源1409可以是交流电、直流电、一次性电池或可充电电池。当电源1409包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端1400还包括有一个或多个传感器1410。该一个或多个传感器1410包括但不限于:加速度传感器1411、陀螺仪传感器1412、压力传感器1413、指纹传感器1414、光学传感器1415以及接近传感器1416。

加速度传感器1411可以检测以终端1400建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1411可以用于检测重力加速度在三个坐标轴上的分量。处理器1401可以根据加速度传感器1411采集的重力加速度信号,控制触摸显示屏1405以横向视图或纵向视图进行用户界面的显示。加速度传感器1411还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器1412可以检测终端1400的机体方向及转动角度,陀螺仪传感器1412可以与加速度传感器1411协同采集用户对终端1400的3d动作。处理器1401根据陀螺仪传感器1412采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器1413可以设置在终端1400的侧边框和/或触摸显示屏1405的下层。当压力传感器1413设置在终端1400的侧边框时,可以检测用户对终端1400的握持信号,由处理器1401根据压力传感器1413采集的握持信号进行左右手识别或快捷操作。当压力传感器1413设置在触摸显示屏1405的下层时,由处理器1401根据用户对触摸显示屏1405的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器1414用于采集用户的指纹,由处理器1401根据指纹传感器1414采集到的指纹识别用户的身份,或者,由指纹传感器1414根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1401授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1414可以被设置终端1400的正面、背面或侧面。当终端1400上设置有物理按键或厂商logo时,指纹传感器1414可以与物理按键或厂商logo集成在一起。

光学传感器1415用于采集环境光强度。在一个实施例中,处理器1401可以根据光学传感器1415采集的环境光强度,控制触摸显示屏1405的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1405的显示亮度;当环境光强度较低时,调低触摸显示屏1405的显示亮度。在另一个实施例中,处理器1401还可以根据光学传感器1415采集的环境光强度,动态调整摄像头组件1406的拍摄参数。

接近传感器1416,也称距离传感器,通常设置在终端1400的前面板。接近传感器1416用于采集用户与终端1400的正面之间的距离。在一个实施例中,当接近传感器1416检测到用户与终端1400的正面之间的距离逐渐变小时,由处理器1401控制触摸显示屏1405从亮屏状态切换为息屏状态;当接近传感器1416检测到用户与终端1400的正面之间的距离逐渐变大时,由处理器1401控制触摸显示屏1405从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图14中示出的结构并不构成对终端1400的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

在示例中实施例中,还提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集。所述至少一条指令、至少一段程序、代码集或指令集经配置以由所述计算机设备的一个或者一个以上处理器执行,以实现上述文本图像的内容提取方法。可选地,计算机设备可以是终端或服务器。

在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被计算机设备的处理器执行时实现上述文本图像的内容提取方法。

可选地,上述计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

在示例性实施例中,还提供了一种计算机程序产品,当该计算机程序产品被执行时,其用于实现上述文本图像的内容提取方法。

应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1