一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于自适应压缩编码的加密图像可逆数据加密解密方法

2022-11-23 18:09:32 来源:中国专利 TAG:


1.本发明属于图像处理技术领域,涉及一种基于自适应压缩编码的加密图像可逆数据加密方法,本发明还涉及一种使用上述加密方法加密得到的加密图像的解密方法。


背景技术:

2.随着社会生产力和互联网技术的不断发展,数字图像信息作为互联网信息的一种重要载体,在互联网信息的交互中起到了非常重要的作用。在涉及到个人隐私、商业秘密、国防机密、国家安全等诸多领域,数字图像信息的安全性要求也越来越高。可逆数据隐藏不仅可以完全提取秘密数据,其宿主图像也可以无损地恢复,实现了对密文和载体图像的同时保护,这种可逆性在医学、军事、法律取证等诸多应用领域中尤为重要。当下许多研究已经广泛致力于可逆数据隐藏方法,其嵌入机制主要可以分为直方图移动、差异扩展和无损压缩三大类。目前,可逆数据隐藏技术已经相当成熟,但其大多嵌入率仍然不高。


技术实现要素:

3.本发明的目的是提供一种基于自适应压缩编码的加密图像可逆数据加密方法,解决了现有技术中存在的数据嵌入率低与算法鲁棒性不够高的问题。
4.本发明还提供一种针对基于自适应压缩编码的加密图像可逆数据加密方法的解密方法。
5.本发明所采用的技术方案是,基于自适应压缩编码的加密图像可逆数据加密方法,包括以下步骤:
6.步骤1、先将尺寸为m
×
n的原始图像io中所有像素最低有效位面的原始数据用二进制序列l
sb
存储,然后将其全部置为零得到修正图像im;
7.步骤2、将步骤1得到的修正图像im分成尺寸为n
×
n的m个非重叠的块,其中m=m
×
n/n2;
8.步骤3、对步骤2得到的m个非重叠块设定阈值t,并将每个块的前h个最高有效位单独和阈值t做判定,将m个非重叠的块标记平滑块和粗糙块两种类型,根据判定结果生成位置图l;
9.步骤4、采用自适应编码将步骤3中的平滑块与粗糙块中的像素分别压缩,生成必要的辅助数据:哈夫曼编码规则、参考像素、恢复序列rq、标签图;同时利用加密密钥伪随机生成一个二进制矩阵s,将二进制矩阵s与步骤1产生的修正图像im进行位异或,生成加密图像ie;
10.步骤5、计算步骤4中生成的辅助数据的长度,记为len
aux
,再将len
aux
与哈夫曼编码规则、参考像素、位置图l、恢复序列rq、标签图、原图二进制序列l
sb
顺序存储到步骤4生成的加密图像ie的最低有效位面中;利用数据隐藏秘钥对嵌入数据d做加密处理,得到秘密数据de;
11.步骤6、将步骤5得到的秘密数据de存储在步骤4生成的加密图像ie中平滑块和粗糙
块压缩后所提供的可嵌入空间中,得到载有秘密数据的载密图像i
ew

12.步骤3中,标记非重叠的块为平滑块和粗糙块的具体方法为:对于im中的每个块,检索块中每个像素的前h∈{4,5,6,7}个最高有效位,即hmsb,把块内相同的hmsb归为一种,如果块内有λ种hmsb,且不大于预先设定的阈值t∈{3,4,5,6,7},那么当前块被标记为平滑块,否则将被标记为粗糙块;
13.位置图l的生成方法为:每个块用一个二进制位来标记,若是平滑块用“1”来标记,若是粗糙块则用“0”来标记,生成公式为:
[0014][0015]
步骤4中平滑块的压缩方法为:设置(α1,α2,α3)用于表示平滑块的λ,即用(α1,α2,α3)表示平滑块中共有多少种hmsb,根据这种hmsb在块中出现频率从高到低的顺序,将种hmsb的原始数据串联起来,形成的二进制序列,串联三个比特位的(α1,α2,α3)和λ
×
h位的原始hmsb数据,以生成当前平滑块所需的辅助数据,将平滑块的数量表示为u(≤m),扫描这些平滑块并计算其辅助数据,再将它们顺序连接起来,得到恢复序列rq,其rq的长度η为:
[0016][0017]
式中,r是当前平滑块的下标,λr为当前平滑块中不同类型hmsb的数量。
[0018]
步骤4中粗糙块的压缩方法为:首先计算修正图像im中粗糙块像素的预测值,预测规则为:
[0019]

第一个行第一列像素im(1,1)的预测值为它本身;
[0020]

如果当前像素位于第一行,则其左侧相邻像素的值为它的预测值;
[0021]

如果当前像素位于第一列,则其上方相邻像素的值为它的预测值;
[0022]

对于其他粗糙块像素im(i,j),其预测值使用中值边缘检测(med)方法计算得出,计算公式如下:
[0023][0024]
其中a=im(i-1,j-1),b=im(i,j-1),c=im(i-1,j),是im(i,j)所对应的预测值。接下来,使用以下公式将原始值和预测值分别转换为两个8位的二进制序列:
[0025][0026]
其中pk(i,j)和分别为原始值和预测值所对应的二进制序列,从最高有效位(msb)到最低有效位(lsb)比较这两个序列,直到其中某一位不同,用标签值ε来标记其原
始值与预测值序列之间从msb到lsb中共有多少位相同,计算公式如下:
[0027][0028]
取两个序列的前7位来做处理,修正图像中的第一行第一列像素im(1,1)将作为唯一的参考像素被存储。
[0029]
扫描所有粗糙块像素,并通过上述处理过程,获得所有粗糙块像素对应的标签图τ。
[0030]
步骤4中,对平滑块进行自适应压缩编码的具体步骤为:将每一个平滑块像素的自适应编码结果定义为
[0031][0032]
式中表示多个前缀位,由连续的若干个“0”和一个终止位“1”构成,是当前平滑像素的hmsb部分的自适应编码结果,是hmsb之后未更改的部分;
[0033]

根据λ的类型数量对平滑块中不同的hmsb进行自适应编码并得到其码字;
[0034]

添加连续若干个“0”和一个终止位“1”,即在其码字之前以满足公式(6)中的编码结果;
[0035]

在完成上述两步后,平滑块中所有共n2个像素的hmsb都被自适应压缩编码完成。
[0036]
步骤4中,对粗糙块进行自适应压缩编码的具体步骤为:定义8个哈夫曼码来表示八种标签值ε,即{“00”,“01”,“100”,“101”,“1100”,“1101”,“1110”,“1111”},根据标签图τ计算不同类型标签值的数量,再根据其出现频率从高到低对这八种标签进行排序,依次分配8种哈夫曼码,在实现压缩过程后,哈夫曼编码后的标签图τ的长度可通过以下公式计算:
[0037][0038]
式中,表示粗糙块中标签值为像素的数量,表示相应哈夫曼码的长度。
[0039]
步骤4中,加密图像ie的计算公式为:
[0040][0041]
步骤5中,辅助数据的长度len
aux
的存储长度为20个比特位,并且将其放置于整个辅助数据序列的头部,长二进制辅助数据序列。
[0042]
步骤5中,整个加密图像ie共有三处可嵌入的空间,最低有效位面、平滑块中的可嵌入空间和粗糙块中的可嵌入空间,通过位替换的方式将整个二进制辅助数据序列按照以
上三个可嵌入空间的顺序,嵌入到加密图像ie中。
[0043]
本发明所采用的技术方案还是,基于自适应压缩编码的加密图像可逆数据解密方法,包括以下步骤:
[0044]
步骤1、将载密图像i
ew
的最低有效位面中的所有辅助数据提取出,并依次恢复得到:辅助数据长度len
aux
、哈夫曼编码规则、参考像素、位置图l、恢复序列rq、标签图τ、原图二进制序列l
sb

