Programa de cifrado de imágenes y marcas de agua MATLAB
clc;clear;close all;
randoma =input( 'Ingrese el comando de usuario:','s');%
P=randomma;
%P=str2num(P);
if ( P=='*****')
tu=uigetfile();
I=imread(tu);
imshow( tu); continuar;
%imshow('tu');
[M,N,P]=tamaño(I);
rand(' estado', 0);
% randoma=input('Ingrese el comando de usuario:');%
% P=random;
% if ( P== 3.14)
T=96;
R=rand(M,N)*pi*2;
xlswrite('R.xls',R) ;
%kk=xlsread('jjm.xls');%32 43 55 63
a1=input('Por favor escriba a1:');
a2=input('Escriba a2:');
a3=input('Ingrese a3:');
a4=input('Ingrese a4:') ;
kk=[a1,a2,a3,a4];
xlswrite('kk.xls',kk);
%%
I= doble(I);
Es decir=encriptar(I,R,kk);
figura;
imshow( Es decir,[ ]);
%%
%%
%% llama a la imagen cifrada de la función de cifrado
%función Es decir= cifrar (I,R,kk);
%Ir=I(:,:,1);Ig=I(:,:,2);Ib=I(:,:3);< / p>
% [Xr,Xg,Xb]=Tmatrix(Ir,Ig,Ib,R);
% I1r=blkart2a(Xr,kk);I1g=blkart2a(Xg,kk ) ;I1b=blkart2a(Xb,kk);
% I0r=dct2(I1r);I0g=dct2(I1g);I0b=dct2(I1b);
% [X1r , );
% I3r=idct2(I2r);I3g=idct2(I2g);I3b=idct2(I2b);
% Es decir(:Es decir(:,:,1) =I3r;Es decir(:,:,2)=I3g;Es decir(:,:,3)=I3b;
% [Xr,Xg,Xb]=Tmatriz(Ir,Ig,Ib,R );
% Xr=Ir.*cos(R)+Ig.*sin(R).^2-Ib.*sin(R).*cos(R);
%Xg=Ir.*sin(R)+Ig.*sin(R).*cos(R)-Ib.*cos(R).^2;
%Xb=Ig. *cos(R)+Ib.*sin(
R);
a1=input('Ingrese a1:');
a2=input('Ingrese a2:');
a3= input('Ingrese a3:');
a4=input('Ingrese a4:');
kk=[a1,a2,a3,a4]; p> p>
R=uigetfile();
R=xlsread('R.xls');
%%
Ii=descifrar (Es decir, R, kk);
Ii=Ii- min(Ii(:));Ii=Ii/max(Ii(:));
h = barra de espera( 0, 'Por favor espere...') ;
pasos = 600;
para el paso = 1:pasos
%figure;imshow(Ii,[ ]) ;
barra de espera(paso/pasos)
fin
cerrar(h)
figura;imshow(Ii,[]
h = waitbar(1,'Finalizar descifrado','color','');
pasos = 1;
para el paso = 1 :pasos
h = waitbar(1,'finalizar!',' color','');
end
cerrar(h); p>
advertencia desactivada
fin
%%
%%% Descifre la imagen y llame a la función de descifrado
% %% función J=decrypt(Ie,R.kk);
% T=96; % Periodo de transformación de Arnold
% J2r=Ie(:,:,1);J2g =Es decir (:,:,2);J2b=Es decir(:,:,3);
% J2r=dct2(J2r);J2g=dct2(J2g);J2b =dct2(J2b); p>
% Y1r=blkart2a(J2r,T-kk);Y1g=blkart2a(J2g,T-kk);Y1b=blkart2a(J2b,T-kk);
% [ J0r, J0g,J0b]=iTmatrix(Y1r,Y1g,Y1b,R);
% J1r=idct2(J0r);J1g=idct2(J0g);J1b=idct2(J0b);
% Yr=blkart2a(J1r,T-kk);Yg=blkart2a(J1g,T-kk);Yb=blkart2a(J1b,T-kk);
% [Jr,Jg); ,Jb ]=iTmatrix(Yr,Yg,Yb,R);
% J(:,:,1)=Jr;J(:,:,2)=Jg;J(:,: ,3 )=Jb;