【论文阅读】Robust Invertible Image Steganography (CVPR 2022)

news2024/9/28 11:14:15

作者来自北大深研院
网上已有介绍:https://news.pkusz.edu.cn/info/1002/6538.htm

针对传统图像隐写方法对高斯噪声、泊松噪声和有损压缩鲁棒性差的问题,提出了一种基于流的鲁棒可逆图像隐写框架RIIS。框架如下图
在这里插入图片描述

一、方法概述:

基于流的可逆块将输入的 [ X s , X h ] [X_s,X_h] [Xs,Xh]映射到高频h_f和载体图像y中。CANP基于从y中提取的特征将h_f映射到(服从)类似高斯噪声分布的z变量。只有y通过互联网传输,然后接收方将得到失真的 y ′ y' y(为了输入方便,这里用y’代替图中y~)图像,通过特征增强模块以消除噪声和jpeg压缩的影响,随后从 y ′ y' y中提取的特征和重新采样后经过CANP模块的 z ′ z' z h f ′ h_f' hf,与增强的容器 y ′ y' y一同输入backward块中,得到了恢复的秘密和host图像 [ X s ′ , X h ′ ] [X_s',X_h'] [Xs,Xh]

可以隐藏多张secret到一张cover

对网络的3个部分做了消融实验,分别是CANP(内容感知噪声映射层),CEM(载体增强模块)和DGM(失真引导模块)

1. CANP(内容感知噪声映射层)

h f h_f hf y y y的条件特征(图中绿色Feature Extractor)投影到z。在正向转换过程中,CANP可以将输入的图像对 [ x s , x h ] [x_s,x_h] [xsxh]转换为容器图像y和近高斯随机变量z。给定容器 y y y和从N(0,I)得到的随机样本 z ′ z' z,双射RIIS可以在反向传递中生成 [ X s ′ , X h ′ ] [X_s',X_h'] [Xs,Xh]

图中绿色Feature Extractor,是一个残差块,用于从y中提取特征,来输出 h f h_f hf,作者认为 h f h_f hf高度依赖y。

![[Pasted image 20230301212328.png]]

上图为CANP结构,将从y中提取的特征和部分 h f h_f hf映射到近高斯随机变量z

2. CEM(载体增强模块)用于消除收到的载密图像噪声以及jpeg压缩失真影响。

3. DGM(失真引导模块),根据输入的不同高斯噪声和jpeg压缩操作调整网络参数

二、实验设置

训练数据集:div2k
评估指标:PSNR 最高44.19
对比对象:ISN
损失函数
![[Pasted image 20230301213015.png]]

L r e v L_{rev} Lrev:原始和恢复的host和secret图像差距(恢复正确性)
L C E M L_{CEM} LCEM:尽可能恢复受损的container y y y
L d u s t r L_{dustr} Ldustr:使z的分布尽可能接近高斯分布,CE为交叉损失熵
L c o n L_{con} Lcon:生成的container尽可能接近host(空域),使用FFT是为了保证在频域上也接近(衡量不可见性)
最后的损失函数为:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/381740.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机组成原理4小时速成6:输入输出系统,io设备与cpu的链接方式,控制方式,io设备,io接口,并行串行总线

计算机组成原理4小时速成6:输入输出系统,io设备与cpu的链接方式,控制方式,io设备,io接口,并行串行总线 2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人&#xff0c…

计算机网络--网络层 IPv4地址概述(day05)

网络层 网络层提供的两种服务 IPv4地址概述 IPv4地址就是给因特网(Internet)上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的32比特的标识符 IPv4地址的编址方法经历了如下三个历史阶段: 分类编址 1981划分子网 1985无分类编址…

JavaScript Array 数组对象

文章目录JavaScript Array 数组对象什么是数组?创建一个数组访问数组JavaScript Array 数组对象 数组对象的作用是:使用单独的变量名来存储一系列的值。 创建数组, 为其赋值: 实例 var mycars new Array(); mycars[0] "Saab"; mycars[1]…

【虚幻引擎】UE4源码解析FWorldContent、UWorld、ULevel、UGameInstance、UEngine

一、UEngine Engine,因为也是很基础的类,再加上开发过程中会经常访问到该类型,因此UE4引擎也在代码全局范围内定义了一个该类型的全局变量:UEngine* GEngine供开发者直接调用。该最基础的类型分化成了两个子类:UGameE…

【面试题】 JavaScript 字符串截取方法有哪些?

大厂面试题分享 面试题库后端面试题库 (面试必备) 推荐:★★★★★地址:前端面试题库在 JavaScript 中,可以使用 substr()、slice() 和 substring() 方法截取字符串。substring()substring() 方法返回一个字符串在开始…

Lock锁心得

lock接口最常见的实现类ReentrantLock,通常情况下,lock只允许一个线程访问共享资源,也有特殊情况,比如读写锁里的读锁。lock和synchronizrd是常见的锁,都可以让代码变得安全。但是功能上有差别,二者不是能替…

笃行不怠勾勒人才图,望城区人才工作为高质量发展增添强劲动力

功以才成,业以才广。人才是经济高质量发展的重要资源。党的二十大报告明确“深入实施人才强国战略”,指出“实施更加积极、更加开放、更加有效的人才政策”。作为湖南“一核两副三带四区”区域经济发展格局的战略支点,望城区积极发挥着政策主…

