基于图像拓扑结构的可逆水印方法与流程

文档序号:15935621发布日期:2018-11-14 02:20阅读:237来源:国知局

本发明属于可逆水印,信息安全,版权认证技术领域。

背景技术

随着数字内容的广泛传播,版权和认证问题变得越来越重要。为此,数据隐藏和可逆水印技术应运而生,尤其是在要求高保真度的多媒体内容方面,例如军事卫星图像、医学图像、法律证据图像。最早的可逆水印技术发表于1997年([1]),经典的空间域可逆水印技术包括无损压缩([2])、差值扩展([3],[4],[5],[6])、直方图平移([7],[8])、预测误差差值扩展([9],[10])等。目前流行的可逆水印研究工作主要集中在灰度图像或彩色图像上,这些图像具有较大的冗余(像素点轻微改变不易被察觉),因此信息隐藏较为容易。然而对于广泛应用于扫描或传真文件、黑白木版画、手写签名等二进制图像来说,图像冗余较少且部分像素点的轻微改变会造成图像失真,这对于可逆水印技术来说非常具有挑战性。

现有的基于二值图像的可逆水印通过一定规则嵌入隐藏信息而不引起视觉上的注意。但这些方法往往较为繁琐或者在信息隐藏后的图像失真较大。ho等先通过图像边界构造一个差分图并对差分图进行分块(大小为1x4),继而通过翻转块中某个像素实现水印信息的嵌入[11]。yi等使用了无损压缩方法对全黑全白以及部分图像块进行压缩得到空间嵌入数据[12]。

现有的基于二值图像的可逆水印方法往往难于在视觉隐藏效果、信息隐藏容量之间达到一个理想的平衡。为了提高视觉隐藏效果,往往会减少改变的像素点位置,那么这样会减少信息隐藏容量。为了提高信息隐藏容量,往往不得不对原始图像做比较大的改动,于是视觉隐藏效果会下降。如何很好的平衡两者是一个很大的挑战。



技术实现要素:

本发明需要解决如下的关键技术问题:

需要提出一种新的高效可逆水印的方法,决定在图像分块中哪些块适合相互转化,能够使得视觉上的失真尽可能小从而有理想的隐藏效果;

需要提出一种可逆信息隐藏、检测、恢复方案,具有很快的隐藏、提取隐藏信息的速度;信息提取完成后无损恢复图像;具有理想的信息隐藏容量和视觉隐藏效果。

需要提出一种灵活可扩展的信息隐藏、检测方案,可以支持二值图像、灰度图像等多种不同格式图像。

需要提出新的信息隐藏、检测方案,可以兼容于已知的可逆水印方案,仍然能够提高隐藏信息容量,同时有好的视觉保真度。

本发明的技术方案

基于图像拓扑结构的可逆水印方法是:包括基于图像拓扑结构的二值图像可逆水印方法及基于图像拓扑结构的二值图像可逆水印方法与现有空间域灰度图像可逆水印算法相结合的基于图像拓扑结构的灰度图像可逆水印方法;

基于图像拓扑结构的二值图像可逆水印方法包括水印嵌入过程及水印提取和原始图像恢复过程

第1步、水印嵌入方法,步骤为:

1)图像分块:首先对原始图像进行分块,每一个分块可以是正方形,也可以是矩形;

2)连通块集生成及直方图生成:选取那些能够嵌入信息的隐藏块并入连通块集;所述能够嵌入信息的隐藏块是指那种黑白像素在这一分块中比较均衡,从而在其中进行黑白像素的翻转不会引起太大的视觉注意;此外还要求能够嵌入信息的分块在隐藏前后具有拓扑结构不变性,这样能够使得视觉上的失真最小;这里的拓扑结构不变性是指的在块中黑白像素翻转以后,由黑色像素点衍生出来的连通域的连通性不变;将连通块集划分为两个子集,分别计算对应子集中可嵌入块的值,值其中一个子集用来构造以嵌入信息的隐藏块的值为横坐标,值出现的次数为纵坐标的直方图hd,另一个子集用来构造以嵌入峰值零值对信息的隐藏块的值为横坐标,值出现的次数为纵坐标的直方图ha;

