首页 / 专利库 / 图形技术 / 方块效应 / 基于块效应的非加性失真JPEG图像隐写方法

基于效应的非加性失真JPEG图像隐写方法

阅读:929发布:2020-05-12

专利汇可以提供基于效应的非加性失真JPEG图像隐写方法专利检索,专利查询,专利分析的服务。并且本 发明 公开一种基于 块 效应的非加性失真JPEG图像隐写方法。该方法基于JPEG图像的块效应,提出一种指导失真代价向减小块效应的方向进行调整的方法。通过块效应评估与局部失真代价调整的结合,实现对现有主流JPEG隐写 算法 的改进,抵抗目前最先进的高维隐写分析特征的检测。本发明的优势在于,目前主流的JPEG隐写算法都是基于加性失真代价的隐写而容易被高维隐写分析特征检测,而本发明从非加性失真代价的 角 度出发,基于块效应来保持图像元素之间的相关性,使得隐写的隐蔽性和安全性提高。该方法具有较强的通用性,有利于提高JPEG隐写算法的安全性。,下面是基于效应的非加性失真JPEG图像隐写方法专利的具体信息内容。

1.基于效应的非加性失真JPEG图像隐写方法,其特征在于,包括如下步骤:
第一步,首先将原始图像按照16*16划分成了多个子块,然后对每个16*16的子块又按照8*8的大小,分成4个子图像,按顺时针方向由上到下由左到右将4个子图像分别标号为子图像1、子图像2、子图像3、子图像4;
第二步:针对位置标号为1的子图像,利用现有的隐写算法计算每个像素点的失真代价,然后嵌入1/4的隐秘信息,将嵌入后的图像记为stego1;
第三步:计算位置标号为2的子图像中的所有像素点的失真代价,然后计算位置标号为
2的子图像中所有8*8块内每个像素点内+1和-1在空域上的块效应评估值QBLK,记像素点(i,j)频域+1后转化到空域的局部块效应评估值为 记像素点(i,j)频域-1后转化到空域的局部块效应评估值为
第四步:根据式(9)和式(10)来调整像素点(i,j)的失真代价,其中 表示+1的失真代价, 表示-1的失真代价,ρi,j表示使用现有隐写算法计算得到的失真代价,最初的失真代价 根据块效应计算结果,进行调整,当 时, 当
时, 其中α为调整因子,用来调节失真代价的大小,α∈(0,1);
第五步:利用调整后的失真代价,在图像中嵌入1/4的信息,将嵌入秘密信息后的图像标记为stego2;
第六步:重复第三到五步,对位置标号为3和4的子图像分别嵌入1/4的信息,分别得到stego3和stego4,将stego1、stego2、stego3和stego4组合在一起,得到最终的隐秘图像stego。
2.如权利要求1所述的基于块效应的非加性失真JPEG图像隐写方法,其特征在于:第三步中计算块效应评估值QBLK的方法如下,
对于图像中任意一个8*8块A,其四周的四个子块分别标记为B、C、D、E,B、D两个子块为子块A在平方向上的相邻子块,而C、E两个子块为子块A在垂直方向上的相邻子块;其中,A和相邻块子B的水平块间差异值Bh的计算方式如下:
其中Nh和Dh的值定义如下:
其中,aij,bij分别表示子块A和子块B在i,j位置上的像素值,i,j表示像素点在子块上的位置;Nh是计算相邻块边界的像素差值,而Dh则是相邻块间和块内的差异值相加,Bh则是Nh和Dh的比值;
子块A和子块B水平方向的平坦度值的计算公式如下:
其中
Zh表示子块A和子块B的水平方向的平坦度测量值,其范围是从0到10,同理,计算得出子块A和子块C竖直方向的块间差异值Bv和平坦度Zv;同时计算出子块A和相邻子块D和E之间的块间差异值B′h、B′v以及块间平坦度量值Z′h、Z′v,最终的局部块效应度量值QBLK为:
QBLK=max(BBLK,ZBLK)    (式6)
QBLK的值代表了子块A与相邻子块B、C、D、E之间的块效应度量值,值越大,说明块效应越强。
3.如权利要求1所述的基于块效应的非加性失真JPEG图像隐写方法,其特征在于:第二步中现有的隐写算法包括J-UNIWARD隐写算法、J-UED隐写算法、J-UERD隐写算法。