[0045]
步骤2、通过比较辅助数据长度len
aux
与载密图像i
ew
最低有效位面的可嵌入量m
×
n来确定秘密数据de的起始位置,并提取这一部分秘密数据;根据位置图来区分出载密图像i
ew
中的平滑块,再依赖于自适应编码规则表将其嵌入在平滑块中的秘密数据部分提取出来;根据位置图来区分出载密图像i
ew
中的粗糙块,再依赖于哈夫曼编码规则、标签图τ将其嵌入在粗糙块中的剩余秘密数据提取出来;
[0046]
步骤3、将步骤2中提取出的秘密数据片段顺序相连,得到完整的秘密数据de,并利用数据隐藏秘钥对秘密数据de进行解密,得到解密后的嵌入数据d;
[0047]
步骤4、根据恢复序列rq和位置图l,将所有平滑块中的数据进行恢复;根据哈夫曼编码规则、参考像素、标签图和位置图,将所有粗糙块中的数据进行恢复;
[0048]
步骤5、利用加密密钥伪随机生成一个二进制矩阵s,将二进制矩阵s与步骤4处理后的图像进行位异或;
[0049]
步骤6、将原图二进制序列l
sb
中的数据一一对应地放回步骤5处理后图像的最低有效位面,最终得到无损恢复的原始图像io。
[0050]
本发明的有益效果有:
[0051]
本发明的基于自适应压缩编码的加密图像可逆数据加密解密方法,提出自适应压缩编码方案,首先将原始图像预处理,随后分为平滑块与粗糙块两类分别压缩处理,充分利用图像冗余和相邻像素间的高像素相关性,以及创新性的引入了中值边缘检测预测方法,为嵌入秘密数据创造更大的可嵌入空间,大大提高了数据嵌入率;通过应用像素与使用加密秘钥生成的伪随机矩阵之间的位异或运算,充分保证了秘密数据的安全性,使得算法的鲁棒性更高;自适应压缩编码期间生成的必要辅助数据,保证了原始图像在接收方可无损地完整恢复。
附图说明
[0052]
图1是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的流程图;
[0053]
图2是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的4
×
4大小的示例块的示意图;
[0054]
图3是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的示例块的二进制形式的示意图;
[0055]
图4是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的示例平滑块中四种hmsb出现频率与辅助数据生成过程的示意图;
[0056]
图5是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的粗糙块像素生成标签值的过程的示意图;
[0057]
图6是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的平滑块自
适应编码规则的示意图;
[0058]
图7是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的平滑块自适应编码示例的示意图;
[0059]
图8是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的512
×
512大小的标准灰度lena图;
[0060]
图9是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的加密后的lena图;
[0061]
图10是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的辅助数据序列组成结构图;
[0062]
图11是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的标准灰度lena图的直方图分析结果的示意图;
[0063]
图12是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的加密图像的直方图分析结果的示意图;
[0064]
图13是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的载密图像的直方图分析结果的示意图;
[0065]
图14是本发明基于自适应压缩编码的加密图像可逆数据加密解密方法的实验结果比较分析的示意图。
具体实施方式
[0066]
下面结合具体实施例对本发明进行详细说明。
[0067]
基于自适应压缩编码的加密图像可逆数据加密方法,其整体流程图如图1所示,共包含以下步骤:
[0068]
步骤1、大小为m
×
n的原始图像io需要进行预处理,即用“0”修改io中的所有最低有效位(least significant bit),然后得到修正图像im。由于后续计算出的辅助数据的一部分嵌入到加密像素的最低有效位中,为了在将来无损地恢复原始图像io,必须保存io中所有像素的最低有效位。故此,用一个二进制序列l
sb
存储io中所有像素的最低有效位。
[0069]
步骤2、修正图像im被分成尺寸为n
×
n的m个非重叠的块,其中m=m
×
n/n2。
[0070]
步骤3、为了获得更多的可嵌入空间,我们需要将步骤2中得到的m个非重叠的块根据像素间相关性的高低,分为平滑块与粗糙块,随后用不同的两种压缩编码方式来进行处理。对于im中的每个块,检索块中每个像素的前h∈{4,5,6,7}个最高有效位(most significant bit),即h msb,把块内相同的h msb归为一种。定义:如果块内有λ种h msb,且λ不大于预先设定的阈值t∈{3,4,5,6,7},那么当前块被判定为平滑块,否则将被判定为粗糙块。
[0071]
举例说明:假设h=5并且t=4,这意味着当前块中所有像素的5msb被使用。一个4
×
4的块如图2所示,其二进制形式如图3中给出。可以发现,块中有四种不同的5msb,即λ=4。在本例中,阈值t被设为4,因此当前块满足λ≤t,故此被判定为平滑块。
[0072]
根据上述的判定方法,对m个非重叠的块顺序进行判定生成位置图l,来标记每个块为平滑块或是粗糙块。每个块用一个二进制位来标记,若是平滑块用“1”来标记,若是粗糙块则用“0”来标记。其二进制位置图l的生成公式如下:
[0073][0074]
步骤4、采用自适应编码将平滑块与粗糙块中的像素分别压缩,同时生成必要的辅助数据:哈夫曼编码规则、参考像素、恢复序列rq、标签图。
[0075]
步骤4.1、对于平滑块的压缩,由于阈值t设最大值为7,因此用三个比特位(α1,α2,α3)来表示平滑块的λ。即(α1,α2,α3)用于表示平滑块中共有多少种h msb。具体来说,当λ等于1,2,3,4,5,6和7时,相应的(α1,α2,α3)分别为:“000”,“001”,“010”,“011”,“100”,“101”,“110”。然后根据这λ种h msb在块中出现频率从高到低的顺序,将λ种h msb的原始数据串联起来,形成λ
×
h的二进制序列。串联三个比特位的(α1,α2,α3)和λ
×
h位的原始h msb数据,以生成当前平滑块所需的辅助数据。将平滑块的数量表示为u(≤m),扫描这些平滑块并计算其辅助数据。随后,将它们顺序连接起来,得到恢复序列rq,其rq的长度η为:
[0076][0077]
其中r是当前平滑块的下标,λr为当前平滑块中不同类型h msb的数量。继续用图2中4
×
4的块举例,图4给出了此平滑块的辅助数据生成示例。根据出现频率从高到低,块中的5msb:“00111”,“01000”,“00110”,“01001”分别出现了9、4、2和1次。因此,可以通过连接3 4
×
5=23个比特位来生成当前此平滑块的辅助数据,即{“011”,“00111”,“01000”,“00110”,“01001”}。
[0078]
步骤4.2、对于粗糙块的压缩,首先计算修正图像im中粗糙块像素的预测值。其预测规则为:
[0079]

