基于DWT和SIFT的鲁棒图像水印算法
2016-09-27张正伟吴礼发郑成辉李华波
张正伟, 吴礼发, 郑成辉, 李华波
(1.淮阴工学院 计算机与软件工程学院,江苏 淮安 223003; 2.中国人民解放军理工大学 指挥信息系统学院,江苏 南京 210007)
基于DWT和SIFT的鲁棒图像水印算法
张正伟1,2,吴礼发2,郑成辉2,李华波2
(1.淮阴工学院 计算机与软件工程学院,江苏 淮安223003; 2.中国人民解放军理工大学 指挥信息系统学院,江苏 南京210007)
为了提高数字图像水印的不可见性和鲁棒性,文章提出了一种基于离散小波变换(discrete wavelet transform,DWT)和尺度不变特征转换(scale-invariant feature transform,SIFT)的数字图像水印算法。该算法首先利用DWT找出原始图像中纹理较复杂区域,再在所找出的纹理复杂区域中提取出不变特征点;通过自适应确定局部特征区域,并对特征区域进行一级DWT,取其低频部分进行奇异值分解(singular value decomposition,SVD);最后对待嵌入水印图像进行Arnold置乱,把置乱后的一维水印信息进行SVD并通过加性准则嵌入到原始图像的奇异值中,以实现水印的嵌入。仿真结果表明,该算法不仅具有较好的透明性,而且对常规攻击和一般的几何攻击有较高的鲁棒性。
离散小波变换(DWT);尺度不变特征转换(SIFT);特征点;奇异值分解(SVD);图像水印
0 引 言
数字图像水印是目前保护图像版权的基本技术手段。一般用于版权保护的数字图像水印应具有较好的不可见性、较高的嵌入量和较强的鲁棒性。常用于图像水印的算法基本分为空域和频域2类。早期的图像水印研究基本上集中在空域,空域算法相对简单,但是不可见性和鲁棒性不好。当前数字图像水印研究主要集中在频域,主要算法有离散傅里叶变换[1](discrete Fourier transform,DFT)、离散余弦变换[2](discrete cosine transform,DCT)、离散小波变换[3](discrete wavelet transform,DWT)等。
其中,DWT是一种较特殊的变换方式,具有良好的时频局部化和多分辨分析的特性,能更好地将图像能量聚集起来,更加符合人类视觉系统。文献[4]首先对原始图像进行三级DWT,再对变换后得到的低频子带进行奇异值分解(singular value decomposition,SVD),最后将置乱后的水印图像的奇异值嵌入原始图像SVD后的奇异值中。文献[5]先对原始图像进行多级DWT,然后随机选取低频部分子带或全部子带;再对所选取的子带进行一级DWT,将3个高频子带系数小于给定阈值的系数都置为0,之后进行一级DWT逆变换生成校对图像;最后对该校对图像和水印图像分别进行SVD,利用水印图像的奇异值修改校对图像的奇异值来嵌入水印。该算法具有较好的透明性和抵抗常规信号处理的能力,但对几何攻击,特别是压缩和旋转,抵抗能力不强。文献[6]提出基于DWT和SVD的数字图像水印算法,该算法对常规攻击(如滤波、噪声、压缩等)的鲁棒性较强,但对诸如缩小、放大、旋转、裁剪等鲁棒性不强。
基于DWT的数字水印方案对抵抗常见攻击具有较强的鲁棒性,但假如非法攻击者能分析出原始图像与水印嵌入位置之间的映射关系,水印也就丧失了版权保护的作用,因此,嵌入位置的选择直接影响到数字图像水印的性能。利用图像特征进行水印信息嵌入是近年来研究的热点,其中提取出的图像特征点对旋转平移具有较好的抵抗力,对噪声具有不敏感性,能较好地表现图像特征,因此一些研究者提出了基于特征点的抗几何攻击数字图像水印算法。文献[7]提出了一种基于空域抗几何攻击的图像水印算法,通过搜寻Harris特征点来嵌入水印,能有效地抵抗常规攻击,但对一些几何攻击效果不太理想。文献[8]提出了基于局部特征的鲁棒盲水印算法,能很好地提取出图像中的特征点,有较强的鲁棒性,但视觉质量还有进一步提高的空间。文献[9]提出了基于尺度不变特征转换(scale-invariant feature transform,SIFT)特征区域的抗几何攻击水印算法,通过该算法生成的水印图像不仅具有良好的不可见性,而且对常规信号处理和一般的几何攻击都具有较强的鲁棒性,但该算法性能还有待进一步提升。
本文在上述研究的基础上,提出了一种基于DWT和SIFT的数字图像水印算法。利用对原始图像进行DWT并融合高频区域以找出纹理较复杂区域,再在该区域中利用SIFT提取出不变特征点。通过自适应确定局部特征区域,并对特征区域进行一级DWT,取其低频部分进行SVD。最后对待嵌入水印图像进行Arnold置乱,把置乱后的一维水印信息进行SVD并通过加性准则嵌入到原始图像的奇异值中,以实现水印的嵌入。该算法不仅具有较好的不可见性,而且对一般攻击和常见的几何攻击也有较强的鲁棒性。
1 算法理论依据
1.1Arnold变换
为了提高嵌入水印的安全性,本文采用Arnold变换[10]来置乱图像,实现对原始水印的加密,以提高嵌入水印的安全性。
Arnold变换为:
(1)
其中,(x,y)和(x′,y′)分别为图像像素点在变换前和变换后的位置;N为图像的大小。Arnold变换具有周期性,设其周期为T,在水印没有嵌入到原始图像之前,对水印图像进行K次置乱,而在提取出水印之后,再利用Arnold变换对提取的水印图像进行T-K次置乱,从而可以恢复出正常的水印图像。
1.2离散小波变换(DWT)
小波变换是信号的空间尺度分析方法,具有优良的时频特性。小波变换的空间-频率特性与人类视觉系统[11](human visual system,HVS)的特性较为相似。通过DWT可以分离出图像的低频信息和高频信息。低频部分集中了图像的主要能量信息,高频部分则表示图像的细节信息。Lena原始图像与其经过一级小波变换后得到的高、低频信息如图1所示,图1b包括4个大小相同的子图。
图像经过小波变换后被分割成水平子带HL、垂直子带LH、对角子带HH和低频子带LL 4个频带,如果进行多级分解,可以对LL子带进行二维离散小波变换,每次变换得到的LL子带都可以继续进行小波变换,变换的次数即为小波分解的级数。
图1 原始图像及DWT分解后的结果
基于小波变换的数字图像水印算法对噪声、滤波等去除攻击有很强的鲁棒性。在水印算法中应用DWT在于它有出色的聚能作用。
1.3尺度不变特征转换(SIFT)
1.3.1SIFT简介
SIFT算子[12]是一种图像的局部描述算子,其具有尺度、旋转和平移等不变性,而且对光照、仿射和三维投影等变换具有较强的鲁棒性。SIFT步骤如下所述。
(1) 检测尺度空间的极值点。假设I(x,y)表示输入图像,其尺度空间函数L(x,y,σ)由原始图像I(x,y)和变尺度高斯核函数G(x,y,σ)卷积得到,具体公式为:
(2)
为寻找图像极值点,通过对同一尺度空间下的相邻图像矩阵做减,可以得到高斯差分尺度空间(difference of Gaussian,DoG)如下:
(3)
相邻2个尺度由常数k分开。
(2) 提取稳定的特征点[13]。为了寻找DoG函数的极值点,每个像素点要与它所有的相邻点进行比较,看其是否比它所有相邻点大或者小。高斯尺度空间到高斯差分尺度空间如图2所示,相邻点由与它同尺度的8个相邻点和上下相邻尺度的9×2个点共26个点构成。
图2 高斯尺度空间到高斯差分尺度空间
(3) 特征点筛选。为了确保所提取的特征点具有较好的抵抗性,本文进行以下筛选:假设通过SIFT算子取得的特征点集为R1,取某个特征点c(xc,yc)为圆心,半径为r的圆形区域Z,即
(4)
在此圆形区域Z内可能含有多个特征点,这时就会造成水印的叠加嵌入,急需进一步处理以剔除区域内重叠的特征点。图像的质心能够很好地抵抗一般几何攻击,因此越接近质心的点其抵抗力也就越高。本文利用Z区域内的质心来删除其他无用的特征点。
设Z区域的质心为c0(x0,y0),而且有:
Z内的质心与圆心的距离D0为:
(5)
若D0≤D(D为阈值),则取此特征点,反之丢弃此点。
1.3.2构造局部特征区域
所谓局部特征区域[14]是指以图像特征点为标识,从原始图像中自适应地分割出的一部分子图像,以其作为数字水印的嵌入和检测区域。以筛选出的图像特征点为中心,以D为半径构造圆形区域用于水印嵌入。实际中,将产生的每个圆形区域四周补“0”得到方形区域,在方形区域的DWT域内嵌入水印信息。
1.4奇异值分解(SVD)
矩阵的奇异值分解变换是一种正交变换[15],它可以将矩阵对角化,其定义如下。
设A为实矩阵,则存在m阶正交矩阵U和n阶正交矩阵V,使得:
A=USV′
(6)
矩阵U、V满足UU′=I,VV′=I;矩阵S为大小为m×n的对角矩阵。如果矩阵A的秩为r,则矩阵S有r个非零奇异值,且满足σ1≥σ2≥σ3≥…≥σr≥σr+1≥…≥σn。
对图像矩阵做奇异值分解,得到的奇异值主要含有以下几个特性:图像的奇异值稳定性较好,即当图像受到较小的干扰时,它的奇异值不会有较大变化;图像的奇异值体现的是图像本身所含的内蕴特性而不是视觉特性。由于奇异值很稳定,所以基于SVD的水印算法对图像的几何攻击鲁棒性较强,特别是旋转,且易得到矩阵A的秩为r的最逼近矩阵。
2 水印算法描述
本文所提出的基于DWT和SIFT的鲁棒图像水印算法主要包含水印嵌入和水印提取2个阶段。
2.1水印嵌入
通过利用DWT分解融合找出原始图像中较复杂的纹理区域,能有效提高嵌入水印的不可见性。本文先通过融合DWT分解产生的高频区域,找出原始图像中纹理较复杂区域,再在该区域中利用SIFT算子构造特征区域来嵌入水印。具体操作流程如下:
(1) 将水印图像W进行Arnold变换,得到置乱后的水印图像W1;对置乱后的水印图像W1进行奇异值分解,得到[UW1SW1VW1]=SVD(W1)。
(2) 利用高斯滤波器对原始图像A(256×256)做平滑处理,以消除噪声干扰;然后对图像A按照16×16的大小分成互不重叠的图像块Ai(0≤i≤255)。
(3) 对每块Ai进行一级DWT,得到每个图像块的低频近似部分和高频细节部分;对产生的每个图像块的3个高频部分进行图像融合,如图3所示,得到融合后的每个图像块细节图像Aj(0≤j≤255),然后计算Aj中熵值,对所有块按熵值由大到小进行排序,选取前M个块组成的区域作为水印嵌入区域。
图3 Lena高频部分融合图
(4) 对所选取的M个纹理较复杂块Li(0≤i≤M)进行特征点检测,如图4所示,并根据所提取的特征点构造局部特征区域,用来进行水印嵌入。先用SIFT算子在每个图像块Li中提取若干候选特征点,然后根据特征点与质心的阈值D得到图像Li(0≤i≤M)最终的特征点集,如图5所示。以筛选出的图像特征点为中心,以D为半径构造圆形区域用于水印嵌入,如图6所示。
图4 特征点检测
图5 筛选出的特征点 图6 特征点构造的特征区域
直接从原始图像Lena中利用SIFT提取的特征点如图4a所示,而从高频部分融合图中提取的特征点如图4b所示。可以看出图4b提取的特征点较多,基本没有遗漏,而且所在区域为纹理较为复杂区域,相对而言,在这些区域嵌入水印其不可感知性较好。
(5) 将产生的每个圆形区域四周补“0”得到方形区域,对每个方形区域Ri进行DWT,选取其低频近似部分RiLL并进行奇异值分解,得到[UiLLSiLLViLL]=SVD(RiLL)。
(6) 运用加性准则SiLL′=SiLL+∂SW1,其中∂为嵌入强度因子,修改子带RiLL的奇异值。运用公式RiLL=UiLLSiLL′ ViLL重构含水印图像的RiLL系数。
(7) 将嵌入水印后的方形区域进行DWT逆变换,去除四周的“0”后逐个代替原始图像的圆形区域,得到加水印图像。
2.2水印提取
水印提取为水印嵌入的逆过程,其流程如图7所示,具体操作步骤如下:
(1) 利用嵌入水印方法中的步骤(2)~步骤(4)分别对待测图像和原始图像进行操作,找出2幅图像中的特征点并分别构造相应的特征区域。
(2) 对2幅图像中所选的圆形特征区域进行四周补“0”得到方形区域,对每个方形区域进行DWT,选取其低频近似部分并进行奇异值分解。
(3) 2幅图像中相对应奇异值相减并除以嵌入强度因子,得到水印图像的奇异值。
(4) 对得到的水印信息奇异值进行Arnold反变换得到水印图像。
图7 水印提取流程图
3 实验结果与分析
实验所用原始图像为256×256的Lena灰度图,如图8a所示,水印图像为32×32的二值图像,如图8b所示。按照本文算法利用Matlab进行仿真,首先将水印图像进行Arnold置乱,将置乱后的水印嵌入到原始图像中得到嵌入水印后的载体图像,如图9a所示,从嵌入水印后的图像中直接提取水印,得到提取的水印图像,如图9b所示。
图8 原始图像及原始水印图像
图9 含水印图像及提取水印图像
本文采用图像水印的抗攻击鲁棒性(normalized correlation,NC)和图像水印的客观失真度(peak signal-to-noise ratio,PSNR)来评价算法的性能,并与文献[4]和文献[9]算法进行对比。水印图像的PSNR值越大则其透明性越好,如果提取的NC大于0.5,即可认为提取的水印是有效的。
按照本文方法对Lena图像进行了正常的嵌入和提取,其原始载体图像Lena正常加入水印后图像的PSNR值为43.21 dB,可以看出PSNR值在允许的范围内,视觉效果较好,且NC值为1,能达到100%提取。而通过文献[4]和文献[9]算法得到的水印图像PSNR分别为40.97 dB和42.74 dB。相比而言,本文算法具有更好的水印遮蔽性,提取出的水印更加清晰。
本文提出的算法对常规图像处理具有较强的鲁棒性,如3×3的中值滤波、3×3的高斯滤波、椒盐噪声、高斯噪声、直方图均衡化和JPEG压缩等。利用本文算法与文献[4]和文献[9]算法分别对Lena图进行水印嵌入、攻击,并对提取结果进行比较,结果见表1所列。
表1 3种算法抗常规攻击性能对比结果
从表1可以看出,本文使用的水印方法对上述常规攻击所表现出的性能更好,不仅具有较高的鲁棒性,而且视觉质量也更高。
同样,本文提出的方法可以有效抵抗不同类型的几何攻击,包括几何攻击裁剪、缩放、旋转。采用本文算法与文献[4]和文献[9]算法分别对Lena图像进行水印嵌入、攻击,然后对提取结果进行比较,结果见表2所列。
由表2可以看出,本文算法对几何攻击同样具有较强的鲁棒性,整体性能优于文献[4]和文献[9]算法。文献[4]算法虽能有效抵抗常规信号处理,但对旋转、缩放及组合攻击等缺乏鲁棒性;本文算法和文献[9]算法均能有效抵抗旋转和缩放攻击,但文献[9]算法对常规信号处理抵抗力稍差。本文算法不仅有较强的鲁棒性,而且不可见性也优于文献[4]和文献[9]算法,其主要原因在于本文算法在嵌入水印前先找出纹理较复杂区域。
表2 3种算法抗几何攻击性能对比结果
4 结 论
本文结合SIFT特征提取和DWT低频嵌入策略,提出了一种基于DWT和SIFT的数字图像水印算法。利用DWT分解融合找出原始图像中较复杂纹理区域,有效地提高了嵌入水印的不可见性。另外,利用SIFT提取的圆形区域具有旋转、缩放和平移不变性。在圆形区域的DWT低频系数上,利用SVD来嵌入水印信息可以有效增强抵抗常规信号处理的能力。仿真结果表明,本文算法不仅具有较好的透明性,而且对一般攻击和常见的几何攻击均具有较强的鲁棒性。
[1]曹荣,王颖,李象霖.一种自适应的DFT域数字水印算法[J].计算机工程与应用,2006(10):77-78,143.
[2]季燕.基于DCT的自适应盲数字水印[J].计算机科学,2013,40 (7):129-130,161.
[3]石永福,杨得国,李智.一种基于小波变换的数字图像水印新算法[J].华中师范大学学报(自然科学版),2013,47(4):479-482.
[4]张秋余,李凯,袁占亭.基于混沌和SVD-DWT的稳健数字图像水印算法[J].计算机应用研究,2010,27(2):718-720.
[5]BHATNAGAR G,RAMAN B.A new robust reference watermarking scheme based on DWT-SVD [J].Computer Standards and Interfaces,2009,31:1002-1013.
[6]LAI C C,TSAI C C.Digital image watermarking using discrete wavelet transform and singular value decomposition[J].IEEE Trans Instrum Meas,2010,59(11):3060-3063.
[7]李雷达,郭宝龙,武晓钥.一种新的空域抗几何攻击图像水印算法[J].自动化学报,2008,34(10):1235-1242.
[8]郭武,李文辉,张振花,等.一种基于局部特征的鲁棒的盲数字水印算法[J].计算机研究与发展,2009,46(增刊1):82-87.
[9]高虎明,李凯捷,王英娟.基于SIFT抗几何攻击的数字水印算法[J].计算机应用,2013,33(3):748-751,755.
[10]刘允峰,韩建群.基于Arnold变换和DCT变换的数字水印算法研究[J].渤海大学学报(自然科学版),2013,34(1):67-70.
[11]王怡影,柴豆豆,张量,等.基于掩盖效应空间相似性的图像质量评价方法研究[J].合肥工业大学学报(自然科学版),2015,38(10):1339-1341,1380.
[12]邓成,高新波.基于SIFT特征区域的抗几何攻击图像水印算法[J].光子学报,2009,38(4):1005-1010.
[13]贡超,蒋建国,齐美彬.基于扩散距离的SURF特征图像匹配算法[J].合肥工业大学学报(自然科学版),2015,38(4):474-478.
[14]林晓泽,周絮语,李相军.基于轮廓的旋转和尺度不变区域的检测[J].计算机应用研究,2012,29(5):1951-1953,1958.
[15]雷蕾,郭树旭,王雷.基于小波变换的SVD数字图像水印算法研究[J].计算机仿真,2013,30(9):169-172,260.
(责任编辑张淑艳)
Robust image watermarking algorithm based on DWT and SIFT
ZHANG Zhengwei1,2,WU Lifa2,ZHENG Chenghui2,LI Huabo2
(1.College of Computer and Software Engineering, Huaiyin Institute of Technology, Huaian 223003, China; 2.College of Command Information System, PLA University of Science and Technology, Nanjing 210007, China)
In order to improve the invisibility and robustness of the digital image watermarking, a digital image watermarking algorithm based on discrete wavelet transform(DWT) and scale-invariant feature transform(SIFT) is proposed. In this algorithm, a more complex texture area of original image is firstly discovered by using DWT. Then the invariant feature points in the complex texture area discovered are extracted. The local feature area is determined by self-adaption and processed by one-level DWT, and the low frequency part is processed by singular value decomposition(SVD). Finally, the watermark image to be embedded is disordered by Arnold. The one-dimensional watermark information is processed by SVD and embedded into the original singularity figure by using the additive rule. Thus the embedding of the watermark can be achieved. The simulation results demonstrate that this algorithm has superior transparency and high robustness to conventional attack and geometric attack.
discrete wavelet transform(DWT); scale-invariant feature transform(SIFT); feature point; singular value decomposition(SVD); image watermarking
2015-03-11;
2015-04-27
江苏省自然科学基金资助项目(BK20131069)
张正伟(1981-),男,江苏扬州人,淮阴工学院讲师,中国人民解放军理工大学博士生;
吴礼发(1968-),男,湖北蕲春人,博士,中国人民解放军理工大学教授,博士生导师.
10.3969/j.issn.1003-5060.2016.07.010
TP391.413
A
1003-5060(2016)07-0911-06