3)峰值零值对信息嵌入:直方图ha利用奇偶校验方式嵌入直方图ha的峰值零值对信息以及零值点位置信息;

4)水印信息嵌入:直方图hd利用直方图平移方式嵌入水印信息和直方图ha横坐标集中图像块中黑色像素点个数的奇偶性;

第2步、水印提取和原始图像恢复方法,步骤为:

1)直方图生成:与第1步所述水印嵌入过程中步骤1)、2)相同的方式生成以嵌入信息的隐藏块的值为横坐标、值出现的次数为纵坐标的直方图hd和以嵌入峰值零值对信息的隐藏块的值为横坐标、值出现的次数为纵坐标的直方图ha;

2)峰值零值对信息提取:按顺序提取直方图ha横坐标集中图像块中黑色像素点个数的奇偶性,将二进制流转为十进制确定直方图hd中选定的峰值零值对;

3)水印信息提取:按照第2步2)中确定的直方图峰值零值对使用直方图逆平移方式提取水印信息、直方图ha横坐标集中图像块中黑色像素点个数的奇偶性和部分图像恢复;

4)图像恢复:利用第2步3)中提取的直方图ha横坐标集中图像块中黑色像素点个数的奇偶性恢复原始图像块中黑色像素点。

上述第1步中2)所述连通块集生成及直方图生成具体包括以下子步骤:

2.1)直方图hd对应连通子集初始块确定:根据密钥随机选定图像全白块中的位置作为起始点以及图像块中的黑色像素个数,选定黑色像素个数大小近似图像块像素总个数1/2,根据密钥随机选择起始点的合法移动方向,移动至合法位置并将此位置像素点置为黑色像素点,循环直至图像块中黑色像素点总个数为初始选定图像块黑色像素个数;

2.2)直方图hd对应连通子集生成:使用2.1)中生成的初始连通块作为当前块并入连通块集,连通块大小为b1*b2,随机打乱序列{0,1,2,3,…,b1*b2-1}生成新序列s,按照序列s中的顺序对当前块中相应位置的像素值取反,判定改变之后的块是否满足连通块和黑白像素在这一分块中比较均衡且未在连通块集中出现两个条件,若满足将改变之后的块作为当前块并入连通块集,否则重新取反像素值恢复为当前块;

2.3)直方图ha对应连通子集初始块确定:字典序中选定第一个不属于hd对应连通子集的图像块;所述图像块满足连通,黑白像素分布均衡,未在直方图hd对应的连通子集中出现。

2.4)直方图ha对应连通子集生成:使用2.3)中生成的初始连通块作为当前块并入连通块集,连通块大小为b1*b2,随机打乱序列{0,1,2,3,…,b1*b2-1}生成新序列s,按照序列s中的顺序对当前块中相应位置的像素值取反,判定改变之后的块是否满足连通块、黑白像素在这一分块中比较均衡和未在直方图hd和ha对应的连通子集中出现三个条件,若满足将改变之后的块作为当前块并入连通块集,否则重新取反像素值恢复为当前块。

上述的基于图像拓扑结构的可逆水印方法可与现有的空间域灰度图像可逆水印算法相兼容,提高现有可逆水印算法隐藏容量,包括水印嵌入过程及水印提取和图像恢复过程。

第1步、水印嵌入过程,步骤为:

1)使用现有基于空间域的灰度图像可逆水印算法嵌入第一层水印信息生成含水印灰度图像;

2)将含水印灰度图像映射为二值图像,使用基于图像拓扑结构的二值图像可逆水印方法嵌入第二层水印信息生成含水印二值图像;

3)将含水印二值图像逆映射为灰度图像。

第2步、水印提取和图像恢复方法,步骤为:

1)将灰度图像映射为二值图像,使用基于图像拓扑结构的二值图像可逆水印方法提取水印信息并恢复原始二值图像;

2)将原始二值图像逆映射为灰度图像,使用相同的基于空间域的灰度图像可逆水印算法提取水印信息并恢复原始图像。

本发明的优点和有益效果:

1)提出了一种高效的确定翻转黑白像素位置的方案,可以保持信息隐藏前后图像分块导出图的拓扑不变性,在提高含水印图像视觉质量的同时有效载荷未发生较大幅度降低,从而提出了一种高效的可逆隐藏算法;

2)提出的信息隐藏、提取、恢复系统具有理想的视觉隐藏效果和理想的信息隐藏容量,两者之间可以达到一个好的平衡;

3)本发明可以对各种形式的二值图像如书法作品、木版画、扫描图像、手写签名等进行信息隐藏提取和图像恢复;能够起到一定程度的版权保护、版权控制、认证作用;

4)本发明不仅可以应用于二值图像,还可以应用于灰度图像等常用格式图像;

5)本发明可以兼容现有的基于空间域的灰度图像可逆水印方法,提高隐藏容量。

附图说明

图1是本发明图像块像素位置图以及3×3分块示例图;

图2是本发明对二值图像进行水印嵌入处理方法m200的流程图;

图3是本发明的一个实施示例图,包括两个3×3的子集起始块;

图4是本发明生成直方图hd横坐标集的算法1;

图5是本发明生成直方图hd横坐标集的算法1的一个实施示例图

图6是直方图平移算法2的流程图;

图7是本发明对二值图像进行水印提取和图像恢复方法m700的流程图;

图8是本发明一个生成连通集划分的两个子集部分示例图;

图9是本发明的一个直方图嵌入状态前后示例图;

图10是本发明的嵌入效果图;

图11是本发明方案应用于灰度图像的算法3流程图;

图12是本发明四种不同二值化函数对应的二值图像示例图;

图13是本发明结合灰度图像直方图平移可逆水印算法的示例图。

图14是本发明结合灰度图像预测误差差值扩展可逆水印算法的示例图。

具体实施方式

下面将结合附图和实施例介绍本发明的具体实施方式。

实施例1

基于图像拓扑结构的二值图像可逆水印方法,该方法包括:

第一部分:基于图像拓扑结构的二值图像可逆水印嵌入

为便于算法描述,图1给出了本发明中经常采用的术语和记号,以及对于3×3分块的示例。在一个分块中,如果两个黑色像素点垂直相邻或者水平相邻,两个黑色像素点称为是邻接的。每一个黑色像素点对应一个顶点,两个邻接的黑色像素点设定一条边。因此一个分块就可以对应一个图。边界指的是与黑色像素点集合相邻的白色像素点集合。此外,一个分块的重量是其中的黑色像素点数目。对于一个n1×n2的分块,我们从左上角开始依次分配一个序号,0,1,…,n1×n2-1,于是一个分块的值是如图1中所示,该分块重量是5,边界是{0,2,3,5},该分块的值是151.很明显对于3×3的分块,分块取[0,511]的唯一值。二值图像的水印嵌入过程m200的流程图如附图2所示。

1)从二值图像文件中获取位图格式的基本文件(bmp),此时每一个像素点有一个比特位表示其黑白信息。假设二值图像i其大小为m*n像素,对该图像进行空间域的划分,分成等规模不重叠的小块其大小为n1×n2(n1=n2=3)。注意这里小块不必是正方形,可以是长方形,本发明以3*3为实施例说明具体实施方式。边界上的多余部分不处理。

2)从步骤1)划分后的若干小块中,选取一部分作为符合要求,可以隐藏信息的小块。这里可以隐藏信息的小块指的是进行黑白像素的跳转以后,在视觉上不会引起太大的视觉注意。我们这里认为那些黑白像素数目差不多的小块具有理想的隐藏性质,因为从视觉上翻转一个黑白像素后不容易引起视觉上的注意。此外黑白像素的跳转不应破坏此小块中黑色像素点的连通性;黑白像素的跳转不会破坏此小块中黑色像素点的基本拓扑结构。定义可以隐藏信息的小块具有如下的性质:

i.对于一个n1×n2的小块,其重量大约是n1×n2/2;

ii.块中由黑色像素点导出的图应该是连通的;

实际这一步骤操作中,我们只需判断所划分的小块的值是否在我们构造的可以隐藏信息的直方图横坐标集合中即可。

挑选可以隐藏信息的小块,并将图像块集分为两个不相交的子集,且每个子集中相邻的两个块仅仅只有一个像素点的差异。子集划分方式如下:

2.1)根据生成密钥生成一个3x3的连通块,以此作为其中一个子集的起始块。图3是本发明的两个3×3的子集起始块实施例。

2.2)图4是本发明生成可以隐藏信息分块连通子集的算法1流程图,以及对于3×3的分块,根据算法1生成的直方图横坐标实例。考虑到提取信息的需要,要求隐藏信息后的分块必须仍在可隐藏信息分块的集合中,据此可以从一个可隐藏信息分块导出一个隐藏信息的变化链。为了生成可以隐藏信息分块的集合,采用方法m400可以导出一个生成链,步骤s410首先选取可以隐藏信息的分块作为起始块;然后在步骤s420计算其重量;接下来在步骤s430根据密钥随机打乱像素值改变顺序{0,1,2,3,4,5,6,7,8}得到新的序列,步骤s440中按照新生成的序列翻转对应位置像素点,即若当前位置为白色像素点翻转为黑色像素点,重量加1;若当前像素点为黑色像素点翻转为白色像素点,重量减1;再接着判定新的块是否满足条件使得定义的拓扑结构不发生变化,若改变后的块是连通的且在之前的集合中从来没有出现过,则将其并入集合,否则像素值取反恢复原块。跳转至下一位置,直至寻找结束。图5给出了采用方法m400生成的一个示例图。

判定生成子集长度是否大于阈值,大于阈值结束,小于阈值则另密钥值自增1重新跳转至步骤2.1)。

2.3)从字典序中选取第一个不属于已生成子集的连通块作为另一子集的起始块;

2.4)将像素改变顺序{0,1,2,3,4,5,6,7,8}根据密钥随机打乱得到新的序列,按随机序列翻转当前位置像素颜色,即若当前位置为白色像素点翻转为黑色像素点,重量加1;若当前像素点为黑色像素点翻转为白色像素点,重量减1。若改变后的块是连通的且在之前的集合中从来没有出现过,则将其并入集合,否则恢复原块。跳转至下一位置,直至寻找结束。

判定生成子集长度是否大于阈值,大于阈值结束,小于阈值则在字典序中重新寻找下一符合要求的连通块重新跳转至步骤2.4)。注意两个子集的交集为空。

3)根据步骤2)确定的图像块子集(具有较少块类型)进行信息隐藏,记录子集块的奇偶性,将原始直方图的峰值零值对进行嵌入。嵌入方式如下:

i.判定块的奇偶性与所要嵌入信息是否相同,相同保持块不变不同跳转至ii

ii.翻转块内一个像素点使得嵌入块的模式改变为右边相邻块的模式

4)使用直方图平移的方式嵌入水印信息及直方图ha横坐标集所属块区域重量奇偶性,嵌入步骤如下:

4.1)采用算法m400生成的图像块子集的值作为直方图横坐标,以每种模式的值出现的次数作为纵坐标生成对应直方图;

4.2)在直方图中选择若干峰值零值对,即在两个零点之间寻找大于某个阈值的峰值点,若存在两个峰值点则将峰值点与零值点配成对,相互之间没有交集,若有且仅有一个峰值点则将峰值点与左边零值点配对,右边零值点作为下一次峰值零值对搜索的起点,若不存在,则直接以右边零值点作为下一次峰值零值对搜索起点;

4.3)将位于峰值零值点内的块全部向靠近零值点方向平移一个单位,即每个块中翻转一个像素点使得其样式变为相邻块模式;

4.4)在峰值点中嵌入消息,若消息为0则保持不变,为1则将嵌入块向靠近零点方向平移一个单位。

第二部分:基于图像拓扑结构的二值图像可逆水印提取和原始图像恢复

1)图7是本发明对二值图像进行水印提取和恢复方法的流程图。开始读取含水印二值图像,然后对图像分块,构造两个连通子集并根据生成的两个连通子集的值生成对应直方图,具体步骤如下:

i.使用密钥根据方法m400构造一个可隐藏信息块的子集,若子集大小小于阈值t(本发明中t=70)令密钥加1重新使用方法m400构造可隐藏信息块的子集直至子集大小大于设定阈值t,本发明中使用hdx表示此子集;

ii.在字典序中找到第一个不属于hdx且连通的起始块。使用方法m400生成一个可隐藏额外信息块的子集,使用hax表示。生成过程中需要满足条件:生成的新块连通,不属于hdx,未在hax中出现过。因此生成的两个子集满足交集为空集的条件。

iii.扫描图像分块,以连通子集hdx和hax所含可嵌入块的值分别作为直方图的横坐标,图像块的值出现次数作为直方图纵坐标,生成图像统计直方图。

图8是一种hdx与hax的部分示例图。

2)找到所有属于hax的图像块,按照指定顺序进行排列,提取额外信息,所述额外信息为图像块中黑色像素点数目的奇偶性(比如奇数意味着隐藏1,偶数为0)。将二进制流转为十进制获取直方图hd的峰值零值对以及零值点位置信息;

3)根据步骤2)中提取的峰值零值对进行数据提取和恢复,并遵循以下两条规则:

i.提取数据时,若遇到位于峰值点的块提取水印信息“1”;若遇到峰值点加1(零值点大于峰值点)/减1(零值点小于峰值点)处提取水印信息“0”;

ii.在数据全部提取完成后将位于峰值和零值点区间内的块全部向远离零值点方向平移1个单位;最后在步骤s770结束。

为了使得直方图平移算法易于理解,图9给出了一个直方图以50%的概率嵌入水印信息前后变化的示意图,直方图中选取的峰值零值对为(p1,p3),(p5,p4),(p6,p8)。

图10是本发明嵌入效果图。以4幅图像作为实例,基于算法2产生的可隐藏3×3分块集合,为了简单起见我们使用相同的水印信息在含有1000幅图像的数据集上进行测试,并任意选取了4张图片,表明该发明具有理想的视觉隐藏效果、信息隐藏容量,第一列为原始图像,第二列为含水印图像,第三列为原始图像与含水印图像差异图。psnr是经常用来衡量重构图像质量的视觉感知的度量,实验表明psnr具有理想的数值。

实施例2

基于图像拓扑结构的二值图像可逆水印方法与现有空间域灰度图像可逆水印算法相结合的基于图像拓扑结构的灰度图像可逆水印方法包括

第一部分:基于图像拓扑结构的灰度图像可逆水印嵌入

为便于算法描述,我们考虑一幅灰度图像g其大小为m*n像素,其中m和n都是3的整数倍,不是3的整数倍的灰度图像进行边界处理。基于图像拓扑结构的灰度图像可逆水印嵌入方法流程图如附图11所示。

1)使用直方图平移算法、基于预测误差的差值扩展算法等在灰度图像g中嵌入第一层水印信息,得到含水印灰度图像w;

2)利用可逆函数f(x)对图像进行二值化,其中可逆函数f(x)指的是函数y=f(x)存在逆函数x=f-1(y),在灰度图像映射为二值图像的过程中表示为灰度图像中的像素pi,j有唯一的二值图像像素bi,j与之对应,且在逆映射过程中二值图像像素bi,j对应唯一的灰度图像中的像素pi,j。另外,设计可逆函数f(x)时还需满足条件:映射生成的二值图像应具有冗余而不是随机图。接下来利用映射生成的二值图像嵌入第二层水印信息得到含水印二值图像wb,方式与m200类似。

图12是本发明方案设计的四种不同二值化函数对应的二值图像示例图。本方案采用512x512标准图lena作为示例,采用的四种二值化函数分别是:(a)f1(x)=pi,j,7(i,j表示像素点位置);(b)f2(x)=pi,j,6;(c)

f3(x)=pi,j,6+pi,j,5*pi,j,4+pi,j,3*pi,j,2+pi,j,l*pi,j,0;

(d)f4(x)=pi,j,7+pi,j,6*pi,j,5。图10中可以看出(a)、(b)、(d)三种二值化函数映射生成的二值图像具有较大冗余可作为二值图进行水印嵌入,(c)生成二值图类似随机图,冗余度近似为0不适用于进行水印嵌入。

3)利用y=f(x)的逆函数x=f-1(y)将含水印二值图像wb逆映射为含双层水印的灰度图。

