logo资料库

MATLAB编写的基于迭代混沌的图像加密程序.doc

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
a2=imread('lenna.jpg'); a3=imread('3.jpg'); a6=imread('IMG_5941.jpg'); clc;clear all; A1=imread('IMG_5941.jpg'); %这样写需要把文件 IMG_5941.jpg 存放在当前工作目录下 A2=rgb2gray(A1); imshow(A1) A2=imresize(A2,[256,256]); A=uint8(A2); M=size(A,1); N=size(A,2); a1=imread('012.bmp'); a4=imread('IMG_5952.jpg'); a5=imread('022.bmp'); a001=a1(:,:,1); a002=a2(:,:,2); a003=a3(:,:,3); a004=a1(:,:,2); a005=a2(:,:,3); a006=a3(:,:,1); a01=imresize(a001,[256,256]); a02=imresize(a002,[256,256]); a03=imresize(a003,[256,256]); a04=imresize(a004,[256,256]); a05=imresize(a005,[256,256]); a06=imresize(a006,[256,256]); a1=imadjust(a01,[0,1],[0,1]); a2=imadjust(a02,[0,1],[0,1]); a3=imadjust(a03,[0,1],[0,1]); a4=imadjust(a04,[0,1],[0,1]); a5=imadjust(a05,[0,1],[0,1]); a6=imadjust(a06,[0,1],[0,1]); x1=1;y1=20;x2=15;y2=200;x3=100;y3=70;x4=15;y4=28;x5=30;y5=250;x6=200;y6=90; for i=1:M*N z2=a2(x2,y2); z5=a5(x5,y5); z3=a3(x3,y3); z6=a6(x6,y6); ZZ2(i)=z2; ZZ5(i)=z5; ZZ3(i)=z3; ZZ6(i)=z6; z1=a1(x1,y1); z4=a4(x4,y4); ZZ1(i)=z1; ZZ4(i)=z4; if(z1==0) z1=1; end if(z2==0) z2=1; end if(z3==0) z3=1; end if(z4==0)
z4=1; end if(z5==0) z5=1; end if(z6==0) z6=1; end x1=y1;y1=z2; x2=y2;y2=z3; x3=y3;y3=z4; x4=y4;y4=z5; x5=y5;y5=z6; x6=y6;y6=z1; end Y1(M*N)=0;nn=1; Y2(M*N)=0; Y3(M*N)=0; Y4(M*N)=0; Y5(M*N)=0; Y6(M*N)=0; Y1=ZZ1; Y2=ZZ2; Y3=ZZ3; Y4=ZZ4; Y5=ZZ5; Y6=ZZ6; for i=1:M for j=1:N e1(i,j)=bitxor(Y1(nn),A(i,j)); e2(i,j)=bitxor(Y2(nn),e1(i,j)); e3(i,j)=bitxor(Y3(nn),e2(i,j)); e4(i,j)=bitxor(Y4(nn),e3(i,j)); e5(i,j)=bitxor(Y5(nn),e4(i,j)); e6(i,j)=bitxor(Y6(nn),e5(i,j)); nn=nn+1; end end figure imshow(e6);
分享到:
收藏