www.pudn.com > zishiyingjiami.rar > ACmain.asv, change:2012-04-09,size:2324b


%主程序+testUCAI 
clear all; 
close all; 
clc; 
I=imread('lena128.bmp');[m,n]=size(I); 
I0(1:m/2,1:n/2)=I(1:m/2,1:n/2);            %左上角 
I1(1:m/2,1:n/2)=I(1:m/2,n/2+1:n);          %右上角 
I2(1:m/2,1:n/2)=I(m/2+1:m,n/2+1:n);        %右下角 
I3(1:m/2,1:n/2)=I(m/2+1:m,1:n/2);          %左下角 
x(1)=0.8386                                %输入第一个密码 
X=SC(x(1));                                %产生长为50的密钥流 
X=mod(round(abs(X)*4),4);                  %预处理产生整数混沌序列,理论上有4!种 
for i=1:10 
k=X(i); 
switch k 
    case 0 
        I=AA(I);                        %第一种加密顺序:左上→右上→右下→左下→左上 
    case 1 
        I=BB(I);                       %第二种加密顺序:左上→左下→右下→右上→左上 
    case 2 
        I=CC(I);                            %第三种加密顺序:左上→右下→右上→左下→左上 
    case 3 
        I=DD(I);                           %第四种加密顺序:左上→右上→左下→右下→左上 
   end 
end 
A=imread('lena128.bmp');[m,n]=size(A); 
A(123,67)=A(123,67)+10; 
A0(1:m/2,1:n/2)=A(1:m/2,1:n/2);            %左上角 
A1(1:m/2,1:n/2)=A(1:m/2,n/2+1:n);          %右上角 
A2(1:m/2,1:n/2)=A(m/2+1:m,n/2+1:n);        %右下角 
A3(1:m/2,1:n/2)=A(m/2+1:m,1:n/2);          %左下角 
x(1)=0.8386                                %输入第一个密码 
X=SC(x(1));                                %产生长为50的密钥流 
X=mod(round(abs(X)*4),4);                  %预处理产生整数混沌序列,理论上有4!种 
for i=1:10 
switch k 
    case 0 
        A=AA(A);                        %第一种加密顺序:左上→右上→右下→左下→左上 
    case 1 
        A=BB(A);                       %第二种加密顺序:左上→左下→右下→右上→左上 
    case 2 
        A=CC(A);                            %第三种加密顺序:左上→右下→右上→左下→左上 
    case 3 
        A=DD(A);                           %第四种加密顺序:左上→右上→左下→右下→左上 
   end 
end 
s1=0;s2=0; 
for i=1:m 
    for j=1:n 
         D(i,j)=I(i,j)-A(i,j); 
         if D(i,j)==0 
             s1=s1+D(i,j); 
         else s1=s1+1; 
         end 
    end 
end 
for i=1:m 
    for j=1:n 
        E(i,j)=abs(I(i,j)-A(i,j)); 
        s2=s2+E(i,j); 
    end 
end 
%             D(i,j)=1; 
%         else D(i,j)=0; 
% end 
%             s1=s1+D(i,j); 
%             s2=s2+abs(I(i,j)-A(i,j)); 
%        end 
% end  
% NPCR=s1/(M*N); 
% UCAI=s2/(M*N*255);