2. 华南农业大学 电子工程学院, 广州 510642
2. College of Electronic Engineering, South China Agricultural University, Guangzhou 510642, China
随着科学技术的发展, 数字媒体已经得到广泛应用, 越来越多的数字产品在网络中传播, 但是, 科技给人们带来便利的同时, 也给数字产品的信息安全和版权保护带来了日益严峻的问题. 为了保护数字信息的安全问题以及版权问题, 研究人员提出了数字水印[1-3]. 数字水印技术是一种安全可靠的方案, 同时也是信息安全领域研究的一个热点. 然而在当时, 传统数字水印算法存在算法透明性和鲁棒性之间矛盾的问题, 原因有二: 透明性意味着需要嵌入较弱的水印信号; 而更强的水印信号则可以提高算法的鲁棒性. 为了解决这个问题, 温泉等人[4]提出了零水印的概念, 零水印的思想是利用原始载体图像的内部特征进行构造水印, 而不需要修改载体图像的信息, 这保证了原始载体图像的完整性. 零水印被提出来后, 也成为了研究的热点之一. 郝世博[5]结合了离散小波变换和奇异值分解, 通过比较特征矩阵的每一个系数与特征矩阵均值的大小关系来构造零水印信息, 然而该算法对于旋转攻击的鲁棒性较差. 张海涛等人[6]提出的基于超混沌的图像零水印算法解决了零水印鲁棒性不高的问题, 但是对于噪声攻击的鲁棒性较差. 为了解决该问题, 文献[7]和文献[8]都提出了相应的解决方案, 文献[7]结合离散小波变换和奇异值分解来构造特征矩阵; 文献[8]则结合张量展开、奇异值分解和离散余弦变换来构造图像的特征矩阵. 以上的工作都是使用传统的人工方法进行提取特征, 而且提取的是图像的几何特征, 然而神经网络却可以模拟人类视觉机制, 从而提取到图像的视觉特征. 此外, 若算法需要改进, 传统方法可能需要付出更多的努力去探索更优化的方法, 基于神经网络的方法则只需要对神经网络的结构参数进行修改并进行重新训练. 然而, 目前对于利用神经网络进行图像特征提取的零水印方案并没有得到广泛的研究. Fierro-Radilla等人[9]提出利用卷积神经网络(convolutional neural network, CNN)提取的特征来构造特征矩阵, 虽然该算法可以抵抗多种攻击和常见的图像处理, 然而卷积神经网络本身也存在缺陷: 一是对于传统CNN来说, 图像中的权值都是一样的; 二是图像中可能存在的干扰会影响卷积神经网络的分类结果, 这是通过影响卷积神经网络对特征的提取所致, 这也是卷积神经网络容易受到对抗样本攻击的可能原因. 目前, 提高模型稳健性的方法有3类: 对抗训练、修改模型和添加模型. 基于对抗训练[10]的防御方法在训练过程中加入新的对抗样本, 使得神经网络能够更好地了解对抗样本的特征, 提高了模型的鲁棒性.
人类视觉注意力机制可以帮助人们快速聚焦目标物体的关键特征, 而忽略次要特征[11-14], 引入注意力机制理论上也能使神经网络在图像关键区域投入更多的注意力. 受以上思想的启发, 本文提出了一种基于注意力机制和卷积自编码器的零水印算法, 利用卷积自编码器重构数据的能力来提取图像特征, 并结合注意力机制实现对关键特征的稳健提取, 训练过程中采用对抗训练, 增强了模型的鲁棒性, 实验表明, 本文算法在受到多种已知攻击的情况下仍能提取图像的稳健特征.
1 理论知识 1.1 自编码器传统自编码器的概念最开始是由Rumelhart等人[15]提出的, 随后, Bourlard等人[16]对自编码进行了详细的解释. 早期, 关于新型自编码器提出的进展还比较缓慢, 并且该编码器还只是单层, 到了2010年, Vincent等人[17]又提出了深度去噪自编码器. 紧接着, 卷积自编码器[18]、变分自编码器[19]、循环自编码器[20]相继被提出.
自编码器是一种无监督学习的人工神经网络, 主要应用于数据降维和特征学习. 它可以给出比原始数据更好的特征描述, 此外, 它具有较强的特征学习能力. 自编码器包括两部分: 一个是编码器, 一个是解码器. 编码器从原始输入数据提取特征, 而解码器则从特征信息中重建原始输入数据, 并且使得构建的数据尽可能的等于原始数据.
典型的3层自编码器如图1所示, 它由输入层、输出层和一个隐藏层组成. 输入层用于原始数据的输入, 输出层用于输出特征数据经重构后的数据, 而隐藏层用于特征提取. 输入层和输出层的神经元个数相等, 隐藏层的神经元个数少于输入层和输出层神经元个数. 自编码器通过简单的学习能够使得输出尽可能复制输入, 但重构后的数据与原始数据存在一定的误差. 要使得输出尽可能地等于输入, 则要求隐藏层提取的原始数据特征要更具代表性.
设编码器函数用encoder表示, 解码器函数用decoder表示, 编码器函数提取到的数据特征为feature, 即数据特征, 输入数据用x表示, 输出数据用
1.2 卷积注意力机制
注意力机制是模拟人类视觉而提出的, 它不仅能告诉网络模型需要注意什么特征, 而且也能增强特定区域的表征, 过滤不重要的信息. 本算法使用的注意力模块基于卷积注意力模块(convolutional block attention module, CBAM), 是由Woo等人[21]首次提出的, 该方案不同于通道注意力机制[22], 能显著提升模型的特征表达能力.
如图3所示, 给定一个中间特征图F作为输入, CBAM依次经过通道注意力模块和空间注意力模块. 首先是通道注意力模块. 将中间特征图F对每个通道进行最大池化和平均池化得到最大池化特征
$ Mc\left( F \right) = \sigma \left( {MLP\left( {AvgPool\left( F \right)} \right) + MLP\left( {MaxPool\left( F \right)} \right)} \right) $ | (1) |
最后, 进入空间注意力模块. 先沿着通道轴应用平均池化和最大池化操作, 生成平均池化特征图和最大池化特征图:
$ \left\{ {\begin{split} & Ms\left( F \right) = \sigma \left( {{f^{7 \times 7}}\left( {\left[ {AvgPool\left( F \right);MaxPool\left( F \right)} \right]} \right)} \right) \\ & Ms\left( F' \right) = \sigma \left( {{f^{7 \times 7}}\left( {\left[ {F_{\rm avg}^s;F_{\max }^s} \right]} \right)} \right) \\ \end{split} } \right.$ | (2) |
其中, AvgPool(F)表示平均池化,MaxPool(F)表示最大池化,
$ \left\{ {\begin{split} & F{'} = Mc\left( F \right) \otimes F \\ & F{''} = Ms\left( {F{'}} \right) \otimes F{'} \\ \end{split}} \right. $ | (3) |
其中,
本节介绍了基于注意力机制和自编码器的网络架构的详细设计, 同时说明了训练过程.
2.1 网络架构描述本实验的目标是设计一个能够提取稳健图像特征的网络架构, 这也意味着我们设计的网络需要具备抵抗噪声干扰等的能力, 该网络架构是基于自编码器提出的. 自编码器具有重构数据的能力, 能够很好地提取数据的特征, 此外, 相对于传统的图像特征提取的方法, 卷积神经网络可以更好地提取图像的特征, 所以本实验用卷积层和池化层代替了传统自编码器的全连接层, 而由于加了干扰的图片会影响卷积神经网络的特征提取, 再加上卷积神经网络也无法聚焦在图片的关键特征上, 所以我们需要让卷积自编码器能够将注意力更多地关注于关键特征, 从而保证算法的稳健性. 综上, 我们在卷积自编码的基础上加入注意力机制, 这可以让网络过多关注图片的关键特征, 而忽视图片上存在的类似于噪声的无关特征.
网络的架构图如图4所示, 分为注意力机制编码器和注意力机制解码器两部分.
注意力机制编码器: 将大小为
注意力机制解码器:
2.2 训练过程
为了提高网络模型的鲁棒性, 我们在训练网络的时候借鉴了对抗训练的思想, 目标是使用随机初始化的权重来训练一个具有鲁棒性的网络模型, 实验中添加的扰动权重值在0–1之间随机选取, 添加扰动后的图像样本如图5所示, 训练集由原始数据集和添加扰动的数据集组成, 并且随着迭代次数的增加, 扰动数据集数量也会随之增加.
网络训练的最终目的是使输入无限接近于输出, 详细的训练过程如下: 训练集合D上的数据
该模型是在ImageNet数据集上进行训练, 迭代次数为100次, 训练步长为0.001, 该网络训练的损失值变化如图6所示, 可见随着训练迭代次数的增加, 损失值逐渐下降, 并在迭代次数大于20后, 趋于稳定, 可以见得本方案的模型训练速度很快, 很快就达到拟合状态.
$ \mathop {\min }\limits_\theta {E_{_{\left( {x, y} \right)}}} \sim D\left[ {\mathop {\max }\limits_{\Delta X \in \Omega } L\left( {x + \Delta x, y, \theta } \right)} \right] $ | (5) |
其中,
3 AMAE零水印算法
本节给出基于注意力机制和自编码器的零水印算法的详细说明.
3.1 零水印算法描述自编码器的零水印算法分为零水印的构造和水印的提取两部分. 水印构造包括3个步骤, 分别是提取图像特征、获取二值矩阵、构造零水印. 水印提取包括3个步骤, 分别是获取待测图像特征、获取二值矩阵、恢复水印.
3.1.1 水印构造该部分从宿主照片提取特征构造零水印, 如图7(a)所示, 包括以下步骤, 如算法1所示.
算法1. 零水印构造算法
1)提取图像特征
当基于注意力机制的卷积自编码器训练好后, 该网络便能够提取图像的稳定特征, 我们利用编码器的输出来构造图像的特征, 将一张需要提取特征的大小为
首先将特征图标号为1, 2, …, 6, 然后每4张大小为
2)获取二值矩阵
利用矩阵
3)构造零水印
将矩阵
水印的提取即为水印构造的逆过程, 如图7(b)所示, 包括以下步骤, 如算法2所示.
算法2. 零水印提取算法
1)获得待测图像特征
将待检测载体图片作为自编码器输入, 然后取编码器输出构造载体图片特征矩阵
2)获取二值矩阵
利用矩阵
3)恢复水印
将矩阵
本文实验是在PyCharm实验平台上进行仿真, 并利用PyTorch框架进行编码实现. 在本文的零水印算法中, 引入归一化相关系数NC, 它是衡量提取到的水印图像与原始水印图像之间相近程度的一个度量工具, NC 值的范围在0到1之间, 该值越接近于1, 表明提取出来的水印越接近原始水印, NC值的计算方法如式(10)所示.
$ NC\left( {W, W'} \right) = \frac{{\displaystyle\sum\limits_{i = 1}^M {\displaystyle\sum\limits_{j = 1}^N {W\left( {i, j} \right)W'\left( {i, j} \right)} } }}{{\sqrt {\displaystyle\sum\limits_{i = 1}^M {\displaystyle\sum\limits_{j = 1}^N {W{{\left( {i, j} \right)}^2}} } } \sqrt {\displaystyle\sum\limits_{i = 1}^M {\displaystyle\sum\limits_{j = 1}^N {W'{{\left( {i, j} \right)}^2}} } } }} $ | (11) |
其中,
本实验使用的水印图片和载体图片如图8(b)与图8(c)所示.
3.2.1 鲁棒性分析本文分别对载体图像进行不同种类和不同强度的攻击, 攻击样例图如图9, 并计算不同的NC值, 实验结果如表2所示.
从表2可知, 载体图片不管是受到几何攻击还是非几何攻击, 提取出的水印的NC值均超过0.9, 由此可见, 该算法能很好地抵抗多种攻击, 具有良好的鲁棒性.
3.2.2 实验对比分析(1)神经网络实验对比分析
为了验证本模型的有效性, 我们做了3组对比实验. 分别是: 对抗训练与正常训练情况下的对比, 训练集减半情况下的对比, 添加注意力机制与不添加注意力机制的对比, 实验所得的NC值分别对应于表3中的NC1、NC2和NC3.
从实验结果来看, 不加注意力机制和不进行对抗训练的模型在抵抗攻击的时候并没本论文提出的模型表现得好, 这也体现出本实验提出的模型的有效性, 此外, 减半数据集后的实验结果相较于完整数据集的结果, NC值相差在0.01以内, 这也说明了本方案小数据集上, 也可以得到良好的零水印.
(2)零水印算法实验结果对比
本文结合注意力机制和编码器的输出来构造特征矩阵, 文献[23]在小波变换域提取的低频区域进行分块的奇异值分解, 再利用分块的最大奇异值来构造特征矩阵, 文献[24]则是选择在时域上使用非均匀NURP来进行特征矩阵的构造, 不同方法的实验结果如表4所示.
从表4可知, 在抵抗噪声攻击方面, 文献[23, 24]的性能明显比本文实验差, 尤其是在抵抗高斯噪声方面, 本实验比文献[24]的NC值高了近0.1. 此外, 从整体来看, 本文实验的NC值普遍都要比文献[23, 24]的高, 而且均在0.9以上, 通过对比实验可以得出本文算法的鲁棒性更强.
4 结论与展望
结合卷积注意力模块和卷积编码器, 提出了一种用于构造零水印的深度注意自编码器模型, 该算法利用卷积自编码器重构数据的能力对图像特征进行提取, 并结合注意力机制, 对关键位置给予更多的关注, 忽视了类似于噪声等攻击的无关特征. 在训练的过程中, 结合对抗训练, 进一步提高了模型的鲁棒性, 从而保证了图像特征的稳定提取. 实验结果表明, 在载体图片受到几何攻击和非几何攻击下所提取出的水印NC值均在0.9以上, 该算法具有很好的鲁棒性. 是否添加注意力机制、是否减半数据集和是否进行对抗训练等3个不同的对比实验可以证明提出的自编码器模型的有效性, 从与传统方法的实验结果对比, 可以发现, 相较于传统方法, 该算法鲁棒性更好.
[1] |
van Schyndel RG, Tirkel AZ, Osborne CF. A digital watermark. Proceedings of the 1st International Conference on Image Processing. Austin: IEEE, 1994. 86–90.
|
[2] |
Cox IJ, Kilian J, Leighton FT, et al. Secure spread spectrum watermarking for multimedia. IEEE Transactions on Image Processing, 1997, 6(12): 1673-1687. |
[3] |
Boland FM, O’Ruanaidh JJK, Dautzenberg C. Watermarking digital images for copyright protection. Proceedings of the 5th International Conference on Image Processing and Its Applications. Edinburgh: IET, 1995. 326–330.
|
[4] |
温泉, 孙锬锋, 王树勋. 零水印的概念与应用. 电子学报, 2003, 31(2): 214-216. DOI:10.3321/j.issn:0372-2112.2003.02.015 |
[5] |
郝世博. 针对彩色图像的新型零水印算法. 计算机应用与软件, 2013, 30(6): 298-301, 311. DOI:10.3969/j.issn.1000-386x.2013.06.079 |
[6] |
张海涛, 张思博. 基于超混沌的图像零水印算法. 计算机应用研究, 2019, 36(11): 3387-3390, 3409. |
[7] |
齐向明, 张晶, 谭昕奇. 基于低频奇异值均值的强鲁棒零水印算法. 计算机工程, 2019, 45(12): 214-221. |
[8] |
Jiang FF, Gao TG, Li D. A robust zero-watermarking algorithm for color image based on tensor mode expansion. Multimedia Tools and Applications, 2020, 79(11): 7599-7614. |
[9] |
Fierro-Radilla A, Nakano-MIyatake M, Cedillo-Hernandez M, et al. A robust image zero-watermarking using convolutional neural networks. Proceedings of the 2019 7th International Workshop on Biometrics and Forensics. Cancun: IEEE, 2019. 1–5.
|
[10] |
Kurakin A, Goodfellow IJ, Bengio S. Adversarial machine learning at scale. arXiv: 1611.01236, 2016.
|
[11] |
Wang XD, Cai ZW, Gao DS, et al. Towards universal object detection by domain attention. Proceedings of 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 7281–7290.
|
[12] |
Fan H, Ling HB. Siamese cascaded region proposal networks for real-time visual tracking. Proceedings of 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 7944–7953.
|
[13] |
Burt PJ. Attention mechanisms for vision in a dynamic world. Proceedings of the 9th International Conference on Pattern Recognition. Rome: IEEE, 1988. 977–987.
|
[14] |
Itti L, Koch C. A saliency-based search mechanism for overt and covert shifts of visual attention. Vision Research, 2000, 40(10–12): 1489-1506. |
[15] |
Rumelhart DE, Hinton GE, Williams RJ. Learning representations by back-propagating errors. Nature, 1986, 323(6088): 533-536. |
[16] |
Bourlard H, Kamp Y. Auto-association by multilayer perceptrons and singular value decomposition. Biological Cybernetics, 1988, 59(4–5): 291-294. |
[17] |
Vincent P, Larochelle H, Lajoie I, et al. Stacked denoising autoencoders: Learning useful representations in a deep network with a local denoising criterion. The Journal of Machine Learning Research, 2010, 11(12): 3371-3408. |
[18] |
Masci J, Meier U, Cireşan D, et al. Stacked convolutional auto-encoders for hierarchical feature extraction. Proceedings of the 21st International Conference on Artificial Neural Networks. Espoo: Springer, 2011. 52–59.
|
[19] |
Kingma DP, Welling M. Auto-encoding variational Bayes. arXiv: 1312.6114, 2014.
|
[20] |
Cho K, van Merriënboer B, Gulcehre C, et al. Learning phrase representations using RNN encoder-decoder for statistical machine translation. Proceedings of 2014 Conference on Empirical Methods in Natural Language Processing. Doha: Association for Computational Linguistics, 2014. 1724–1734.
|
[21] |
Woo S, Park J, Lee JY, et al. CBAM: Convolutional block attention module. Proceedings of the 15th European Conference on Computer Vision. Munich: Springer, 2018. 3–19.
|
[22] |
Hu J, Shen L, Albanie S, et al. Squeeze-and-excitation networks. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(8): 2011-2023. |
[23] |
刘万军, 孙思宇, 曲海成, 等. 一种抗几何旋转攻击零水印算法. 计算机应用研究, 2019, 36(9): 2803-2808. |
[24] |
Shen ZL, Kintak U. A novel image zero-watermarking scheme based on non-uniform rectangular. Proceedings of 2017 International Conference on Wavelet Analysis and Pattern Recognition. Ningbo: IEEE, 2017. 78–82.
|