图像处理之《黑盒扰动的可逆噪声流鲁棒水印》论文阅读

一、文章摘要

近年来,基于深度学习的数字水印框架得到了广泛的研究。现有的方法大多采用基于“编码器-噪声层-解码器”的架构,其中嵌入和提取过程分别由编码器和解码器完成。然而,这种框架的一个潜在缺点是编码器和解码器可能不能很好地耦合,导致编码器可能会将一些冗余特征嵌入到主机图像中,从而影响整个算法的不可见性和鲁棒性。为了解决这一问题,本文提出了一种基于流的鲁棒水印框架。该框架的基本组成部分是一个可同时实现嵌入和提取的可逆上下采样神经块。因此,编码后的特征与解码器需要的特征保持高度的一致性,有效地避免了冗余特征的嵌入。此外,为了保证黑盒扰动的鲁棒性,设计了一个可逆噪声层(INL)来模拟黑盒扰动,并在训练阶段作为噪声层。利用INL的可逆性,在提取前进行预处理,消除了扰动,进一步提高了算法的鲁棒性。大量的实验证明了该框架在视觉质量和鲁棒性方面的优越性。与现有的框架相比,该框架的视觉质量(以PSNR衡量)提高了2dB, JPEG压缩后的提取精度(QF=50)提高了4%以上。此外,提取精度在95%以上,对黑盒扰动具有较强的鲁棒性。
在这里插入图片描述

二、提出的方法

2.1 综述

该方法的主要目的是设计一个鲁棒的水印框架,不仅可以用于白盒扰动,也可以用于黑盒扰动,如图2所示。要训练的主要组件是一个基于流的编码器/解码器(FED),它有几个可逆的神经块。由于FED的结构可逆性,它可以在相同的参数下实现前向编码和后向解码。前向编码过程将主机图像Io中的水印信息M隐藏起来,得到带水印的图像Iem和冗余的Rf。然后,噪声层对水印图像进行有效的扰动处理,并为解码器训练提供扰动图像Id。后向解码过程以经过噪声层处理的扰动图像Id和全零矩阵Rb为输入,对其进行解码,得到提取的水印信号Mex。对于白盒扰动,我们使用现有的可微噪声层进行训练。对于黑盒扰动,我们将采用另一种INN来模拟这种扰动,并使用训练良好的模型作为噪声层,称为INL (invertible noise layer,可逆噪声层),详细内容将在章节中说明。在测试阶段,当面对黑盒扰动时,我们首先使用INL的后向处理将扰动的图像Id去噪为去噪后的图像Ide,并将Ide送入FED进行进一步解码

在这里插入图片描述
图2 所提出方法的框架。该算法的主要架构是基于流的编码器和解码器,它由几个可逆的神经块组成,可用于前向编码过程和后向解码过程。在编码器和解码器之间,执行包含白盒和黑盒扰动的噪声层,以将带水印的图像扰动为用于解码器训练的扰动版本

2.2 基于流的编码器/解码器

如前所述,基于流的网络自然适合于水印任务。基于流的模型有两个基本组成部分,即表示为fθ的前向编码函数和相应的具有相同参数θ的逆函数f−1θ。在前向编码过程中,接收水印矩阵M∈Rh×w×1和主机图像Io∈RH×W×3作为输入,输出水印图像Iem∈RH×W×3和冗余信息Rf∈Rh×w×1。后向解码过程中,将全零矩阵Rb∈Rh×w×1和扰动图像Id∈RH×W×3输入FED进行解码,得到提取的水印Mex∈Rh×w×1和恢复后的图像Ire∈RH×W×3。

FED与n个可逆神经块相结合。图3显示了第i个可逆神经块的结构,它由一个上行子网络Ui和两个下行子网络D1i和D2i组成。Ui的目标是将mi∈Rh×w×1上采样到与图像Io∈RH×W×3相同的大小。D1i和D2i的目标是将样本xi+1∈RH×W×3降至与mi∈Rh×w×1相同的大小。对于前向编码过程中的第i个可逆神经块,输入为mi和xi,输出mi+1和xi+1可表示为:
在这里插入图片描述

其中⊗表示点积运算。经过最后一个可逆神经网络,我们可以得到mn+1和xn+1,它们对应于最终输出,即冗余信息Rf和水印图像Iem。

对于后向解码过程,信息流从第(i + 1)个可逆神经网络到第i个可逆神经网络,如图3所示。其中,第一个可逆神经网络的输入是全零矩阵Rb和噪声层产生的扰动图像Id,后向解码的最后一个可逆神经网络的输出是rn和x’n。对于第i个可逆神经网络,输入为ri+1和x’i +1,输出为ri和x’i,可以用:
在这里插入图片描述
在这里插入图片描述
图3 第i个可逆神经块的主干,由一个上行子网络Ui和两个下行子网络D1i和D2i组成

经过后向解码过程中最后一个可逆神经网络的处理,得到输出Mex,即r1,作为提取的水印。需要说明的是,Rb∈Rh×w×1是一个全零矩阵,因此在解码时,除了扰动图像Id外,不需要任何先验信息,保证了盲提取。在本文中,每个Ui和Di的基本组件由6个“ConvLeakyReLU”块组成,如图2所示。

2.3 噪声层

噪声层是保证鲁棒性的关键。在本文中,我们分别对白盒扰动黑盒扰动使用不同的噪声层。对于白盒扰动,我们直接使用现有的可微分噪声层(例如JPEGSS (Shin and Song 2017)用于JPEG压缩)。对于黑盒扰动(如风格转移),我们提出了一种新的方法,通过使用INN模拟扰动并将训练良好的模型作为噪声层来实现相应的鲁棒性。具体可以描述如下:

INL的训练数据 为了训练INL(记为Nθd,参数为θd),我们首先通过查询黑盒扰动过程生成训练数据。具体来说,我们输入原始图像I+,得到相应的扰动版本I−。然后使用图像对{I+, I−}作为INL的训练数据

INL体系结构 INL的架构如图4所示。整个INL由k个具有相同结构的可逆噪声块组成,其构造如下:对于正向过程中的第i块,输入为yhi和yli,对应的输出为yhi+1和yli+1,可表示为:
在这里插入图片描述

其中φ, ρ和ω可以是任意函数,我们在(Jing等人2021)中选择密集块,这被证明可以确保良好的表示能力。对于第一个块,{yh1∈RH/2×W/2×9, yl1∈RH/2×W/2×3}的输入分别是图像I+∈RH×W×3经过DWT后的高频分量和低频分量。每个yhi和yli与yh1和yl1保持相同的大小。在最后一个块之后,对输出的yhk+1和ylk+1进行逆DWT,生成最终的图像Id+。然后用输入I−进行反向处理,输出恢复后的图像Ide_。

在这里插入图片描述
图4 可逆噪声层的主干,由几个可逆噪声块组成。每个可逆噪声块由三个模块φ, ρ和ω组合而成,它们是任意函数

INL训练损失 要求扰动后的图像Id+在前向处理过程中应尽可能与原图像I-相似,在后向处理过程中输入原图像I-时,得到的图像Ide_也应与原图像I+相似。在这里,我们使用术语Ldis来最小化每对训练数据之间的平均距离,可以表示为:
在这里插入图片描述

其中Id+等于Nθd(I+),其中Nθd表示INL的正向过程;Ide_等于N−1θd (I−),其中N−1θd表示INL的反向过程。θd表示INL参数,MSE表示均方误差。训练完INL后,将其固定为一个噪声层来训练前FED。

2.4 损失函数

总损失函数由两种不同的损失组成:保证不可见性的图像损失和保证鲁棒性的信息损失

图像损失 前向编码的目的是将水印M嵌入到主机图像Io中,生成水印图像Iem。为了实现不可见性,需要水印图像接近主机图像。为了实现这一目标,图像损失Limage定义如下:
在这里插入图片描述

式中,Iem等价于fθ(Io,M),其中θ表示所拟FED的参数。

信息损失 反向解码的目的是从扰动的图像Id中无损地提取水印。为此,我们定义消息丢失Lmessage如下:
在这里插入图片描述

式中Mex等于f−1θ(Id,Rb),其中f−1θ表示逆向过程。Rb是与M大小相同的全零矩阵。

全部损失 总损失函数Ltotal是图像损失Limage,消息损失Lmessage的加权和,如下:
在这里插入图片描述

这里,λ1和λ2是平衡这两个损失的权重。需要注意的是,我们没有对前向冗余信息Rf和恢复图像Ire进行任何限制,因为这两个变量在整个水印过程中并不重要

三、实现细节

数据集和设置 本文使用DIV2K (Agustsson and Timofte 2017)训练数据集进行训练。我们选择的测试数据集是经典的USC-SIPI (Viterbi 1977)图像数据集。将图像的宽度W和高度H设置为128,水印信息的长度设置为64位,即H和W设置为8。λ1和λ2的参数分别固定为1和10。FED n中可逆神经块的个数设为8,可逆噪声块k的个数设为8。该框架由PyTorch (Collobert, Kavukcuoglu和Farabet 2011)实现,并在一台NVIDIA RTX 3090ti上运行。1对于每个网络的参数优化,我们使用Adam (Kingma and Ba 2015)作为默认超参数,其学习率为1e-4。

