⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cat_scrambling.m

📁 arnold cat 映射实验
💻 M
字号:

%%%%%%%%%%%%%% anold cat 映射 %%%%%%%%%%%%%%%%%%%%% 
%% 图像是N * N 的灰度图像 

originimage=imread('50.bmp');    %%%%%%%%一定是方阵
origin=rgb2gray(originimage);
temp=origin;
figure,imshow(origin)
n=length(temp) 
m=0;
a=20;
b=10;
c=a*b+1;
flag=0;

%%%%%%%%%%%cat映射要求  下标从0开始, 0~(n-1)

while flag==0

      for i=0:n-1                       %%%%%%%%%%%  置换一次  
           for j=0:n-1
           x=mod(i+a*j,n); 
           y=mod(b*i+c*j,n); 
           lastimage(x+1,y+1)=temp(i+1,j+1);
           end
      end 
      m=m+1;                           %%  置换一次完毕
      
      if(mod(m,5)==0)                 %%每5个加密图像显示一次
          {
              figure,imshow(lastimage),title('每加密5次的图像')
          }
      end

      if(origin==lastimage)            %%%%置换多少次出现重复
            flag=1;
          figure,imshow(lastimage),title('出现重复的图像')  
      else
         temp=lastimage;    
      end
end
m                    

 
 

        

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -