基于分数阶超混沌系统的图像加密算法,Matlab实现

         博主简介: 专注、专一于Matlab图像处理学习、交流,matlab图像代码/项目合作可以联系QQ:3249726188

        个人主页:https://blog.csdn.net/Matlab_ImagePro?spm=1011.2266.3001.5343

        原则:代码均由本人编写完成,非中介,提供有偿Matlab算法代码编程服务,不从事不违反涉及学术原则的事。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        本次分享的是基于分数阶超混沌系统的图像加密算法,用matlab实现。(有疑问或者想交流细节的QQ:3249726188

       简述一下算法背景:之前的发表的博文,我们分享了基于组合混沌映射的图像加密算法,具体链接前之前博文:https://blog.csdn.net/Matlab_ImagePro/article/details/136584958?spm=1001.2014.3001.5502

        这次分享的是分数阶组合混沌加密算法,文献提出了一种基于分数阶超混沌系统的加密算法。该分数阶超混沌系统的 Lyapunov 指数表明,其较以往的整数阶混沌系统具有更复杂的动力学行为。将明文序列间关系参入初值后利用分数阶混沌系统进行迭代,确保系统加密序列与于明文相关联。

        简要来说,本次分享的算法就是采用Logistic 映射和分数阶chen混沌序列组合加密算法。具体算法参考文献见附件。

      映射到图像算法原理上,简要步骤主要如下(详细算法原理文献有描述,这里只是简要描述框架步骤):

加密过程:

        一、读取待加密图像

        二、产生logistic算法序列,利用logistic算法对图像进行像素的置换(留意一下,这里是置换,只是改变了像素位置,不该变像素值)。

        三、获取分数阶chen混沌序列,用分数阶chen混沌序列进行加密(这里是异或操作,对像素值进行加密,改变了像素值),得到加密图像。

解密过程:

        理解了怎么进行图像加密,图像解密原理就容易理解了,解密是加密的逆向过程,具体如下:

        一、读取已加密图像

        二、获取分数阶chen混沌序列,用分数阶chen混沌序列进行解密操作(这里是异或操作,对像素值进行解密,恢复加密前的像素值),得到待置乱恢复图像。

        三、产生logistic算法序列,利用logistic算法对解密步骤二的图像进行像素的置换(这里是置换,只是改变了像素位置,不该变像素值,恢复图像原值像素值位置,得到解密图像)。

最终对图像加密性能进行评价,呈现加密前后的直方图、像素相关性等指标值。

Matlab具体效果图步骤如下:

加密部分

        一、读取待加密图像

        二、产生logistic算法序列,利用logistic算法对图像进行像素的置换

        三、获取分数阶chen混沌序列,用分数阶chen混沌序列进行加密,得到加密图像

解密部分:

        一、读取已加密图像

        二、获取分数阶chen混沌序列,用分数阶chen混沌序列进行解密操作

        三、产生logistic算法序列,利用logistic算法对解密步骤二的图像进行像素的置换

至此,加密解密过程完成。

        下面对图像加密性能进行评价,呈现加密前后的直方图、像素相关性等指标值。

        加密前的直方图分布:

         加密后的直方图分布:

        加密前的相关性分布:

        加密后的相关性分布:

至此,完成图像加密解密和评价的代码仿真。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Matlab图像处理

QQ:3249726188

  • 11
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值