图13是本发明方案与经典的直方图平移算法相结合的一个实例,实验中首先利用现有直方图平移算法嵌入第一层水印信息,大小约为4800bits,再使用本发明方案进行第二层水印信息嵌入以增加信息隐藏容量,大小为128bits。采用标准图lena作为测试图,大小为512x512。按照从左到右的顺序分别为:原始图像lena;进行一次基于灰度图像的直方图平移方案的嵌入结果图;在基于灰度图像直方图平移的结果图上使用图二值化函数进行图像二值化的二值图像;在基于灰度图像直方图平移的结果图上使用m800方案结果图。按照从上到下的顺序使用的二值化函数分别为:

(1)f1(x)=pi,j,7(i,j表示像素点位置);

(2)f2(x)=pi,j,6;

(3)f4(x)=pi,j,7+pi,j,6*pi,j,5。

图14是本发明方案与经典的预测误差差值扩展算法相结合的一个实例,实验中首先利用现有预测误差差值扩展算法嵌入第一层水印信息,大小约为4800bits,再使用本发明方案进行第二层水印信息嵌入以增加信息隐藏容量,大小为128bits。采用标准图lena作为测试图,大小为512x512。按照从左到右的顺序分别为:原始图像lena;进行一次基于灰度图像的直方图平移方案的嵌入结果图;在基于灰度图像直方图平移的结果图上使用图二值化函数进行图像二值化的二值图像;在基于灰度图像直方图平移的结果图上使用m800方案结果图。按照从上到下的顺序使用的二值化函数分别为:(1)f1(x)=pi,j,7(i,j表示像素点位置);(2)f2(x)=pi,j,6;(3)f4(x)=pi,j,7+pi,j,6*pi,j,5。

第二部分:基于图像拓扑结构的灰度图像可逆水印提取和原始图像恢复

1)利用函数y=f(x)将含双层水印的灰度图像映射为含水印二值图像,使用基于图像拓扑结构的二值图像可逆水印提取和图像恢复方法m700提取水印信息并恢复原始二值图像;

2)利用y=f(x)的逆函数x=f-1(y)将原始二值图像逆映射为含水印灰度图像,使用相同的基于空间域的灰度图像可逆水印算法(直方图平移算法)提取水印信息并恢复原始图像。

参考文献

[1]j.m.barton,``methodandapparatusforembeddingauthenticationinformationwithindigitaldata",u.s.patent.5646997,1997.

[2]m.u.celikmehmet,g.sharma,anda.m.tekalp,``reversibledatahiding",proc.ieeeicip,2002.

[3]j.tian,``reversibledataembeddingusingadifferenceexpansion",ieeetrans.circuitssyst.videotechnol.vol.13,no.8,pp.890-896,aug.2003.

[4]i.dragoi,andd.coltuc,``local-prediction-baseddifferenceexpansionreversiblewatermarking",ieeetrans.onimageprocessing,vol.23,pp.1779-1790,apr.~2014.

[5]a.m.alattar,``reversiblewatermarkusingdifferenceexpansionoftriplets",inproc.ieeeicip.vol.1,barcelonaspain,2003,pp.501-504.

[6]a.m.alattar,``reversiblewatermarkusingdifferenceexpansionofquads",inproc.ieeeicassp.vol.3,pp.377-380,toulouse,france,2004.

[7]i.dragoi,``adaptivepairingreversiblewatermarking",inieeetrans.onimageprocessing.vol.25,pp.2420-2422,2016.

[8]z.ni,y.shi,n.ansari,andw.su,``reversibledatahiding”,ieeetrans.circuitssyst.videotechnol,vol.16,pp.354-362,2006.

[9]thodidm,rodriguezjj.“prediction-errorbasedreversiblewatermarking”.internationalconferenceonimageprocessing,2004:1549-1552vol.3.

[10]luol,chenz,chenm,etal.“reversibleimagewatermarkingusinginterpolationtechnique”.ieeetransactionsoninformationforensicsandsecurity,2010,5(1):187-193.

[11]ho,y.a.,chan,y.k.,wu,h.c.andchu,y.p,``high-capacityreversibledatahidinginbinaryimagesusingpatternsubstitution",computerstandardsandinterfaces.vol.31,pp.787-794,2009.

[12]shuangyi,yicongzhou,``binary-blockembeddingforreversibledatahidinginencryptedimages”,signalprocessing,volume133,april2017,pages40-51.

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