图像处理之《基于端到端哈希生成模型的鲁棒无覆盖图像隐写》论文精读

本文主要是介绍图像处理之《基于端到端哈希生成模型的鲁棒无覆盖图像隐写》论文精读,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、文章摘要

近年来,无覆盖隐写算法因其完全抵抗隐写分析算法的能力而引起了越来越多的研究关注。然而,现有的算法在面对几何攻击和非几何攻击时,无法达到同样的鲁棒性平衡。此外,现有的方法大多需要在隐写图像的同时传输一些辅助信息,这增加了隐写信息的成本。提出了一种基于哈希生成模型的鲁棒无覆盖图像隐写算法。与现有方法不同的是,哈希序列是由端到端的CNN模型生成的,输入是原始图像,输出是相应的哈希序列。因此,隐藏秘密信息时不需要传输辅助信息。此外,还引入了注意力机制和对抗训练来提高模型的鲁棒性。损失函数被重新设计以适应这些操作。最后,通过建立索引结构来提高映射效率。实验结果表明,与现有的无覆盖图像隐写算法相比,该方法具有更好的鲁棒性和安全性。
在这里插入图片描述

二、动机

2.1 抵抗几何和非几何攻击的不平衡

如第1节所述,现有的无覆盖图像隐写算法通常需要两个单独的步骤来生成哈希序列,这使得很难对生成的哈希序列添加约束。因此,对几何和非几何攻击的鲁棒性不能保持在较高的水平。为了解释这一现象,我们分别在Zhang的[35]、Liu的[36]和Karim的[39]中计算了在一些几何攻击和非几何攻击下提取的特征变化的分布。特征的变化率定义如下:
在这里插入图片描述
其中Vori和Vatt分别表示从原始图像和被攻击图像中提取的特征值,即Zhang[35]中的DCT, Liu[36]中的DWT, Karim[39]中的LL子带的平均值。具体来说,几何攻击包括边缘裁剪、旋转和平移,非几何攻击包括中值滤波器、颜色直方图均衡化和伽马校正。因此,对于每种算法,可以得到6条分布曲线。从图1 (a)、图1 (b)和图1 ©可以看出,这三种算法在不同攻击下的分布曲线是不同的,非几何攻击下的分布接近正态分布,而几何攻击下的分布更为复杂
在这里插入图片描述
图1 Zhang[35]、Liu[36]和Karim[39]的比率分布

造成这种分配不平衡的原因有两个方面。第一个原因来自攻击本身的特点。几何攻击和非几何攻击会从不同方面破坏原始图像的内容。对于几何攻击,即旋转、平移和裁剪,它们通常破坏图像内部的相对关系。例如,在某个坐标上相邻的两个像素之间的关系在旋转后可能会发生明显的变化。然而,对于非几何攻击,即添加噪声、滤波,往往会改变图像的绝对值。一个简单的例子是均值过滤攻击。在一定的滑动窗口下,整个图像的像素将遭受平均操作。因此,图像中相邻像素或块之间的相对关系不会发生太大变化。实际上,生成哈希序列的过程就是通过提取图像的鲁棒特征来表示图像中的一些稳定特征。因此,由于这两种攻击的不同,如果我们不对生成哈希序列的过程添加约束,就很难同时抵御这两种攻击。另一个原因是现有方法中的特征提取和哈希生成方式是人为设计和固定的,面对不同类型的攻击时无法调整。但是这两种攻击引起的图像特征变化有很大的不同,所以现有的方法往往不能同时抵抗几何攻击和非几何攻击。例如,Zhang[35]的方法首先将图像分成块,然后对每个块进行离散余弦变换(DCT),提取鲁棒特征。通过比较相邻区块的DC系数生成哈希序列。该方法对非几何攻击具有较强的鲁棒性。然而,几何攻击会破坏相邻块之间的关系,因此其鲁棒性较差。因此,现有方法的缺陷促使我们寻找新的哈希序列生成方法。我们注意到,深度学习网络可以自动学习高维特征,当目标不同时,它可以通过设置适当的损失函数来达到两者之间的平衡,因为它具有不断更新和学习的特性,正好满足我们的需要。因此,这就是我们使用端到端散列生成网络来完成无覆盖隐写的原因,详细设计将在下一节中展示。

2.2 辅助信息的长度

许多现有的无覆盖图像隐写算法都是基于块的,例如[33]-[36]。在他们的方法中,首先需要将图像分成块,每个块对应一个哈希序列。因此,位置信息,即坐标(rx,ry),图像中块的一部分需要传输到接收方。假设图像的分辨率为P × Q,将其划分为P × Q块。则rx和ry的极差值分别为1 ~ p和1 ~ q。因此,每张图像需要[log2(pq)]位辅助信息。即辅助信息的长度为:

考虑到与“修改”方法相比,无覆盖图像隐写算法的容量并不大,例如Zhang的[35],Liu的[36]和Liu的[38]中的15位/图像。如果p和q的值较大,即Zhang[35]和Liu[36]中p = q = 16的最大值,则辅助信息La的长度将达到8位,传输成本较高。
在这里插入图片描述

综上所述,一方面,现有算法在抵抗几何攻击和非几何攻击方面表现不平衡。另一方面,辅助信息的传递增加了安全风险和成本。因此,我们引入端到端CNN模型来完成生成哈希序列的过程。因为它的输入是整个图像,输出是对应的哈希序列,所以不需要再传输辅助信息。与现有方法的分离不同,它将特征提取和哈希序列生成过程合并到一个网络中,因此更容易在模型中添加约束,可以平衡几何攻击和非几何攻击的鲁棒性。

三、文章提出的方法

3.1 提出的方法框架

本文提出的无覆盖图像隐写框架如图2所示,主要由哈希序列的生成、图像索引数据库的建立、秘密信息的隐藏与提取四个部分组成

对于发送方,首先训练提出的哈希生成模型。然后,建立图像索引数据库的结构。在信息隐藏过程中,将秘密信息分成长度为1的num个段,通过搜索已建立的图像索引数据库,找到与秘密信息段哈希序列相同的对应图像。最后,将所有选定的隐写图像发送到接收方。
在这里插入图片描述
图2 提出方法的框架

在接收端,对于每个接收到的隐写图像,由所提出的模型生成一个二进制哈希序列。然后,将被分割的序列连接起来,恢复原始的秘密信息。

3.2 生成哈希序列

1)网络架构:在生成哈希序列的过程中,使用端到端的CNN。所提出模型的流程图如图3所示。当我们将图像输入模型时,可以生成相应的哈希序列。模型的结构主要由四个模块组成,即主干模块、注意力模块、扁平化模块和哈希生成模块。其中,前三个模块,即主干模块、注意力模块和扁平化模块的功能是提取图像的鲁棒特征,因此将在“2)特征提取模块”部分一起进行说明。最后一个模块将连续特征映射到离散哈希序列,在“3)哈希生成模块”部分进行了描述。
在这里插入图片描述
图3 网络架构

2)特征提取模块:在主干模块中,采用DenseNet-161[40]的特征提取结构,由7×7卷积层、3×3最大池化层和4个密集块组成。该模块具体参数如表1所示。与直接连接的VGG网络相比,DenseNet的密集连接可以帮助网络更好地学习图像的表示。扁平化模块由一个扁平化层和两个完全连接的层组成。扁平化层可以在不影响批量大小的情况下将CNN特征扁平化化为一维特征。通过两个完全连接层后,可以得到形状等于哈希序列长度l的特征。流程可以构造为
在这里插入图片描述

其中,FCl和FC1000分别代表有1个和1000个神经元的全连接层。
在这里插入图片描述
注意力机制的目的是确保网络更多地关注数据的重要部分。在我们的模型中,注意力模块被用来提高网络的鲁棒性。特别地,采用了[41]的结构。可进一步分为空间注意力模块(spatial)和通道注意力模块(channel)。总体结构可以描述
在这里插入图片描述

