| 遥感影像不可见数字水印算法比较与分析 |
2. 武汉警官职业学院, 湖北 武汉, 430040
2. Wuhan Police Vocational College, Wuhan 430040, China
随着社会应用范围的扩大和遥感影像生产进程的加快,遥感影像的安全与遥感影像极速增长的使用需求之间的矛盾日益凸显。数字水印技术为缓解遥感影像的安全与使用需求之间的矛盾提供了一种有效的解决方法[1, 2]。总结当前遥感影像数字水印技术,相关的研究及成果都相对较少,目前较为成功的应用如Google Earth、SuperMap等均以可见方式嵌入水印,针对不可见数字水印技术的相关研究与成果相对较少[3-6]。
本文以不可见水印技术为研究对象,对主要的空间域和频率域数字水印算法进行分析比较,为后期开展针对遥感影像的不可见数字水印技术的应用进行探索性研究。
1 数字水印技术原理以I (x, y)表示原始数据,W (x, y)表示水印信息,W′(x, y)表示处理后的水印信息,Iw(x, y)表示嵌入水印后的图像,w (x, y)表示提取的水印信息,密钥Key是在水印信息形成、嵌入过程中的重要信息,通常对用户不可见。数字水印技术处理流程见图 1。其基本步骤如下:
![]() |
| 图 1 数字水印技术的流程图 Figure 1 Flow Chart of Digital Watermark Technique |
1) 确定要嵌入的秘密信息,并转为水印信号,水印信号生成过程中的关键信息写入密钥K中;
2) 选择合理的嵌入算法,将水印信号W (i, j)嵌入源数据I (x, y)中,得到Iw(x, y),嵌入过程中的关键信息写入密钥K;
3) 利用水印检测算法和密钥K提取水印信息w (x, y),比较w (x, y)和原始水印信息W′(x, y)的相似性,判断是否嵌入水印。
2 不可见数字水印算法不可见水印算法包括空间域和频率域两大类,常见的空间域算法包括最低有效位算法(least significant bit, LSB)和基于统计思想的Patchwork算法,频率域算法包括离散余弦变换算法(discrete cosine transform, DCT)、离散傅里叶变换算法(discrete Fourier transform, DFT)和离散小波变换算法(discrete wavelet transform, DWT)。
2.1 空间域算法1) LSB算法。LSB算法通过改变影像的最低位嵌入水印信息,实现简单,可以在影像中嵌入多个数字水印信息,同时达到良好的视觉不可感知效果[7]。水印检测时,需提取影像的最低位,与原始水印信息进行比较,相似性高,则认为水印检测成功,否则认为检测失败。
2) Patchwork算法。Patchwork算法利用纹理间的相似性掩盖水印信息。其基本方法是:随机选择N对像素点(ai, bi),i =1, 2, …, N,将每个ai点的亮度值增加Δ,每个bi点的亮度值减Δ,完成水印信息的嵌入。水印检测时,以水印嵌入位置(ai, bi)为密钥,分别计算对应像素的DN值之和。如果
1) DFT算法。DFT算法以离散傅里叶变换为理论基础,利用傅里叶变换后相位成分对噪声抵抗力较强的特点嵌入水印信息[7]。其基本方法是:对原始影像进行离散傅里叶变换,在变换域的中频信号中嵌入水印信息,经过逆傅里叶变换,将频率域信息转化至空间域,得到嵌入水印后的图像。
水印提取过程如下:首先对含有水印的载体图像进行DFT变换,根据水印检测密钥提取水印信息,再与原始水印信号进行相关性计算,若相关性大于阈值,则认为水印检测成功,否则失败。
2) DCT算法。DCT算法以离散余弦变换域为计算空间,是目前研究最多的数字水印算法[2]。其基本方法是:首先对原始载体图像进行8×8区域分块,对各个分块进行DCT变换,得到各个分块的频率信息分布。在每个分块区的中低频区域嵌入与水印信息W相对应的一位水印信息,再经过逆离散余弦变换得到嵌入水印的图像[7, 8]。
水印提取过程如下:先对含有水印信息的图像进行分块离散余弦变化,按照嵌入过程相反的顺序提取嵌入的水印信息,与原始水印信息进行比较,若相关性大于一定阈值,则认为含有水印,水印检测成功。
对于原始影像第(p, q)个分块,假设其原始影像经DCT变换后为Ip, q(u, v),相对应的水印信息为W (i, j),(u, v)是该分块区域像素的行列号,(i, j)是相应的水印信号行列号,按式(1)、式(2) 嵌入水印信息:
| $w\left( u,v \right)=\left\{ \begin{align} & \text{rand}\left( n \right),\text{ }W\left( i,j \right)=0 \\ & \varnothing ,\text{ }W\left( i,j \right)=1 \\ \end{align} \right.$ | (1) |
| ${{I}_{w}}_{_{p,q}}\left( u,v \right)=\left\{ \begin{align} & {{I}_{p,q}}\left( u,v \right)+kw\text{ }\left( u,v \right), \\ & \quad u,v\in {{F}_{M}}或\left( u,v \right)\in {{F}_{L}} \\ & {{I}_{p,q}}u,v,W\left( i,j \right)=1 \\ \end{align} \right.$ | (2) |
式中,n为中低频区域的像素个数;k为嵌入水印信息的权重,权重越大,水印信息越稳健,但对图像质量影响越大。
3) DWT算法。DWT算法以离散小波变换域为计算空间,将水印信号嵌入人眼视觉不敏感的高频子带,具有较好的视觉不可见性。基本方法是:对原始载体图像进行离散小波分解,得到HH、HL、LH和LL等4个频率子带,按照式(3) 将水印信息嵌入相应的系数子带,通过逆离散小波变换得到嵌入水印的图像[7, 8]。
| $\begin{matrix} F{{\prime }_{w}}\left( u,v \right)= \\ \left\{ \begin{align} & F\prime \left( u,v \right)+kw\text{ }\left( u,\text{ }v \right),\left( u,\text{ }v \right)\in \text{HL,LH} \\ & F\prime \left( u,\text{ }v \right),\left( u,v \right)\in \text{LL,HH} \\ \end{align} \right. \\ \end{matrix}$ | (3) |
式中,F′w(u, v)即为嵌入水印信息后的小波系数,对F′w(u, v)进行逆离散小波变换后即可得到嵌入水印信息的影像。
水印提取过程对含有水印信息的图像进行离散小波分解,按照嵌入过程相反的顺序提取嵌入的水印信息,与原始水印信息进行比较,若相关性大于一定阈值,则认为含有水印,水印检测成功。
3 实验与分析对上述5种算法分别进行遥感影像数字水印和攻击实验,从主观、客观和抗攻击性等3个方面来进行评价。
3.1 实验数据选择2013年高分辨率航空遥感影像进行数字水印实验。实验区位于武汉市黄陂区,影像分辨率为0.2 m,影像大小为2 000像素×2 000像素,包含RGB三个波段。要嵌入的水印信息为武汉市测绘研究院缩写“WHGI”,大小为64像素×128像素。原始载体影像和嵌入的水印信息见图 2。
![]() |
| 图 2 实验区遥感影像和嵌入的水印 Figure 2 Remote Sensing Image of Experimental Area and Embedded Watermark |
对于水印嵌入处理,由于人眼对蓝波段不敏感,本文在原始影像数据的蓝波段嵌入数字水印信息。算法实现过程中,除LSB算法嵌入多个水印信号外,其他4种算法只嵌入一个水印信号。算法在MATLAB中实现,伪随机序列种子12.34,水印嵌入权重30。此外,DFT算法、DCT算法和DWT算法均采用DCT算法分块处理的思想,首先对全图进行8×8分区,对各分块变换之后的相位、中频和高频子带系数计算嵌入水印信号,再通过相应的逆变换转换为空间域,得到嵌入水印后的影像。对于水印检测处理,空间域算法水印检测采用盲检测方法,频率域算法水印检测采用非盲检测方法。
3.2 主观比较与分析比较LSB算法、Patchwork算法、DFT算法、DCT算法和DWT算法对蓝波段的处理结果,如图 3所示。由图 3可见,5种算法嵌入的数字水印均具有良好的视觉不可见性。对嵌入水印信号的区域进行放大比较,可以看出,DCT算法嵌入的数字水印会造成影像分块现象,放大后能看到嵌入的水印信息,水印嵌入权重越大,表现越明显,见图 3(f)。其余4种算法嵌入的数字水印信号均无明显视觉表现,见图 3(g)。由于人眼对蓝波段信息相对不敏感,合成为RGB三通道遥感影像后没有造成明显的视觉影响,数字水印仍具有良好的不可见性。
![]() |
| 图 3 5种算法嵌入水印后的影像比较 Figure 3 Comparison of Embedded Watermark Images Using Five Different Algorithms |
3.3 客观比较与分析
对5种算法得到的嵌入水印影像蓝波段进行客观分析,计算均值、方差、峰值信噪比(peak singal to noise ratio, PSNR)、熵以及水印嵌入的计算时间,各指标的比较结果见表 1。
| 表 1 5种算法嵌入水印后影像的指标比较表 Table 1 Indexes Comparison of Remote Sensing Images Using Five Different Watermark Embedding Algorithms |
![]() |
根据表 1可以得到以下结论:
1) 5种算法嵌入水印影像的均值和方差与原始影像相同,LSB算法嵌入了多个水印信号,导致LSB算法嵌入影像的信息熵量降低,但由于LSB算法只改变原始影像的最低位,嵌入水印影像在均值和方差上并没有发生改变。
2) PSNR衡量嵌入水印影像与原始影像的信噪比。5种算法的PSNR均大于45,说明嵌入水印后影像有较好的视觉效果。其中,DCT算法嵌入水印后的影像PSNR值最低,这解释了为何嵌入水印后影像局部水印可见。
总体而言,频率域算法计算速度较快,满足遥感影像庞大数据量对水印算法计算效率的要求。
3.4 抗攻击性比较与分析对上述5种算法嵌入水印后的影像进行了旋转、有损压缩、拉伸和加噪攻击,通过水印检测效果评价各种算法对攻击的抵抗能力,如表 2所示。
| 表 2 5种水印算法对旋转、压缩、拉伸和加噪等攻击的表现比较 Table 2 Comparison of Five Algorithms Against Rotation, Impression, Stretch and Noise Attack |
![]() |
由表 2可以得到以下结论:
1) 对于影像旋转5°攻击,只有Patchwork算法成功。说明Patchwork算法水印检测的计算单元从LSB的像素转为像素的统计信息,在一定程度上提高了水印的鲁棒性。DFT算法、DCT算法和DWT算法水印检测采用非盲水印检测,当影像发生旋转时,原始影像与嵌入水印影像的对应关系错乱,导致水印检测失效。
2) 对于影像有损压缩攻击,频率域算法均能有效检测水印。这是由于数据压缩通过在频率域降低冗余信息实现的,而频率域数字水印嵌入算法都是在频率域实现的,因此能够有效抵御数字压缩攻击。
3) 影像拉伸增强对比度攻击代表的是以增强影像视觉特征为目的的遥感影像处理方法,处理原则是要保证影像感兴趣区域和纹理细节区域特征不被破坏,这与频率域水印嵌入区域的选择原则一致,因此频率域算法对于影像增强攻击均具有较好的鲁棒性。
4) 影像加噪攻击从另外一个角度衡量水印对于某些特定攻击的鲁棒性。频率域对加噪攻击表现效果较差,原因在于水印检测时采用非盲水印检测,增加了水印检测的依赖性。
4 结束语DCT算法和DWT算法在影像表现和抗攻击性方面都还存在一定的不足,未来将在以下3个方面开展深入研究:
1) 结合遥感影像的空间与纹理特征合理选择水印嵌入位置;
2) 水印嵌入过程中采用量化方法,在保证水印稳定性和攻击鲁棒性的同时,降低对遥感影像数据的影响;
3) 采用非盲水印检测方法,降低算法对原始影像的依赖性。
| [1] | van Schyndel R G, Tirkel A Z, Osborne C F.A Digital Watermark[C].The 1st International Conference on Image Processing, Austin, TX, USA, 1994 |
| [2] |
陈明奇, 钮心忻, 杨义先. 数字水印的研究进展和应用[C]. 中国电子学会第七届学术年会, 北京, 2001 |
| [3] | 李玉龙, 晋佩东. 数字水印技术在遥感影像中的应用[J]. 国土资源遥感, 2008, 20(1): 83–85 DOI: 10.6046/gtzyyg.2008.01.19 |
| [4] | 朱长青, 杨成松, 任娜. 论数字水印技术在地理空间数据安全中的应用[J]. 测绘通报, 2010, (10): 1–3 |
| [5] | 任娜, 朱长青, 黄家柱, 等. 数字水印技术在高分辨率遥感数据安全保护中的应用[J]. 火力与指挥控制, 2015, 40(2): 19–23 |
| [6] | 尹浩, 林闯, 邱锋, 等. 数字水印技术综述[J]. 计算机研究与发展, 2005, 42(7): 1093–1099 |
| [7] | Gerbard C L, Setyawan I L, Reginald L. Watermarking Digital Image and Video Data: A State-of-the-Art Overview[J]. IEEE Signal Processing Magazine, 2000, 17(5): 20–46 DOI: 10.1109/79.879337 |
| [8] |
杨鹏. DWT-DCT域数字图像零水印技术研究[D]. 北京: 北京邮电大学, 2013 |
2017, Vol. 42






