一种基于分数阶变换的数字图像加密的方法及装置转让专利

申请号 : CN201810002682.8

文献号 : CN108270944B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 胡国真康学净罗暄澍郭子晖

申请人 : 北京邮电大学

摘要 :

本发明实施例提供了一种基于分数阶变换的数字图像加密的方法及装置,属于数字图像加密技术领域。所述方法包括:获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;根据原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;对空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;根据变换域图像矩阵、原始图像对应的图像矩阵的行数值与列数值、各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;根据扩散矩阵、变换域图像矩阵和预设第一置乱算法,确定加密图像矩阵。采用本发明,可以提升密文图像实际传输过程中的抗噪声和抗丢失性能,减少了图像传输过程中带来的带宽代价。

权利要求 :

1.一种基于分数阶变换的数字图像加密的方法,其特征在于,所述方法包括:获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;

根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;

对所述空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;

根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;

根据所述扩散矩阵、所述变换域图像矩阵和所述预设第一置乱算法,确定加密图像矩阵;

所述根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵,包括:根据所述原始图像对应的图像矩阵的行数值与列数值和预设混沌序列发生器,确定第一混沌序列;

将所述第一混沌序列进行按照预设方式排序,得到第二混沌序列;

根据所述第一混沌序列和所述第二混沌序列,确定位置变换映射关系;

根据所述原始图像对应的图像矩阵和所述位置变换映射关系,确定空间域置乱图像矩阵。

2.根据权利要求1所述的方法,其特征在于,所述预设第一分数阶变换为Hartley变换。

3.根据权利要求1所述的方法,其特征在于,所述根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵,包括:根据所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值、预设灰度级和预设的归一化平均像素灰度值方程,确定归一化平均像素灰度值;

根据所述归一化平均像素灰度级值和预设混沌序列发生器,确定第三混沌序列矩阵;

根据所述变换域图像矩阵、所述第三混沌序列矩阵,确定扩散矩阵。

4.根据权利要求1所述的方法,其特征在于,所述基于分数阶变换的数字图像加密的方法的解密过程,包括:根据所述加密图像矩阵和预设第二置乱算法,确定所述扩散矩阵,并确定所述原始图像对应的图像矩阵的行数值与列数值;

根据所述扩散矩阵和预设第二扩散算法,确定所述变换域图像矩阵;

对所述变换域图像矩阵进行预设第二分数阶变换,得到所述空间域置乱图像矩阵;

根据所述空间域置乱图像矩阵和所述预设第二置乱算法,确定所述原始图像对应的图像矩阵和各像素点的灰度值。

5.一种基于分数阶变换的数字图像加密的装置,其特征在于,所述装置包括:获取模块,用于获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;

第一确定模块,用于根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;

变换模块,用于对所述空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;

第二确定模块,用于根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;

第三确定模块,用于根据所述扩散矩阵、所述变换域图像矩阵和所述预设第一置乱算法,确定加密图像矩阵;

所述第一确定模块,还用于:

根据所述原始图像对应的图像矩阵的行数值与列数值和预设混沌序列发生器,确定第一混沌序列;

将所述第一混沌序列进行按照预设方式排序,得到第二混沌序列;

根据所述第一混沌序列和所述第二混沌序列,确定位置变换映射关系;

根据所述原始图像对应的图像矩阵和所述位置变换映射关系,确定空间域置乱图像矩阵。

6.根据权利要求5所述的装置,其特征在于,所述预设第一分数阶变换为Hartley变换。

7.根据权利要求5所述的装置,其特征在于,所述第二确定模块,还用于:根据所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值、预设灰度级和预设的归一化平均像素灰度值方程,确定归一化平均像素灰度值;

根据所述归一化平均像素灰度级值和预设混沌序列发生器,确定第三混沌序列矩阵;

根据所述变换域图像矩阵、所述第三混沌序列矩阵,确定扩散矩阵。

8.根据权利要求5所述的装置,其特征在于,所述基于分数阶变换的数字图像加密的装置的解密模块,还用于:根据所述加密图像矩阵和预设第二置乱算法,确定所述扩散矩阵,并确定所述原始图像对应的图像矩阵的行数值与列数值;

