一种文本水印图像的预处理方法和装置转让专利

申请号 : CN202210305987.2

文献号 : CN115063279B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李公宝丛升日

申请人 : 北京国隐科技有限公司

摘要 :

本发明涉及一种文本水印图像的预处理方法和装置。该方法包括:提取文本水印图像中所有的文本行;根据文本行之间的相对位置关系定位待矫正的文本图像区域,并通过直线拟合方式获得文本图像区域的左右边界线,进而定位出文本图像区域的最小外接四边形;利用文本图像区域的最小外接四边形,采用四点透视变换方法进行文本水印图像的自动矫正。本发明可以实现文本水印图像的自动矫正功能,解决了拍照后的文本水印图像中经常发生的文档偏转及梯形形变等问题,提高了文本水印信息提取识别效率,具有复杂度低、简单高效、实用性强等特点。

权利要求 :

1.一种文本水印图像的预处理方法,其特征在于,包括以下步骤:提取文本水印图像中所有的文本行;

根据文本行之间的相对位置关系定位待矫正的文本图像区域,并通过直线拟合方式获得文本图像区域的左右边界线,进而定位出文本图像区域的最小外接四边形;

利用文本图像区域的最小外接四边形,采用四点透视变换方法进行文本水印图像的自动矫正;

所述通过直线拟合方式获得文本图像区域的左右边界线,其中获得左边界线的步骤包括:将每个文本段落的段首行过滤掉;

设集合S中的元素为S1,S2,...,Sk,通过S中保存的文本行来判断文档图像的偏移方向,即向左、向右或者没有偏移,判断过程如下:Step1:若集合S中所有文本行的起始点横坐标之差的绝对值小于阈值T,则判定文本图像区域的左边界没有偏转,文本图像不用矫正,否则进入Step2;

Step2:设当前文本行的下标为Si,对于下一个文本行Si+1,若满足以下条件,则判断文本行是向右偏移:其中,TL是预先设定的行偏转阈值,将Si和Si+1保存在集合Q中;若已经判断为向右偏移,而满足以下条件:则把Si+1加入至集合Q中;若文本行Si+1发生如下情况:

说明本行的位置关系发生异常,Si+1不能保存至集合Q中,需要进一步考察下一文本行Si+2;

若满足|Si+2‑Si|=2,且文本行Si与Si+2同样满足 或 则Si+2保存至集合Q中,继续进行后续搜索;否则,判断过程结束;

文本行向左偏移的判断方式如下:

针对当前的文本行Si,若下一个文本行Si+1满足以下条件,则判断文本行是向左偏移:将Si和Si+1保存在集合Q中;若已经判断文本行为向左偏移,而同时满足(6)式,则把Si+1加入至集合Q中;若文本行Si+1发生如下情况:则需要进一步考察文本行Si+2;

若满足|Si+2‑Si|=2,且文本行Si与Si+2满足 或 则Si+2保存至集合Q中,继续进行后续搜索;否则,判断过程结束;

Step3:当文本行发生向左或者向右偏移情况时,则集合Q中的元素为Q1,Q2,...,Qt,对应的文本行分别为 获取这t个文本行的左边界线的点集合P,并利用最小二乘法进行直线拟合后,即可得到文本图像区域的左边界线斜率:

则相应的偏移量是:

其中,(xi,yi)为点集P中的一点Pi的坐标,N为集合P中包含点的数目。

2.根据权利要求1所述的方法,其特征在于,所述提取文本水印图像中所有的文本行,包括:先利用图像形态学变换的方式获取原始图像的梯度子图,并在梯度子图中提取所有文本框,然后将位于同一行中的所有文本框合并得到完整的文本行。

3.根据权利要求1所述的方法,其特征在于,所述将每个文本段落的段首行过滤掉,包括:首先计算每一个文本行左边界中心点的坐标,并记为该文本行起始点的坐标;对于所有的文本行序列L1,L2,...,Ln,需要保留的文本行的下标值存储至集合S;假设当前保留的文本行Lx,其将其下标x保存至S中,则在下标为x+1至下标为x+3的文本行中寻找满足下面条件的文本行Ly:其中Xx与Xy分别为文本行Lx与文本行Ly起始点的坐标,hk为当前行Lk的行高;将满足上述条件的文本行Ly的下标y保存至集合S中,同时以文本行Ly作为当前行继续往下搜索,直至过滤完所有文本行;将所有保留的文本行进行标记后用于左边界线的拟合;文本区域的右边界线拟合方式与上述过程类似,不同的是需要过滤掉每个文本段的段尾行。