其中⊗表示逐元素的乘法。F表示空间注意力模块的输出和通道注意力模块的输入。空间注意力集中于学习像素的权重,即不考虑不同通道的权重分布。具体来说,它首先利用了两个池化操作,即平均池化和最大池化。然后用卷积层对得到的特征进行串联和卷积。这个过程可以描述如下
在这里插入图片描述
其中σ和conv分别表示sigmoid函数和卷积层。

对于通道注意力,利用特征的通道间关系生成通道注意力映射。特征映射首先被输入到平均池化层和最大池化层中,以生成空间上下文描述符。然后,两个描述符被转发到一个共享网络,以产生通道注意力映射。共享网络由一个卷积层、一个ReLU函数和另一个卷积层组成。最后,通过元素求和运算对输出的特征向量进行合并。这个过程可以表示如下
在这里插入图片描述
式中σ为sigmoid函数,fN为共享网络。本模块的进一步结果将在第四节中讨论。

3)哈希生成模块由于特征提取模块的输出是连续的,我们需要将其离散化以获得哈希序列。一个简单的想法是利用sign(.)函数。然而,有两个问题。首先,它没有连续导数,不能通过梯度下降直接优化。另一个问题是,它无法控制输出的分布。如果我们把从连续变量到二进制变量的转换看作是有损通信信道,则该信道的容量最大,因为输出0和1是对半分布。因此,可以使用双半层[42]来控制输出的分布。主要思想是首先对输出特征进行排序。然后,它将特征的上半部分映射为1,其余特征映射为0。因此,可以得到输入图像所对应的哈希序列。

4)损失函数的约束:损失函数的约束由三部分组成。第一部分与双半层一致[42],记为lossbi-half。假设在数据集X = {xi}中随机抽样M个样本的小批,i = 1;2,…,M分为X1 = {xm}, M = 1,2,…,M/2, X2 = {xn}, n = M/2 + 1,…,M。模型的输出,即对应的哈希序列B = f(X) = {bi}, i = 1,2,…,M也分为B1 = {bm}, M = 1,2,…,M /2, B2 = {bn},n = M/2 + 1,…,M。同样地,将双半层前的特征映射表示为H = {hi}为H1 = {bm},m = 1,2,…,M/2, H2 = {bn},n = M/2 + 1,…,M。则双半层的损失函数可计算为
在这里插入图片描述
其中||.||2表示欧氏范数,cos(.)表示余弦相似度。

约束的第二部分旨在最小化攻击图像生成的哈希序列与原始图像之间的距离,以增强鲁棒性。在我们的模型中,同时选择几何攻击和非几何攻击来生成被攻击的图像。考虑到旋转后的图像和滤波后的图像在视觉上与原始图像相似,实验中选择了几何攻击时的旋转和非几何攻击时的高斯滤波。这部分的总约束可以描述为
在这里插入图片描述
其中Bgeo和Bnon分别表示几何攻击图像和非几何攻击图像生成的哈希序列。λ1和λ2表示超参数。

约束的最后一部分引入了对抗训练,以进一步提高网络的性能。具体来说,使用了虚拟对抗训练(VAT)[43]方法。主要思想是找到一个微小的扰动,它可以最大限度地增加损失。具体过程如下
在这里插入图片描述
其中,D(a,b)表示测量距离的非负函数。考虑到我们的目的是生成哈希序列而不是分类,我们使用欧几里得范数来评估相似性而不是K-L散度,即D(a,b) = ||a−b||2。比较结果将载于第四节(C.1)。

根据以上分析,整个损失函数可以表示为
在这里插入图片描述

其中λ3是一个超参数。

3.3 建立图像索引数据库

