基于四元数正交变换的彩色图像加密方法及解密方法
技术领域
本发明属于数字图像加密技术领域,尤其是涉及一种基于共轭对称-列率四元数哈达玛变换的彩色图像加密方法及相应的解密方法。
背景技术
随着网络的普及以及信息处理和通信技术的飞速发展,图像、音频、视频等多媒体信息可在各种通信网络中快捷传输,在给人们带来便利的同时,信息安全问题也逐渐引起人们的重视。图像作为信息表达的主流,图像信息安全问题自然成为人们关注的焦点。图像采集技术和设备的迅速发展使得目前获取的真实图像大都是彩色的,他们提供了比灰度图像和二值图像更多的信息量和更为丰富的视觉感受,因此彩色图像的应用越来越广泛。如图1所示(由于专利提交图片限制,彩色图像只能转为黑白图片显示),通常有两种方法处理彩色图像:灰度化和三通道分别处理。由于灰度图像易处理等特点,因此大部分研究采用灰度化的方法,但该种方法的不足是丢失了重要的色彩信息。另一些研究则采用三通道分别处理的方法,即将传统的针对灰度图像的算法分别直接应用于三个通道,其缺陷在于没有考虑三通道之间的内在联系和整体性。
四元数是传统复数的推广,一个四元数包括一个实部和三个虚部,是由著名数学家哈密尔顿在1843年引入的。从上世纪90年代开始,越来越多的国内外专家学者将四元数的相关理论引入到彩色图像处理,提出了基于四元数的整体式处理方案。该方案的核心是彩色图像四元数表示方法:彩色图像的每个像素采用一个纯四元数来表示,三个通道作为它的三个虚部。以RGB颜色空间为例,令fR(x,y),fG(x,y)和fB(x,y)分别表示彩色图像f(x,y)的红绿蓝三个通道,则f(x,y)可以表示为:
f(x,y)=fR(x,y)i+fG(x,y)j+fB(x,y)k,
其中i,j和k为四元数的三个基本虚数单位。彩色图像四元数表示方法的优势就是将彩色图像视为一个矢量整体并考虑了三通道之间的内在联系。纵观现有的基于四元数的彩色图像加密技术,我们发现,现有的加密方法中,抗攻击、抗鲁棒性并不理想,或在过分追求抗鲁棒性的基础上,算法效率过低。
发明内容
为解决上述问题,本发明公开了一种基于彩色图像四元数表示方法的加密和解密方法, 定义了共轭对称-列率四元数哈达玛(Conjugate symmetric sequency-orderedquaternion Hadamard transform,CS-SQHT),从而解决了传统的CS-SCHT在彩色图像加密应用中存在的色彩信息损失和没有考虑整体性等缺陷,相较现有的基于四元数的加密方法也有明显的性能提升。
为了达到上述目的,本发明提供如下技术方案:
一种基于四元数正交变换的彩色图像加密方法,包括如下步骤:
步骤A,将原彩色图像f(x,y)进行行(列)宽为b1的块变换操作,得到g(x,y),然后将g(x,y)采用下式的彩色图像四元数表示方法进行表示:
g(x,y)=gR(x,y)i+gG(x,y)j+gB(x,y)k;
步骤B,将经过步骤A预处理后得到的g(x,y)与随机相位掩模RT1进行相乘,然后通过下式进行密钥为μ的CS-SQHT正变换得到G(u,v):
G(u,v)=CS-SQHT(g(x,y)·RT1),
随后将G(u,v)与随机相位掩模RT2进行相乘,通过下式进行密钥为μ的逆变换ICS-SQHT得到最终的加密图像k(x,y):
k(x,y)=ICS-SQHT(G(u,v)·RT2);
其中,RT1和RT2为四元数双随机相位掩模,RT1=eia(x,y)和RT2=ejb(u,v),其中a(x,y)和b(u,v)均为[0,1]之间均匀分布的随机噪声;
所述CS-SQHT为:
所述ICS-SQHT为CS-SQHT的逆变换,定义为:
其中,为:
其中,p,c分别是矩阵的行号和列号,并且0≤p,c≤N-1,b(p)是十进制整数p的二进制形式,位翻转后转换成的十进制数字。
本发明还提供了一种基于四元数正交变换的彩色图像解密方法,包括如下步骤:
步骤a,将加密图像k(x,y)进行密钥为μ的CS-SQHT正变换,然后乘以RT2的共轭得到G(u,v):
G(u,v)=CS-SQHT(k(x,y))·(RT2)*
随后将G(u,v)进行密钥为μ的CS-SQHT逆变换,将逆变换的结果乘以RT1的共轭得到g(x,y):
步骤b,对经过频域解密处理的结果进行行(列)宽为b1的块变换逆变换,最终得到解密图像
其中,RT1和RT2为四元数双随机相位掩模,RT1=eia(x,y)和RT2=ejb(u,v),其中a(x,y)和b(u,v)均为[0,1]之间均匀分布的随机噪声;
所述CS-SQHT为:
所述ICS-SQHT为CS-SQHT的逆变换,定义为:
其中,为:
其中,p,c分别是矩阵的行号和列号,并且0≤p,c≤N-1,b(p)是十进制整数p的二进制形式,位翻转后转换成的十进制数字。
上述HN为N×N的共轭对称-正序四元数哈达玛变换(Conjugate symmetricnatural-ordered quaternion Hadamard transform,CS-NQHT)矩阵,N=2n,n为任意正整数,其递归定义为
其中,
其中,为2n-2阶单位矩阵,μ为单位纯四元数,
H'N/2递归定义为:
其中
该递归定义初值为:
与现有技术相比,本发明具有如下优点和有益效果:考虑了彩色图像三通道的整体性和相关性,具有较强的抗攻击鲁棒性,明显优于传统的CS-SCHT的算法,略优于基于四元数的现有算法;本发明实现简单,时间复杂度低,计算效率明显优于基于四元数的现有算法。
附图说明
图1为采用灰度化、三通道分别处理及采用四元数的彩色图像处理问题模型示意图;
图2为本发明提出的加密算法框架示意图;
图3为本发明提出的解密算法框架示意图;
图4为六幅经典测试图像,其中(a)、(b)、(c)的大小为512×512,(d)、(e)、(f)的大小为256×256;
图5三种算法针对图4(a)的加密结果图,其中(a)为CS-SQHT算法加密结果图,(b)为QDFT算法加密结果图,(c)为CS-SCHT算法加密结果图;
图6为六幅图像的裁剪攻击测试平均结果示意图;
图7为六幅图像的高斯噪声攻击测试平均结果示意图;
图8为六幅图像的椒盐噪声攻击测试平均结果示意图;
具体实施方式
以下将结合具体实施例对本发明提供的技术方案进行详细说明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
首先,针对彩色图像,本发明定义了CS-SQHT,考虑了彩色图像三通道的整体性和相关性,将传统的CS-SCHT更加有效的应用于彩色图像处理。
(1)CS-SQHT的定义
在定义CS-SQHT之前,我们首先给出CS-NQHT矩阵的定义。令HN为N×N(N=2n,n为任意正整数)的CS-NQHT矩阵,其递归定义为
其中,
上述为2n-2阶单位矩阵,μ为单位纯四元数,
H'N/2递归定义为
其中
该递归定义初值为
接下来,我们定义N×N的CS-SQHT矩阵为:
其中,p,c分别是矩阵的行号和列号,并且0≤p,c≤N-1,b(p)则是十进制整数p的二进制形式,位翻转后转换成的十进制数字。例如:当N=8,p=3时,p的二进制为011,位翻转以后为110,转换为十进制,则b(p)=6。则可以由下式得到:
对于大小为M×N的彩色图像fM×N,那么二维CS-SQHT定义为
其中(·)*为四元数共轭运算,(·)T表示矩阵转置。
同时,我们定义CS-SQHT逆变换ICS-SQHT为
本发明基于上述定义的CS-SQHT和双随机相位加密思想,对彩色图像进行加密,加密 框架如图2所示,具体包括如下步骤:
步骤A,彩色图像块变换:将原彩色图像f(x,y)进行行(列)宽为b1的块变换操作,得到g(x,y),然后将g(x,y)采用下式的彩色图像四元数表示方法进行表示:
g(x,y)=gR(x,y)i+gG(x,y)j+gB(x,y)k;
步骤B,频域加密:将经过步骤A预处理后得到的g(x,y)与随机相位掩模RT1进行相乘,然后通过下式进行密钥为μ的CS-SQHT正变换得到G(u,v):
G(u,v)=CS-SQHT(g(x,y)·RT1)
接着将G(u,v)与随机相位掩模RT2进行相乘,最后通过下式进行密钥为μ的CS-SQHT逆变换得到最终的加密图像k(x,y):
k(x,y)=ICS-SQHT(G(u,v)·RT2)
其中,RT1和RT2为四元数双随机相位掩模,本发明中采用:RT1=eia(x,y)和RT2=ejb (u,v),其中a(x,y)和b(u,v)均为[0,1]之间均匀分布的随机噪声。
与上述图像加密方法对应,本发明还提供了相应的图像解密方法,其框架如图3所示,包括如下步骤:
步骤a,频域解密处理:将加密图像k(x,y)进行密钥为μ的CS-SQHT正变换,然后乘以RT2的共轭得到G(u,v):
G(u,v)=CS-SQHT(k(x,y))·(RT2)*
随后将G(u,v)进行密钥为μ的CS-SQHT逆变换,将逆变换的结果乘以RT1的共轭得到g(x,y):
步骤b,块变换逆变换:为了恢复原彩色图像,需要对经过频域解密处理的结果进行行(列)宽为b1的块变换的逆变换,最终得到解密图像
从上述加密解密框架可知,本发明提出的基于CS-SQHT的算法需要的密钥为行(列)宽b1,单位纯四元数μ,双随机相位掩模RT1和RT2。
我们对图4所示的六幅经典彩色图像(由于专利提交图片限制,这些图片只能转为黑白图片显示)进行实验,μ采用常用的是我们将本发明方法与现有采用四元数思想的基于QDFT的算法以及采用三通道分别处理思想的基于CS-SCHT的算法进行对比。我们采用通用的峰值信噪比PSNR来衡量算法的加密和解密效果。
图5显示了针对第一幅图像的三种算法的加密结果图,其中基于CS-SQHT方法加密图 像的PSNR值为6.4894,基于QDFT方法加密图像的PSNR值为6.5651,基于CS-SCHT方法加密图像的PSNR值为6.6194。图6~图8为各种攻击下的鲁棒性测试结果图,图中展示的是六幅加密图像在各种攻击下获取的解密图像与其相应原图像之间的PSNR的平均值。从这些结果可以看出,基于CS-SQHT的方法加密解密后的图像明显优于基于CS-SCHT方法,在受到裁剪攻击和椒盐噪声攻击时效果与基于QDFT的方法持平,在受到高斯噪声攻击时,基于CS-SQHT的方法略优于基于QDFT的方法。我们对比三种算法的计算效率发现,CS-SQHT变换的计算效率大大优于QDFT,表1展示了三种算法对图4中六幅图像的进行加密操作所需的运算时间,实验环境为:2.40GHz CPU和4G内存的ThinkPad E420笔记本和Matlab2006b软件。
算法 |
图4(a) |
图4(b) |
图4(c) |
图4(d) |
图4(e) |
图4(f) |
CS-SCHT |
0.4295 |
0.4244 |
0.4239 |
0.0709 |
0.0703 |
0.0719 |
QDFT |
0.7701 |
0.7644 |
0.7608 |
0.1248 |
0.1248 |
0.1304 |
CS-SQHT |
0.5611 |
0.5610 |
0.5533 |
0.0935 |
0.0931 |
0.0935 |
表1 三种算法对图3中各图像加密的运算时间(秒)
本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。