第一个行第一列像素im(1,1)的预测值为它本身。
[0080]

如果当前像素位于第一行,则其左侧相邻像素的值为它的预测值。
[0081]

如果当前像素位于第一列,则其上方相邻像素的值为它的预测值。
[0082]

对于其他粗糙块像素im(i,j),其预测值使用中值边缘检测(med)方法计算得出,计算公式如下:
[0083][0084]
其中a=im(i-1,j-1),b=im(i,j-1),c=im(i-1,j),是im(i,j)所对应的预测值。接下来,使用以下公式将原始值和预测值分别转换为两个8位的二进制序列:
[0085][0086]
其中pk(i,j)和分别为原始值和预测值所对应的二进制序列。从最高有效
位(msb)到最低有效位(lsb)比较这两个序列,直到其中某一位不同。随后用标签值ε来标记其原始值与预测值序列之间从msb到lsb中共有多少位相同,计算公式如下:
[0087][0088]
虽然两个序列的长度为8位,但仅取两个序列的前7位来做处理,因为修正图像im的最低有效位面数据在之前已经被全置为零,并且将作为嵌入空间的一部分来使用。因此ε是一个不大于7的整数,这意味着ε最多有八种取值。在嵌入阶段,每个粗糙块中的像素都可提供ε 1位的嵌入空间。值得注意的是,修正图像中的第一行第一列像素im(1,1)将作为唯一的参考像素被存储,因为后续图像恢复阶段需要使用参考像素来恢复所有的粗糙块像素。
[0089]
举例如图5所示,如果某粗糙块像素原始值为162,经过预测计算后其预测值为168,则两个值可以分别转换为八位二进制形式“10100010”和“10101000”。从msb到lsb比较可以发现前4位是相同的,因此该粗糙块像素的标签值ε=4,同时也代表此粗糙块像素有5位可用来嵌入额外数据。
[0090]
步骤4.3、扫描所有粗糙块像素,并通过步骤4.2处理过程,可以获得所有粗糙块像素对应的标签图τ。后续可根据标签图,在这些粗糙块像素中创建大量的可嵌入空间以容纳额外数据。
[0091]
步骤4.4、对平滑块进行自适应压缩编码,我们将每一个平滑块像素的自适应编码结果定义为
[0092][0093]
其中表示多个前缀位,由连续的若干个“0”和一个终止位“1”构成。是当前平滑像素的hmsb部分的自适应编码结果。是hmsb之后未更改的部分。下面给出了平滑块像素编码的详细步骤:
[0094]

