数字图像处理第四章——图像复原(下)

本文详细介绍了数字图像处理中的图像复原技术,包括空间滤波、退化函数建模、维纳滤波、盲去卷积等方法。通过实例展示了各种滤波器对椒盐噪声的处理效果,分析了自适应空间滤波的优势。此外,还探讨了退化函数建模、维纳滤波器的工作原理及其在含噪声和无噪声图像中的应用。最后,讨论了露西-理查德森算法和盲去卷积在图像复原中的挑战和应用。
摘要由CSDN通过智能技术生成

数字图像处理—图像复原

(三)仅有噪声的复原——空间滤波

如果出现的退化仅仅是噪声,那么退化就遵循模型:
在这里插入图片描述
在这种情况下,选择的降低噪声的方法是空间滤波。

3.1 空间噪声滤波器

首先要得到一幅被噪声污染的图像。

编写代码:

f = imread('D:\数字图像处理\第四章学习\strawberry.jpg');
%f = imread('D:\数字图像处理\第四章学习\cat5.jpg');
%f = imread('D:\数字图像处理\第四章学习\building.jpg');
%f = imread('D:\数字图像处理\第四章学习\jimei.jpg');
[M,N] = size(f);
a1 = imnoise2( 'salt & pepper', M, N, 0.1, 0);      %概率为0.1的胡椒噪声
a2 = imnoise2( 'salt & pepper', M, N, 0.5, 0);      %概率为0.5的胡椒噪声
a3 = imnoise2( 'salt & pepper', M, N, 1, 0);        %概率为1的胡椒噪声
c1 = find(a1==0);
gp1 = f;
gp1(c1) = 0;

c2 = find(a2==0);
gp2 = f;
gp2(c2) = 0;

c3 = find(a3==0);
gp3 = f;
gp3(c3) = 0;

subplot(2, 2, 1), imshow(f);title('(a)原图像');
subplot(2, 2, 2), imshow(gp1);title('(b)概率为0.1的胡椒噪声污染后');
subplot(2, 2, 3), imshow(gp2);title('(c)概率为0.5的胡椒噪声污染后');
subplot(2, 2, 4), imshow(gp3); title('(d)概率为1的胡椒噪声污染后');

代码运行效果如下:

分析:一张图片被胡椒噪声污染后,图片会出现黑色胡椒状小点。对于同一张图片,胡椒噪声概率越大,图片被污染污染越严重,最终显示效果也更模糊,当概率为1的时候,图片为纯黑色;对于不同类型的图片,图片颜色越亮,胡椒噪声污染效果越明显(白色最明显),而图片的黑色部分被污染后变化最不明显(例如第四幅图的背景),不同类型的图片在概率为1的时候显示相同(纯黑色),所以胡椒噪声污染图像算法适用于浅色图像,对黑色图像效果不大

同样的,用盐粒噪声污染图像。

编写代码:

f = imread('D:\数字图像处理\第四章学习\strawberry.jpg');
%f = imread('D:\数字图像处理\第四章学习\blue.jpg');
%f = imread('D:\数字图像处理\第四章学习\star.jpg');
%f = imread('D:\数字图像处理\第四章学习\jimei.jpg');
[M,N] = size(f);
R = imnoise2( 'salt & pepper', M, N, 0, 0.1);      %盐粒噪声
c = find(R==1);
gs = f;
gs(c) = 255;
subplot(1, 2, 1), imshow(f);title('(a)原图像');
subplot(1, 2, 2), imshow(gs);title('(b)盐粒噪声污染后');

代码运行效果如下:



分析: 一张图片被盐粒噪声污染后,图像会出现白色的盐粒状小点。当图片背景为黑色时(第四张夜间建筑物图像),污染效果最明显,而图片背景为白色(第一张草莓图),白色背景污染效果几乎看不到,四张图背景颜色逐渐加深,图像被污染的效果也越来越明显。所以与椒盐噪声相反,盐粒噪声污染图像算法适用于深色图像

第三步过滤胡椒噪声,使用Q为正值的反调和滤波器。

编写代码:

w = imread('D:\数字图像处理\第四章学习\strawberry.jpg');
%w = imread('D:\数字图像处理\第四章学习\jimei.jpg');
f = im2double(w);    
[M,N] = size(f);
a1 = imnoise2( 'salt & pepper', M, N, 0.3, 0);
c1 = find(a1==0);
gp = f;
gp(c1) = 0;
fp=spfilt(gp,'chmean',3,3,1.5);        %过滤胡椒噪声
subplot(3, 3, 1), imshow(w);title('(a)原图像');
subplot(3, 3, 2), imshow(gp);title('(b)概率为0.3的胡椒噪声污染后');
subplot(3, 3, 3), imshow(fp);title('(c)过滤胡椒噪声后');

代码运行效果如下:


分析:虽然被胡椒噪声污染后的图像由于图像本身颜色不同而最终显示的污染效果不同,但是用Q为正值的反调和滤波器过滤胡椒噪声后,图像都能达到原始状态,所以该算法适用于一般类型图像的过滤胡椒噪声

接下来过滤盐粒噪声,使用 Q 为负值的反调和滤波器过

  • 8
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值