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

基于蜂窝网格矩阵的盲水印隐藏、提取和篡改检测方法

文献发布时间:2023-06-19 11:14:36


基于蜂窝网格矩阵的盲水印隐藏、提取和篡改检测方法

技术领域

本发明属于浮水印篡改检测领域,具体涉及一种基于蜂窝网格矩阵的盲水印方法。

背景技术

数字图像在日常工作和生活中的使用非常普遍也不可或缺,然而,因为对数字图像的复制、编辑、传播等操作日益方便且容易,因此保护图像的版权及内容的真实性和完整性具有迫切的现实意义。为了解决这一问题,近几十年来出现了许多基于脆弱水印的图像认证方法。通常,基于脆弱水印的图像认证方法通过将水印嵌入到图像中,使其对图像内容的任何修改都非常敏感。

Walton于1995年提出了第一个基于水印的图像认证方法。他将像素的7个 MSB(最高有效位)的校验和插入到图像的1个LSB(最低有效位)中。但是它无法检测出同时翻转任意两位7MSB的情况。1997年,Yeung和Mintzer使用了一种改进的误差扩张策略和水印提取函数,将二值水印嵌入到图像中,以便快速验证这些图像像素的值是否发生了变化。随后,Wong提出了一种基于哈希算法的脆弱水印方法,其中水印是由图像像素值、图像特征和指定密钥生成的。这些方法在检测图像是否被修改方面起到了很好的作用,然而,在定位修改区域方面存在弱点。针对这个问题,不少学者提出了像素对或像素图像认证方法以实现精细的篡改定位。Prasad等人提出对于每个像素对,使用汉明码从每个像素的前两个MSB生成一个3位水印,然后通过块级像素调整过程隐藏到LSB中以减少失真。Gong等人提出了一种基于双水印的图像认证方案,即扩散水印和认证水印。这两种水印对图像的覆盖都具有很高的敏感性,同时,认证水印可以对篡改区域进行像素级的定位。正如预期的那样,后两者在篡改定位方面取得了较好的性能,达到了99%,但是水印图像的质量可以进一步提高。

发明内容

本发明提出一种基于蜂窝网格矩阵的盲水印方法,既可以实现版权保护,又可实现篡改区域检测。首先,使用所提出的规则生成矩阵M,称之为Cellular Network矩阵;其次,将水印信息转化为七进制的数值序列;然后,将图像切割成互不重叠的像素对(p

本发明的技术方案步骤如下:

第一方面,本发明提供了一种基于蜂窝网格矩阵的盲水印隐藏方法,其步骤如下:

S1:生成一个256×256的蜂窝网格矩阵;所述蜂窝网格矩阵中,当行和列之和为偶数时对应矩阵元素值为空值Null,当行和列之和为奇数时对应矩阵元素值不为空值Null;而且,蜂窝网格矩阵中同一行内的任意两个相邻有值元素 X

S2:将载体图像CI全部切割成互不重叠的像素对(p

S3:将二进制水印信息转化为长度为n的7进制数值序列

S4:利用所述蜂窝网格矩阵,依序将7进制数值序列中的每个7进制数值w

作为优选,步骤S1中,生成的蜂窝网格矩阵同时满足1)和2)两个条件:

1)任一有值元素的上下左右均为空值Null;

2)以任一非边界处的有值元素为中心,画一个覆盖7个有值元素的六边形蜂巢,这7个元素值必定互不相同且同时包含0至6。

作为优选,步骤S2中,所述载体图像CI逐行进行不重叠的像素对切割,每一行像素从左到右按序切割,所有切割得到的像素对按序排列后用于进行水印信息嵌入。

作为优选,步骤S3中,根据Key,由伪随机数发生器生成二进制水印信息,并将其转化为7进制的数值序列w

作为优选,步骤S4的具体实现过程如下:

S41:按顺序从7进制数值序列中取第一个水印数值w

S42:把S41中取出的像素对(p

S43:以M[p

S44:不断重复S41~S43,直至载体图像CI中的所有像素对都嵌入了水印数值,最终生成一个藏有水印的图像CIm。

作为优选,以M[p

1)如果p

2)如果p

3)如果满足p

4)如果满足p

第二方面,本发明提供了一种一种基于蜂窝网格矩阵的盲水印提取方法,在根第一方面中任一方案所述的盲水印隐藏方法得到嵌入水印的图像CI

S61:生成一个与S1中相同的256×256的蜂窝网格矩阵;

S62:将图像CI

S64:将S63提取出的所有七进制水印嵌入信息按序排列后,转为二进制即为最终提取的水印信息。

第三方面,本发明提供了一种基于蜂窝网格矩阵的盲水印篡改检测方法,在根据第一方面中任一方案所述的盲水印隐藏方法得到嵌入水印的图像CI

S71:生成一个与S1中相同的256×256的蜂窝网格矩阵;

S72:将图像CI

S73:把p′

相对于现有技术而言,本发明的有益效果如下:

本发明充分利用所生成蜂窝网格矩阵,实现了图像的盲水印篡改区域检测。首先,本发明设计了一套规则可以生成一个蜂窝网格矩阵(Cellular Network),在蜂窝网格矩阵的指导下,可以在每个像素对中嵌入一个七进制的数值,最终得到嵌有水印信息的图像。当接收方拿到嵌有水印信息的图像时,一是可以根据矩阵M提取出水印信息,二是可以检测出被篡改区域。其次,本发明利用该矩阵将水印信息藏入到图像中,实现了高藏量并且图像品质保持良好(藏量:1.4bpp,图像品质:47.55dB)。相比于传统的图像篡改检测方法,本发明一方面提高了藏量,另一方面实现了盲水印篡改检测,即不需要原始图像和水印信息的情况下也可以检测出篡改区域。