根据所述扩散矩阵和预设第二扩散算法,确定所述变换域图像矩阵;

对所述变换域图像矩阵进行预设第二分数阶变换,得到所述空间域置乱图像矩阵;

根据所述空间域置乱图像矩阵和所述预设第二置乱算法,确定所述原始图像对应的图像矩阵和各像素点的灰度值。

说明书 :

一种基于分数阶变换的数字图像加密的方法及装置

技术领域

[0001] 本发明涉及数字图像加密技术领域,特别是涉及一种基于分数阶变换的数字图像加密的方法及装置。

背景技术

[0002] 随着计算机和多媒体技术的快速发展,数字图像在网络中的传输非常频繁。某些图像信息如身份证信息图片、军事基地图片和设计图纸等等,不仅涉及个人隐私,而且有的事关国家安全,因此必须采用加密传输的方式。加密算法中最常用的两种分别是基于空间域的图像加密算法,以及基于变换域的图像加密算法。
[0003] 基于空间域的图像加密算法直接在空间域对数字图像进行一系列的处理,比较典型的处理方式为“置乱—扩散”模式或者“置乱—替代—扩散”模式;基于变换域的图像加密算法先将原始图像映射到某种变换域,然后在变换域对图像进行置乱等处理,最后往往采用不同参数重复进行一次或多次变换。
[0004] 但是,基于现有技术的数字图像加密方法,无论是基于空间域还是变换域的图像加密算法,都存在着一些问题。基于空间域的图像加密算法的主要缺点在于图像实际传输过程中的抗噪声和抗丢失性能较差;而基于变换域的图像加密算法的主要缺点在于变换域图像传输过程中增加了带宽代价,而且变换域图像的统计特性往往不完备。

发明内容

[0005] 本发明实施例的目的在于提供一种基于分数阶变换的数字图像加密的方法及装置,以实现提升图像实际传输过程中的抗噪声和抗丢失性能,减少了变换域图像传输过程中带来的带宽代价,提高变换域图像加密的抗统计攻击特性。具体技术方案如下:
[0006] 第一方面,提供了一种基于分数阶变换的数字图像加密的方法,所述方法包括:
[0007] 获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;
[0008] 根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;
[0009] 对所述空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;
[0010] 根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;
[0011] 根据所述扩散矩阵、所述变换域图像矩阵和所述预设第一置乱算法,确定加密图像矩阵。
[0012] 可选的,所述根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵,包括:
[0013] 根据所述原始图像对应的图像矩阵的行数值与列数值和预设混沌序列发生器,确定第一混沌序列;
[0014] 将所述第一混沌序列进行按照预设方式排序,得到第二混沌序列;
[0015] 根据所述第一混沌序列和所述第二混沌序列,确定位置变换映射关系;
[0016] 根据所述原始图像对应的图像矩阵和所述位置变换映射关系,确定空间域置乱图像矩阵。
[0017] 可选的,其特征在于,所述预设第一分数阶变换为Hartley变换。
[0018] 可选的,所述根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵,包括:
[0019] 根据所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设的归一化平均像素灰度值方程,确定归一化平均像素灰度值;
[0020] 根据所述归一化平均像素灰度级值和预设混沌序列发生器,确定第三混沌序列矩阵;
[0021] 根据所述变换域图像矩阵、所述第三混沌序列矩阵,确定扩散矩阵。
[0022] 可选的,所述基于分数阶变换的数字图像加密的方法的解密过程,包括:
[0023] 根据所述加密图像矩阵和预设第二置乱算法,确定所述扩散矩阵所述原始图像对应的图像矩阵的行数值与列数值;
[0024] 根据所述扩散矩阵和预设第二扩散算法,确定所述变换域图像矩阵;
[0025] 对所述变换域图像矩阵进行预设第二分数阶变换,得到所述空间域置乱图像矩阵;
[0026] 根据所述空间域置乱图像矩阵和所述预设第二置乱算法,确定所述原始图像对应的图像矩阵和各像素点的灰度值。
[0027] 第二方面,提供了一种基于分数阶变换的数字图像加密的装置,其特征在于,所述装置包括:
[0028] 获取模块,用于获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;
[0029] 第一确定模块,用于根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;
[0030] 变换模块,用于对所述空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;
[0031] 第二确定模块,用于根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;
[0032] 第三确定模块,用于根据所述扩散矩阵、所述变换域图像矩阵和所述预设第一置乱算法,确定加密图像矩阵。
[0033] 可选的,所述第一确定模块,还用于:
[0034] 根据所述原始图像对应的图像矩阵的行数值与列数值和预设混沌序列发生器,确定第一混沌序列;
[0035] 将所述第一混沌序列进行按照预设方式排序,得到第二混沌序列;
[0036] 根据所述第一混沌序列和所述第二混沌序列,确定位置变换映射关系;
[0037] 根据所述原始图像对应的图像矩阵和所述位置变换映射关系,确定空间域置乱图像矩阵。
[0038] 可选的,所述预设第一分数阶变换为Hartley变换。
[0039] 可选的,所述第二确定模块,还用于:
[0040] 根据所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值、预设灰度级和预设的归一化平均像素灰度值方程,确定归一化平均像素灰度值;
[0041] 根据所述归一化平均像素灰度级值和预设混沌序列发生器,确定第三混沌序列矩阵;
[0042] 根据所述变换域图像矩阵、所述第三混沌序列矩阵,确定扩散矩阵。
[0043] 可选的,所述基于分数阶变换的数字图像加密的装置的解密模块,还用于:
[0044] 根据所述加密图像矩阵和预设第二置乱算法,确定所述扩散矩阵所述原始图像对应的图像矩阵的行数值与列数值;
[0045] 根据所述扩散矩阵和预设第二扩散算法,确定所述变换域图像矩阵;
[0046] 对所述变换域图像矩阵进行预设第二分数阶变换,得到所述空间域置乱图像矩阵;
[0047] 根据所述空间域置乱图像矩阵和所述预设第二置乱算法,确定所述原始图像对应的图像矩阵和各像素点的灰度值。
[0048] 第三方面,提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的方法步骤。
[0049] 本发明实施例提供的一种基于分数阶变换的数字图像加密的方法及装置,可以获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;根据原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;对空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;根据变换域图像矩阵、原始图像对应的图像矩阵的行数值与列数值、各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;根据扩散矩阵、变换域图像矩阵和预设第一置乱算法,确定加密图像矩阵。这样,通过将空间域加密算法和变换域加密算法相互结合的方式,能够实现对图像更加完善的加密,有效地提升图像实际传输过程中的抗噪声和抗丢失性能,减少了变换域图像传输过程中带来的带宽代价,提高变换域图像加密的抗统计攻击特性。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。

附图说明

[0050] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0051] 图1为本发明实施例提供的一种基于分数阶变换的数字图像加密的方法流程图;
[0052] 图2为本发明实施例提供的一种基于分数阶变换的数字图像加密的解密方法流程图;
[0053] 图3为本发明实施例提供的一种基于分数阶变换的数字图像加密的装置结构示意图;
[0054] 图4为本发明实施例提供的一种终端的结构示意图。

具体实施方式

