jiemi.m
来自「基于幻方加密算发的全数字全息图制作与加密与解密」· M 代码 · 共 31 行
M
31 行
mim=InputDlg('Please in put your key:','Input you key:');
xx=length(mim{:});
mima=setstr(mima);
mim=abs(mim{:});da=size(ff);Hx=da(1);Hy=da(2);pa=ff;
for i=xx:-1:2
ll=mim(i)-mim(i-1);
if ll>0
bb=magic(Hx);bb=inv(bb);pa=bb*pa;
if mod(Hx-ll,2)==1;Hx=Hx-ll;pa=pa(1:Hx,1:Hy);
else Hx=Hx-ll-1;pa=pa(1:Hx,1:Hy);
end
elseif ll<0
bb=magic(Hy);bb=inv(bb);pa=pa*bb;lll=abs(ll);
if mod(Hy-lll,2)==1;Hy=Hy-lll;pa=pa(1:Hx,1:Hy);
else Hy=Hy-lll-1;pa=pa(1:Hx,1:Hy);
end
else bb=magic(Hx);bb=inv(bb);pa=bb*pa;
if mod(Hx,2)==1;pa=pa(1:Hx,1:Hy);
else Hx=Hx-1;pa=pa(1:Hx,1:Hy);
end
end
end
if mod(Hx,2)==1;bb=magic(Hx);bb=inv(bb);pa=bb*pa;
Hx=Hx-mim(1);pa=pa(1:Hx,1:Hy);
else bb=magic(Hx);bb=inv(bb);pa=bb*pa;
Hx=Hx-mim(1)-1;pa=pa(1:Hx,1:Hy);
end
fff=mat2gray(pa);
figure;imshow(fff);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?