【论文阅读】SteganoGAN: High Capacity Image Steganography with GANs

参考链接

SteganoGAN 论文介绍
GAN隐写简单介绍
SteganoGAN 项目运行过程
SteganoGAN 官方文档

SteganoGAN: High Capacity Image Steganography with GANs

1. 介绍

传统隐写方法在0.4 比特每像素下有效
深度学习可用于识别嵌入位置,或者作为端到端的方案
但深度学习对载体图像大小有限制;或试图在图像中嵌入图像
本文提出一种端到端图像隐写模型SteganoGAN

  • 使用dense连接;
  • 在对抗性训练框架中使用多个损失函数同时优化encoder、decoder和critic networks
  • 实现任意数据嵌入,嵌入率达到4.4比特每像素

贡献:

  1. 使用对抗训练解决隐写任务
  2. 提出基于深度学习隐写算法容量的评估方法
  3. 通过检测避免传统隐写分析工具的能力来评估方法
  4. 通过检测避免深度学习隐写分析工具的能力来评估方法

2. 动机

嵌入版权数据等

3. SteganoGAN

隐写的两个操作:编码和解码

  • 编码:使用载体图像和二进制消息,创建隐写图像。
  • 解码:获取隐写图像,恢复二进制消息

3.1 注释

C:载体图像

S :隐写图像

​ 以上两者都是RGB格式,有相同分辨率 W ∗ H W * H WH

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 体系结构

三个模块:

  1. 编码器:使用载体图像和数据tensor 或 message,产生隐写图像
  2. 解码器:从隐写图像中恢复数据
  3. 评估器:评估载体图像和隐写图像的质量

在这里插入图片描述

3.2.1 编码器

D是在每个载体图像像素上试图隐藏的比特数

论文提出了三种编码器结构,分别是Basic,Residual,Dense,他们最开始都是同样两个步骤

  1. 对载体图像进行卷积得到张量a

​ 这里维度从3维转换到32维

  1. 把M连接到a上,再进行卷积,得到张量b

[(img-B60z689f-1648546529503)(C:\Users\17020\AppData\Roaming\Typora\typora-user-images\image-20211210210710290.png)]

​ 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 秘密性

本文提出了一些评估标准

  1. 每比特有效传输比特数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)可以直接用于传统隐写术技术的每比特有效传输比特数度量,因为它表示可在图像中可靠传输的平均比特数除以图像大小。

  1. 峰值信噪比(PSNR)

    通过测量图像失真来评估隐写的质量。(越大越好)

    给定两幅大小为( W , H ) 的图像 X 与 Y ,和一个表示每个像素中可能存在的最大差异的缩放因子s c 。则PSNR可以由均方误差MSE给出
    在这里插入图片描述
    MSE越小,则PSNR越大;所以PSNR越大,代表着图像质量越好。一般来说:

    PSNR高于40dB说明图像质量极好(即非常接近原始图像);
    在30—40dB通常表示图像质量是好的(即失真可以察觉但可以接受);
    在20—30dB说明图像质量差;
    低于20dB图像不可接受。

    但PSNR可能不太适合用于比较不同隐写算法,所以引入结构相似性指数(SSIM)

  2. 结构相似度指数(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压缩、截图、调整大小或旋转,将使隐藏的数据无法提取。无法保证完全提取秘密信息。

  • 7
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 28
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

岁月漫长_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值