4.根据权利要求1所述的方法,其特征在于,所述定位出文本图像区域的最小外接四边形,包括:通过左边界线的斜率计算出与文本图像区域的文本行最左边界相交的直线lleft,通过右边界线的斜率计算出与文本图像区域的文本行最右边界相交的直线lright,通过文本图像区域的最上边文本行的上边界线,以及最下边文本行的下边界线即可计算出包含文本图像区域的最小四边形,其四个顶点分别为左上角顶点Plt、右上角顶点Prt、右下角顶点Prb和左下角顶点Plb。

5.根据权利要求1所述的方法,其特征在于,所述四点透视变换方法是将文本图像由原始的平面投影到一个新的与图像拍摄设备所在平面平行的视平面的过程。

6.根据权利要求1所述的方法,其特征在于,所述采用四点透视变换方法进行文本水印图像的自动矫正,包括:设在原始图像中的一点(u,v),对应到变换后的图像中的坐标点(x,y),通用的透视变换公式是:通过文本图像区域的最小外接四边形的四个顶点Plt、Prt、Prb、Plb,以及矫正后的矩形文本图像区域的四个顶点Plt′、Prt′、Prb′、Plb′,计算出式(10)中的变换矩阵;将式(10)代入式(11)和(12)计算得到矫正后的文本图像区域;对原始图像中的任意一点(u,v),矫正后的图像中的坐标(x,y)的计算方法为:

7.一种采用权利要求1~6中任一权利要求所述方法的文本水印图像的预处理装置,其特征在于,包括:文本行提取模块,用于提取文本水印图像中所有的文本行;

文本图像区域定位模块,用于根据文本行之间的相对位置关系定位待矫正的文本图像区域,并通过直线拟合方式获得文本图像区域的左右边界线,进而定位出文本图像区域的最小外接四边形;

自动矫正模块,用于利用文本图像区域的最小外接四边形,采用四点透视变换方法进行文本水印图像的自动矫正。

8.一种电子装置,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行权利要求1~6中任一权利要求所述方法的指令。

9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,所述计算机程序被计算机执行时,实现权利要求1~6中任一权利要求所述的方法。

说明书 :

一种文本水印图像的预处理方法和装置

技术领域

[0001] 本发明属于图像处理技术领域,涉及一种文本水印图像的预处理方法和装置,尤其涉及了一种拍照后的文本水印图像的自动矫正方法和装置。

背景技术

[0002] 电子文本文档的数据和信息具有存储方便、传输快捷的特点,并且“看过即拥有”,因此极易造成泄密且难以追溯。另外,拍照功能已经成为智能手机的必备功能,随着智能手机发展和普及,用手机拍照变得特别简单,随之带来了电子文本文档的安全问题。泄密者可以通过拍摄显示在电脑屏幕上或者打印输出纸质文档中的敏感信息,并将信息泄露出去。企事业单位一方面在落实手机/相机等拍照设备管理上存在困难,另一方面,即使发现有内部数据通过屏幕拍摄泄露出去的图片,也无法确定泄密者、拍摄时间等信息,从而无法采取有针对性措施堵住泄密源头。因此,从电子屏幕显示或者打印输出的文本文档中嵌入肉眼不可识别的水印信息是解决上述问题的重要途径。
[0003] 由于包含水印信息的文本文档在被智能手机或者数码相机拍照的过程中,文档倾斜和拍摄角度的偏转等情况不可避免,通常会导致生成的文档图像会产生各种形变,从而极大影响了文本水印的识别效率。为此,为了提高文本水印图像的提取识别效率,需要对产生几何形变的文档图像进行矫正。现有技术中,大多是采取手动方式矫正文本水印图像,该类方法的操作效率较低,并且无法适应批量自动处理。

发明内容

[0004] 本发明的目的是针对如上所述的文本水印图像矫正方法的不足,提出了一种基于透视变换的文本水印图像自动矫正方法,用于解决现有文本水印图像变形矫正过程中自动性差、准确率低的问题,进而进一步提高了文本水印信息的自动提取效率。
[0005] 本发明的技术方案如下:
[0006] 一种文本水印图像的预处理方法,包括以下步骤:
[0007] 提取文本水印图像中所有的文本行;
[0008] 根据文本行之间的相对位置关系定位待矫正的文本图像区域,并通过直线拟合方式获得文本图像区域的左右边界线,进而定位出文本图像区域的最小外接四边形;
[0009] 利用文本图像区域的最小外接四边形,采用四点透视变换方法进行文本水印图像的自动矫正。
[0010] 进一步地,文本水印图像中梯度变化最大的区域即为文本图像区域,因此本方法先利用图像形态学变换的方式获取原始图像的梯度子图,并在梯度子图中提取所有文本框,然后将位于同一行中的所有文本框合并得到完整的文本行。
[0011] 进一步地,通过文本行左(右)边界线的像素点拟合实现文本图像水印定位。由于文本水印图像发生角度旋转或者梯形形变时,所有的文本行具有一定的渐变特性,因此通过文本行的相对位置关系可以大致定位文本图像区域。为了将形变后的文本图像区域进行自动矫正,需要事先计算包含文本图像区域的最小四边形。其中四边形的左(右)边界线是通过文本图像区域内的所有文本行的左(右)边界的像素点集合拟合而成。
[0012] 进一步地,本发明利用四点透视变换方法进行文本水印图像的自动矫正。所谓透视变换(Perspective Transformation)是指将文本水印图像由原始的平面投影到一个新的与图像拍摄设备所在平面平行的视平面的过程。
[0013] 一种采用上述方法的文本水印图像的预处理装置,其包括:
[0014] 文本行提取模块,用于提取文本水印图像中所有的文本行;
[0015] 文本图像区域定位模块,用于根据文本行之间的相对位置关系定位待矫正的文本图像区域,并通过直线拟合方式获得文本图像区域的左右边界线,进而定位出文本图像区域的最小外接四边形;
[0016] 自动矫正模块,用于利用文本图像区域的最小外接四边形,采用四点透视变换方法进行文本水印图像的自动矫正。
[0017] 与现有技术相比,本发明的有益效果在于:
[0018] 采用本发明,可以实现文本水印图像的自动矫正功能,解决了拍照后的文本水印图像中经常发生的文档偏转及梯形形变等问题,进一步提高了文本水印信息提取识别效率,具有复杂度低、简单高效、实用性强等特点。另外,本发明方法也可以有效解决图文混排的复杂版面分析、以及在复杂的自然场景下的文本区域提取和图像自动矫正等技术难题,可适用于传统的光学字符识别(Optical Character Recognition,OCR)领域。

附图说明

[0019] 图1为原始的文本水印图像;
[0020] 图2为图1得到的梯度子图;
[0021] 图3为文本框区域示意图;
[0022] 图4为待搜索的文本框位于已知文本框的左侧情形;
[0023] 图5为所有文本行示意图;
[0024] 图6为保留参与计算的文本行;
[0025] 图7为文本区域的四边形定位效果;
[0026] 图8为利用四点透视变换矫正后的效果。

具体实施方式