说明书全文

基于效应的非加性失真JPEG图像隐写方法

技术领域

[0001] 本发明涉及多媒体安全和数字媒体处理技术领域,特别涉及对图像进行秘密信息嵌入的隐写算法技术领域。

背景技术

[0002] 现代隐写术是一利用数字媒体进行秘密通信的技术,其目标是在图像、音频、视频等数字媒体中隐藏秘密信息。随着互联网的普及以及图片自身的易传播性,数字图像成为极易获取的隐藏载体,其中JPEG图像作为一种广泛使用的图像格式,得到了广泛的关注,各种基于JPEG图像的隐写算法层出不穷。但是,随着基于高维特征的隐写分析算法的提出,这些算法能对传统的JPEG隐写算法进行有效检测,这对JPEG图像隐写算法提出了严峻的挑战。
[0003] 传统的隐写术的重点在于如何尽量减小隐写过程对载体图像造成的影响,常见的做法就是通过合适的编码方式,让一个bit位的改变,代表尽可能多的秘密信息。这种传统隐写术仅仅基于隐写过程本身,而不考虑图像内容,同时在隐写过程中会对原有图像的统计信息造成破坏,传统隐写分析正是基于统计信息来对隐写图像进行检测。
[0004] 为了改进传统隐写算法不考虑图像内容的缺陷,越来越多现代的隐写算法将图像元素的修改集中在了纹理复杂的区域或者边缘区域,这些自适应隐写算法均比传统隐写算法安全。自适应隐写算法为载体图像的每个元素分配一个失真代价来表示其隐写安全程度,然后根据载体图像内容和待嵌入消息长度,自适应地选择纹理复杂区域或者边缘区域进行嵌入,从而使隐写后图像的总体失真达到最小。自适应隐写算法分为失真代价设计和编码嵌入两个部分,其中最典型的编码方式为STC(Syndrome-Trellis Codes)编码[3],使用STC编码能使得嵌入效率逼近理论上界,从而使得隐写算法设计的重心转移到了失真代价的设计上,而不需要过多关注编码方式。
[0005] 现有的自适应隐写算法在设计失真代价时,每一个图像像素点之间都是相互独立的,所得到的失真代价是加性的,即总的失真代价等于每个像素点的失真代价的总和。然而,图像元素之间存在相互关系,修改其中一个像素点,很可能对周围像素点都造成影响,即破坏了整个图像块的完整性。然而,由于元素之间的关系过于复杂,很难准确描述每个元素之间的关系。一种可行的做法是在嵌入时,减少嵌入修改带来的块间不连续性。因此,可利用JPEG压缩中的块效应来进行衡量。
[0006] 块效应是由于JPEG有损压缩而在块边缘出现不连续性的一种现象,图像的质量因子越小,则量化步长越大,带来的块效应也越明显。具体来说,在进行JPEG压缩过程中,如果对整幅图像都进行DCT变换,由于变换后的DCT系数与图像中的每个像素都相关,导致运算量非常大。因此,当今所使用的DCT变换都是基于块的,即首先将图像分成8*8的像素块,然后再基于这些像素块进行DCT变换,每个变换得到64个DCT系数,这样就大大降低了运算量。但是由于分别对每块进行DCT变换,块与块之间的相关性信息丢失。如果此时量化步长较大,就会导致块与块之间的边界处出现不连续的跳跃,出现明显的块效应。因此,若是在隐写过程中,对块与块边界处的像素点进行修改,则会导致块效应加剧。相反的,若往反方向进行修改,减弱块效应,就能在一定程度上保证隐写的安全性。现有的一些块效应评估算法,如FBB算法[4],IQA算法[5],RMB算法[6],在块效应的评估上有较好的效果。因此,如何利用块效应来衡量块与块之间的关系,为指导非加性失真代价的调整提供了可能。
[0007] 参考文献:
[0008] [1]Pan F,Lin X,Rahardja S,et al.A locally-adaptive algorithm for measuring blocking artifacts in images and videos[C]//2004IEEE International Symposium on Circuits and Systems(IEEE Cat.No.04CH37512).IEEE,2004,3:III-925.[0009] [2]Li B,Wang M,Li X,et al.A strategy of clustering modification directions in spatial image steganography[J].IEEE Transactions on Information Forensics and Security,2015,10(9):1905-1917.
[0010] [3]Filler T,Judas J,Fridrich J.Minimizing Additive Distortion in Steganography  Using Syndrome-Trellis Codes[J].IEEE Transactions  on Information Forensics and Security,2011,6(3):920-935.
[0011] [4]Pan F,Lin X,Rahardja S,et al.A locally-adaptive algorithm for measuring blocking artifacts in images and videos[C]//2004IEEE International Symposium on Circuits and Systems(IEEE Cat.No.04CH37512).IEEE,2004,3:III-925.[0012] [5]Zhan Y,Zhang R.No-reference JPEG image quality assessment based on blockiness and luminance change[J].IEEE Signal Processing Letters,2017,24(6):760-764.
[0013] [6]Li L,Zhu H,Yang G,et al.Referenceless measure of blocking artifacts by Tchebichef kernel analysis[J].IEEE Signal Processing Letters,2013,21(1):122-125.

