📄 restaureremagefloue.m
字号:
%Annexe III : Code MATLAB pour restaurer une image floue (flou gaussien)
%Param鑤re
sigma=5; %閏art type de la gaussienne
k=10; %taille cache
troncature=100; %indice de troncature
% Chargement de l'image
G=imread('lenaflou.jpg','jpg');
G=double(G);
[n,m]=size(G);
%Construction de Hx et Hy dans le cas image carree i.e. n=m
K=2*k+1;
cache=abs(linspace(-k,k,K));
cache=exp(-cache.^2/(sigma^2));
cache=1/sum(cache)*cache;
p=cat(2,cache(k+1:K),zeros(1,m-K),cache(1:k));
H=p;
for i=2:n
p=cat(2,p(m),p(1:m-1));
H=cat(1,H,p);
end
%Restauration
[U,lambda,V] = svds(H,troncature);
lamb=diag(diag(lambda).^-1);
Hinverse=V*lamb*U';
F=Hinverse*G*Hinverse;
image(F);
F=uint8(F);
imwrite(F,'lenasansflou.jpg');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -