适用于批自适应隐写的安全嵌入方法与流程

文档序号:17331400发布日期:2019-04-05 22:06阅读:308来源:国知局
适用于批自适应隐写的安全嵌入方法与流程

本发明涉及批隐写和隐写者检测技术领域,尤其涉及一种适用于批自适应隐写的安全嵌入方法。



背景技术:

隐写术是一门隐蔽通信的技术,其目的是将秘密信息嵌入到通用的载体(如图像)中而不引起怀疑。设计隐写算法非常具有挑战性,这是因为目前缺少能够准确刻画载体的模型。近年来最主流的自适应隐写算法都是基于最小化加性失真模型来设计实现的,由于网格编码(stcs编码)能够使嵌入失真达到逼近界的性能,设计隐写算法就转换为如何设计能够准确度量嵌入代价的失真函数。目前的隐写分析技术都是通过提取载体的高维度统计模型特征来实现的,图像纹理复杂的区域难以被模型化,因此在纹理复杂区域的修改造成的失真较平滑区域小。自适应隐写算法会根据图像的内容将消息自适应的嵌入到纹理复杂的区域。

当在现实场景中应用隐写术时,发送者往往有多张图像和一段较长的秘密信息,此时发送者所面临的难题为如何将秘密信息分配到多张图像中以使这些图像最不容易被检测到,这也是批隐写所研究的主要内容。针对传统的非自适应隐写算法,ker等人提出了五种嵌入策略,并且用实验证明了当抵抗通用盲隐写分析时,最大贪心策略和最大随机策略比平均策略、线性策略和平方根策略更安全。前两种策略是用尽可能少的图像来嵌入秘密信息,而后三种策略则是用所有的图像来嵌入秘密信息。尽管最大贪心策略具有最好的安全性能,但是它需要预先估计图像的容量(承载消息的最大量)。

当将批隐写应用于自适应隐写算法时(即批自适应隐写),图像的容量取决于编码方法和具体的隐写算法。例如,uerd和rbv在消息嵌入过程中可以修改所有类型的dct系数,包括直流系数、零交流系数和非零交流系数,而ued只能修改非零的交流系数,因此当用ued进行隐写时图像的容量相对较小;由于空域图像隐写时修改的是像素值且所有像素均可以被修改,因此当用相同的编码方法进行隐写时,分辨率相同的图像具有相同的容量。自适应隐写算法的本质是将消息嵌入过程中造成的修改尽可能多的聚集在图像纹理复杂区域,当嵌入相同的消息时,纹理复杂程度高的图像具有较高的安全性。如上所述,最大贪心策略原有的定义不再适用于批自适应隐写,即在进行批自适应隐写时,应该依次挑选纹理复杂程度最高而不是容量最大的图像来满嵌(即嵌入的消息长度等于图像的容量)。因此,批自适应隐写面临的最大难题是如何精确的度量图像的纹理复杂程度。zhao等人基于失真和相对嵌入率间的关系提出了一种度量空域图像纹理复杂程度的方法,随后他们又利用直方图均衡对上一种方法进行了改进,且该方法可应用于空域和jpeg域。但是,以上两种方法都是间接的度量图像的纹理复杂程度,并且都不够精细,从而影响算法的安全性能。



技术实现要素:

本发明的目的是提供一种适用于批自适应隐写的安全嵌入方法,具有较高的安全性能。

本发明的目的是通过以下技术方案实现的:

一种适用于批自适应隐写的安全嵌入方法,包括:

利用度量图像纹理复杂程度的算法来计算每张载体图像的图像残差、图像能量或者图像波动,从而确定每张载体图像的纹理复杂程度;

根据载体图像的纹理复杂程度,并结合编码方法和相应的隐写算法设置载体图像的安全容量;

从所有载体图像中依次挑选纹理复杂程度最大的载体图像满嵌,直到消息嵌完为止,最终得到含有秘密消息的一批图像。

由上述本发明提供的技术方案可以看出,使用更直接、更精细的度量图像纹理复杂程度的方法,有利于提高隐写图像的性能。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的一种适用于批自适应隐写的安全嵌入方法的流程图;