TCP协议详解—TCP各个报头属性的作用

文章目录一.TCP是什么二.TCP协议格式1.报头属性解释TCP首部长度/如何解包分用三.确认应答机制-tcp如何保证可靠性1.确认应答机制2.序号/确认序号-如何保证报文按序到达3.为什么要两个序号四.16位窗口大小-调整发送策略五.6个标志位一.TCP是什么 首先我们需要知道TCP是什么,TCP全…

你知道Object类和Objects的常用方法吗

文章目录Object的常用方法Objects的常用方法hashCodehashisNullequalsrequireNonNullcomparenonNull大家好,Leo又来了!!!最近在网上看到别人分析Objects中isNullfanfan方法来判断,我就想到之前写的一坨坨null,突然很惭愧,特地去研…

IIC总线式驱动开发(mpu6050)

目录 一、I2C总线背景知识 二、Exynos4412 I2C收发实现之裸机版 2.1 发送 2.2 接收 三、Linux内核对I2C总线的支持 四、MPU6050 五、应用层直接使用I2C通道 5.1 预备工作: 5.1.1 5.1.2 5.2 应用层直接使用i2c总线的代码实现 5.2.1 调用read、write实现接…

解决“vue“不是内部或外部命令问题

通过vue指令使用脚手架初始化项目时,在cmd中输入vue init webpack vue_project,终端报错: vue 不是内部或外部命令,也不是可运行的程序或批处理文件。解决方案: 1、确定npm是否已正确安装,在cmd中输入如下…

AcWing算法提高课-3.1.3香甜的黄油

宣传一下算法提高课整理 <— CSDN个人主页&#xff1a;更好的阅读体验 <— 题目传送门点这里 题目描述 农夫John发现了做出全威斯康辛州最甜的黄油的方法&#xff1a;糖。 把糖放在一片牧场上&#xff0c;他知道 N 只奶牛会过来舔它&#xff0c;这样就能做出能卖好价…

Dynamics 365 环境搭建 之 SQL Server 2019问题汇总

前言 随着产品的迭代&#xff0c;SQL Server 2016 已经是7-8年前的产品&#xff0c;新环境的搭建必然要随之更新。截至目前&#xff08;2023年3月&#xff09;Dynamics 365 9.1 op版本的软件要求如下。 Windows ServerSQL ServerWindows Server 2019 标准 Windows Server 20…

Vue2与Vue3响应式的详解与比对

目录前言一&#xff0c;响应式的理解1.1 Mvvm模式的复习1.2 什么是响应式二&#xff0c; Vue2中响应式的应用三&#xff0c;Vue2响应式的原理及实现3.1 数据代理3.2 数据代理的原理3.3 数据劫持四&#xff0c;Vue3中响应式的应用3.1 ref与reactive3.2 ref函数的使用讲解3.3 为什…

Anaconda配置Python新版本tensorflow库(CPU、GPU通用)的方法

本文介绍在Anaconda环境中&#xff0c;下载并配置Python中机器学习、深度学习常用的新版tensorflow库的方法。 在之前的两篇文章基于Python TensorFlow Estimator的深度学习回归与分类代码——DNNRegressor&#xff08;https://blog.csdn.net/zhebushibiaoshifu/article/detail…

圣杯布局的实现方式

1.什么是圣杯布局&#xff1f; 左右盒子固定&#xff0c;中间盒子自适应 2.实现方式 &#xff08;1&#xff09;flex布局 思路&#xff1a;左右盒子给固定的宽高&#xff0c;中间盒子flex:1 <!DOCTYPE html> <html lang"en"> <head> <met…

JavaSE学习进阶 day1_01 static关键字和静态代码块的使用

好的现在我们进入进阶部分的学习&#xff0c;看一张版图&#xff1a; 前面我们已经学习完基础班的内容了&#xff0c;现在我们已经来到了第二板块——基础进阶&#xff0c;这部分内容就不是那么容易了。学完第二板块&#xff0c;慢慢就在向java程序员靠拢了。 面向对象进阶部分…

入门力扣自学笔记240 C++ (题目编号:2373)

2373. 矩阵中的局部最大值 题目&#xff1a; 给你一个大小为 n x n 的整数矩阵 grid 。 生成一个大小为 (n - 2) x (n - 2) 的整数矩阵 maxLocal &#xff0c;并满足&#xff1a; maxLocal[i][j] 等于 grid 中以 i 1 行和 j 1 列为中心的 3 x 3 矩阵中的 最大值 。 换句…

学习渗透测试,考CISP-PTE还是考NISP-PT证书呢?

其实两者都可以&#xff0c;但是要看考生的实际需求&#xff01; 为什么说两者都可以&#xff1f; 两个证书都由中国信息安全测评中心颁发&#xff0c;CISP-PTE&#xff08;注册信息安全渗透测试工程师&#xff09;,NISP-PT&#xff08;国家信息安全水平考试渗透测试工程师),…

月薪30k测试岗技术要求,简简单单,你学废了吗?

如果还只会点点点&#xff0c;那么可以往自动化测试的方向发展&#xff0c;然后再往测试开发的方向发展&#xff0c;做一个测试开发的工程师&#xff0c;这样薪资是非常可观的。当然过程中需要学习很多的知识&#xff0c;比如&#xff1a;编程语言&#xff0c;自动化测试框架&a…