一种基于混合变换域的自适应稳健性数字水印算法
2023-04-13舒旭
摘 要: 为实现水印信息的隐蔽嵌入,同时提高水印的鲁棒性,提出基于根据人眼视觉特征的混合变换域自适应数字水印算法。首先改进了Just noticeable difference在小波域应用模型,自适应计算最佳嵌入强度因子后将水印信息叠加到奇异值矩阵中,实现水印的嵌入。实验证明:在保证水印嵌入量的前提下,PSNR值达到31dB以上,常规攻击时NC值接近1。同时该算法对剪切、压缩等攻击时NC值分别达到了0.9746、0.98878。该算法的透明性和鲁棒性较好,能够达到保护数字产权目的。
关键词: 人眼视觉特征; 最小可觉察误差; 小波变换; 奇异值分解; 数字水印
中图分类号:TP309.7 文献标识码:A 文章编号:1006-8228(2023)04-33-05
Absrtact: In order to achieve the concealed embedding of watermark information and improve the robustness of the watermark,a hybrid transform domain adaptive digital watermarking algorithm based on the characteristics of human visual system is proposed. Firstly, the application model of JND (just noticeable difference) in wavelet domain is improved to make it more suitable for the application of digital watermarking algorithm in frequency domain. Secondly, the improved JND model is used to calculate the optimal embedding strength factor adaptively, and then the watermark information is embedded into the singular value principal component coefficient after DWT-SVD mixed transformation to achieve the watermark embedding. The experimental results show that the PSNR value reaches over 31 dB with the guaranteed watermark embedding amount. The NC value is close to 1 for conventional attacks, and is 0.9746 and 0.98878 respectively for attacks such as cutting and compression. The algorithm meets the requirements of digital watermarking technology for the invisibility and robustness. It can achieve the purpose of protecting digital property rights.
Key words: human visual characteristics; just noticeable difference; wavelet transform; singular value decomposition; digital watermark
0 引言
数字水印技术发展到今天,涌现了许多不同的算法,归纳起来主要分为空域水印算法、变换域水印算法和基于统计建模数字水印算法等三种。空域水印算法是通过直接修改图像的像素值来进行水印信息的加载[1],算法的鲁棒性差,水印信息很容易被滤波、图像量化、几何变形的操作破坏。基于统计建模的数字水印算法[2]过程较复杂,实用性低。变换域水印技术因其嵌入的信息量、隐蔽性以及在遭到攻击时的稳定等优点,愈来愈受到重视,如Discrete Cosine Transform(DCT)[3]、Discrete Wavelet Transform(DWT)[4-5]、Contourlet Transform (CT)[6]、Nonsub sampled Shearlet Transform(NSST)[7]。诚然,变换域数字水印技术在应用了嵌入对策、扩频技术、视觉系统特性提高了嵌入强度后,对一般常规攻击的稳健性较好。不幸的是,绝大多数水印算法局限于针对某種或几种信号处理(例如压缩、滤波、噪声干扰等)有较好的稳健性,普适性不强。
DCT、DWT变换对滤波、噪声等攻击有较好的抵抗性,但由于其不具有几何不变特征,在几何失真后,各分量的存在位置已经与嵌入时完全不同,水印的检测与提取十分困难。奇异值分解(SVD)是一种基于数字矩阵变换的方法,反应的是图像的内蕴特性,如将水印信息嵌入到图像经奇异值分解后的主成分系数中,则对最难抵抗的几何攻击具有较好的效果。因此很多水印研究者将奇异值分解与其他算法组合,提出了基于DCT-SVD[8]、Slant-SVD[9]、DWT-SVD[10]变换组合的数字水印算法,以提高水印算法的容抗性。DCT和SVD为基础的算法所提取到的水印信息具有明显的对角线失真错误[11];Slant和SVD为基础的算法抗攻击能力不具普适性,只能针对几种特定的信号处理有较好的效果[12]。以上水印算法都是采用固定的水印嵌入强度,在调试过程中需要根据载体图像的不同人为的测试调整强度因子,操作的智能性与便捷性欠缺。那么如何根据原始图像特征精确定位最佳嵌入强度α,现有研究极少。
综上所述,本文主要以前人的研究成果为基础,结合JND(just noticeable distortion)模型,根据原始图像的具体特征,计算水印最佳嵌入强度算子α,提出基于DWT-SVD混合域的稳健性水印算法。
1 JND模型的改进
JND用于表示人眼不能察觉的最大图像失真,体现了人眼对图像中不同区域失真的敏感性,直接反映了人类视觉的感知特性。当前对JND模型的研究主要分为基于像素域的JND模型和基于变换域的JND模型两类[13]。离散小波变换(DWT),相对于离散余弦变换(DCT)和傅里叶变化(DFT),能够将图像信号分解为具有不同空间分辨率、频率特性和方向特性的子图像信号,低频系数(LL)蕴含着图像信号的特征,而高频(LH、HL、HH)则给出信号的细节或差别,与JND模型中的频率、亮度,纹理掩盖特性相对应。因此,结合DWT域的JND模型,能更有效的反应出人眼视觉特性。
DWT域中最常见的视觉模型是文献[14-15]提出的JND模型,具体模型如公式⑴所示。
其中,[l]为小波分解级数;θ为小波分解后的子频带,其值取自集合{LL、LH、HL、HH};[Jfreq(l,θ)]为频率敏感度函数;[Blum(l,i,j)]为亮度敏感度函数;[Vtexture(l,i,j)]为纹理敏感度函数。
对于不同载体图像,在实验过程中根据公式⑴计算的最小可察觉误差系数值绝大部分集中在[1,4]区间内,如用[JND(i,j)]系数值作为图像小波变换后低频系数[ILL(i,j)]的水印嵌入临界强度量化因子,则过于集中,不适合量化小波变换后的低频系数,而且当[JND(i,j)≤2]时,在不受任何攻击的情况下,提取出的水印信息质量较差,当遭到攻击时水印信息很难被提取。考虑到不同载体图像每个分块所包含的子带系数值各不相同,可利用载体图像自有特性来定义权重因子更有利于体现图像的不同特征,在基础上提出更适于水印嵌入的 JND模型具体公式如公式⑵所示。
其中,[μ(i,j)]为亮度特征归一化函数,因人眼对图像中等亮度值不敏感,故低频系数的亮度特征可用低频系数[ILL(i,j)-256]表示;[τ(i,j)]为均值方差特征归一化函数。本文JND模型计算出的α值的范围基本在3~17之间,比较适合小波域的水印嵌入量化算法。
2 算法描述
2.1 水印预处理
如将水印信息直接嵌入到载体图像中,除了安全性能差、易受攻击外,更重要的是在遇到攻击时提取出的水印信息会有较大的失真。为消除水印图像的像素空间相关性,提高算法的安全性和鲁棒性,通常在嵌入水印之前对水印信息進行预处理。目前常用的预处理技术包括Arnold变换和Fibonacci 变换等[16]。
仿真实验采用的是 Arnold变换对水印图像进行置乱加密预处理。给定一幅图 N×N 规模的水印图像,则进行置乱的Arnold变换可定义为公式⑶;如要提取原始水印信息,只需对提取出的水印图像再进行Arnold反变换(如公式⑷所示)就可以完成对水印的恢复。
其中,[x,y]是原始水印图像的坐标,[x',y']是置乱后的水印图像坐标,[mod()]为求模运算。水印图像经Arnold变换置乱后,效果如图1所示。
2.2 嵌入算法
水印嵌入算法的具体流程如图2所示。
算法的具体步骤描述如下。
① 把原始图像分成8×8或16×16不重叠的块,按公式⑵分别计算每个小块的最大嵌入强度α。
② 对原始图像I进行离散小波变换,得到LL,HL,LH,HH等四个子图。
③ 把低频系数LL分成8×8不重叠的块,将块数按行排序k=1,2....n,n为常数。
④ 对低频子图LL进行SVD分解得到Ui、Si、Vi,提取奇异值Si的主成分值。
⑤ 对原始水印W进行Arnold变化做置乱预处理,然后分成8×8不重叠的块,再分别对每一小块进行SVD分解得到WUi、WSi、WVi。
⑥ 按序将水印信息中每一小块的奇异值主成分WSi按公式⑸叠加到相对应的载体图像奇异值Si矩阵中,得到新的系数矩阵[S*i]。
⑦ 利用Ui、[S*i]、Vi进行重构得到嵌有水印信息的低频子图LL*,然后根据LL*、HL、LH、HH做逆小波变换得到含水印的载体图像[I*]。
2.3 提取算法
水印提取算法的具体流程如图3所示。
算法的具体步骤描述如下。
① 把嵌有水印的载体图像[I*]分成8×8或16×16不重叠的块,按公式⑵分别计算每个小块的最大嵌入强度α。
② 对嵌有水印的载体图像[I*]进行离散小波变换,得到LL,HL,LH,HH等四个子图。
③ 把低频系数LL分成8×8不重叠的块,将块数按行排序k=1,2....n,n为常数。
④ 对低频子图LL进行SVD分解得到[U*i]、[V*i]、[S*i],取奇异值[S*i]的主成分值。
⑤ 按公式⑹得到水印图像的奇异值[WS*i]。
⑥ 根据奇异值[WS*i]重构水印图像,然后进行Arnold反变换提取水印图像[W*]。
3 算法仿真及实验结果分析
为验证该算法的性能,给出了算法的不可感知性检测和鲁棒性检测结果,同时与文献[9]进行了对比.实验过程中,本文选取了四幅不同亮度、不同纹理特征的512×512数字灰度图像(如Lena、Beach、Bus和Flower);水印图像是256×256的二值图像(water)进行性能测试具体的载体图像如图4所示,水印图像如图1所示。
3.1 透明性测试
透明性测试是水印嵌入到载体图像后,不被人眼所察觉的能力。为客观量化算法的透明性,本文采用PSNR(Peak Signal To Noise Ratio)评价原始数字图像与含水印数字载体图像之间的差别。分析测试图像特征,Lena图像局部特征(亮度、纹理)最平稳,而Bus图像纹理层次跨越较大。在嵌入容量为16384bit信息后,通过公式⑵动态计算出的Lena载体图像中α最小,PSNR较大,而Bus载体图像水印强度α相对较大、PSNR最小。但都达到了35dB以上,明显超过了人眼可察觉的PSNR为30dB临界值,人眼很难察觉出嵌入了信息。
為更进一步分析问题,本文仿真了文献[9]算法,该文献载体图像规模是512×512,最大嵌入水印图像的规模是64×64(4096bit)的二值图像,当嵌入强度为3时,PSNR为39.2088dB;嵌入强度为7时PSNR为31.8492dB。而本文算法当嵌入4096 bit信息时,平均PSNR为48.8214dB;当嵌入最大嵌入容量为65535bit(256×256二值图像)信息后,平均PSNR为35.91988dB,具体数据如表1所示。
此外,在实验过程中发现当水印的嵌入量固定,文献[9]计算出的PSNR系数值不因载体图像的不同而改变,不能体现图像局部特征。因为当嵌入强度α确定时,加法修改器嵌入水印信息对载体图像修改的系数值一样,所以用加法算法嵌入水印信息只与嵌入强度α有关,与载体图像无关,不能体现人眼视觉特性与不同载体图像之间的关系。本文采用动态自适应算法,根据图像局部特征,利用改进的JND模型,动态计算最佳嵌入强度,具有较好的水印不可感知性,很难发现水印嵌入后的载体图像的改变。
3.2 算法提取水印性能对比
鲁棒性性能用归一化相关系数(NC:normalized correlation)来计算原始水印图像与提取出的水印图像的相似程度,NC值越接近1,表示提取出的水印图像与原始水印图像相似程度越高。
在无攻击情况下,鲁棒性测试结果如表2所示,从Lena、Beach、Bus、Flower四幅图像的水印信息与原始水印信息之间的NC值分别为0.999718、0.999789、0.999789、0.999507,NC值都较高但没有达到1.0000。这说明水印信息在嵌入原始图像后会对原始图像奇异值矩阵中主成分系数有一定的影响,造成原始图像的奇异值矩阵中主成分系数与载体图像中奇异值矩阵中的主成分存在偏差,从而使得提取出的水印信息与原始水印信息不一致,但这种影响比较细微。
为了充分客观的评价算法的抗攻击能力,以Lena图像为例,对含水印载体图像进行了一系列模拟攻击实验,包括滤波、剪切、噪声、压缩等攻击,遭受攻击的载体图像如图5所示。表3是本文算法分别与文献[9]的鲁棒性对比数据,在2组不同嵌入强度参数情况下给出了12种常规攻击类型的检测性能。图6给出了文献[9]与本文算法所提取出水印信息的对比效果图。
表3显示了嵌入强度为3和为7两种情况与本文算法的抗攻击性能对比。同等嵌入信息量的情况下,嵌入强度为3的抗攻击能力小于嵌入强度为7的情况。
(a) 噪声攻击:噪声攻击主要有椒盐噪声、高斯噪声和泊松噪声三种。遭受攻击后,获取的PSNR分别为:25.2473(椒盐1%)、22.2819(椒盐2%)、20.5881(椒盐3%)、33.5745(高斯)、34.5907(泊松)。对比文献[9],本文算法的NC值提高了15.01%(椒盐1%)、15.52%(椒盐2%)、18.42%(椒盐3%)、14.19%(高斯)、14.62%(泊松)。
(b) 滤波攻击:滤波攻击主要有中值滤波和高斯滤波两种。本文在遭受中值滤波攻击后,NC值接近0.8,能较完整的提取出水印信息;遭受高斯滤波攻击后,NC值达到0.92以上,相对于文献[9]提高了14.02%。
(c) JPEG压缩攻击。JPEG图片压缩是图片传输常用的格式。实验中通过改变品质因子实现图片JPEG压缩。在压缩率不小于30%且PSNR值达到了33.7489(高于人眼可察觉的30dB),NC值仍保持在0.98以上,相对于文献[9],NC值提高了15.01%(压缩10%)、15.52%(压缩20%)、18.42%(压缩30%)。
(d) 剪切攻击。实验中的剪切幅度分别为1/16,1/4,它获取的PSNR分别为17.3622、11.1359;NC分别为0.9925和0.9763。相比于文献[9],NC值分别提高了14.39%(剪切1/16)、12.21%(剪切1/4)。
4 结束语
结合小波域对噪声的抗攻特性及SVD变换对几何攻击的特性,本文的嵌入算法充分利用载体图像的局部特征,通过优化的JND模型,计算最佳嵌入强度因子自适应动态量化嵌入水印。水印提取过程根据待检测图像特征计算嵌入强度α,不需要将嵌入水印时的嵌入强度α作为密钥中的一部分传输,也不需要原始水印图像和原始载体图像的参与,使得水印的提取易于操作。实验证明,本文算法针对采用不同区域特征的载体图像,人眼都很难感知到版权图像嵌入了水印信息,透明性方面,PSNR值接近或超过35dB,具有较好的不可见性,鲁棒性方面,能恢复出很清晰的水印图像,NC值基本都在0.9以上,与传统的水印嵌入算法相比,在滤波、剪切、噪声、压缩等攻击下具有更好的抗攻击能力。
参考文献(References):
[1] 吴禄慎,孙德智,陈华伟.基于神经网络和HVS的空域数字水印算法[J].光学技术,2016(3):203-207
[2] 王向阳,李丽,李海芳,等.基于二元BKF统计建模的双树复数小波域数字水印检测算法[J].计算机学报,2019,42(5):1112-1125
[3] Dong L,Yan Q, Lv Y. Full Band Watermarking in DCT Domain with Weibull Model[J]. Multimedia Tools and Applications,2017,76(2):1983-2000
[4] MarziehAmini, M. OmairAhmad,M.N.S. Swamy. A New Locally Optimum Watermark Detection Using Vector-based Hidden Markov Model in Wavelet Domain[J]. Signal Processing,2017,137(8):213-222
[5] 王世辉,王仪明,武淑琴,等.萤火虫算法优化的小波域图像水印技术[J].微电子学与计算机,2018,35(5):124-127,132
[6] SadreazamiH,Ahmad M O,Swamy M N S.Multiplicative Watermark Decoder in Contourlet Domain Using the Normal Inverse Gaussian Distribution[J].IEEE Transaction on Multi-media,2016,18(2):196-207
[7] WANG Xiang-yang, LIU Yu-nan, XuHuan. Blind Optimun Detector for Robust Image Watermarking in Nonsub-sampled ShearletDomain[J].Information Sciences,2016,372(12):634-654
[8] 郭倩,陳广学,陈奇峰. 基于DCT-SVD的双QR码水印防伪算法[J].包装工程,2015,36(17):119-125
[9] 肖振久,郭冰莹,李南,等.一种基于Slant变换和SVD的稳健性数字水印算法[J].计算机工程与科学,2018,40(10):1772-1779
[10] 薛青晨,吴丹,陈大庆,等.基于DWT-SVD和QR 码的抗几何攻击数字水印技术[J].包装工程,2016,37(11):158-163
[11] 郭鹏飞,冯琳,孙思宇.新式灰度图像盲检测数字水印算法[J].计算机工程与科学,2019,41(1):104-112
[12] 陈盈,郑洪源,丁秋林.基于Zernike矩和NSCT-SVD的数字水印算法研究[J].计算机科学,2016,43(8):84-88
[13] 郑明魁,苏凯雄,王卫星,等.基于纹理分解的变换域JND模型及图像编码方法[J].通信学报,2014,35(6):185-191,199
[14] 肖亮,韦志辉,吴慧中.一种利用人眼视觉掩盖的小波域数字水印[J].通信学报,2002,233(3):100-106
[15] 李淑芝,龙香玉,邓小鸿,等.结合纹理复杂度和JND模型的图像水印算法[J].计算机应用研究,2019,36(2):528-531,542
[16] 王倩,于来行,曹彦,等.基于Fibonacci置乱的小波域数字图像盲水印算法[J].计算机科学,2018,45(6):135-140
*基金项目:湖南省教育科学“十三五”规划课题“新时代智慧教育体系建设研究——以职业院校教育教学研究为例”(ND207445); 湖南省教育厅科学研究项目“AI智慧课堂及评价体系的构建和应用研究”(19C1734)
作者简介:舒旭(1984-),男,湖南溆浦人,硕士,副教授,主要研究方向:图像处理及教育信息化研究。