本发明属于图像处理领域,尤其涉及一种基于Lyapunov指数的图像压缩加密和解密方法。
背景技术:
混沌系统的基本特点就是系统对初始值的极端敏感性,两个相差无几的初值所产生的轨迹,随着时间的推移按指数方式分离,lyapunov指数就是定量的描述这一现象的量。
Lyapunov指数是衡量系统动力学特性的一个重要定量指标,它表征了系统在相空间中相邻轨道间收敛或发散的平均指数率。对于系统是否存在动力学混沌,可以从最大Lyapunov指数是否大于零非常直观的判断出来:一个正的Lyapunov指数,意味着在系统相空间中,无论初始两条轨线的间距多么小,其差别都会随着时间的演化而成指数率的增加以致达到无法预测,这就是混沌现象。Lyapunov指数的和表征了椭球体积的增长率或减小率,对Hamilton系统,Lyapunov指数的和为零;对耗散系统,Lyapunov指数的和为负。如果耗散系统的吸引子是一个不动点,那么所有的Lyapunov指数通常是负的。如果是一个简单的m维流形(m=1或m=2分别为一个曲线或一个面),那么,前m个Lyapunov指数是零,其余的Lyapunov指数为负。不管系统是不是耗散的,只要λ1>0就会出现混沌。
技术实现要素:
本发明基于提供了一种基于Lyapunov指数的图像压缩加密和解密方法。
本发明解决上述技术问题所采取的技术方案如下:
一种基于Lyapunov指数的图像压缩加密方法,包括:
步骤(1)、获取给定的某个数字图像文件,形成N×N的矩阵X;并对矩阵X做二维离散余弦变换(DCT),得到矩阵Y;
步骤(2)对矩阵Y做Hoffman编码,将原图像矩阵Y压缩成Ylow,并分割成像素为M×M的数据块;
步骤(3)反控制三维映射B,使其行列式为1,且具有2个给定的正的Lyapunov指数,并将其离散化,形成超混沌映射B;
反控制N维映射D,使其行列式为1,且具有N-1个给定的正的Lyapunov指数,形成超混沌映射D;
步骤(4)对已压缩编码的像素块进行加密,包括:
利用超混沌映射B,将Ylow置乱,得到YB=BYlow,利用超混沌映射D,将YB进行扩散,得到YD=DYB。重复以上两个步骤,进行k轮;设置秘钥参数。
优选的是,步骤(1)对矩阵X做二维离散余弦变换得到矩阵Y的方法为:
首先定义N×NDCT矩阵C,其元素为
其中N为数据长度;
然后用二维DCT矩阵得到Y=C(CXT)=CXCT,其中T表示矩阵转置。
优选的是,步骤(3)中,反控制三维映射B,使其行列式为1,且具有2个给定的正的Lyapunov指数,然后将其离散化;然后反控制M维映射D,使其行列式为1,且具有M-1个给定的正的Lyapunov指数,其步骤如下:
考虑离散时间系统
xk+1=Axk (1)
式中列向量xk∈Rn为系统的状态;
设计控制器uk使得受控系统是混沌的,即受控系统的轨道全局有界,且至少有一个Lyapunov指数大于给定正的常数,其中,控制器如下:
uk=Bxk (2)
其中Bk∈Rn×n为待定矩阵,对整个系统取模运算,则受控系统为
xk+1=Axk+Bxk mod(1) (3)
受控系统(3)的Jacobi矩阵为
Jj(z)=A+B=J (4)
记
Tk=Tk(x0,...,xj)=Jk(xk)Jk-1(xk-1)…J1(x1)J0(x0)=Jk (5)
并记为第j个乘积矩阵的第i个特征值,亦即矩阵Tj的第i个奇异值的平算;
根据Lyapunov指数的定义,系统(3)的第i个Lyapunov指数为
即{Tk}奇异值序列的一种极限;
设计反馈增益矩阵B,使得受控系统的Lyapunov指数全部有限,其中一个为正,即
其中c>0,为预先给定常数;
系统矩阵A的全部特征值按绝对值大小排列为|λ1|≥|λ2|≥…≥|λn|,且令Ax=λ1x,其中x≠0是相应于特征值λ1的特征向量。取
B=zxT (9)
其中z∈Rn满足zTx=ec+ε-λ1>0,ε>0为预先给定常数;
按式(9)选取B,则系统的Lyapunov指数满足(8)式,有||B||≤M<∞其中M为一常数,||·||为谱范数,即矩阵最大奇异值,因此控制增益矩阵B一致有界。
优选的是,对已压缩编码的像素块进行加密,包括:
利用超混沌映射B,将Ylow置乱,得到YB=BYlow,利用超混沌映射D,将YB进行扩散,得到YD=DYB,重复以上两个步骤,进行k轮,设置秘钥参数,即B的元素。
一种基于Lyapunov指数的图像压缩解密方法,包括:
步骤(1)获取基于权利要求1所述的方法压缩后的压缩图像;
步骤(2)做置乱、扩散的逆变换,对加密图像进行解密操作;
步骤(3)对解密图像做Hoffman解码、反DCT操作,恢复图像。
优选的是,步骤(2)中,置乱、扩散的逆变换,对加密图像进行解密操作,步骤如下:首先进行反扩散操作,即YB=D-1YD
然后进行反置乱操作,即Ylow=B-1YB。
优选的是,步骤(3)中,解密图像做Hoffman解码、反DCT操作,恢复图像,步骤如下:
首先进行Hoffman解码;
然后进行反DCT操作,即Y=C(CXT)=CXCT X=CTYC,其中矩阵C的元素为
本发明采取了上述方案以后,基于Lyapunov指数进行加密和解密,其效果更好,且不容易被破解。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书所特别指出的结构来实现和获得。
具体实施方式
以下将结合实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
具体来说,一种基于Lyapunov指数的图像压缩加密方法,包括:
步骤(1)、获取给定的某个数字图像文件,形成N×N的矩阵X;并对矩阵X做二维离散余弦变换(DCT),得到矩阵Y;
步骤(2)对矩阵Y做Hoffman编码,将原图像矩阵Y压缩成Ylow,并分割成像素为M×M的数据块;
步骤(3)反控制三维映射B,使其行列式为1,且具有2个给定的正的Lyapunov指数,并将其离散化;然后反控制N维映射D,使其行列式为1,且具有N-1个给定的正的Lyapunov指数;
步骤(4)对已压缩编码的像素块进行加密,包括:利用超混沌映射B,将Ylow置乱,得到YB=BYlow,利用超混沌映射D,将YB进行扩散,得到YD=DYB。重复以上两个步骤,进行k轮;设置秘钥参数。
优选的是,步骤(1)对矩阵X做二维离散余弦变换得到矩阵Y的方法为:
首先定义N×NDCT矩阵C,其元素为
其中N为数据长度;
然后用二维DCT矩阵得到Y=C(CXT)=CXCT,其中T表示矩阵转置。
优选的是,步骤(3)中,反控制三维映射B,使其行列式为1,且具有2个给定的正的Lyapunov指数,然后将其离散化;然后反控制M维映射D,使其行列式为1,且具有M-1个给定的正的Lyapunov指数,其步骤如下:
考虑离散时间系统
xk+1=Axk (1)
式中列向量xk∈Rn为系统的状态;
设计控制器uk使得受控系统是混沌的,即受控系统的轨道全局有界,且至少有一个Lyapunov指数大于给定正的常数,其中,控制器如下:
uk=Bxk (2)
其中Bk∈Rn×n为待定矩阵,对整个系统取模运算,则受控系统为
xk+1=Axk+Bxk mod(1) (3)
受控系统(3)的Jacobi矩阵为
Jj(z)=A+B=J (4)
记
Tk=Tk(x0,...,xj)=Jk(xk)Jk-1(xk-1)…J1(x1)J0(x0)=Jk (5)
并记为第j个乘积矩阵的第i个特征值,亦即矩阵Tj的第i个奇异值的平算;
根据Lyapunov指数的定义,系统(3)的第i个Lyapunov指数为
即{Tk}奇异值序列的一种极限;
设计反馈增益矩阵B,使得受控系统的Lyapunov指数全部有限,其中一个为正,即
其中c>0,为预先给定常数;
系统矩阵A的全部特征值按绝对值大小排列为|λ1|≥|λ2|≥…≥|λn|,且令Ax=λ1x,其中x≠0是相应于特征值λ1的特征向量。取
B=zxT (9)
其中z∈Rn满足zTx=ec+ε-λ1>0,ε>0为预先给定常数;
按式(9)选取B,则系统的Lyapunov指数满足(8)式,有||B||≤M<∞其中M为一常数,||·||为谱范数,即矩阵最大奇异值,因此控制增益矩阵B一致有界。
优选的是,对已压缩编码的像素块进行加密,包括:
利用超混沌映射B,将Ylow置乱,得到YB=BYlow,利用超混沌映射D,将YB进行扩散,得到YD=DYB,重复以上两个步骤,进行k轮,设置秘钥参数,即B的元素。
一种基于Lyapunov指数的图像压缩解密方法,包括:
步骤(1)获取基于权利要求1所述的方法压缩后的压缩图像;
步骤(2)做置乱、扩散的逆变换,对加密图像进行解密操作;
步骤(3)对解密图像做Hoffman解码、反DCT操作,恢复图像。
优选的是,步骤(2)中,置乱、扩散的逆变换,对加密图像进行解密操作,步骤如下:首先进行反扩散操作,即YB=D-1YD
然后进行反置乱操作,即Ylow=B-1YB。
优选的是,步骤(3)中,解密图像做Hoffman解码、反DCT操作,恢复图像,步骤如下:
首先进行Hoffman解码;
然后进行反DCT操作,即Y=C(CXT)=CXCT X=CTYC,其中矩阵C的元素为
本发明采取了上述方案以后,基于Lyapunov指数进行加密和解密,其效果更好,且不容易被破解。
需要说明的是,对于上述方法实施例而言,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。
而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。