在无覆盖隐写方案中,通常需要将秘密信息分成若干段。事实上,为所有的秘密片段寻找载体会浪费大量的时间,尤其是当图像数据库非常庞大的时候。为了提高图像搜索的效率,我们建立了图像索引数据库,如图4所示。该结构包含三部分:哈希序列、平均像素值和图像路径。第一部分是哈希序列,它是整个图像索引数据库的入口。它按二进制升序排序,从’ 000,…,000’到’111,……111’。由于接收到的图像顺序可能发生变化,中间部分pix存储了图像的平均像素值,用于记录图像顺序,计算方法如下:
在这里插入图片描述

其中Pnum表示图像的像素号,pixi表示第i个像素的像素值。最后一部分是图像路径,显示了图像的路径。在信息隐藏的过程中,所选图像的像素值要大于原图像的像素值。特别是,第一个选定图像的像素应该是整个列表的最小值。然后,在接收端,如果由于网络路由而改变了隐写图像的顺序,则可以通过该参数恢复正确的顺序。假设当前秘密段为’00000000’,其像素为87.9,图像路径对应为’/VOC2012/cat.jpg’。如果下一个秘密段为’11111111’,则选中的图像可以为’/VOC2012/rose.jpg’,因为其pix = 269.0大于87.9,但不能为’/VOC2012/dog .jpg’,因为pix = 58.6。
在这里插入图片描述
图4 建立图像索引数据

3.4 秘密信息隐藏与提取

在建立了图像索引数据库之后,下一步是通过将秘密信息映射到图像索引来隐藏秘密信息。具体过程可以总结如下。

步骤1。假设秘密信息S的长度为L,并将其分成num个段
在这里插入图片描述

如果L不能被L整除,则在最后一段补零,形成一个完整序列,并记录补零个数

步骤2。对于机密信息段Si,i = 1,2,…,num,选取哈希序列等于Si的隐写图像SIi,如下所示
在这里插入图片描述

其中HSj表示所选图像的哈希序列。Ij表示图像数据库中的第j张图像,Num表示图像的个数。

步骤3。重复步骤2,直到获得所有的隐写图像。填充零的数量(如果存在)被转换为二进制并映射到最后一个隐写图像
在这里插入图片描述

步骤4。所有选定的隐写图像被发送到接收方。

信息隐藏过程的伪代码如算法1所示。
在这里插入图片描述
对于接收方,可以通过以下步骤提取秘密信息。

步骤1。接收到的隐写图像的顺序首先由参数pix检查并重新组织(如果需要的话),以防图像的顺序由于网络路由而改变

步骤2。对于接收到的前num个隐写图像, Stego = {SI1,SI2,…,SInum},则可以通过提出的CNN模型生成相应的哈希序列。

步骤3。重复上述步骤,直到提取出所有哈希序列。按顺序连接所有哈希序列。

步骤4。提取最后一个图像SIpadding的哈希序列,它对应于填充零的数量

第5步。从最后一个序列(如果存在)中减去填充零,即可获得恢复的秘密信息S。

算法2描述了秘密信息的提取过程。

在这里插入图片描述

四、实现细节

在实验中,采用了四个广泛使用的数据集,分别是PASCAL VOC2012、MS COCO2014、INRIA Holidays和Caltech-256。前两个数据集与Luo的[37]一致,其余两个数据集采用Liu的[38]方法。这些数据集的具体描述如下。

(1)PASCAL VOC2012数据集[44]。PASCAL VOC是一个世界级的计算机视觉挑战,它为对象类识别提供了标准化的图像数据集。PASCAL VOC2012数据集可分为20个子类,包含11540张图像。

(2)MS COCO2014数据集[45]。MS COCO数据集是一个大规模的目标检测、分割和字幕数据集。2014年版本有82783张训练图像,分为80个类别。

(3)INRIA节假日数据集[46]。假期数据集是一组图像,主要包含我们的一些个人假期照片。该数据集共包含1491幅图像,图像的分辨率很高。

(4)Caltech-256数据集[47]。Caltech-256数据集是通过选择一组对象类别,从Google Images下载示例,然后手动筛选出所有不适合该类别的图像来收集的。它包含30608张图片和257个类别。

在实验中,使用PASCAL VOC2012和MS COCO2014训练集对CNN模型进行训练。在测试阶段,我们随机选择了来自PASCAL VOC 2012的500张图像,MS COCO 2014的500张图像,Caltech-256的500张图像和INRIA Holidays的500张图像进行实验。对比实验中的参数设置如下:将哈希序列l的长度设为8,与Zhang[35]、Liu[36]、Liu[38]、Karim[39]一致。所有的图像都被调整为256×256的实验。超参数λ1、λ2、λ3分别设置为0.3、0.7、1.2。
为了验证本文方法的有效性,我们将本文方法与Zhang[35]、Liu[36]、Luo[37]、Liu[38]、Karim[39]等现有方法进行了比较。对于Zhang的[35]、Liu的[36]、Luo的[37]和Karim的[39]方法,我们复制了他们的实验。对于Liu的[38],没有解释所选择的随机种子。因此,我们采用Liu[38]的原始数据

五、汇报PPT(作者本人)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
论文地址:A Robust Coverless Image Steganography Based on an End-to-End Hash Generation Model

没有公布源码

这篇关于图像处理之《基于端到端哈希生成模型的鲁棒无覆盖图像隐写》论文精读的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/676854

相关文章

Python绘制土地利用和土地覆盖类型图示例详解

《Python绘制土地利用和土地覆盖类型图示例详解》本文介绍了如何使用Python绘制土地利用和土地覆盖类型图,并提供了详细的代码示例,通过安装所需的库,准备地理数据,使用geopandas和matp... 目录一、所需库的安装二、数据准备三、绘制土地利用和土地覆盖类型图四、代码解释五、其他可视化形式1.

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

详解Java中如何使用JFreeChart生成甘特图

《详解Java中如何使用JFreeChart生成甘特图》甘特图是一种流行的项目管理工具,用于显示项目的进度和任务分配,在Java开发中,JFreeChart是一个强大的开源图表库,能够生成各种类型的图... 目录引言一、JFreeChart简介二、准备工作三、创建甘特图1. 定义数据集2. 创建甘特图3.

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

哈希leetcode-1

目录 1前言 2.例题  2.1两数之和 2.2判断是否互为字符重排 2.3存在重复元素1 2.4存在重复元素2 2.5字母异位词分组 1前言 哈希表主要是适合于快速查找某个元素(O(1)) 当我们要频繁的查找某个元素,第一哈希表O(1),第二,二分O(log n) 一般可以分为语言自带的容器哈希和用数组模拟的简易哈希。 最简单的比如数组模拟字符存储,只要开26个c

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

AI一键生成 PPT

AI一键生成 PPT 操作步骤 作为一名打工人,是不是经常需要制作各种PPT来分享我的生活和想法。但是,你们知道,有时候灵感来了,时间却不够用了!😩直到我发现了Kimi AI——一个能够自动生成PPT的神奇助手!🌟 什么是Kimi? 一款月之暗面科技有限公司开发的AI办公工具,帮助用户快速生成高质量的演示文稿。 无论你是职场人士、学生还是教师,Kimi都能够为你的办公文

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

usaco 1.3 Prime Cryptarithm(简单哈希表暴搜剪枝)

思路: 1. 用一个 hash[ ] 数组存放输入的数字,令 hash[ tmp ]=1 。 2. 一个自定义函数 check( ) ,检查各位是否为输入的数字。 3. 暴搜。第一行数从 100到999,第二行数从 10到99。 4. 剪枝。 代码: /*ID: who jayLANG: C++TASK: crypt1*/#include<stdio.h>bool h

pdfmake生成pdf的使用

实际项目中有时会有根据填写的表单数据或者其他格式的数据,将数据自动填充到pdf文件中根据固定模板生成pdf文件的需求 文章目录 利用pdfmake生成pdf文件1.下载安装pdfmake第三方包2.封装生成pdf文件的共用配置3.生成pdf文件的文件模板内容4.调用方法生成pdf 利用pdfmake生成pdf文件 1.下载安装pdfmake第三方包 npm i pdfma