发明内容

[0014] 本发明针对现有基于加性失真代价的自适应隐写算法所存在的问题,实现一种基于块效应的非加性失真代价的隐写算法。
[0015] 聚集修改方向(clustering modified directions,CMD)是一种利用嵌入变化之间的交互作用的方法。CMD的主要思想在于:当对两个像素点进行修改时,对这两个像素点同时加1或者减1,对图像造成的影响小于对这两个像素点一个加1,一个减1所带来的影响。为了实现这种同方向的修改,CMD在实现过程中将一幅图像分成了若干个子图像,在这些子图像中,通过现有的一些主流隐写算法计算出每个像素点的失真代价,同时考虑到相互嵌入的影响,对失真代价进行调整,使得嵌入修改往同方向进行。将CMD的思想应用于块效应上,使得嵌入方向朝着使块效应减小的方向进行,对于提升隐写算法的安全性有一定指导作用。因此,如何利用块效应评估值来构造有效的隐写算法,降低隐写时对像素之间的相互关系造成的影响,以提高隐写算法的安全性,对于自适应隐写算法具有重要的意义。
[0016] 本发明基于块效应来衡量像素点之间的相互关系,采用块效应评估算法来衡量块效应,并使用分块的方法来指导嵌入修改向减缓块效应的方向进行,最后结合集成分类器来对隐写算法的安全性进行测试。具体包括如下步骤:
[0017] 第一步,首先将原始图像按照16*16划分成了多个子块,然后对每个16*16的子块又按照8*8的大小,分成4个子图像,按顺时针方向由上到下由左到右将4个子图像分别标号为子图像1、子图像2、子图像3、子图像4;
[0018] 第二步:针对位置标号为1的子图像,利用现有的隐写算法计算每个像素点的失真代价,然后嵌入1/4的隐秘信息,将嵌入后的图像记为stego1;
[0019] 第三步:计算位置标号为2的子图像中的所有像素点的失真代价,然后计算位置标号为2的子图像中所有8*8块内每个像素点内+1和-1在空域上的块效应评估值QBLK,记像素点(i,j)频域+1后转化到空域的局部块效应评估值为 记像素点(i,j)频域-1后转化到空域的局部块效应评估值为
[0020] 第四步:根据式(9)和式(10)来调整像素点(i,j)的失真代价,其中 表示+1的失真代价, 表示-1的失真代价,ρi,j表示使用现有隐写算法计算得到的失真代价,最初的失真代价 根据块效应计算结果,进行调整,当 时,当 时, 其中α为调整因子,用来调节失真代价的大小,α∈(0,1);
[0021]
[0022]
[0023] 第五步:利用调整后的失真代价,在图像中嵌入1/4的信息,将嵌入秘密信息后的图像标记为stego2;
[0024] 第六步:重复第三到五步,对位置标号为3和4的子图像分别嵌入1/4的信息,分别得到stego3和stego4,将stego1、stego2、stego3和stego4组合在一起,得到最终的隐秘图像stego。
[0025] 进一步的,第三步中计算块效应评估值QBLK的方法如下,
[0026] 对于图像中任意一个8*8块A,其四周的四个子块分别标记为B、C、D、E,B、D两个子块为子块A在平方向上的相邻子块,而C、E两个子块为子块A在垂直方向上的相邻子块;其中,A和相邻块子B的水平块间差异值Bh的计算方式如下:
[0027]
[0028] 其中Nh和Dh的值定义如下:
[0029]
[0030]
[0031] 其中,aij,bij分别表示子块A和子块B在i,j位置上的像素值,i,j表示像素点在子块上的位置;Nh是计算相邻块边界的像素差值,而Dh则是相邻块间和块内的差异值相加,Bh则是Nh和Dh的比值;
[0032] 子块A和子块B水平方向的平坦度值的计算公式如下:
[0033]
[0034] 其中
[0035]
[0036] Zh表示子块A和子块B的水平方向的平坦度测量值,其范围是从0到10,同理,计算得出子块A和子块C竖直方向的块间差异值Bv和平坦度Zv;同时计算出子块A和相邻子块D和E之间的块间差异值B′h、B′v以及块间平坦度量值Z′h、Z′v,最终的局部块效应度量值QBLK为:
[0037] QBLK=max(BBLK,ZBLK)  (式6)
[0038]
[0039]
[0040] QBLK的值代表了子块A与相邻子块B、C、D、E之间的块效应度量值,值越大,说明块效应越强。
[0041] 进一步的,第二步中现有的隐写算法包括J-UNIWARD隐写算法、J-UED隐写算法、J-UERD隐写算法。
[0042] 本发明的优势在于:现有的自适应隐写算法在计算失真代价时,都是基于加性模型,即每个像素点之间是没有关系的,总的失真代价等于每个像素点的失真代价的总和。但是,实际上图像元素之间具有一定的相关性,许多检测算法也从图像像素间关系出发。因此,加性隐写算法具有不安全性。而本方法基于图像的块效应,考虑像素点之间的关系,提出一种非加性的隐写算法,使得隐写图像的抗检测能增强。同时,本发明能够运用在现有的JPEG隐写算法中,提高现有JPEG隐写算法的安全性。附图说明
[0043] 图1为JPEG图像分割成8*8分块的示意图。其中,图1(a)为图像分块过程中,计算图像块的块效应所需要用到的周围四个子块的示意图。图1(b)为图1(a)的细化示意图,每个子块都由8*8的像素点组成。
[0044] 图2为本发明将JPEG图像在16*16分块基础上分割成4个子图像的示意图。
[0045] 图3为本发明的隐写算法流程图
[0046] 图4为本发明在不同嵌入率下,与不同隐写算法的对比结果图。其中,图4(a)、图4(b)、图4(c)是质量因子为75的条件下,运用本方法与现有隐写算法BBC分别优化了UED、UERD、J-UNIWARD算法后的对比结果图。图4(d)、图4(e)、图4(f)是质量因子为95的条件下,运用本方法与现有隐写算法BBC分别优化了UED、UERD、J-UNIWARD算法后的对比结果图。

