实验4空域增强

发布 2023-04-19 11:51:28 阅读 6400

实验四空域滤波。

一、 实验目的。

1、理解空间滤波的含义;

2、熟悉matlab中的各种滤波函数;

3、掌握matlab中实现空间滤波的方法。

二、实验步骤及内容。

1、matlab实现空间滤波的方法。

在matlab中两种方法来实现空间滤波,一种是使用matlab中提供的滤波函数,另一种是编写m程序直接对数据进行操作。

1) 滤波函数filter2

j=filter2(h,x)

其中,x为图像,h为滤波器,j为滤波后的图像。通过改变滤波器掩模,可实现平滑滤波和锐化滤波。

或。滤波函数 imfilter

j=imfilter(x,h)

其中,x为图像,h为滤波器,j为滤波后的图像。

例: x=imread('fig3.35(a).jpg');读入实验图像。

h=[0.111 0.111 0.111

0.111 0.111 0.111]; 定义均值滤波器。

j= filter2 (h,x); 均值滤波。

imshow(x);

figure(2),imshow(j,显示均值滤波后的图像。

2) 中值滤波函数medfilt2

j=medfilt2(x,[hood,hood])

其中,x为图像,hood为滤波器尺寸,j为滤波后的图像,用中值滤波可去除椒盐噪声,达到平滑图像的目的。

例: x=imread('fig3.35(a).jpg ')

j=medfilt2(x,[5, 5]);5, 5]为滤波模板的规格。

3)直接对图像数据进行操作。

使用for循环直接对图像数据进行模板卷积的操作,过程直观,便于理解,可实现各种形式的滤波。注意直接操作时要考虑边缘的处理。模板卷积的主要步骤为:

将模板在图像中漫游,并将模板中心与图中某个像素位置重合;

将模板上的各个系数与模板下各对应像素点的灰度值相乘;

将所有乘积相加(为保持灰度范围,常将结果再除以模板系数之和);

将上述运算结果赋给输出图像的对应模板中心位置的像素。

例:以下程序实现了均值滤波。

x= imread('fig3.35(a).jpg ')

b=double(x); 图像数据类型转换。

c=b;xh,xw]=size(x); xh图像的高(行值),xw图像的宽(列值)

for i=2:xh-1 %图像边缘保留原值。

for j=2:xw-1,c(i,j)=(b(i-1,j-1)+b(i-1,j)+b(i-1,j+1)+b(i,j-1)+b(i,j)+b(i,j+1)+.

b(i+1,j-1)+ b(i+1,j)+b(i+1,j+1))/9; %在八邻域内平均。

endend

c=uint8(c);

imshow(c)

2、空间平滑滤波。

平滑滤波是低频增强的空间域滤波技术。它的目的有两类:一类是模糊;另一类是消除噪音。空间域的平滑滤波一般采用简单平均法进行,就是求邻近像元点的平均亮度值。

1) 平滑线性滤波器。

用 h=fspecial(‘**erage’) 得到的h 为3×3的邻域平均模板,然后用h来对图象 进行平滑处理。

例: x=imread('fig3.35(a).jpg');

h=fspecial(‘**erage’);定义均值模板。

y=imfilter(x,h); 滤波函数滤波。

subplot(1,2,1)

imshow(x)

subplot(1,2,2)

imshow(y)

图4_1 3*3均值滤波。

思考题1:查看fspecial函数的使用说明。分别定义尺寸大小为3xxx9的均值滤波器,对课本中96页的图像fig3.

35(a) .jpg进行处理并显示处理后的图像,仔细观察并与课本中的结果进行比较。写出命令及实验结果。

3*3尺寸:x=imread('fig3.35(a).jpg');

h=fspecial('**erage');定义均值模板。

y=imfilter(x,h); 滤波函数滤波。

subplot(1,2,1)

imshow(x)

subplot(1,2,2)

imshow(y)

5*5尺寸:x=imread('fig3.35(a).jpg');

h=fspecial('**erage',[5 5]);定义均值模板。

y=imfilter(x,h); 滤波函数滤波。

subplot(1,2,1)

imshow(x)

subplot(1,2,2)

imshow(y)

9*9尺寸:

x=imread('fig3.35(a).jpg');

h=fspecial('**erage',[9 9]);定义均值模板。

y=imfilter(x,h); 滤波函数滤波。

subplot(1,2,1)

imshow(x)

subplot(1,2,2)

imshow(y)

由此可知:尺寸越大,模板越模糊。

2) 中值滤波器(非线性滤波)

用 imnoise( )函数给图象加噪声。如对图象增加高斯白噪声或椒盐噪声。使用中值滤波函数medfilt2,对图像进行中值滤波,达到去噪目的。

例: x=imread(''

yg=imnoise(x,'gaussian');对图像添加高斯白噪声。

ys=imnoise(x,'salt & pepper');对图像添加椒盐噪声。

subplot(121);imshow(yg);

subplot(122);imshow(ys);

思考题2:用imnoise( )函数分别对添加高斯噪声及椒盐噪声,然后分别进行均值滤波、中值滤波。分析结果,并写出命令及实验结果。

图4_2 添加高斯和椒盐噪声的图像。

添加高斯噪声:

x=imread(''

yg=imnoise(x,'gaussian');

h=fspecial(‘**erage’);

y=imfilter(yg,h);

j=medfilt2(yg,[5, 5]);

subplot(141);imshow(x);

subplot(142);imshow(yg);

subplot(143);imshow(y);

subplot(144);imshow(j);

添加椒盐噪声:

x=imread(''

ys=imnoise(x,'salt & pepper');

h=fspecial(‘**erage’);

y=imfilter(yg,h);

j=medfilt2(yg,[5, 5]);

subplot(141);imshow(x);

subplot(142);imshow(ys);

subplot(143);imshow(y);

subplot(144);imshow(j);

3、空间锐化滤波。

空间锐化滤波是高频增强的空间域滤波技术。锐化的目的是增强图像轮廓和细节,使图象清晰,但处理后噪声也会增强。

1)拉普拉斯算子锐化(二阶微分)

常用的拉普拉斯算子为h=[ 1 -1 -1;

也可以fspecial('laplacian') 函数得到拉普拉斯锐化模板;

例: a= imread('fig3.40(a).jpg');

h=[ 1 -1 -1; -1 8 -1; -1 -1 -1;] 拉普拉斯算子。

或者h=fspecial('laplacian');

b=imfilter(a,h用拉普拉斯算子锐化滤波。

imshow(b显示滤波结果。

思考题3:使用拉普拉斯算子,对课本102页图像fig3.40(a) .

jpg进行锐化增强处理,结果类似图4_2。(提示:如果使用的拉普拉斯算子的中心系数是负数,那么必须将原始图像减去拉普拉斯变换后的图像,才能得出锐化的结果)

图4_3 拉普拉斯算子增强图像。

a= imread('fig3.40(a).jpg');

h=[ 1 -1 -1;

1 -1 -1;];拉普拉斯算子。

b=imfilter(a,h用拉普拉斯算子锐化滤波。

imshow(b显示滤波结果。

m,n]=size(a); 取图像的尺寸。m为行数、n为列数。

for i=1:m

for j=1:n

k(i,j)=(double(a(i,j))+double(b(i,j)))2+30; %两图像的像素点进行相加。

endend

k=uint8(k); 相加的结果转换为uint8型。

subplot(1,3,1)

imshow(a)

title('原图')

subplot(1,3,2)

imshow(b,

title('拉氏锐化')

subplot(1,3,3)

imshow(k)

title('锐化增强')

思考题4:使用直接对图像数据操作的方法,编写m程序,对fig3.45(a) .jpg进行sobel算子锐化。

定义sobel算子为。

或。注意观察到sobel算子的方向性。结果类似图4_3。

图4_4 sobel算子锐化。

x= imread('fig3.45(a).jpg ')

b=double(x); 图像数据类型转换。

c=b;xh,xw]=size(x); xh图像的高(行值),xw图像的宽(列值)

for i=2:xh-1 %图像边缘保留原值。

实验4交换实验

配置vlan trunk vtp vlan之间路由。一 实验拓扑。二 实验需求。1 如图所示,拓扑中有2个vlan的用户,一个是pc1 vlan 100 另外一个是pc2 vlan 200 他们分别接在switch a的f0 1和switch b的f0 2,其中pc1和pc2采用路由器模拟 2 设备...

实验4密立根油滴实验

实验4 密立根油滴实验。实验简介 密立根用了七年功夫研究电子电荷,于1910年发表了油滴实验。这个实验首次证实电荷的量子化,测定了电子电荷的正确数值。对物理学的发展起过重要作用。密立根油滴实验方法巧妙,物理学界将密立根油滴实验作为实验物理的典范。密立根由于测定了电子电荷和借助光电效应测量出普朗克常数...

实验4汇编实验

数学与软件科学学院实验报告。学期 2017至 2018第 2 学期2018年4月4日 课程名称 汇编语言专业 信息与计算科学班级 2015级 5班。实验编号 4实验项目 编写 调试具有多个段的程序。指导教师 冉茂华。姓名 黄玉含学号 2015060512 实验成绩 1 将下面的程序编译 连接,用de...