Matlab大气湍流退化模型

退化函数为
在这里插入图片描述Matlab代码:

function out=daqituanliu(img,k)
img=double(img);
F=fft2(img);
[m,n,h]=size(F);

H=zeros(m,n);
for i=1:m
    for j=1:n
        H(i,j)=exp(-k*((i-m/2)^2+(j-n/2)^2)^(5/6));
    end
end

if h==1
    out=uint8(real(ifft2(F.*H)));
elseif h==3
    out=zeros(m,n,h);
    for i=1:3
        out(:,:,i)=real(ifft2(F(:,:,i).*H));
    end
    out=uint8(out);
end

效果展示:
k的取值范围自己调试。

你可能感兴趣的:(数字图像处理,matlab)