APP下载

基于边缘和局部熵融合的视觉安全性评估方法

2020-06-18徐正全

计算机工程与应用 2020年12期
关键词:比特加密边缘

胡 慧,徐正全

武汉大学 测绘遥感信息工程国家重点实验室,武汉430079

1 引言

随着网络技术的飞速发展,图像和视频数据成为人们获取信息的重要来源。为了保障安全,研究者们提出了大量实用性强的图像和视频加密算法[1-3];同时,基于处理代价和安全性的综合考量,人们往往希望其存储和传输的加密图像达到特定的保密性即可。保密性体现在抗密码分析攻击的能力及视觉安全性两个方面,其中关于视觉安全性的研究也越来越受到重视。视觉安全性[4]是指加密后的图像对于人眼的不可理解程度,视觉安全性越高,非授权用户从加密图像中获取的信息量越少,在不破解密钥的情况下进行视觉分析攻击来获取有价值信息的难度越大。视觉安全性评估在很多领域都有应用,例如移动端视频加密[5-6]、生物识别系统[7]、指纹图像保护[8]等,因此对可视媒体数据进行视觉安全性评估是一项重要的研究工作。

图像视觉安全性评估可分为两大类:基于打分制的主观评估方法[9-10]和基于指标的客观评估方法。其中基于打分制即MOS分(Mean Opinion Score,MOS)的主观方法易受人的主观感受和测评环境的影响,而且需要做大量的实验,费用高,评价速度慢,无法自动进行处理,因此该方法在评估加密图像的视觉安全性时只是作为自动处理方法的一种辅助参考方法。理想的客观方法在自动处理的情况下达到与主观人工方法接近的结果,但遗憾的是,大多数客观方法都不是特别理想。目前比较常用的客观评估指标有均方误差(Mean Square Error,MSE)和峰值信噪比(Peak Signal Noise Ratio,PSNR)[11],通过比较原始图像和失真图像的像素值间的差异来评估失真图像的质量[12],模型简单,但侧重于评估失真图像的质量而不是视觉安全性,不能很好地反映出人的主观感受。之后有学者将人眼视觉系统(Human Visual System,HVS)融入到了图像评估中,提出了基于结构相似度(Structural Similarity Index,SSIM)[13],基于局部边缘梯度[14]的评估指标,Guo等[15]提出了基于边缘相似度和纹理相似度的评估指标(Visual Security Index,VSI),文献[15]中通过提取原始图像和加密图像的灰度共生矩阵(Gray-Level Co-occurrence Matrix,GLCM)来获得纹理相似度,认为加密图像的边缘和纹理相似度越低,图像视觉安全性更高,但当图像模糊,受损严重时评估加密图像的视觉安全性并不准确[16]。针对经过加密算法处理得到的受损严重,质量较低的图像,Sun和Wu等[17-18]提出了基于信息熵的评估指标,其中Sun等[17]通过局部熵来表征图像的混乱程度,但是存在块效应,对于单个块内各个像素值相似的加密图像,不可以进行很好地区分,同时只有在图像足够混乱时评估效果较好。因此需要引入图像的边缘特征,一方面可以消除块效应,同时保证了在图像加密强度较低的时候也可以有较好的评估效果。

2 基础算法研究

2.1 加密图像的视觉安全性评估

随着各种高效加密算法例如选择加密算法的发展,评估加密图像的视觉安全性至关重要。人眼从图像中获得的信息量越少,图像的视觉安全性越高。

加密图像的视觉安全性可以通过衡量加密图像和原始图像的关系来得到,设原始参考图像为O,待评估的加密图像为O′,f(⋅)为评估指标计算函数,S为评估指标,则:

为了便于比较,将指标进行归一化处理,使得S∈[0 ,1],且f(⋅)需保持单调性。