基准 为了验证所提出方法的不可见性和鲁棒性,我们将其与几种最先进的(SOTA)水印方法进行了比较,包括三种基于DNN的方法:HiDDeN (Zhu等人2018), TSDL (Liu等人2019)和MBRS (Jia, Fang,和Zhang 2021)。为了测试鲁棒性,我们选择了7种白盒扰动(“Cropout”、“Dropout”、“Gaussian Noise”、“Salt&Pepper Noise”、“Gaussian Blur”、“Median Blur”和“JPEG Compression”)和4种黑盒扰动(“Crayon”、“Heavy Color”、“Reverse Color”、“Sketch”),如图5所示。对于每种扰动,我们训练一个特定的水印网络以更好地说明。值得注意的是,对于黑盒扰动训练,我们使用INL结合“高斯噪声”预训练模型,以获得更好的收敛性。为了公平比较,所有基于DNN的方法都使用相同的数据集和相同的噪声层进行重新训练。所有实验均以尺寸为128×128的图像和尺寸为8× 8比特的水印进行

在这里插入图片描述
图5测试的四个黑盒扰动

评价 为了衡量水印图像的不可见性,我们采用峰值信噪比(peak signal-to-noise ratio,PSNR)作为度量标准,其值越大表示不可见性越好。对于鲁棒性,我们直接使用提取位精度(extraction bit accuracy, ACC)作为评价指标,ACC越大表示鲁棒性越好。

论文地址:Flow-Based Robust Watermarking with Invertible Noise Layer for Black-Box Distortions

源码地址:FIN

在这里插入图片描述


http://www.niftyadmin.cn/n/5375139.html

相关文章

Impala-架构与设计

架构与设计 一、背景和起源二、框架概述1.设计特点2.框架优点3.框架限制 三、架构图1.Impala Daemon2.Statestore3.Catalog 四、Impala查询流程1.发起查询2.生成执行计划3.分配任务4.交换中间数据5.汇集结果6.返回结果 总结参考链接 一、背景和起源 现有的大数据查询分析工具H…

介绍 MSTest Runner – CLI、Visual Studio 等

作者:Amaury Lev Marco Rossignoli Jakub Jareš 排版:Alan Wang 我们很高兴推出 MSTest 运行器,这是一款全新的轻量级 MSTest 测试运行器。这个新的运行器使测试更加便携和可靠,运行速度更快,并且具有可扩展性&#x…

Ubuntu Desktop 自动获取 IP 地址

Ubuntu Desktop 自动获取 IP 地址 1. 左键单击网络图标 -> Edit Connections2. Network Connections3. Edit -> IPv4 SettingsReferences 1. 左键单击网络图标 -> Edit Connections 2. Network Connections ​​​ 3. Edit -> IPv4 Settings Automatic (DHCP) …

openssl3.2 - osslsigncode工程的学习

文章目录 openssl3.2 - osslsigncode工程的学习概述笔记工程库地址工程的编译osslsigncodeM工程文件列表osslsigncodeM工程搭建细节原始工程实现的改动自己封装的包含openssl和curl的实现osslsigncodeM工程命令行的用法备注 - VS2019调试环境备注 - 如果要单步openssl的API学学…

【Java程序设计】【C00261】基于Springboot的休闲娱乐代理售票系统(有论文)

基于Springboot的休闲娱乐代理售票系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的休闲娱乐代理售票系统 本系统分为系统功能模块、管理员功能模块以及用户功能模块。 系统功能模块:休闲娱乐代理…

通过容器化释放云的力量

NCSC (英国国家网络安全中心) 经常被问到的一个问题是是否在云中使用容器。这是一个简单的问题,但答案非常微妙,因为容器化的使用方式有很多种,其中一些方法比其他方法效果更好。 今天,我们发布了有关使用容器化的安全指南&#…

ES实战-分析数据1

分析是文档被发送并加入倒排索引之前,es在其主体上进行的操作,具体如下 1.字符过滤-使用字符过滤器转变字符 2.文本切分为分词-将文本切分为单个或多个分词 3,分词过滤-使用分词过滤器转变每个分词 4.分词索引-将这些分词存储到索引中 为文档使用分析器 1.当创建索引的时候,为特…

【网站项目】028蜀都天香酒楼管理系统

🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板&#xff…