如图6所示,根据λ的类型数量,来对平滑块中不同的h msb进行自适应编码并得到其码字。显然,出现频率更高的h msb将使用更短的码字来编码。
[0095]

添加连续若干个“0”和一个终止位“1”,即在其码字之前以满足公式(6)中的编码结果。
[0096]

在完成上述两步后,平滑块中所有共n2个像素的h msb都被自适应压缩编码完成。但要注意的是,(8-h)lsb,即始终不变,编码后的每个平滑块像素仍由8位构成。
[0097]
图6中列出了不同λ情况下平滑块像素h msb的编码结果。详细地说,对于编码后的
一个平滑块,如果λ=1,表示只有一种类型的自适应码字,即“1”;如果λ=2,表示有两种类型的自适应码字,即“1”和“0”;如果λ=3,则表示有三种类型的自适应码字,即“1”,“10”,“00”,以此类推。注意,对于每个平滑块而言,其λ种h msb所对应的自适应压缩编码结果对应其h msb频率由高到低。块中出现频率最高的h msb用最短的码字编码,反之则用最长的码字编码。
[0098]
继续用图2中的块来举例,图7左侧展示了块内四种5msb的自适应码字为:{“1”,“10”,“100”,“000”}。图7右侧则是通过添加若干个前缀位“0”和一个终止位“1”,得到的自适应压缩编码结果{“00011”,“00110”,“01100”,“01000”}。
[0099]
步骤4.5、对粗糙块进行自适应压缩编码。如步骤4.2中所述,标签值ε共有八种取值的可能,即{0,1,2,3,4,5,6,7}。相应的,我们定义了一组8个哈夫曼码来表示这八种标签值,即{“00”,“01”,“100”,“101”,“1100”,“1101”,“1110”,“1111”}。首先,通过步骤5.3中得到的标签图,计算不同类型标签值的数量,再根据其出现频率从高到低对这八种标签进行排序,依次分配8种哈夫曼码。也就是说,其中“00”哈夫曼码将表示数量最多的标签值,而“1111”哈夫曼码将表示数量最少的标签值。采用哈夫曼码这一举措将非常有助于减少这部分辅助数据的体量,从而获得更好的嵌入容量。值得注意的是,由8个哈夫曼码组成的哈夫曼编码规则应被视为辅助数据的一部分被保存起来。
[0100]
如图8所示,用数字图像处理界最经典的512
×
512大小的lena图为例说明,在我们的方法中,当相关参数h=5,t=4,n=4时,其粗糙块中共有4282个,也就是说共有68512个粗糙块像素。计算8种标签值的数量,其对应压缩规则如下表所示:
[0101]
label01234567distribution41525857706613183141231048365357113code11111110110001001001101101
[0102]
应该注意的是,压缩规则占用的位数是固定的,即26个比特位。在实现压缩过程后,哈夫曼编码后的标签图τ的长度可通过以下公式计算:
[0103][0104]
其中n
t
表示粗糙块中标签值为t像素的数量,c
t
表示相应哈夫曼码的长度。
[0105]
再利用加密密钥伪随机生成一个二进制矩阵s,将二进制矩阵s与修正图像im进行位异或,生成加密图像ie,如图9所示,计算公式如下:
[0106][0107]
步骤5、计算所有的辅助数据的长度,并记为len
aux
,再将所有辅助数据,即:哈夫曼编码规则、参考像素、位置图l、恢复序列rq、标签图、原图二进制序列l
sb
顺序存储到加密图像ie的最低有效位面中。
[0108]
步骤5.1、计算所有辅助数据的长度len
aux
,用20个比特位存储,并且将其放置于整个辅助数据序列的头部,形成如图10所示的长二进制辅助数据序列。
[0109]
步骤5.2、需要指出的是,整个加密图像ie共有三处可嵌入的空间,即:

最低有效位面、

平滑块中的可嵌入空间和

粗糙块中的可嵌入空间。通过位替换的方式将整个二进制辅助数据序列按照以上三个可嵌入空间的顺序,嵌入到加密图像ie中。
[0110]
步骤6、利用数据隐藏秘钥对嵌入数据d做加密处理,得到秘密数据de;将秘密数据de存储在加密图像ie中剩余的可嵌入空间中,得到载有秘密数据的载密图像i
ew

[0111]
基于自适应压缩编码的加密图像可逆数据解密方法,其步骤为:
[0112]
步骤1、将载密图像i
ew
的最低有效位面中的所有辅助数据提取出,并依次恢复得到:辅助数据长度len
aux
、哈夫曼编码规则、参考像素、位置图l、恢复序列rq、标签图τ、原图二进制序列l
sb

[0113]
步骤2、通过比较辅助数据长度len
aux
与载密图像i
ew
最低有效位面的可嵌入量m
×
n来确定秘密数据de的起始位置,并提取这一部分秘密数据;根据位置图来区分出载密图像i
ew
中的平滑块,再依赖于自适应编码规则表将其嵌入在平滑块中的秘密数据部分提取出;再根据位置图来区分出载密图像i
ew
中的粗糙块,再依赖于哈夫曼编码规则、标签图τ将其嵌入在粗糙块中的剩余秘密数据提取出;
[0114]
步骤3、将步骤2中提取出的秘密数据片段顺序相连,得到完整的秘密数据de,并利用数据隐藏秘钥对秘密数据de进行解密,得到解密后的嵌入数据d;
[0115]
步骤4、根据恢复序列rq和位置图l,将所有平滑块中的数据进行恢复。由于恢复序列rq中顺序存储着每个平滑块中h msb的种类数量以及原始数据,可直接提取出每个平滑块的原始数据从而恢复平滑块中h msb的原始数据。注意,除了h msb,其他位面的数据在整个处理过程中是没有动过的,所以无需做任何恢复操作;根据哈夫曼编码规则、参考像素、标签图τ和位置图l,将所有粗糙块中的数据进行恢复。
[0116]
具体步骤为:首先还是通过参考像素来推算得到第一行与第一列的原始像素数据,再通过中值检测方法(med)来算出所有像素的预测值。再根据标签图中每个粗糙像素对应的标签值可以得知此粗糙像素前ε 1位是被修改过的。又由于粗糙像素的前ε位与其预测值的前ε位完全相同,故此可直接通过预测值前ε位覆盖得以恢复。同理,粗糙像素的第ε 1可通过对其预测值的第ε 1位取反来恢复。至此粗糙块中的数据已完全恢复;
[0117]
步骤5、利用加密密钥伪随机生成一个二进制矩阵s,将二进制矩阵s与步骤4处理后的图像进行位异或;
[0118]
步骤6、由于在最初预处理的时候,将原始图像io的最低有效位面全置为了零,故要将原图二进制序列l
sb
中的数据,一一对应地放回步骤5处理后图像的最低有效位面,最终原始图像io能够被无损的恢复。
[0119]
对本发明有益效果进行验证:
[0120]
通过分析lena图的直方图、加密后的lena直方图以及含有秘密数据的载密lena直方图,如图11、12、13所示,进行比较能够看出,加密后的图像与原始图像相比直方图的分布更加均匀,在加密图像嵌入秘密数据后,它的直方图尽管有轻微的波动,但总体上来看,也是相对分布均匀的,很难从其中观察到任何有效信息。
[0121]
本发明中判断和衡量图像加密算法的指标为npcr和uaci,其中相应的理想值分别为99.61%和33.46%,公式如下:
[0122]
[0123][0124][0125]
上式中,图像的行和列分别用m和n表示,而明文图像q1中(i,j)位置的像素数值用q1(i,j)进行表示,密文图像q2中(i,j)位置的像素数值用q2(i,j)表示,而q1(i,j)与q2(i,j)之间像素值之差仅仅为1。设c(i,j)为二值矩阵,且c(i,j)的大小与q1、q1相同,如果q1(i,j)与q2(i,j)相等,即q1(i,j)=q2(i,j),则c(i,j)=1;如果q1(i,j)与q2(i,j)不相等,即q1(i,j)≠q2(i,j),则c(i,j)=1。
[0126]
对10幅经典测试图像以本发明的方法进行加密,对加密后的图像进行npcr和uaci计算,其结果如下表所示,从中可以看出本发明提出的算法具有极强的抗差分攻击能力。
[0127][0128]
由于图像相邻像素之间存在很高的相关性,一个像素往往会泄露其周围像素的信息,攻击者可以利用该特性推测出下一个像素的灰度值,从而实现对整个明文图像的恢复。图像加密算法抵御攻击能力越强,图像在加密前后的相关性则应当越小。为了测试本发明加密算法,计算原始图像和加密图像之间的相关性:
[0129][0130]
其中,cov(i,i

ew
)是原始图像和加密图像之间的协方差,σ(i)和σ(i

ew
)是标准差。除此之外,信息熵通常用来评估加密图像的随机性,公式为:
[0131][0132]
其中xi是灰度值,p(xi)是其对应出现的频率。对于加密图像,理想的信息熵是8,信息熵越高,图像的分布越均匀。
[0133]
对10幅经典测试图像,计算其相关性系数和信息熵,结果如下表所示:
[0134][0135]
由上表的测试数据结果可以看出,10幅测试图像的相关性系数均接近于0,说明原始图像和其对应的加密图像之间近乎没有关联性;它们的信息熵均趋近于8,说明加密图像分布的很均匀。这就能有效地表明该发明的加密算法是可以抵抗不法分子的攻击。
[0136]
数据嵌入率也是衡量加密图像可逆数据隐藏方法的一个重要指标。如图14所示,
将本发明和现有的优秀加密图像可逆数据隐藏方法的数据嵌入率进行比较,从图中可以看出,相比于测试图像,本发明的数据嵌入率都是最高的。
[0137]
实验不仅限于这些图像,还扩展到ucid、bows2和bossbase这三个数据库中的所有图像,以证明该方法的通用嵌入能力。如下表所示,对于数据库ucid,该方法的平均嵌入率为2.8223bpp,其中其他五种方法[puteaux]、[bbe]、[yin2]、[ins]和[yin]的平均增长量分别为1.9293、0.9957、0.5540、0.7025和0.1347。对于较大的数据库bows2,平均嵌入率略有增长,但仍优于其他数据库。同样,bossbase数据库可以得出相同的结论,即所提出的方法平均总是具有最佳的嵌入结果。
[0138][0139]
综上所述,通过以上分析,实验验证了该方法在嵌入容量方面的优越性,以及算法的安全性。本发明的基于自适应压缩编码的加密图像可逆数据隐藏方法,提出分平滑块与粗糙块分别处理的自适应压缩编码方式,充分利用图像冗余,为嵌入秘密数据创造更大的空间,得以为秘密数据的嵌入提供更多的空间。通过使用加密密钥生成的伪随机矩阵之间的位异或计算,可以保证秘密数据和整个算法的安全,使得算法的鲁棒性更高。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献