理想情况下,评估图像的视觉安全性希望是无参考图像的,即S=f( )O′。现有一些基于机器学习的方法来进行无参考图像的图像质量评估[19-21],但评估的图像主要是针对噪声、模糊、压缩等原因产生的失真图像,图像的受损程度低。一方面,加密产生的失真和这些失真类型不相同,另一方面,加密得到的图像往往质量更差,因此用无参考的质量评估算法来衡量加密图像的视觉安全性偏差较大,算法的鲁棒性差。综上,本文采用有参考图像的评估方法,旨在提出评估准确、鲁棒性强的加密图像视觉安全性评估指标。

2.2 基于局部熵的视觉安全性评估算法

基于密码学理论和香农信息论之间的联系[22],图像在被加密后图像熵会变大,其中理想安全图像的信息熵最大,因此可以通过计算加密图像与理想安全图像的熵之间的接近程度来衡量加密图像的视觉安全性。

设一幅大小为M×N的数字图像O的灰度等级数目为L,例如8位灰度图像,则L=256,灰度级取值范围为[0,255]。将图像O中灰度级为l的像素数目用nl表示,则灰度级l出现的概率为Pl≈nl/MN。根据信息熵的定义类比,图像熵定义[17]如式(2)所示:

而当图像的灰度级等概率分布时,图像具有最大的熵,将具有最大熵的图像称为理想安全图像T[17],其熵值为:

图像熵反映的是整个图像的统计特性,不能很好地反映出不同图像在视觉上的区别,因此需要引入图像像素位置信息。通过将图像分成m×n个子块,图像O可表示为O={oij}m×n,其中oij可以是一个大小为k×k的子块,根据式(2)可求得oij对应的局部信息熵hij,则一幅图像的信息熵可以描述为一个二维的局部信息熵矩阵,如式(4)所示:

对于理想安全图像T,希望其子块内的像素灰度级均等概率分布,所以每个子块的局部信息熵hij为一个常数,记为hd,则定义基于局部熵的评估指标为SLE(Local Entropy,SLE:

2.3 图像的边缘相似度度量

图像的边缘信息对于人眼视觉系统是至关重要的[23],对于一幅受损的加密图像,人眼获得信息量的来源首先就是图像的轮廓即边缘。

而边缘相似度衡量的是两幅图像边缘相似的程度[24],为了计算边缘相似度,首先需要使用边缘检测算子提取出两幅图像的边缘轮廓。图像边缘检测应该满足两个条件:一是能有效地抑制噪声;二是必须尽量精确地确定边缘的位置。常见的边缘检测算子有微分算子如Sobel算子、Robert算子、Laplacian算子、Canny算子,其中Laplacian算子对噪声比较敏感,Sobel算子对边缘定位不是很准确,Robert算子提取的边缘比较粗,而Canny算子不容易受噪声影响,能够检测到真正的弱边缘。

因此在本算法中采用Canny算子进行图像的边缘检测,通过计算加密图像和原始图像共有的边缘占原始图像边缘的比例来衡量边缘相似度。

原始图像为O,加密图像为O′,经过边缘检测算法EdgeDet(⋅)处理得到的图像为DO=EdgeDet(O)和DO′=EdgeDet(O′),则DO和DO′是图像像素取值为{0,}1的二值图像,其中1表示边缘点,0表示非边缘点。假设原始图像和加密图像共有的边缘二值图像为D,则定义如下:

其中,(i,j)对应图像的第i行,第j列,Oi,j和O′i,j分别表示原始图像和加密图像在位置(i,j)处的像素值。

DOi,j和DO′i,j分别表示原始图像和加密图像的二值图像在位置(i,j)处的像素值,l∈[ ]0,255表示的是Oi,j和O′i,j亮度变化的阈值,当原始图像和加密图像在位置(i,j)处均有边缘点,且亮度差异在l以内时,认为位置点(i,j)为原始图像和加密图像共有的边缘点,像素取值为1,否则像素取值为0。

则定义边缘相似度为SES(Edge Similarity,SES:

其中,N()⋅表示的是L1范数,SES∈[ ]0,1,SES越小,加密图像和原始图像共有的边缘越少,加密图像的视觉安全性越高。

3 局部熵和边缘相似度自适应融合

3.1 基于局部熵评估算法的局限性

基于局部熵的思想,引入图像像素位置信息,需要将图像分块,子块的大小选取要适宜,若太小,每个子块的样本数太少,统计不满足最小样本数目的要求;若太大,总的子块个数太少,且子块不能很好地显示出图像的空间特征,Sun等在文献[17]中选取的子块的大小为8×8。

但是上述算法只考虑了不同图像子块的空间特性,而没有考虑到每个子块内图像像素的位置特性,由于图像具有空间相关性,对于某些加密算法处理得到的图像,图像视觉差异很大,但分得的子块内的像素值可能相同,从而无法得到和主观感受一致的评估结果。

如图1所示,将Lena图像分成大小不同的子块,进行位置的随机置乱,其中从Level1到Level8对应的加密图像的视觉安全性依次增强。再根据式(5)计算出各个等级的加密图像的SLE值,得到如图2所示的结果。

图1 Lena图像置乱加密的不同安全级别的加密图像

图2 不同安全等级的加密图像的局部熵均值

SLE越小,加密图像的局部熵均值越大,加密图像的视觉安全性越高,因此从Level1到Level8对应的加密图像的SLE指标值应该保持单调递减的趋势,图2的实验结果不完全相符。当加密图像质量差,模糊程度高的时候,使用基于局部熵的评估指标SLE评估得到的结果和主观评估结果一致。而当图像质量较好时,SLE这个指标不太敏感,使用局部熵进行评估的意义不大。这是因为在图像质量较好的情况下,图像熵更多的是由图像内容本身的变化决定的,而图像内容的细微变化引起的熵值的变化不大,只有当图像受损严重时,图像的像素分布变化大,使用局部熵可以得到较好的评估结果。

3.2 图像的边缘相似度度量的局限性

图像的边缘信息是图像的重要特征,它和图像内容紧密相关,但随着加密强度的增大,图像内容越发混乱,使用边缘相似度度量加密图像的视觉安全性将会存在偏差。因为随着图像内容的破坏,依据图像特征的评估指标准确率会下降,计算得出的边缘相似度大小不能真实地反映出人眼获得信息量的大小。

使用如图1所示的加密图像进行实验,计算各个等级的加密图像和原始图像的边缘相似度,其中式(6)中的l取值为20,得到如图3中实线所示的结果,然后选取了Matlab工具箱中自带的部分图像,通过块置乱加密后进行实验,得到的结果如图3中虚线所示。

图3 不同安全等级的加密图像的边缘相似度

边缘相似度越小,加密图像的视觉安全性越高,因此从Level1到Level8对应的加密图像的边缘相似度应该保持单调递减的趋势,图3的实验结果不完全相符。可以看出,当加密等级较低的时候,使用边缘相似度得到的评估结果和主观评估结果一致。而当图像质量很差的时候,边缘相似度这个指标不太敏感,使用边缘相似度进行评估意义不大。

3.3 融合算法

综合上述分析,基于边缘相似度和基于图像局部熵的评估方法都存在应用上的局限性:其中边缘相似度依赖于图像的内容和特征,只有当加密强度较低,图像内容保持一定的完整性的时候评估效果较好;而局部熵与图像的内容无关,只关心图像像素的变化情况,只有当加密强度较大,图像足够混乱的时候评估效果较好。因此可以考虑将两个评估方法进行融合,来消除彼此的局限性,拓宽算法的应用范围。

通过将基于局部熵和边缘相似度的评估方法进行自适应融合,提出融合指标SLEES(Local Entropy and Edge Similarity,SLEES:

其中,α是自适应调整的权重,衡量的是SES对评估指标SLEES的影响程度,α∈[0 ,1]。由于边缘对图像的视觉感知起着更为重要的作用,所以α∈[0.5,1],且α的取值随着SES的减小而减小。这是因为图像加密强度越大,SES越小,图像边缘信息更加模糊,图像更加混乱,采用SLE评估加密图像的重要性就会增加,( )1-α增大,即边缘信息对于加密图像视觉安全性的影响随着加密强度的增加而减小。

同时根据经验以及3.1、3.2节的实验可以分析出,图像的受损程度同图像边缘受损程度以及图像局部熵的关系趋势如图4所示,在图像受损程度较低时,图像边缘损失程度随着图像受损程度的增大而增加,而当图像受损到一定程度时,图像的边缘已经趋近于完全模糊不可见;而基于局部熵的评估指标,当图像受损程度低,图像混乱程度低时,指标的值变化不大,随着图像受损程度的增大,图像足够混乱,图像局部熵均值的变化和图像受损程度成正相关。

图4 图像受损程度和边缘受损程度以及局部熵的关系

通过上述分析以及图4可知,图像的边缘受损程度和图像的受损程度呈现非线性关系,且进一步说明边缘相似度对于视觉安全性的影响随着加密强度的增加而下降,则SES的权重α的变化应该是非线性的。

基于上述对α取值的讨论,在本论文中定义权重系数α如下:

其中,SES∈[ ]0,1,则α∈[0.5,1],且α的取值随着SES的减小非线性的减小,则式(8)可以表示为式(10):

则SES和SLE越小,SLEES越小,加密图像的视觉安全性越高。

4 实验结果及分析

对于图像而言,加密的基本思想有两个方面,一方面是改变图像像素的空间位置分布,另一方面是改变图像像素值的大小。因此通过改变这两个方面来对图像进行加密,获得安全等级递增的加密图像,看客观评估指标得到的结果是否与主观评估的结果一致,从而验证本文算法的有效性。同时为了展示算法的性能,计算常用的评估指标MSE、PSNR、SSIM,基于边缘相似度和纹理相似度的指标VSI[15],以及融合前的评估指标SLE和SES,将本文提出的融合评估指标SLEES和这几个指标进行对比。

加密图像与原始图像的差异越大,人眼对于加密图像的理解程度越低,加密图像的视觉安全性越高。因此对于加密等级递增的图像,MSE应该单调递增,PSNR、SSIM、VSI、SES和SLEES应该单调递减。

4.1 基于改变像素空间位置的视觉安全性评估

通过依次减小用于空间位置置乱的图像子块的大小,用洗牌法置乱图像子块的空间位置分布,从而得到视觉安全性逐渐增强的加密算法。以256×256的Lena图像为例,图5中Level1到Level5的图像安全等级依次增高,其中置乱的图像子块大小依次为128×128、64×64、32×32、8×8、4×4。

图5 Lena图像不同安全等级的加密图像

基于式(6),使用Canny算子提取图5中各个等级的加密图像和原始图像的共有边缘,得到的二值图像如图6所示。

图6 加密图像与原始图像的共有边缘

计算得到各个评估指标的结果如表1所示,同时将各个指标的变化趋势用折线图表示,由于各个指标的取值范围差别很大,为了对比直观性,将指标进行归一化处理,统一将取值范围映射到[0,1],得到如图7所示的结果。

表1 各个评估指标的实验对比

图7 各个评估指标的变化趋势图

通过表1和图7可以看出,MSE、PSNR、SSIM、VSI、SLE和SES都不具有单调性,而SLEES指标单调递减,和主观评估结果一致。

与原始图像相比,Level1和Level2的加密图像的内容相似度的差异大,而Level4和Level5的加密图像的内容相似度的差异小,而从图7中可以看出,SLEES的下降趋势是先快后慢,从Level1到Level2急剧下降,而从Level4到Level5缓慢下降,和主观评估结果一致,这也进一步说明融合指标SLEES性能良好。

4.2 基于改变像素值大小的视觉安全性评估

图像数据代表了图像内容所含的信息,编码这些信息可以实现加密的目的。以Lena图像为例,首先分析图像不同部分的重要性,然后根据它们的重要性来分类出图像数据的关键信息,从而得到视觉安全性逐渐增强的加密算法。

图8给出了灰度等级数为256的图像的比特位平面,其中比特平面7代表了所有图像像素均由最高比特位组成的二值图像,比特平面0代表了所有图像像素均由最低比特位组成的二值图像。由图8可知,比特平面7最接近于原始图像,而随着比特平面的下降,比特平面与原图像的差异越来越大,比特平面0接近于白噪声。由此可见,比特平面0是最不重要的平面,随着比特平面的上升,比特平面的重要性也依次增加,比特平面7是最重要的比特平面。

图8 Lena图像的比特平面分解效果图

基于Logistic混沌序列对图像的比特面进行加密,通过组合加密不同的比特面,获得加密等级依次增强的加密图像。根据表2中的组合情况,获得的安全等级递增的图像如图9所示。

表2 比特面加密组合情况

基于式(6),使用Canny算子提取图9中各个等级的加密图像和原始图像的共有边缘,得到的二值图像如图10所示。

计算得到各个评估指标的结果如表3所示,其中MSE单调递增,PSNR、SSIM、SLE、SES和SLEES单调递减,单调性和理论分析结果一致。

图9 Lena图像不同安全等级的加密图像

图10 加密图像与原始图像的共有边缘

表3 各个评估指标的实验对比

将单调递增的指标MSE和单调递减的指标PSNR、SSIM、SLE、SES和SLEES分别放在两个折线图中,将指标进行归一化处理,统一将取值范围映射到[0,1],得到图11所示的结果。

和前面实验的分析类似,各个评估指标从Level1到Level5的变化趋势应该是先急剧后缓慢,其中严格符合这个变化趋势的指标有PSNR、VSI和SLEES。

综合两个实验结果可以看出,本文提出的融合评估指标SLEES得到的结果和理论分析结果一致,且和主观观察的图像变化趋势相符,整体性能优于其他评估指标。

4.3 评估指标的鲁棒性分析

为了进一步验证本文提出的SLEES评估指标具有良好的鲁棒性,以Matlab工具箱中自带的120帧traffic视频序列为例,分别使用4.1节和4.2节的加密方式对图像进行加密,产生从Level1到Level5的加密视频帧。

图11 各个评估指标的变化趋势图

首先每隔4帧取一帧加密图像计算出融合指标SLEES值,得到加密视频序列的SLEES分布曲线,结果如图12所示。

图12 不同安全等级的S LEES变化趋势图

通过图12可以看出,对于通过两种典型加密方式处理得到的不同安全等级的视频帧,加密等级越高,SLEES越小,和主观评估结果一致。

接下来依次画出融合前指标局部熵指标SLE,边缘相似度SES和融合后指标SLEES的盒须图,分析各个安全等级下的指标的分散情况,得到的结果如图13所示。

图13 融合前后指标的盒须图

通过图13可以看出,对于两种典型加密方式,SLE指标在加密等级较高的情况下表现良好,SES指标在加密等级较低的情况下表现良好,与3.3节的分析结果一致。同时,融合后的指标SLEES整体分布要比融合前的指标SLE和SES的分布更加均匀,表明本文提出的自适应融合算法指标SLEES具有良好的鲁棒性。

5 结束语

本文针对基于局部熵进行加密图像的视觉安全性评估存在的局限性,引入图像的边缘特征,进行图像的边缘相似度度量,通过将基于图像边缘相似度和局部熵的评估方法进行自适应融合,提出了SLEES指标,一方面消除了局部熵评估算法的块效应,同时拓宽了算法的评估范围,使得算法在各个加密强度下均具有较好的评估效果。通过两种最典型的加密方式处理获得加密等级递增的加密图像,实验结果表明本文提出的融合评估指标得到的评估结果和主观评估结果一致,整体性能优于其他几个典型评估指标,并且在加密视频帧上进行实验,实验结果表明融合后的评估指标的整体分布比融合前的指标的分布更加均匀,验证了算法的鲁棒性。本文是针对加密图像来进行安全性评估,加密图像的质量整体相对较差,在接下来的研究工作中,将尝试提出可以同时评估图像质量和图像视觉安全性的评估指标,进一步扩大应用范围。

猜你喜欢

比特加密边缘
一种新型离散忆阻混沌系统及其图像加密应用
一种基于熵的混沌加密小波变换水印算法
比特币还能投资吗
比特币分裂
加密与解密
一张图看懂边缘计算
比特币一年涨135%重回5530元
认证加密的研究进展
神秘的比特币
在边缘寻找自我