基于矢量量化的联合指纹解密方案及其matlab实现(4)

1,Cat Map反置乱

Cat Map反置乱就是Cat Map公式中矩阵换成它的逆矩阵即可实现。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
容易解得第一个矩阵的逆矩阵是第二个矩阵
**

2,matlab代码实现

function imgn2 = ArnoldMapRe(imgn)
    %复原:反置乱,解密流程的最后一步
    % img=imgn;
    [h,w]=size(imgn);
    n2=20;%迭代次数
    a=3;b=5;
    N=h;%N代表图像宽高,宽高要一样
    img2=imgn;
    %img2是经过Cat Map置乱后的矩阵,经过反置乱,可得到imgn2原图像的矩阵
    %imgn2=zeros(h,w);
    imgn2=zeros(h,w);
    for i=1:n2
        for y=1:h
            for x=1:w            
                xx=mod((a*b+1)*(x-1)-b*(y-1),N)+1;
                yy=mod(-a*(x-1)+(y-1),N)+1  ;        
                imgn2(yy,xx)=img2(y,x);                   
            end
        end
        img2=imgn2;
    end
end


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值