基于八邻域像素的可逆信息隐藏方法转让专利

申请号 : CN201610420080.5

文献号 : CN106097241B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 潘志斌王凌飞朱若馨

申请人 : 西安交通大学

摘要 :

本发明公开一种基于八邻域像素的可逆信息隐藏方法,该方法针对空域的灰度图像,运用待嵌入像素的八邻域像素对其预测并计算出预测差值,再利用差值结合直方图搬移算法进行秘密信息的嵌入的方法;具体包括以下步骤:首先,利用待嵌入像素八邻域像素的特征对当前块的平滑度作了预测,得到平滑度的特征,之后对待嵌入像素进行预测得到差值并根据平滑度采取不同的秘密信息嵌入模式,以期望减少由于嵌入秘密信息而带来的失真;最后利用嵌入模板将模板范围内的所有像素按顺序依次嵌入完成以达到较高的嵌入容量;由于自然灰度图像的特性,本方法可以很好的利用这一点在嵌入大量秘密信息的同时还能保证嵌入图像有较小的失真,提高了信息隐藏的安全性。

权利要求 :

1.基于八邻域像素的可逆信息隐藏方法,其特征在于,包括以下步骤:

步骤一:得到一幅八比特灰度图像,大小为M×N;

步骤二:将当前待嵌入像素的八邻域像素取出;

步骤三:判断当前待嵌入像素及其八邻域像素组成的块是否为复杂块,如果是则跳转至步骤五;如果不是则将八邻域像素分成四组,每一组均用MED预测方法得出一个预测值MEDi,i=1,2,3,4;然后对当前待嵌入像素计算预测值Pre,并与待嵌入像素相减得到差值e;

步骤四:利用步骤三得到的差值e,利用直方图搬移的原理进行秘密信息的嵌入;

步骤五:重复步骤二至步骤四进行下一个待嵌入像素的处理,直至得到步骤一获得八比特灰度图像中所有待嵌入像素处理完成;

步骤三中每一组均根据公式(1)用MED预测方法得出一个预测值MEDi,i=1时,a为左邻像素,b为上邻像素,c为左上邻像素;i=2时,a为右邻像素,b为上邻像素,c为右上邻像素;i=3时,a为左邻像素,b为下邻像素,c为左下邻像素;i=4时,a为右邻像素,b为下邻像素,c为右下邻像素;得到四组预测值;再用公式(2)-(4)对当前待嵌入像素计算预测值Pre,并与待嵌入像素相减得到差值e;

2.根据权利要求1所述的基于八邻域像素的可逆信息隐藏方法,其特征在于,步骤二中八邻域像素为当前待嵌入像素左、右、上、下、左上、左下、右上和右下邻域像素。

3.根据权利要求1所述的基于八邻域像素的可逆信息隐藏方法,其特征在于,步骤二具体包括以下步骤:将当前待嵌入像素的八邻域像素取出后,根据从小到大的顺序进行排序,将排序后结果第二大和第二小的像素值作差值,并与阈值Τ1和Τ2作比较;如果差值的结果小于等于Τ1,则当前待嵌入像素及其八邻域像素组成的块为平滑块;小于等于Τ2大于Τ1,则当前待嵌入像素及其八邻域像素组成的块为普通块;大于Τ2,则当前待嵌入像素及其八邻域像素组成的块为复杂块。

4.根据权利要求1所述的基于八邻域像素的可逆信息隐藏方法,其特征在于,步骤四具体包括以下步骤:如果当前块是平滑块,则根据得到的差值e结合公式(5)对当前像素进行嵌入和搬移;如果当前块是普通块,则根据得到的差值e结合公式(6)对当前像素进行嵌入和搬移;

其中,m∈{0,1},为嵌入的秘密信息。

5.根据权利要求1所述的基于八邻域像素的可逆信息隐藏方法,其特征在于,八比特灰度图像中包括嵌入区域和非嵌入区域,非嵌入区域为八比特灰度图像中最外周的一圈像素,其余区域为嵌入区域。

6.根据权利要求5所述的基于八邻域像素的可逆信息隐藏方法,其特征在于,嵌入区域中,设像素为Ix,y,横坐标为x,纵坐标为y,按顺序将2≤x≤M,2≤y≤N范围内的像素依次处理;待嵌入的像素分四个嵌入步骤分别嵌入:第一步嵌入像素Ix,y的位置满足mod(x,2)=0,mod(y,2)=0;第二步嵌入像素Ix,y的位置满足mod(x,2)=0,mod(y,2)=1;第三步嵌入像素Ix,y的位置满足mod(x,2)=1,mod(y,2)=0;第四步嵌入像素Ix,y的位置满足mod(x,2)=1,mod(y,2)=1。

7.根据权利要求3所述的基于八邻域像素的可逆信息隐藏方法,其特征在于,Τ1=5,Τ2=15。

说明书 :

基于八邻域像素的可逆信息隐藏方法

【技术领域】

[0001] 本发明属于基于空域的可逆信息隐藏领域,特别涉及一种基于八邻域像素(即左,右,上,下,左上,左下,右上,右下邻域像素)可逆信息隐藏方法。【背景技术】
[0002] 目前,随着计算机、通信和信息处理等技术的飞速发展以及云计算和大数据技术的广泛使用,使图像、音频、视频等多媒体信息可以在各种通信网络中迅速快捷地传输,给信息的压缩、存储、复制和处理等应用提供了极大的便利。目前网络已经成为主要的通讯手段,各种机密信息,包括国家安全信息、军事信息、私密信息(如信用卡账号)等都需要通过网络进行传输。由于网络本身的开放性,使得其上面存储和传输的各种多媒体信息受到严重的安全性威胁,信息安全问题亟待解决。
[0003] 可逆信息隐藏(Reversible Data Hiding)是信息安全领域重要研究方向之一,它利用多媒体数据的数据冗余和人们的视/听觉系统的冗余将秘密信息隐藏于载体中来实现信息保护和保密通信等。信息隐藏技术不但隐藏了信息的内容而且隐藏了信息本身的存在。
[0004] 近些年来利用图像的预测误差(Prediction-Error)强集中性的特点在空域进行可逆信息隐藏的技术被广泛引用,该类方法利用预测方法对当前待嵌入像素进行有效预测,并利用得到的误差分布结合直方图修改(Histogram Modification,HM)技术进行信息隐藏并取得了很高效的信息隐藏结果,这种方法即为对预测误差进行直方图搬移的可逆信息隐藏(Reversible Data Hiding Utilizing Histogram Modification of Prediction-error)。然,现有基于预测误差直方图搬移的信息隐藏方法得到的直方图集中性还有待提高;并且由于其嵌入自适应性查,导致嵌入秘密信息时造成的失真较大。【发明内容】
[0005] 本发明的目的在于提出一种基于八邻域像素的可逆信息隐藏方法,对待嵌入像素进行有效预测并得到更加集中的预测误差分布以嵌入更多的秘密信息。该方法提出了利用待嵌入像素八邻域像素(即左,右,上,下,左上,左下,右上,右下邻域像素)进行预测的概念,并应用相应的预测方法实现更集中的预测差值分布。
[0006] 为了达到上述目的,本发明采用以下技术方案予以实现:
[0007] 基于八邻域像素的可逆信息隐藏方法,包括以下步骤:
[0008] 步骤一:得到一幅八比特灰度图像,大小为M×N;
[0009] 步骤二:将当前待嵌入像素的八邻域像素取出;
[0010] 步骤三:判断当前待嵌入像素及其八邻域像素组成的块是否为复杂块,如果是则跳转至步骤五;如果不是则将八邻域像素分成四组,每一组均用MED预测方法得出一个预测值MEDi,i=1,2,3,4;然后对当前待嵌入像素计算预测值Pre,并与待嵌入像素相减得到差值e;
[0011] 步骤四:利用步骤三得到的差值e,利用直方图搬移的原理进行秘密信息的嵌入;
[0012] 步骤五:重复步骤二至步骤四进行下一个待嵌入像素的处理,直至得到步骤一获得八比特灰度图像中所有待嵌入像素处理完成。
[0013] 进一步的,步骤二中八邻域像素为当前待嵌入像素左、右、上、下、左上、左下、右上和右下邻域像素。
[0014] 进一步的,步骤二具体包括以下步骤:将当前待嵌入像素的八邻域像素取出后,根据从小到大的顺序进行排序,将排序后结果第二大和第二小的像素值作差值,并与阈值Τ1和Τ2作比较;如果差值的结果小于等于Τ1,则当前待嵌入像素及其八邻域像素组成的块为平滑块;小于等于Τ2大于Τ1,则当前待嵌入像素及其八邻域像素组成的块为普通块;大于Τ2,则当前待嵌入像素及其八邻域像素组成的块为复杂块。
[0015] 进一步的,步骤三中每一组均根据公式(1)用MED预测方法得出一个预测值MEDi,i=1时,a为左邻像素,b为上邻像素,c为左上邻像素;i=2时,a为右邻像素,b为上邻像素,c为右上邻像素;i=3时,a为左邻像素,b为下邻像素,c为左下邻像素;i=4时,a为右邻像素,b为下邻像素,c为右下邻像素;得到四组预测值;再用公式(2)-(4)对当前待嵌入像素计算预测值Pre,并与待嵌入像素相减得到差值e;
[0016]
[0017]
[0018]
[0019]
[0020] 进一步的,步骤四具体包括以下步骤:如果当前块是平滑块,则根据得到的差值e结合公式(5)对当前像素进行嵌入和搬移;如果当前块是普通块,则根据得到的差值e结合公式(6)对当前像素进行嵌入和搬移;
[0021]
[0022]
[0023] 其中,m∈{0,1},为嵌入的秘密信息。
[0024] 进一步的,八比特灰度图像中包括嵌入区域和非嵌入区域,非嵌入区域为八比特灰度图像中最外周的一圈像素,其余区域为嵌入区域。
[0025] 进一步的,嵌入区域中,设像素为Ix,y,横坐标为x,纵坐标为y,按顺序将2≤x≤M,2≤y≤N范围内的像素依次处理;待嵌入的像素分四个嵌入步骤分别嵌入:第一步嵌入像素位置为Ix,y,其中,mod(x)=0,mod(y)=0;第二步嵌入像素位置为Ix,y,其中,mod(x)=0,mod(y)=1;第三步嵌入像素位置为Ix,y,其中,mod(x)=1,mod(y)=0;第四步嵌入像素位置为Ix,y,其中,mod(x)=1,mod(y)=1。
[0026] 进一步的,Τ1=5,Τ2=15。
[0027] 进一步的,本发明在嵌入计算预测差值并秘密信息之前先根据当前块的特性决定是否计算误差并嵌入秘密信息,做到自适应嵌入以减小不必要的嵌入误差使得嵌入图像和原始图像之间的失真更小;本发明嵌入模板使得几乎所有的像素都可以进行预测并嵌入。
[0028] 进一步的,本发明嵌入秘密信息方法如下:
[0029] Step 1:读入第一步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(5)进行秘密信息的嵌入;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(6)进行秘密信息的嵌入。
[0030] Step 2:读入第二步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(5)进行秘密信息的嵌入;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(6)进行秘密信息的嵌入。
[0031] Step 3:读入第三步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(5)进行秘密信息的嵌入;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(6)进行秘密信息的嵌入。
[0032] Step 4:读入第四步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(5)进行秘密信息的嵌入;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待嵌入像素相减得到预测差值e,然后利用公式(6)进行秘密信息的嵌入。
[0033] 提取秘密信息及恢复图像方法如下:
[0034] Step 1:读入第四步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值 然后利用公式(7)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值然后利用公式(8)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素。
[0035]
[0036]
[0037] Step 2:读入第三步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值 然后利用公式(7)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值然后利用公式(8)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素。
[0038] Step 3:读入第二步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值 然后利用公式(7)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值然后利用公式(8)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素。
[0039] Step 4:读入第一步的待嵌入像素和其周围八邻域像素,计算八邻域像素的平滑度,并与阈值Τ1和Τ2作比较。如果差值的结果小于等于Τ1则为平滑块,小于等于Τ2大于Τ1则为普通块,大于Τ2则为复杂块。如果是平滑块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值 然后利用公式(7)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素;如果是普通块,按照运用公式(2)-(4)计算出最终的预测值Pre,并利用该预测值与待解码恢复的像素相减得到差值然后利用公式(8)进行秘密信息的提取,然后利用 和Pre求和来恢复图像的像素。
[0040] 相对于现有技术,本发明具有以下优点:本发明方法针对基于空域的灰度图像,提出了运用待嵌入像素的八邻域像素来提高预测精度,进而得到分布更加集中的预测误差分布并利用该分布的特性进行秘密信息的嵌入;并且在后面我们做了两点改进,一个是加入了阈值能保证像素块单元可以自适应的嵌入,使得嵌入后的图像失真更小,提高其安全性;一个是改进了嵌入模板能保证几乎所有像素都能参与秘密信息的嵌入,提高了其嵌入容量。
[0041] 在本发明中,嵌入的秘密信息的单位为bits,另一个重要的指标是用来衡量嵌入秘密信息后的图像与原始图像之间的差别,差别越小图像失真越小嵌入图像越不容易引起攻击者的注意,安全性也越好。图像之间的失真用峰值信噪比来表示,计算公式如(9)和(10)所述,峰值信噪比的单位为dB。
[0042]
[0043]
[0044] 本发明方法可用于基于空域灰度图像的信息隐藏系统,不但可以嵌入大量的秘密信息,还能有效减少嵌入秘密信息后的嵌入图像与原始图像之间的失真,并且在接收端能够无损的恢复秘密信息和原始图像。【附图说明】
[0045] 图1是本发明流程图;
[0046] 图2是本发明用到的图像示意图;
[0047] 图3为单次嵌入的模板;其中,图3(a)是当前待嵌入像素与八邻域关系示意图;图3(b)为八邻域像素与当前像素的四组MED预测组关系示意图;
[0048] 图4是本发明预测结果得到的差值分布图和仅用MED进行预测得到的四个差值分布图的对比示意图;
[0049] 图5是秘密信息嵌入顺序模板示意图;
[0050] 图6(a)是嵌入秘密信息前图像示意图;图6(b)为嵌入秘密信息后图像示意图(嵌入秘密信息83245bits,当前测试图像的失真PSNR为51dB)。【具体实施方式】
[0051] 下面结合附图对本发明做进一步详细描述:
[0052] 本发明通过对一幅典型的512×512的图像进行秘密信息的嵌入来说明本发明方法。图2为一八比特灰度图像,图3为单次嵌入的模板,图像中包含当前待嵌入像素和其八邻域像素(即左,右,上,下,左上,左下,右上,右下邻域像素)的关系(图3(a))以及针对当前像素的四组预测模式(图3(b))。
[0053] 请参阅图1所示,本发明一种基于八邻域像素(即左,右,上,下,左上,左下,右上,右下邻域像素)的可逆信息隐藏方法,包括以下步骤:
[0054] 步骤一:得到一幅八比特灰度图像,大小为512×512;
[0055] 步骤二:将当前待嵌入像素的八邻域像素取出,根据从小到大的顺序进行排序,将排序后结果第二大和第二小的像素值作差值,并与规定的阈值Τ1和Τ2作比较(Τ1=5,Τ2=15)。如果差值的结果小于等于Τ1则,当前待嵌入像素及其八邻域像素组成的块为平滑块;小于等于Τ2大于Τ1则,当前待嵌入像素及其八邻域像素组成的块为普通块;大于Τ2则,当前待嵌入像素及其八邻域像素组成的块为复杂块,根据图像的不同阈值也进行相应的自适应改变;
[0056] 步骤三:如果当前块是复杂块则跳转至步骤五;如果当前块不是复杂块;将当前待嵌入像素的八邻域像素分成四组,每一组均根据公式(1)用MED预测方法得出一个预测值MEDi,i=1时,a为左邻像素,b为上邻像素,c为左上邻像素;i=2时,a为右邻像素,b为上邻像素,c为右上邻像素;i=3时,a为左邻像素,b为下邻像素,c为左下邻像素;i=4时,a为右邻像素,b为下邻像素,c为右下邻像素;得到四组预测值;再用公式(2)-(4)对当前待嵌入像素进行最终的预测Pre,并与待嵌入像素相减得到差值e;
[0057]
[0058]
[0059]
[0060]
[0061] 步骤四:如果当前块是平滑块,则根据得到的差值e结合公式(5)对当前像素进行嵌入和搬移;m∈{0,1},为嵌入的秘密信息;如果当前块是普通块,则根据得到的差值e结合公式(6)对当前像素进行嵌入和搬移。
[0062]
[0063]
[0064] 步骤五:重复步骤二至步骤四进行下一个待嵌入像素的处理,直至得到步骤一获得八比特灰度图像中所有待嵌入像素处理完成。
[0065] 其中,八比特灰度图像中包括嵌入区域和非嵌入区域,非嵌入区域为八比特灰度图像中最外周的一圈像素,其余区域为嵌入区域。嵌入区域中,设像素为Ix,y,横坐标为x,纵坐标为y,按顺序将(2≤x≤511,2≤y≤511)范围内的像素依次处理以做到更多的像素可以被嵌入,待嵌入的像素的四个嵌入步骤分别为:第一步嵌入像素位置为Ix,y(mod(x)=0,mod(y)=0),第二步嵌入像素位置为Ix,y(mod(x)=0,mod(y)=1),第三步嵌入像素位置为Ix,y(mod(x)=1,mod(y)=0),第四步嵌入像素位置为Ix,y(mod(x)=1,mod(y)=1)。
[0066] 图4反映了本发明通过引入当前待嵌入像素的八邻域像素后得到预测值与待嵌入像素之间差值的分部在集中性和峰值高度两方面都强于单一MED预测得到的预测值与待嵌入像素之间差值的分部。也正因为这种优势,我们的发明才可嵌入更多的秘密信息。图6反映了本发明除了能大量嵌入秘密信息以外,还能很好的将嵌入的秘密信息隐藏起来,即使嵌入了大量秘密信息,测试图像从视觉上依然和原始图像没有明显差异,达到了嵌入秘密信息后加密图像的视觉不可见性。