具体实施方式

[0047] 下面结合附图和实施例对本发明的技术方案作进一步说明。
[0048] 块效应评估方法会对JPEG图像块效应的强弱给出一个评估值,本方法使用能够单独检查局部块效应的测量方法,该方法的流程如下所述。
[0049] 如图1所示,在评估局部块效应时,将原始图像分为大小为8*8的子块。在评估8*8子块A的块效应时,需要用到其四周的四个子块,分别标记为B、C、D、E。其中B、D两个子块为子块A在水平方向上的相邻子块,而C、E两个子块为块A在垂直方向上的相邻子块。对于图像中任意一个8*8块A,和其相邻块B的水平块间差异值Bh的计算方式如下:
[0050]
[0051] 其中Nh和Dh的值定义如下:
[0052]
[0053]
[0054] 其中,aij,bij分别表示子块A和子块B在i,j位置上的像素值,i,j表示像素点在子块上的位置;Nh是计算相邻块边界的像素差值,而Dh则是相邻块间和块内的差异值相加,Bh则是Nh和Dh的比值,为了控制Bh值的范围为0到10之间,γ1和γ2的值设置为10和1.5。aij和bij分别代表了8*8子块中对应位置的像素点。
[0055] 除此之外,还需要考虑由于压缩导致的块间过度平坦的现象,平坦度由局部像素差值过零点的比例来衡量,块A和块B水平方向的平坦度值的计算公式如下:
[0056]
[0057] 其中
[0058]
[0059] Zh表示块A和块B的水平方向的平坦度测量值,其范围是从0到10。同理,可以计算得出块A和块C竖直方向的块间差异值Bv和平坦度Zv,同时也可以用该方法计算出块A和相邻块D和E之间的块间差异值B′h、B′v以及块间平坦度量值Z′h、Z′v,最终的局部块效应度量值QBLK为:
[0060] QBLK=max(BBLK,ZBLK)  (式6)
[0061]
[0062]
[0063] QBLK的值代表了块A与相邻块B、C、D、E之间的块效应度量值,值越大,说明块效应越强。
[0064] 在设计局部块效应的评估方法前,需要先找出块效应与隐写算法安全性的对照关系。理论上,隐写算法的安全性越高,意味着该算法对图像造成的影响较小,即隐写后的图像失真程度较小,则对应的块效应强度也应该越小。因此,本方法取lena.tiff作为测试图像,并将质量因子值取75,将其压缩成JPEG图像。之后,使用现有的主流JPEG隐写算法EBS、UED、UERD以及JUNIWARD来进行嵌入,并分别计算其对应的块效应评估值,分别记为Q_EBS、Q_UED、Q_UERD、Q_JUNI。实验结果如表1所示。
[0065] 表1不同嵌入算法的块效应评估值
[0066]
[0067]
[0068] 可以看到,使用FBB和IQA评估算法,cover图像的评估值均小于隐写后的隐秘图像的评估值,而使用了RMB评估算法,cover图像的评估值均大于隐写后的隐秘图像的评估值。这是因为两类算法的评估方法不同,FBB和IQA算法的评估值越小,说明块效应强度越低,RMB算法的评估值越大,说明块效应强度越低。因此可以看出,块效应的强度越低,对应的隐写算法安全性就越高,即减小隐秘图像的块效应强度能够有效提升隐写算法的安全性。
[0069] 由于DCT变换具有可逆性,在对DCT系数做隐写嵌入时,通常都是对系数值进行±1操作。因此,为了得到8*8块修改时造成的空域影响,可以利用DCT变换的可逆性。具体操作如下:
[0070] 1、首先取一个8*8的块,将要修改的像素位设置为1,其余设置为0。
[0071] 2、对该8*8块进行反DCT变换,之后再进行反量化,得到8*8块的空域影响度。
[0072] 3、如果在频域内对像素点的操作为+1,则在其对应的空域8*8块上加上计算得到的空域影响度;如果在频域内对像素点的操作为-1,则在其对应的空域8*8块上减去计算得到的空域影响度。
[0073] 4、在空域上取以这个8*8块为中心的3*3的8*8块,计算中心8*8块和上下左右共4个方向的块间差异值BBLK和块间平坦度ZBLK,最后通过式6计算得到局部块效应评估值QBLK,将同一个像素点在频域内+1和-1操作后得到的局部块效应评估值分别记为Q+和Q-。
[0074] 本发明基于块效应来衡量像素点之间的相互关系,采用块效应评估算法来衡量块效应,基于CMD的思想并使用分块的方法来指导嵌入修改向减缓块效应的方向进行,CMD方法能够指导像素修改的方向,即对像素点使用+1还是-1来进行信息的嵌入。如图3所示,本发明是一种基于块效应的非加性隐写算法,具体过程包括以下步骤:
[0075] 第一步,首先将原始图像按照16*16划分成了多个子块,然后对每个16*16的子块又按照8*8的大小,分成4个子图像,按从上到下从左到右的顺序,将4个子图像分别标号为子图像1、子图像2、子图像3、子图像4,其中标号为1的位置代表一个8*8的子图像,标号为2、3、4的位置分别代表了另外3个子图像,如图2所示。
[0076] 第二步:在位置标号为1的子图像用主流隐写算法,如J-UNIWARD隐写算法或者J-UED隐写算法计算每个像素点的失真代价,然后嵌入1/4的隐秘信息,将嵌入后的图像记为stego1。
[0077] 第三步:利用现有JPEG隐写算法,计算位置标号为2的子图像中的所有像素点的失真代价,然后通过式(6)计算位置2所有8*8块内每个像素点内+1和-1在空域上的块效应评估值,记像素点(i,j)频域+1后转化到空域的局部块效应评估值为 记像素点(i,j)频域-1后转化到空域的局部块效应评估值为
[0078] 第四步:根据式(9)和式(10)来调整像素点(i,j)的失真代价,其中 表示+1的失真代价, 表示-1的失真代价,ρi,j表示使用主流隐写算法计算得到的失真代价。最初的失真代价 根据块效应计算结果,进行调整。当 时, 当时, 其中α为调整因子,用来调节失真代价的大小,α∈(0,1)。
[0079]
[0080]
[0081] 第五步:利用调整后的失真代价,在图像中嵌入1/4的隐秘信息,将嵌入秘密信息后的图像标记为stego2。
[0082] 第六步:重复第三到五步,对位置为3和4的子图像分别嵌入1/4的信息,分别得到stego3和stego4。将stego1、stego2、stego3和stego4组合在一起,得到最终的隐秘图像stego。
[0083] 下面对本发明中隐写算法的安全性进行检测:
[0084] 步骤2.1,输入jpg格式的图像样本,将该样本复制一份,作为cover样本。
[0085] 步骤2.2,按照实施例中的方法,对图像样本进行隐秘信息的嵌入,得到cover图像对应的stego样本。
[0086] 步骤2.3,把2.2得到的成对的图像样本随机分成数量相同两部分,一部分作为训练集,另一部分作为测试集来验证基于块效应的非加性隐写算法的安全性。
[0087] 步骤2.4,利用隐写分析特征,分别提取cover图像和stego图像的特征。
[0088] 步骤2.5,利用训练集中的cover样本特征和对应的stego样本特征,并结合集成分类器来训练隐写分析模型。
[0089] 步骤2.6,用测试集样本的特征来验证算法的安全性。实验以隐写分析方法检测的错误率为基准,分别测试了在质量因子为75和95的情况下,该方法对于现有JPEG隐写算法的提升。对比时,隐写算法采用了UED、UERD、J-UNIWARD三种主流JPEG隐写算法,同时也对BBC算法进行对比。BBC算法与本方法类似,都是一种对现有隐写算法进行优化的方法。实验结果如图4所示,图像横轴代表了不同的嵌入率,纵轴代表了检测的错误率,使用本方法进行优化的隐写算法和使用BBC算法进行优化的隐写算法分别使用后缀BAR和BBC表示。实验结果表明,该算法在不同嵌入率、不同质量因子的条件下,使用本方法进行优化的隐写算法的安全性不仅高于原算法的安全性,还优于使用BBC算法进行优化的隐写算法,特别是在嵌入率较高的情况下,本方法带来的安全性提升很大。
[0090] 本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