[0027] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例和附图,对本发明做进一步详细说明。
[0028] 本发明提供一种文本水印图像的预处理方法。整体流程的具体实施方式如下:
[0029] S101,首先,进行文本水印图像中的所有文本行自动提取。
[0030] 文本水印图像中梯度变化最大的区域即为文本图像区域,因此本方法先利用图像形态学变换的方式获取原始图像的梯度子图,并在梯度子图中提取所有文本框,然后将位于同一行中的所有文本框合并得到完整的文本行区域。
[0031] 1.从原始文本水印图像中提取梯度子图。
[0032] 对于给定的原始图像I,如图1所示,按照如下步骤得到梯度子图Ip:
[0033] (1)首先,将Sobel算子作用于原始图像I,得到初始的梯度图It,即:
[0034] It=Sobel(I)   (1)
[0035] (2)对It做大津法二值化运算后得到图像Ib;
[0036] (3)为了使文本区域的轮廓更加突出,对Ib做一次膨胀运算,即:
[0037] IP=dilate(Ib)  (2)
[0038] Ip即为原始图像I经过处理后得到的梯度子图,如图2所示。
[0039] 2.从梯度子图中提取文本框所在区域。
[0040] 搜索梯度子图Ip中所有白色区域的边缘像素得到封闭轮廓曲线点集合Li,并计算每个封闭曲线Li的最小外接四边形。将所有的四边形所包含区域进行过滤,满足如下条件的图形对象即为文本框区域:
[0041] (1)外接四边形Si的面积大于阈值T;
[0042] (2)外接四边形Si的高度hi小于等于宽度wi的2倍。
[0043] 经过上述条件过滤后得到最终的文本框序列S1,S2,…,Sn。
[0044] 3.将文本框进行合并后得到所有完整的文本行区域。
[0045] 根据文本框之间的位置关系将所有文本框划分为不同的集合,并将每个集合中的文本框按照从左到右的顺序进行合并后得到一个完整的文本行。为了确定两个文本框之间是否可以合并,每个文本框需要存储的数据如图3所示,其中,P1,P2,P3,P4为以顺时针顺序存储的四个顶点,Le为文本框左边界中点,Ri为文本框右边界中点,Ce为整个文本框的中心点。左侧顶点P1、P4两点间的距离与右侧顶点P2、P3两点间距离的最大值视为文本框的高度。
[0046] 对于当前文本框为Si,若新搜索到的文本框Sk位于Si的左侧,如图4所示,则若满足如下三个条件时,文本框Sk与Si可以合并:
[0047] (1)Sk的中心点位于Si的中心点的左侧;
[0048] (2)Sk与Si应位于同一行,即满足:
[0049]
[0050] 其中,P1i(y)、Rik(y)、P4i(y)、P2k(y)、Lei(y)、P3k(y)分别为P1i、Rik、P4i、P2k、Lei、P3k点的纵坐标;
[0051] (3)在所有满足(1)和(2)的所有文本框中,Sk的右边界中点Rik与Si的左边界中点Lei的距离最小。
[0052] 当待搜索的文本框Sk位于当前文本框Si的右侧时,判定的方式类似。
[0053] 将原始文档图像中的所有位于第l行的文本框序列S1(l),S2(l),…,Sn(l)进行合并后得到完整的文本行LW(l),如图5所示。其中,LE(l)的左边界即为S1(l)的左边界,LE(l)的右边界即为Sn(l)的右边界,上下两条边界点的连线即为LE(l)的上边界和下边界,LE(l)的行高等于文本框序列中所有文本框高度的最大值。
[0054] S102,通过文本行左(右)边界线的像素点拟合实现文本图像水印定位。
[0055] 由于文本水印图像发生角度旋转或者梯形形变时,所有的文本行具有一定的渐变特性,因此通过文本行的相对位置关系可以大致定位文本图像区域。为了将形变后的文本图像区域进行自动矫正,需要事先计算包含文本图像区域的最小四边形。其中四边形的左(右)边界线是通过文本图像区域内的所有文本行的左(右)边界的像素点集合拟合而成。
[0056] 1.文本图像区域左右边界线的直线拟合。
[0057] 在同一个文本段落中,所有的文本行发生形变时的左(右)边界位置偏移步长基本保持相同的渐变规律,因此四边形的左(右)边界线跟文本行的偏移方向保持平行。这里以左边界线为例介绍具体的拟合方式,右边界线的处理方式类似。为了更加精确地拟合边界线,需要将每个文本段落的段首行过滤掉,因为这些行的首字符一般会有一定的缩进,从而会打破位置偏移步长的渐变规律。具体的过滤方法如下:
[0058] 首先计算每一个文本行左边界中心点的坐标,即如图3所示Le点的坐标,并记为该文本行起始点的坐标。对于所有的文本行序列L1,L2,…,Ln,需要保留的文本行的下标值存储至集合S中。假设当前保留的文本行Lx,其将其下标x保存至S中,则在下标为x+1至下标为x+3的文本行中寻找满足下面条件的文本行Ly:
[0059]
[0060] 其中Xx与Xy分别为文本行Lx与文本行Ly起始点的坐标,hx为当前行Lx的行高。将满足上述条件的文本行Ly的下标y保存至集合S中,同时以文本行Ly作为当前行继续往下搜索,直至过滤完所有文本行。将所有保留的文本行进行标记后用于左边界线的拟合,如图6所示。
[0061] 设集合S中的元素为S1,S2,…,Sk,接下来,通过S中保存的文本行来判断文档图像的偏移方向,即向左、向右或者没有偏移。一般情况下,一个文本图像中所有文本行的偏移方向都是一致的。具体判断过程如下:
[0062] Step1:若集合S中所有文本行的起始点横坐标之差的绝对值小于阈值T,则可判定文本图像区域的左边界没有偏转,文本图像不用矫正,否则进入Step2;
[0063] Step2:设当前文本行的下标为Si,对于下一个文本行Si+1,若满足以下条件,则可以判断文本行是向右偏移:
[0064]
[0065] 其中,TL是预先设定的行偏转阈值,则将Si和Si+1保存在集合Q中。若已经判断为向右偏移,而满足以下条件:
[0066]
[0067] 则同样可以把Si+1加入至集合Q中,因为文本行Si与Si+1之间的偏移渐变不明显,不影响整个的位置偏移趋势。若文本行Si+1发生如下情况:
[0068]
[0069] 说明本行的位置关系发生异常,Si+1不能保存至集合Q中,需要进一步考察下一文本行Si+2。
[0070] 若满足|Si+2‑Si|=2,且文本行Si与Si+2同样满足 或则Si+2可以保存至集合Q中,继续进行后续搜索。否则,判断过程结束。
[0071] 需要说明的是,文本行位置向左偏移的判断过程与上述过程类似,具体包括:
[0072] 针对当前的文本行Si,若下一个文本行Si+1满足以下条件,则判断文本行是向左偏移:
[0073]
[0074] 将Si和Si+1保存在集合Q中;若已经判断文本行为向左偏移,而同时满足(6)式,则把Si+1加入至集合Q中;若文本行Si+1发生如下情况:
[0075]
[0076] 则需要进一步考察文本行Si+2;
[0077] 若满足|Si+2‑Si|=2,且文本行Si与Si+2满足 或则Si+2保存至集合Q中,继续进行后续搜索;否则,判断过程结束。
[0078] Step3:当文本行发生向左或者向右偏移情况时,则集合Q中的元素为Q1,Q2,…,Qt,对应的文本行分别为 获取这t个文本行的左边界线的点集合P,即如图3所示的顶点P1至P4之间的所有像素点,并利用最小二乘法进行直线拟合后,即可得到文本图像区域的左边界线斜率:
[0079]
[0080] 则相应的偏移量是:
[0081]
[0082] 其中,(xi,yi)为点集P中的一点Pi的坐标,N为集合P中包含点的数目。
[0083] 同样地,通过相同的方式可以拟合出文本图像区域的右边界线,不同的是需要过滤掉每个文本段的段尾行。
[0084] 2.确定文本图像区域的最小外接四边形。
[0085] 通过左(右)边界线的斜率计算出与文本图像区域的文本行最左(右)边界相交的直线lleft(lright),另外通过文本图像区域的最上边文本行的上边界线,以及最下边文本行的下边界线即可计算出包含文本图像区域的最小四边形,其四个顶点分别为左上角顶点Plt、右上角顶点Prt、右下角顶点Prb和左下角顶点Plb。最终的四边形区域效果如图7所示。
[0086] S103,利用四点透视变换方法进行文本水印图像的自动矫正。
[0087] 本发明利用四点透视变换方法进行文本水印图像的自动矫正。所谓透视变换(Perspective Transformation)是指将文本图像由原始的平面投影到一个新的与图像拍摄设备所在平面平行的视平面的过程。
[0088] 设在原始图像中的一点(u,v),对应到变换后的图像中的坐标点(x,y),通用的透视变换公式是:
[0089]
[0090]
[0091]
[0092] 其中,w表示图像位于原始图像所在平面的缩放尺度,w′表示图像位于变换后所在平面上的缩放尺度, 是变换矩阵。
[0093] 通过文本图像区域的最小外接四边形的四个顶点Plt、Prt、Prb、Plb,以及矫正后的矩形文本图像区域的四个顶点Plt′、Prt′、Prb′、Plb′,可以计算出式(10)中的变换矩阵。将式(10)代入式(11)和(12)即可以计算得到矫正后的文本图像区域。即对原始图像中的任意一点(u,v),矫正后的图像中的坐标(x,y)的计算方法为:
[0094]
[0095] 原始图像最终的自动矫正结果如图8所示。
[0096] 基于同一发明构思,本发明的另一实施例提供一种采用本发明方法的文本水印图像的预处理装置,其包括:
[0097] 文本行提取模块,用于提取文本水印图像中所有的文本行;
[0098] 文本图像区域定位模块,用于根据文本行之间的相对位置关系定位待矫正的文本图像区域,并通过直线拟合方式获得文本图像区域的左右边界线,进而定位出文本图像区域的最小外接四边形;
[0099] 自动矫正模块,用于利用文本图像区域的最小外接四边形,采用四点透视变换方法进行文本水印图像的自动矫正。
[0100] 基于同一发明构思,本发明的另一实施例提供一种电子装置(计算机、服务器、智能手机等),其包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行本发明方法中各步骤的指令。
[0101] 基于同一发明构思,本发明的另一实施例提供一种计算机可读存储介质(如ROM/RAM、磁盘、光盘),所述计算机可读存储介质存储计算机程序,所述计算机程序被计算机执行时,实现本发明方法的各个步骤。
[0102] 以上公开的本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的普通技术人员可以理解,在不脱离本发明的精神和范围内,各种替换、变化和修改都是可能的。本发明不应局限于本说明书的实施例所公开的内容,本发明的保护范围以权利要求书界定的范围为准。