admin管理员组文章数量:1611515
参考链接
SteganoGAN 论文介绍
GAN隐写简单介绍
SteganoGAN 项目运行过程
SteganoGAN 官方文档
SteganoGAN: High Capacity Image Steganography with GANs
1. 介绍
传统隐写方法在0.4 比特每像素下有效
深度学习可用于识别嵌入位置,或者作为端到端的方案
但深度学习对载体图像大小有限制;或试图在图像中嵌入图像
本文提出一种端到端图像隐写模型SteganoGAN
- 使用dense连接;
- 在对抗性训练框架中使用多个损失函数同时优化encoder、decoder和critic networks
- 实现任意数据嵌入,嵌入率达到4.4比特每像素
贡献:
- 使用对抗训练解决隐写任务
- 提出基于深度学习隐写算法容量的评估方法
- 通过检测避免传统隐写分析工具的能力来评估方法
- 通过检测避免深度学习隐写分析工具的能力来评估方法
2. 动机
嵌入版权数据等
3. SteganoGAN
隐写的两个操作:编码和解码
- 编码:使用载体图像和二进制消息,创建隐写图像。
- 解码:获取隐写图像,恢复二进制消息
3.1 注释
C:载体图像
S :隐写图像
以上两者都是RGB格式,有相同分辨率 W ∗ H W * H W∗H
M:要写入的二进制消息
D是相对有效载荷的上限;实际相对有效载荷是在公式
where p ∈ [0, 1] is the error rate下能正确解码的位数
载体图像C从自然图像分布中采样得到。隐写图像S通过学习到的编码器生成,即S=
秘密消息用解码器从隐写图像中提取而来,即
M
^
=
\hat{M}=
M^=
优化任务: 训练编码器和解码器,最小化损失(1)和(2)
(1)解码错误率p
(2)自然图像和隐写图像分布之间的距离 d i s ( P c , P s ) dis(P_c , P_s) dis(Pc,Ps)
为了优化解码器和编码器,需要一个评估器 C ( ⋅ ) C(·) C(⋅)来估计(2);即 C ( ⋅ ) = C(·)= C(⋅)=
X和Y是分辨率相同但深度分别为D和D`的tensor
上图在深度坐标上连接X和Y
再通过卷积将X映射到特征分布
Φ
\Phi
Φ,分辨率相同但深度可能不同;卷积块由一个具有内核大小 3、步长 1 和填充“相同”的卷积层组成,随后是一个ReLU 激活函数和批量规范化。
上图为自适应均值池化,计算tensor X 的每个特征图中的 W*H 的平均值
3.2 体系结构
三个模块:
- 编码器:使用载体图像和数据tensor 或 message,产生隐写图像
- 解码器:从隐写图像中恢复数据
- 评估器:评估载体图像和隐写图像的质量
3.2.1 编码器
D是在每个载体图像像素上试图隐藏的比特数
论文提出了三种编码器结构,分别是Basic,Residual,Dense,他们最开始都是同样两个步骤
- 对载体图像进行卷积得到张量a
这里维度从3维转换到32维
- 把M连接到a上,再进行卷积,得到张量b
Cat是连接操作
Basic:
对b进行两次卷积,生成隐写图像
Residual:
把C(载体图像)加到Basic产生的隐写图像上
Dense:
采用DenseNet,允许特征重用,缓和梯度消失问题,提升嵌入率
在训练的时候选择这三种编码器其中一个,得到隐写图像(当然,效果最好的是Dense)
3.2.2 解码器
输入隐写图像,得出秘密消息
3.2.3 评估器
目的:对编码器的性能提供反馈并生成更真实的图像。三个卷积块后接一个输出为1的卷积层,最后生成一个得分,来评估生成图像为隐写图像的概率,采用自适应均值池化
3.3 训练
迭代优化编码-解码网络
要最优化三个损失
(1)解码正确率:用交叉熵损失来衡量
(2)隐写图像和载体图像的相似性:用均方误差来衡量
(3)隐写图像的真实性:用评估器来衡量
训练目标是最小化以上三个损失
为了训练评估器,需要最小化Wasserstein loss,隐写图像和载体图像数据分布之间的差异
在每次迭代中,对每个载体图像C,都用一个数据张量M匹配,M是由从伯努利分布中采样得到的D×W×H bit随机序列组成,随着训练进行,生成的隐写图像越来越趋近于真实图像。
预处理中采用标准数据增强处理,包括水平翻转、随机裁剪。
使用Adam优化器,学习率0.0001,梯度标准为0.25,裁剪评估器权重在[-0.1,0.1],训练32epoch。
epoch:使用训练集的所有数据对神经网络完成一次训练
4. 评估
隐写算法从三个维度进行评估:
- 隐藏的数据量,如 capacity 容量
- 载体图像和隐写图像的相似度,如 distortion 失真
- 避免被隐写分析工具检测的能力,如 secrecy 秘密性
本文提出了一些评估标准
- 每比特有效传输比特数RS-BPP(reed solomon bits per pixel)
因为恢复隐藏消息的能力严重依赖模型和载体图像,所以测量有效比特数非常重要。
本文使用Reed-Solomon纠错编码,以获得对相对负载的估计。
对于长度为k的消息,经过编码生成长度为n的消息,n≥k,能够纠正(n-k)/2 位的错误。
假设隐写信息被加密后错误率为p,则若想恢复原始二进制信息,则至少需要使用长度为n ≥ k/(1-2p)的Reed-Solomon纠错码,我们可以使用比例 k/n 来表示为每一位二进制数据传输的真实二进制数据的平均位数,这个比值乘我们尝试嵌入每个像素的比特数,即为每个比特有效传输比特数,将这个指标称为Reed-Solomon bits-per-pixel (RS-BPP),即下式,其中D为我们尝试嵌入每个像素的比特数
Reed-Solomon bits-per-pixel (RS-BPP)可以直接用于传统隐写术技术的每比特有效传输比特数度量,因为它表示可在图像中可靠传输的平均比特数除以图像大小。
-
峰值信噪比(PSNR)
通过测量图像失真来评估隐写的质量。(越大越好)
给定两幅大小为( W , H ) 的图像 X 与 Y ,和一个表示每个像素中可能存在的最大差异的缩放因子s c 。则PSNR可以由均方误差MSE给出
MSE越小,则PSNR越大;所以PSNR越大,代表着图像质量越好。一般来说:PSNR高于40dB说明图像质量极好(即非常接近原始图像);
在30—40dB通常表示图像质量是好的(即失真可以察觉但可以接受);
在20—30dB说明图像质量差;
低于20dB图像不可接受。但PSNR可能不太适合用于比较不同隐写算法,所以引入结构相似性指数(SSIM)
-
结构相似度指数(SSIM)
同样用于测量图像质量
对于给定图像 X 和 Y ,SSIM可用均值 µ X , µ Y µ_X , µ_Y µX,µY,方差 σ X 2 , σ Y 2 σ^2_X , σ^2_Y σX2,σY2和协方差 σ X Y 2 σ^2_{XY} σXY2来计算
k1 = 0.01, k2 = 0.03 , 返回值范围在 [−1.0, 1.0] ,1.0表示内容相同
5. 结果和分析
使用数据库:Div2k(2017)和COCO(2014)
6. 检测隐写图像
7. 相关工作
优缺点
缺点:鲁棒性较差,如JPEG压缩、截图、调整大小或旋转,将使隐藏的数据无法提取。无法保证完全提取秘密信息。
本文标签: 论文HighSteganoGANCapacitySteganography
版权声明:本文标题:【论文阅读】SteganoGAN: High Capacity Image Steganography with GANs 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1728620082a1166240.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论