图像复原(维纳滤波)

1.首先生成退化图像

采用下述代码生成退化图像g

>> f=checkerboard(8);
>> PSF=fspecial('motion',7,45);
>> gb=imfilter(f,PSF,'circular');
>> noise=imnoise2('Gaussian',size(f,1),size(f,1),0,sqrt(0.001));
>> g=gb+noise;

2.维纳滤波

使用函数deconvwnr可实现维纳滤波

frest1=deconvwnr(g,PSF); %直接逆滤波,效果不好,未考虑噪声
Sn=abs(fft2(noise)).^2;           %噪声功率谱
nA=sum(Sn(:))/numel(noise);       %噪声平均功率
Sf=abs(fft2(f)).^2;               %图像功率谱
fA=sum(Sf(:))/numel(f);           %图像平均功率
R=nA/fA;                          %噪信功率比
frest2=deconvwnr(g,PSF,R);        %结果改进
NCORR=fftshift(real(ifft2(Sn)));            %噪声自相关函数
ICORR=fftshift(real(ifft2(Sf)));            %未退化图像的自相关函数
frest3=deconvwnr(g,PSF,NCORR,ICORR);        %效果较好

上述三种方式结果如下:

3.问题

上述计算函数所需参数时使用了noise和f,若已知这些,计算的意义何在???

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值