[0055] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0056] 本发明实施例提供了一种基于分数阶变换的数字图像加密的方法,该方法通过将空间域变换算法和变换域算法变换相互结合的方式,从而能够实现对图像更加完善的加密,能够有效地提升图像实际传输过程中的抗噪声和抗丢失性能,减少了变换域图像传输过程中带来的带宽代价,提高变换域图像加密的抗统计攻击特性。该方法的执行主体可以是终端,终端可以是手机、电脑。
[0057] 如图1所示,该方法的处理过程可以如下:
[0058] 步骤100:获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵。
[0059] 在实施中,终端可以预先存储多个图像数据,终端可以从本地存储的图像数据中,获取待处理的图像数据;或者,终端也可以从其他网络设备中获取待处理的图像数据。当用户对某图像进行图像传输时,用户在终端打开对应的应用程序,然后选择需要传输的图像,终端则会接收到对应该图像的选择指令,然后在上述多个图像数据中,获取该图像(即原始图像),然后对原始图像进行灰度处理,得到原始图像对应的灰度图像,进而获取各像素点在该灰度图像中的灰度值。终端还可以确定原始图像对应的图像矩阵,以便对该图像进行加密处理。
[0060] 步骤110:根据原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵。
[0061] 在实施中,终端可以预先存储第一置乱算法。终端可以通过该置乱算法,将原始图像对应的图像矩阵置乱为空间域置乱图像矩阵。具体的,该第一置乱算法可以分为Arnold变换、Fibonacci与Fibonacci-Q变换、幻方变换、正交拉丁方变换、Hilbert曲线变换、Grey码变换、仿射变换或混沌置乱变换等,本实施例不做限定。
[0062] 可选的,本实施例以混沌置乱算法为例进行说明,具体的处理过程如下:
[0063] 步骤一,根据原始图像对应的图像矩阵的行数值与列数值和预设混沌序列发生器,确定第一混沌序列。
[0064] 终端可以通过下列函数(1)~(4)得到第一混沌序列:
[0065]
[0066] 其中,矩阵的第一行(x1,1,x1,2,x1,3,…)和第二行的第一个元素x2,1的取值范围均为(0,1),它们是迭代系统的初值;M和N分别表示原始图像对应的图像矩阵的行数值与列数值,其中n,i为两个方向上的迭代索引;参数μ和w均为控制参数,μ的取值范围为(0,1),w的取值范围为[0,+∞);[t]为高斯函数,表示不超过t的最大整数;j,k的值由如下的Arnold映射给出:
[0067]
[0068] 其中,参数p和q均为控制参数,p和q的取值范围均为正整数;矩阵的行数值M和列数值N的取值范围均为正整数。以上提到的所有初值和参数均作为密钥,由通信双方事先商定或通过其他途径传输。
[0069] 在实际应用时,终端为了避免暂态效应和边缘效应,常常舍弃混沌矩阵的第一行和第一列元素;另外为了改善混沌系统的性能,可以令参数w随着迭代过程中n的增加动态增长。此外为了得到一维混沌序列,终端还可以将混沌矩阵按列或者按行填充为一维向量。
[0070] 步骤二,将第一混沌序列进行按照预设方式排序,得到第二混沌序列。
[0071] 终端将生成的第一混沌序列按照从小到大,或者从大到小的方式进行排序,得到第二混沌序列。
[0072] 步骤三,根据第一混沌序列和第二混沌序列,确定位置变换映射关系。
[0073] 终端将第一混沌序列排序得到第二混沌序列过程中,第一混沌序列和第二混沌序列中每个元素都可能有位置变换。终端根据各元素的位置变换,建立起位置变换映射关系。具体的,针对每一个元素,该元素在第一混沌序列位置为A,在第二混沌序列中位置为B,则终端会记录A与B的对应关系。这样,终端可以建立起每个元素的位置变换映射关系。
[0074] 步骤四,根据原始图像对应的图像矩阵和位置变换映射关系,确定空间域置乱图像矩阵。
[0075] 终端可以通过下列函数求得空间域置乱图像矩阵:
[0076] X2(k)=X1(f(k))  (5)
[0077] G2(k)=G1(f(k))  (6)
[0078] 其中,G1表示终端对原始图像对应的图像矩阵按列填充转化的一维行向量;f表示位置变换映射关系;G2表示终端对G1进行置乱后得到的一维向量;k表示元素在混沌序列或者图像矩阵中的位置;X1表示第二混沌序列;X2表示第二混沌序列。
[0079] 终端可以通过上式,利用f对G1进行置乱得到一维行向量G2,即通过(5)式求得f,然后将f代入(6)式求得G2,最后将G2回转为M×N矩阵,得到空间域置乱图像矩阵。
[0080] 步骤120:对空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵。
[0081] 在实施中,终端预先存储第一分数阶变换方式。终端通过该第一分数阶变换方式,对空间域置乱图像矩阵进行预设第一分数阶变换,然后得到变换域图像矩阵。具体的,该预设第一分数阶变换可以分为分数阶傅里叶变换、分数阶Hartley变换、分数阶余弦变换等等,本实施例不做限定。
[0082] 可选的,本实施例以终端通过分数阶Hartley变换对空间域置乱图像矩阵进行处理为例进行说明:
[0083] 终端将空间域置乱图像矩阵的每一行元素,依次作为输入向量进行如下的保实多参数分数阶Hartley变换,然后得到变换域图像矩阵。该过程步骤如下:
[0084] 步骤1:终端对空间域置乱图像矩阵的每一行元素依次作为输入向量通过(7)式进行如下的保实多参数分数阶Hartley变换得到变换域图像:
[0085] 终端根据下式计算其大小为 的多参数分数阶Hartley变换矩阵
[0086]
[0087] 其中,x={x1,x2,…,xN}T是一长度为N的输入向量,为分数变换的阶次,由(1)~(4)式生成; 为加权系数由下式计算:
[0088]
[0089] 其中(r0,r1,…,rN-1)∈RN为参数向量,由(1)~(4)式生成。
[0090] H为离散分数阶Hartley变换矩阵,其元素由下式计算:
[0091]
[0092] 其中,Ha为N点分数阶Hartley变换核,通过(10)~(12)式求得。
[0093] H的特征分解可以表示为:
[0094]
[0095] 其中,uk是特征值e-jπk对应的特征向量,可以通过实对称矩阵S的特征向量得到:
[0096]
[0097] 终端得到N点分数阶Hartley变换核Ha的计算方法为:
[0098]
[0099] 其中,uk与Hartley变换中的特征向量相同。
[0100] 令 它是由x构造出的复值向量;
[0101] 令 接下来终端构造 作为保实多参数分数阶Hartley变换的输出;
[0102] 步骤2:终端再将变换域图像矩阵的每一列元素作为输入向量。终端通过(7)~(12)式对该输入向量进行Hartley变换,得到变换域图像矩阵。
[0103] 步骤130:根据变换域图像矩阵、原始图像对应的图像矩阵的行数值与列数值、各像素点的灰度值和预设第一扩散算法,确定扩散矩阵。
[0104] 在实施中,终端可以预存预设第一扩散算法。终端通过该扩散算法对变换域图像矩阵进行扩散,确定扩散矩阵。具体的处理过程如下:
[0105] 步骤一:根据原始图像对应的图像矩阵的行数值与列数值、各像素点的灰度值,预设灰度级和预设的归一化平均像素灰度值方程,确定归一化平均像素灰度值;
[0106] 终端根据下式计算原始图像对应的图像矩阵的一次性密钥UAGV(Unified Average Gray Value,归一化平均像素灰度值):
[0107]
[0108] 其中,G表示原始图像对应的图像矩阵,M和N分别表示原始图像矩阵的行数值和列数值;L表示灰度级;i和j分别是原始图像对应的图像矩阵的行位置和列位置;G(i,j)表示图G在(i,j)像素的灰度值。
[0109] 终端通过下式求得一次性密钥r:
[0110] m=max{R(i,j)}  (14)
[0111] r=min{r≥m&r=2n,n∈Z}  (15)
[0112] 其中,R表示变换域图像矩阵的每个元素的整数部分得到的整数矩阵;m表示R中元素的最大绝对值;r表示不小于m的2的幂的最小值。
[0113] 步骤二:将归一化平均像素灰度级值通过预设混沌序列发生器,得到第三混沌序列矩阵;
[0114] 终端将步骤一中求得的UAGV,作为混沌序列发生器的初值。终端将该初值通过(1)~(4)式,生成大小为M×N的第三混沌序列矩阵。
[0115] 终端通过下式(16)得到矩阵C,即:
[0116] C=(r-1)C′  (16)
[0117] 其中,C′表示第三混沌序列矩阵,r表示步骤一中求得的一次性密钥。
[0118] 步骤三:根据变换域图像矩阵、第三混沌序列矩阵,确定扩散矩阵。
[0119] 终端通过下式获得扩散矩阵R′,即:
[0120] R′(i,j)=bitxor(R(i,j),C(i,j))  (17)
[0121]
[0122] 其中,bitxor表示按位进行异或操作;R表示前述变换域图像矩阵的每个元素的整数部分;C表示式(16)得到的结果;i和j分别是所在矩阵的行位置和列位置;L表示灰度级;矩阵Q′表示终端将R′的每个元素都缩小r/L倍,各元素的取值范围为[0,L)。
[0123] 步骤140:根据扩散矩阵、变换域图像矩阵和预设第一置乱算法,确定加密图像矩阵。
[0124] 终端将扩散矩阵R′加上变换域图像矩阵的小数部分,得到矩阵T’,然后再将该矩阵T’进行前述置乱操作,得到加密图像矩阵。
[0125] 本实施例还提供了对基于上述数字图像加密方法得到的加密图像进行解密的过程。终端预存有与第一置乱算法对应的第二置乱算法,与第一扩散算法对应的第二扩散算法,与第一分数阶变换对应的第二分数阶变换。如图2所示,终端将加密图像矩阵解密为原始图像矩阵的具体处理过程如下:
[0126] 步骤200,根据加密图像矩阵和预设第二置乱算法,确定扩散矩阵和原始图像对应的图像矩阵的行数值与列数值;
[0127] 步骤210,根据扩散矩阵和预设第二扩散算法,确定变换域图像矩阵;
[0128] 步骤220,对变换域图像矩阵进行预设第二分数阶变换,得到空间域置乱图像矩阵;
[0129] 步骤230,根据空间域置乱图像矩阵和预设第二置乱算法,确定原始图像对应的图像矩阵和各像素点的灰度值。
[0130] 基于相同的技术构思,本发明施例还提供了一种基于分数阶变换的数字图像加密的装置,如图3所示,该装置包括:
[0131] 获取模块300,用于获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;
[0132] 第一确定模块310,用于根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;
[0133] 变换模块320,用于对所述空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;
[0134] 第二确定模块330,用于根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;
[0135] 第三确定模块340,用于根据所述扩散矩阵、所述变换域图像矩阵和所述预设第一置乱算法,确定加密图像矩阵。
[0136] 可选的,所述第一确定模块310,还用于:
[0137] 根据所述原始图像对应的图像矩阵的行数值与列数值和预设混沌序列发生器,确定第一混沌序列;
[0138] 将所述第一混沌序列进行按照预设方式排序,得到第二混沌序列;
[0139] 根据所述第一混沌序列和所述第二混沌序列,确定位置变换映射关系;
[0140] 根据所述原始图像对应的图像矩阵和所述位置变换映射关系,确定空间域置乱图像矩阵。
[0141] 可选的,所述预设第一分数阶变换为Hartley变换。
[0142] 可选的,所述第二确定模块330,还用于:
[0143] 根据所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值、预设灰度级和预设的归一化平均像素灰度值方程,确定归一化平均像素灰度值;
[0144] 根据所述归一化平均像素灰度级值和预设混沌序列发生器,确定第三混沌序列矩阵;
[0145] 根据所述变换域图像矩阵、所述第三混沌序列矩阵,确定扩散矩阵。
[0146] 可选的,所述基于分数阶变换的数字图像加密的装置的解密模块,还用于:
[0147] 根据所述加密图像矩阵和预设第二置乱算法,确定所述扩散矩阵所述原始图像对应的图像矩阵的行数值与列数值;
[0148] 根据所述扩散矩阵和预设第二扩散算法,确定所述变换域图像矩阵;
[0149] 对所述变换域图像矩阵进行预设第二分数阶变换,得到所述空间域置乱图像矩阵;
[0150] 根据所述空间域置乱图像矩阵和所述预设第二置乱算法,确定所述原始图像对应的图像矩阵和各像素点的灰度值。
[0151] 本发明实施例提供的一种基于分数阶变换的数字图像加密的方法及装置,可以获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;根据原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;对空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;根据变换域图像矩阵、原始图像对应的图像矩阵的行数值与列数值、各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;根据扩散矩阵、变换域图像矩阵和预设第一置乱算法,确定加密图像矩阵。这样,通过将空间域加密算法和变换域加密算法变换相互结合的方式,能够实现对图像更加完善的加密,有效地提升图像实际传输过程中的抗噪声和抗丢失性能,减少了变换域图像传输过程中带来的带宽代价,提高变换域图像加密的抗统计攻击特性。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
[0152] 本发明实施例还提供了一种终端,如图4所示,包括处理器400、通信接口410、存储器420和通信总线430,其中,处理器400,通信接口410,存储器420通过通信总线430完成相互间的通信,
[0153] 存储器420,用于存放计算机程序;
[0154] 处理器400,用于执行存储器420上所存放的程序时,实现如下步骤:
[0155] 获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;
[0156] 根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;
[0157] 对所述空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;
[0158] 根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;
[0159] 根据所述扩散矩阵、所述变换域图像矩阵和所述预设第一置乱算法,确定加密图像矩阵。
[0160] 可选的,所述根据所述原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵,包括:
[0161] 根据所述原始图像对应的图像矩阵的行数值与列数值和预设混沌序列发生器,确定第一混沌序列;
[0162] 将所述第一混沌序列进行按照预设方式排序,得到第二混沌序列;
[0163] 根据所述第一混沌序列和所述第二混沌序列,确定位置变换映射关系;
[0164] 根据所述原始图像对应的图像矩阵和所述位置变换映射关系,确定空间域置乱图像矩阵。
[0165] 可选的,所述预设第一分数阶变换为Hartley变换。
[0166] 可选的,所述根据所述变换域图像矩阵、所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值和预设第一扩散算法,确定扩散矩阵,包括:
[0167] 根据所述原始图像对应的图像矩阵的行数值与列数值、所述各像素点的灰度值、预设灰度级和预设的归一化平均像素灰度值方程,确定归一化平均像素灰度值;
[0168] 根据所述归一化平均像素灰度级值和预设混沌序列发生器,确定第三混沌序列矩阵;
[0169] 根据所述变换域图像矩阵、所述第三混沌序列矩阵,确定扩散矩阵。
[0170] 可选的,所述基于分数阶变换的数字图像加密的方法的解密过程,包括:
[0171] 根据所述加密图像矩阵和预设第二置乱算法,确定所述扩散矩阵所述原始图像对应的图像矩阵的行数值与列数值;
[0172] 根据所述扩散矩阵和预设第二扩散算法,确定所述变换域图像矩阵;
[0173] 对所述变换域图像矩阵进行预设第二分数阶变换,得到所述空间域置乱图像矩阵;
[0174] 根据所述空间域置乱图像矩阵和所述预设第二置乱算法,确定所述原始图像对应的图像矩阵和各像素点的灰度值。
[0175] 存储器可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。另外,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0176] 上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0177] 本发明实施例提供的一种基于分数阶变换的数字图像加密的终端,可以获取原始图像的各像素点的灰度值和原始图像对应的图像矩阵;根据原始图像对应的图像矩阵和预设第一置乱算法,确定空间域置乱图像矩阵;对空间域置乱图像矩阵进行预设第一分数阶变换,得到变换域图像矩阵;根据变换域图像矩阵、原始图像对应的图像矩阵的行数值与列数值、各像素点的灰度值和预设第一扩散算法,确定扩散矩阵;根据扩散矩阵、变换域图像矩阵和预设第一置乱算法,确定加密图像矩阵。这样,通过将空间域加密算法和变换域加密算法变换相互结合的方式,能够实现对图像更加完善的加密,有效地提升图像实际传输过程中的抗噪声和抗丢失性能,减少了变换域图像传输过程中带来的带宽代价,提高变换域图像加密的抗统计攻击特性。
[0178] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0179] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、终端、存储介质、系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0180] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。