附图说明

图1为基于Cellular Network的盲水印篡改检测方法步骤示意图;

图2为Cellular Network矩阵的实例。

图3为嵌入水印的例子。

图4为图3中像素对所在Cellular的实例。

图5为水印图像以及检测篡改效果图。

具体实施方式

下面结合附图,对本发明的具体实施例作进一步详细描述。

在本发明的一个较佳实施例中,提供了基于蜂窝网格矩阵(Cellular Network)的盲水印方法,其包含隐藏、提取和篡改检测三部分。

基于蜂窝网格矩阵的盲水印隐藏方法,具体步骤描述如图1中步骤1~步骤4 所示。

步骤1:根据以下规则生成一个256×256的矩阵M,称为蜂窝网格矩阵 CellularNetwork:

1)当矩阵的行和列之和为偶数时,对应矩阵元素值为空值Null。以i表示矩阵行数,j表示矩阵列数,M[i,j]表示矩阵中坐标(i,j)即第i行第j列的矩阵元素值,当i+j为偶数时,M[i,j]=Null。

2)当矩阵的行和列之和为奇数时,对应元素值不为空值Null,属于有值元素。而且Cellular Network中的所有有值元素具有规律如下:同一行元素值模7 差1,同一列元素值模7差4。具体而言,蜂窝网格矩阵中同一行内的任意两个相邻有值元素X

图2为Cellular Network矩阵的一个实例,可以看到矩阵具有如下特征:

1)任一有值元素的上下左右均为空值Null,称之为空包弹;

2)以任一非Cellular Network边界处的有值元素为中心,画一个覆盖7个有值元素(含中心元素)的六边形蜂巢(Cellular),这7个元素值必定互不相同,且同时包含0至6。

本发明中,所谓的六边形蜂巢形式如图2中所示,它是一个蜂巢形式的六边形,具有6个角点,正下角和正上角处于一条竖向垂线上。以任一非边界处的有值元素为中心所画的六边形蜂巢中,6条边穿过6个有值元素,而六边形中心位置处还有一个有值元素。

步骤2:将载体图像CI全部切割成互不重叠的像素对(p

步骤3:根据Key,由伪随机数发生器生成二进制水印信息,将二进制水印信息转化为7进制的数值序列w

图3给出了本实施例中嵌入水印的例子。二进制水印信息 10001001000先转为十进制1096,进而转为七进制3124。本实施例中,得到用于嵌入水印信息的像素对为(3,4)、(5,5)、(0,1)和(0, 8)。

步骤4:利用前述的蜂窝网格矩阵,依序将7进制数值序列中的每个7进制数值wi嵌入到载体图像CI中不同的像素对中,直到所有像素对都用完,最终生成一个藏有水印的图像CI

本实施例中,本步骤的嵌入过程具体如下:

步骤4.1:按顺序从7进制数值序列中取第一个水印数值w

步骤4.2:把步骤4.1中取出的像素对(p

步骤4.3:以M[p

步骤4.4:不断重复步骤4.1~步骤4.3,直至载体图像CI中的所有像素对都嵌入了水印数值,最终生成一个藏有水印的图像CI

需注意的是,基于本发明的CellularNetwork的结构特点,步骤4.3中以 M[p

Casel)如果p

Case 2)如果p

Case 3)如果满足p

Case 4)如果满足p

本实施例中,参见图4所示可在所画的六边形蜂巢中找到符合条件 M[p′

由此,即可生成藏有水印的图像CI

在本实施例中,原始图像经过上述水印隐藏方法得到嵌入水印信息的图像 CI

步骤5.1:根据步骤1所描述规则构建一个与步骤1中相同的256×256的蜂窝网格矩阵,如图2所示。

本实施例中,所构建矩阵如图2所示。

步骤5.2:将图像CI

本实施例中,得到像素对(3,6)、(4,3)、(0,1)和(0,9),对应的,得到七进制数值序列3124。

步骤5.3:将步骤5.2提取出的所有七进制数值按序组合后转为二进制即为最终的水印信息。

本实施例中,七进制3124先转为十进制1096,进而转为二进制10001001000。

进一步的,本发明还能检测出被篡改区域,下面具体描述基于蜂窝网格矩阵的盲水印篡改检测方法实现方式:

步骤6.1:根据步骤1所描述规则构建一个与步骤1中相同的256×256的蜂窝网格矩阵,如图2所示。

步骤6.2:将图像CI

本实施例中,将图3的水印像素对篡改为(3,7)、(3,5)、(0,1)和 (0,9)。

步骤6.3:对于每一对像素对(p′

本实施例中,M[3,7]=Null,M[3,5]=Null,表示被篡改;而M[0,1]≠Null, M[0,9]≠Null,表示未被篡改。

本发明充分利用CellularNetwork矩阵特征,实现了图像的盲水印篡改检测,且在嵌入容量和图像品质方面优于其他现有方法(藏量:1.4bpp,图像品质: 48.99dB)。图5给出了藏有水印的图像以及检测被篡改区域的效果图。相比于传统的图像篡改检测方法,本发明一方面提高了藏量,另一方面实现了盲水印篡改检测,即不需要原始图像和水印信息的情况下可以检测出篡改区域。

以上所述的实施例只是本发明的一种较佳的方案,然其并非用以限制本发明。有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型。因此凡采取等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。

相关技术
  • 基于蜂窝网格矩阵的盲水印隐藏、提取和篡改检测方法
  • 基于三角网格综合特征的图像篡改检测方法
技术分类

06120112857876