图2为本发明实施例提供的三种度量图像纹理复杂程度算法与传统算法的性能对比示意图;

图3为本发明实施例提供的三种度量图像纹理复杂程度算法与传统算法的性能对比示意图;

图4为本发明实施例提供的一种利用图像残差设计的批自适应隐写嵌入算法与传统算法的性能对比示意图;

图5为本发明实施例提供的一种利用图像残差设计的批自适应隐写嵌入算法与传统算法的性能对比示意图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

本发明实施例提供一种适用于批自适应隐写的安全嵌入方法,如图1所示,其主要包括:

步骤1、利用度量图像纹理复杂程度的算法来计算每张载体图像的图像残差、图像能量或者图像波动,从而确定每张载体图像的纹理复杂程度。

在具体实施阶段,可以分别计算每张载体图像的图像残差,利用图像残差来表达载体图像的纹理复杂程度,图像残差越大表明相应载体图像的纹理越复杂;

或者,分别计算每张载体图像的图像能量,利用图像能量来表达载体图像的纹理复杂程度,图像能量越大表明相应载体图像的纹理越复杂;

或者,分别计算每张载体图像的图像波动,利用图像波动来表达载体图像的纹理复杂程度,图像波动越大表明相应载体图像的纹理越复杂。

步骤2、根据载体图像的纹理复杂程度,并结合编码方法和相应的隐写算法设置载体图像的安全容量。

载体图像的纹理复杂程度决定了图像的安全容量;纹理复杂程度越高安全容量越大,纹理复杂程度越低安全容量越小。

步骤3、从所有载体图像中依次挑选纹理复杂程度最大的载体图像满嵌,直到消息嵌完为止,最终得到含有秘密消息的一批图像。

本领域技术人员可以理解,批隐写就是将秘密消息隐藏到一批图像中,最后将这一批图像发出去实现秘密通信,因此一批图像是一个整体;本发明实施例中,依次挑选纹理最复杂的载体图像满嵌,也即相应载体图像的安全容量全部用来嵌入秘密消息,直到消息嵌完为止,最终得到含有秘密消息的一批图像。

为了便于理解,下面针对三种度量图像纹理复杂程度的方法做详细的介绍。

一、图像残差。

用小波滤波器组滤波图像得到方向残差矩阵,然后对所有方向残差矩阵元素的绝对值求和即可得到图像残差。图像残差表达了图像的细节纹理内容,纹理越复杂的图像其残差值越大。优选实施方式如下:

1)判断载体图像的类型,若为空域图像则无需预处理,若为jpeg域图像则将其预处理为空域图像(无需将像素值量化为{0,...,255}以防止丢失信息)。·

2)由于小波滤波器在隐写算法wow和rbv中表现出良好的性能,可以利用小波的一维低通分解滤波器h和高通分解滤波器g生成了一个由三个高通滤波器组成的小波滤波器组b={k(1),k(2),k(3)},每一滤波器k(k),k∈{1,2,3}的核都被归一化处理以使得他们的l2范数||k(k)||2相等;滤波器组b={k(1),k(2),k(3)}计算公式为:

k(1)=h·gt,k(2)=g·ht,k(3)=g·gt

k(k),k∈{1,2,3}可以为二维小波滤波器组中的高通滤波器,事实上,任何类型的小波族如haar小波、daubechies(简称db小波)和symlet(对称小波)都可以被用来构造小波滤波器组,这里之所以采用daubechies8-tap是因为其在wow和rbv隐写算法中的高安全性能。

3)利用表示空域图像或由jpeg域图像预处理得到的空域图像,其中,ζ表示一个与图像尺寸相同的矩阵,例如,一副图像的像素值矩阵或dct系数矩阵;第k个残差矩阵r(k),k∈{1,2,3}由r(k)=k(k)*x计算得到,其中的*代表卷积镜像操作,以使r(k)与x具有相同的元素个数;

