项目2 灰度变换与空间滤波
一、项目目的
1. 掌握灰度变换的原理和应用。
2. 掌握对数变换、幂律变换和直方图均衡化的原理和应用。
3. 掌握线性空间滤波和非线性空间滤波中相关滤波器的使用。
二、项目内容
1. 灰度变换实验。图1所示的是一幅数字乳房X射线图像,它显示出了一处疾患。请用灰度变换imadjust进行以下实验:
(1) 请求出图1图像的明暗反转图像(负片图像)。
(2) 将图1图像0.5至0.75之间的灰度级扩展到范围[0, 1]。
答:
(1)
clear all;close all;clc;
f=imread('1.乳房X射线图像.tif');
g=imadjust(f,[],[1,0]);
figure; imshow(f);
figure; imshow(g);
结果如图所示:
(2)
clear all;close all;clc;
f=imread('1.乳房X射线图像.tif');
g=imadjust(f,[0.5,0.75],[0,1]);
figure; imshow(f);
figure; imshow(g);
结果如图所示:
2. 幂律变换实验
(1) 请对图2所示的人体脊椎骨折的核磁共振图像进行幂律变换,取1,分别取0.6、0.4、0.3,对比分析实验结果。
(2) 请对图3所示的航拍图像进行幂律变换,取1,分别取3.0、4.0、5.0,对比分析实验结果。
答:
(1)
clear all;close all;clc;
c=1;gamma1=0.6;gamma2=0.4;gamma3=0.3;
f=imread('2.1人体脊椎骨折的核磁共振图像.tif');
g1=im2uint8(mat2gray(c*(double(f)).^gamma1));
g2=im2uint8(mat2gray(c*(double(f)).^gamma2));
g3=im2uint8(mat2gray(c*(double(f)).^gamma3));
figure(1);imshow(g1);
figure(2);imshow(g2);
figure(3);imshow(g3);
结果如图所示:
实验结果分析:观察发现,当伽马值从0.6降到0.4时,细节更多。将伽马值进一步减少到0.3,会增强背景中的更多细节,但与开始具有轻微“苍白”外观的图像相比,对比度开始下降。
(2)
clear all;close all;clc;
c=1;gamma1=3.0;gamma2=4.0;gamma3=5.0;
f=imread('2.2航拍图像.tif');
figure(1);imshow(f);
g1=im2uint8(mat2gray(c*(double(f)).^gamma1));
g2=im2uint8(mat2gray(c*(double(f)).^gamma2));
g3=im2uint8(mat2gray(c*(double(f)).^gamma3));
figure(2);imshow(g1);
figure(3);imshow(g2);
figure(4);imshow(g3);
结果如图所示:
实验结果分析:使用伽马值3.0和4.0得到了合适的结果,而后一结果的外观更吸引人,因为其对比度更高。伽马值等于5.0的效果也不错,均实现了灰度级压缩。
3. 直方图均衡与自适应直方图均衡实验。分别求图4所示的4种基本图像的直方图,并用函数histeq对这4种基本图像进行直方图均衡,分析实验结果。
答:
clear all;close all;clc;
f1=imread('3.1暗图像.tif');
f2=imread('3.2亮图像.tif');
f3=imread('3.3低对比度图像.tif');
f4=imread('3.4高对比度图像.tif');
figure(1);
subplot(2,2,1); imhist(f1);ylim('auto'); title('\fontname{宋体}暗图像直方图','FontSize',10);
subplot(2,2,2); imhist(f2);ylim('auto'); title('\fontname{宋体}亮图像直方图','FontSize',10);
subplot(2,2,3); imhist(f3);ylim('auto'); title('\fontname{宋体}低对比度图像直方图','FontSize',10);
subplot(2,2,4); imhist(f4);ylim('auto'); title('\fontname{宋体}高对比度图像直方图','FontSize',10);
g1=histeq(f1, 256);
g2=histeq(f2, 256);
g3=histeq(f3, 256);
g4=histeq(f4, 256);
figure(2);
subplot(2,2,1); imshow(g1);title('\fontname{宋体}均衡后暗图像','FontSize',10);
subplot(2,2,2); imshow(g2);title('\fontname{宋体}均衡后亮图像','FontSize',10);
subplot(2,2,3); imshow(g3);title('\fontname{宋体}均衡后低对比度图像','FontSize',10);
subplot(2,2,4); imshow(g4);title('\fontname{宋体}均衡后高对比度图像','FontSize',10);
figure(3);
subplot(2,2,1); imhist(g1);ylim('auto'); title('\fontname{宋体}均衡后暗图像直方图','FontSize',10);
subplot(2,2,2); imhist(g2);ylim('auto'); title('\fontname{宋体}均衡后亮图像直方图','FontSize',10);
subplot(2,2,3); imhist(g3);ylim('auto'); title('\fontname{宋体}均衡后低对比度图像直方图','FontSize',10);
subplot(2,2,4); imhist(g4);ylim('auto'); title('\fontname{宋体}均衡后高对比度图像直方图','FontSize',10);
结果如图所示:
结果分析:在暗图像的直方图中,大多数直方图容器集中在灰度级的低端;而在亮图像的直方图中,大多数直方图容器集中在灰度级的高端。在低对比度图像直方图中,直方图容器基本上位于灰度级的中间;而对高对比度图像直方图而言,其直方图容器覆盖了较宽范围的灰度级,并且像素的分布也基本上是均匀的,直方图容器的高度也基本相同。因此,像素占据整个灰度级范围并且分布均匀的图像,将具有高对比度的外观和灰色调。观察均衡后的结果,尽管所有的直方图都不相同,但直方图均衡化后的图像看起来就很相似
4. 盒式核滤波实验。图5所示的是大小为1024×1024像素的测试模式。请使用大小分别为3×3, 11×11和21×21的盒式核对图5所示的图像进行低通滤波,分析比较实验结果。
答:
clear all;close all;clc;
f=imread('4.1024×1024像素的测试模式.tif');
w1=ones(3,3)/9; g1=imfilter(f, w1);
w2=ones(11,11)/121;g2=imfilter(f, w2);
w3=ones(21,21)/441;g3=imfilter(f, w3);
figure(1); imshow(g1);
figure(2); imshow(g2);
figure(3); imshow(g3);
结果如图所示:
结果分析:使用3×3核时,图像的总体模糊程度较小,大小与&相当的图像特征受到的影响较大;使用11×11核时,整体上图像更加模糊,而使用21×21核得到的图像更加模糊。
5. 中值滤波实验。图6显示了一幅被椒盐噪声污染的电路板的X射线图像。
(1) 请使用19×19、标准差为3的高斯低通滤波器处理噪声图像。
(2) 请使用7×7大小的中值滤波器处理噪声图像。
(3) 比较以上两种滤波器对含椒盐噪声图像的滤波效果。
答:
(1)
clear all;close all;clc;
f=imread('5.被椒盐噪声污染的电路板的X射线图像.tif');
w1=fspecial('gaussian',[19,19],3);g1=imfilter(f, w1);
figure(1); imshow(g1);
结果如图所示:
(2)
g2=medfilt2(f,[7,7]);
figure(2); imshow(g2);
结果如图所示:
(3)
低通滤波器模糊了图像,降噪性能较差;而中值滤波明显远远优于低通滤波。
6. 排序统计滤波器实验。用imnoise函数给图7所示的X射线图像叠加椒盐噪声,噪声密度为0.02。将排序统计滤波函数ordfilt2分别设置为最小值滤波、最大值滤波和中值滤波,邻域大小为3×3,对含有椒盐噪声的图像进行滤波。
答:
clear all;close all;clc;
f=imread('6.X射线图像.tif');
g=imnoise(f, 'salt & pepper', 0.02);
g1=ordfilt2(g,1,ones(3));
g2=ordfilt2(g,5,ones(3));
g3=ordfilt2(g,9,ones(3));
figure(1);
subplot(2,2,1); imshow(g); title('\fontname{宋体}加噪图像','FontSize',10);
subplot(2,2,2); imshow(g1);title('\fontname{宋体}最小值滤波','FontSize',10);
subplot(2,2,3); imshow(g2);title('\fontname{宋体}中值滤波','FontSize',10);
subplot(2,2,4); imshow(g3); title('\fontname{宋体}最大值滤波','FontSize',10);
结果如图所示:
7. 锐化滤波实验。图8所示的是月球北极的一幅略显模糊的图像。
(1) 使用图9所示的中心为-4的拉普拉斯核,结合imfilter函数对图8进行拉普拉斯滤波。
(2) 先用im2double函数将图8所示的图像转换为double类,然后使用图9所示的核对其进行拉普拉斯滤波。(由于使用imfilter滤波后的输出图像和输入图像是同类图像,所以图像经拉普拉斯滤波后的负值会被截掉,我们通过在滤波前将图像转换成double类图像可解决这一问题。)(3) 根据,求使用图9所示的核锐化后的图像。
(4) 求使用图10所示的中心为-8的拉普拉斯核锐化后的图像。
注意:(1) 当拉普拉斯核中心系数为负值时,应取值为-1,否则取值为1;
(2) imshow函数的使用。
答:
(1)
clear all;close all;clc;
f=imread('7.月球北极的模糊图像.tif');
w1=[0,1,0;1,-4,1;0,1,0];
g1=imfilter(f, w1);
figure(1); imshow(g1);
结果如图所示:
(2)
clear all;close all;clc;
f=imread('7.月球北极的模糊图像.tif');
w=[0,1,0;1,-4,1;0,1,0];
g=imfilter(im2double(f),w);
figure(1); imshow(g,[]);
结果如图所示:
(3)
clear all;close all;clc;
f=imread('7.月球北极的模糊图像.tif');
figure(1);imshow(f);
w=[0,1,0;1,-4,1;0,1,0];
f1=im2double(f);
g=imfilter(f1,w);
g1=f1-g;
figure(2); imshow(g1);
结果如图所示:
(4)
clear all;close all;clc;
f=imread('7.月球北极的模糊图像.tif');
figure(1);imshow(f);
w=[1,1,1;1,-8,1;1,1,1];
f1=im2double(f);
g=imfilter(f1,w);
g1=f1-g;
figure(2); imshow(g1);
结果如图所示:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)