4)图像残差是通过方向残差评估图像在水平、垂直和对角方向上的纹理复杂程度,就像素而言,一个像素具有三个方向残差,如果这三个方向残差绝对值的和大,意味着该像素周围的纹理比较复杂。同样的,对于整张图像来说,如果其所有的方向残差绝对值的和比较大,则该图像的纹理就比较复杂。

图像残差定义为:

其中,表示像素xi,j在残差矩阵r(k)中的残差值,n1、n2分别为载体图像的长、宽。

二、图像能量。

关于jpeg图像中dct(离散余弦变换)块的能量函数首次出现在uerd(uniformembeddingrevisiteddistortion)算法中,该函数最初被用来度量dct块的嵌入失真。由uerd算法的失真函数我们得出如果dct块的能量越大则其块内dct系数的失真就越小的结论。换句话说,如果dct块的能量越大则该图像块的纹理就越复杂。类似的,如果整张图像的能量值越大则该图像的纹理就越复杂。

优选实施方式如下:

1)判断载体图像的类型,若为jpeg域图像则无需预处理,若为空域图像则将其预处理为jpeg域图像;

2)假设jpeg域图像x,其大小为n1×n2,n1与n2均为8的倍数;利用ya,b表示位于(m,n)处的大小为8×8的dct块内(a,b)位置处的dct系数,qa,b表示系数ya,b对应的量化步长,定义位于(m,n)处dct块的能量为:

在上式中令y1,1=0以消除dc系数的影响;则图像能量的定义为:

dc系数也即直流dct系数,8*8块中(1,1)处的dct系数表示直流dct系数。

三、图像波动

评估图像纹理复杂程度最直接的方法就是计算相邻像素间的绝对差值(即像素波动值)。一个像素与其周围像素的绝对差值越大,则该像素周围的纹理就越复杂;同样,整张图像像素间绝对差值的和越大,则该图像的纹理复杂程度也就越高;也就是说,图像波动值越大,则图像的纹理复杂程度越高。

优选实施方式如下:

1)判断载体图像的类型,若为空域图像则无需预处理,若为jpeg域图像则将其预处理为空域图像;

2)假设空域图像大小为n1×n2,首先计算每个像素与其周围8个像素间的平均绝对差值,像素xi,j的波动值为:

3)再计算整张图像所有像素的波动值的和,并将其作为图像波动值:

为了说明本发明上述方案的效果,还进行了相关对比实验。

1、本发明提出的三种度量图像纹理复杂程度算法的性能如图2和图3所示,可以看出这三种算法的性能都比zhao的算法性能好,且图像残差具有最优的表现性能。该试验的设置为:用每种度量图像纹理复杂程度的算法分别从bossbase1.01图像库中挑选纹理值最高的5000张图像,然后用隐写算法对这些图像进行单张隐写,并提取每张图像的高维特征,最后用分类器进行单张检测,计算其平均检测错误率。

2、本发明提出的利用图像残差来挑选纹理复杂程度最高的图像,其性能如图4和图5所示,可以看出在基于择多判决(即用户发送的所有图像中单张检测为阳性的图像个数超过预先设定的门限值就将该用户判为隐写者)的隐写者检测方法下该嵌入策略比zhao的嵌入策略更安全。该实验的设置为:首先从数据库bossbase1.01随机挑选5000张图像用于训练分类器(假设隐写算法、图像库和平均嵌入率已知),然后从剩下的5000张图像中随机挑选100张图像来模拟用户,共重复模拟400次,200模拟正常用户,200次模拟隐写者。图4和图5为不同嵌入策略在平均嵌入率为0.1bpp(bpnzac),图像容量为1.0bpp(bpnzac)情况下的安全性能。

图2~图5中,hill指的是一种关于空域图像的隐写算法,同样是英文首字母简称;srm指的是专门攻击/检测空域图像是否被嵌入消息(载体或载密图)的隐写分析特征;同样是英文首字母简称,中文名可以叫“富模型”;rbv指的是关于jpeg图像的隐写算法名称;dctr指的是专门检测/攻击jpeg图像是载体还是载密图的隐写分析特征;qf=75指的是jpeg图像的质量因子是75;wow指的是一种关于空域图像的隐写算法,同样是英文首字母简称。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1