实验六 图像分割Word格式.docx

上传人:b****6 文档编号:19958791 上传时间:2023-01-12 格式:DOCX 页数:13 大小:178.63KB
下载 相关 举报
实验六 图像分割Word格式.docx_第1页
第1页 / 共13页
实验六 图像分割Word格式.docx_第2页
第2页 / 共13页
实验六 图像分割Word格式.docx_第3页
第3页 / 共13页
实验六 图像分割Word格式.docx_第4页
第4页 / 共13页
实验六 图像分割Word格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

实验六 图像分割Word格式.docx

《实验六 图像分割Word格式.docx》由会员分享,可在线阅读,更多相关《实验六 图像分割Word格式.docx(13页珍藏版)》请在冰豆网上搜索。

实验六 图像分割Word格式.docx

使用Roberts算子对图像进行边缘检测处理;

Roberts算子为一对模板:

-1

1

(a)450方向模板(b)1350方向模板

图1matlab2010的Roberts算子模板

相应的矩阵为:

rh=[01;

-10];

rv=[10;

0-1];

这里的rh为45度Roberts算子,rv为135度Roberts算子。

分别显示处理后的45度方向和135方向的边界检测结果;

用“欧几里德距离”和“街区距离”方式计算梯度的模,并显示检测结果;

对于检测结果进行二值化处理,并显示处理结果。

提示:

先做检测结果的直方图,参考直方图中灰度的分布尝试确定阈值;

应反复调节阈值的大小,直至二值化的效果最为满意为止。

(2)使用Prewitt算子的图像分割实验

(a)水平模型(b)垂直模板

图2.Prewitt算子模板

使用Prewitt算子进行内容

(1)中的全部步骤。

(3)使用Sobel算子的图像分割实验

使用Sobel算子进行内容

(1)中的全部步骤。

-2

2

图3.Sobel算子模板

(4)使用LoG(拉普拉斯-高斯)算子的图像分割实验

使用LoG(拉普拉斯-高斯)算子进行内容

(1)中的全部步骤。

提示1:

处理后可以直接显示处理结果,无须另外计算梯度的模。

提示2:

注意调节噪声的强度以及LoG(拉普拉斯-高斯)算子的参数,观察处理结果。

(5)打印全部结果并进行讨论。

下面是使用sobel算子对图像进行分割的MATLAB程序

f=imread('

room.tif'

);

[gv,t1]=edge(f,'

sobel'

'

vertical'

%使用edge函数对图像f提取垂直边缘

imshow(gv)

[gb,t2]=edge(f,'

horizontal'

%使用edge函数对图像f提取水平边缘

figure,imshow(gb)

w45=[-2-10;

-101;

012];

%指定模版使用imfilter计算45度方向的边缘

g45=imfilter(double(f),w45,'

replicate'

T=0.3*max(abs(g45(:

)));

%设定阈值

g45=g45>

=T;

%进行阈值处理

figure,imshow(g45);

在函数中使用'

prewitt'

和'

roberts'

的过程,类似于使用sobel边缘检测器的过程。

三、实验结果及结果分析

实验结果:

图4.Roberts算子的图像分割

实验结果分析:

Roberts算子利用局部差分算子寻找边缘,边缘定位精度比较高,但容易丢失一部分边缘,同时由于图像没经过平滑处理,因此不具备抑制噪声能力。

该算子对具有陡峭边缘且噪声少的图像效果较好。

(2)使用Prewitt算子的图像分割实验

图5.Prewitt算子的图像分割

Prewitt算子先对图像做加权平滑处理,然后再做微分运算,所不同的是平滑部分的权值有些差异,因此它们对噪声有一定的抑制能力。

图6.Sobel算子的图像分割

Sobel算子和Prewitt算子一样,都是先对图像做加权平滑处理,然后再做微分运算,因此它们对噪声有一定的抑制能力。

比较实验结果可以发现,Sobel算子比Prewitt算子在噪声抑制方面略胜一筹,但不能排除检测结果中出现的虚假边缘。

虽然这两个算子边缘定位效果不错,但检测出的边缘容易出现多像素的宽度。

图7.LoG(拉普拉斯-高斯)算子的图像分割

拉普拉斯算子,它是无方向的二阶微分算子,对图像中的阶跃型边缘定位准确,该算子对噪声非常敏感,它使噪声成分得到加强。

这两个特性使得该算子容易丢失一部分边缘的方向信息,造成一些不连续的检测边缘。

LoG算子,该算子克服了拉普拉斯算子抗噪声性能比较差的缺点,但是在抑制噪声的同时也可能将原有的比较尖锐的边缘平滑掉了。

使用sobel、prewitt和roberts算子对图像进行分割实验。

图8.全部结果

四、实验中遇到问题及解决方法

1.评价一下Roberts算子、Prewitt算子、Sobel算子对于噪声条件下边界检测的性能。

答:

Roberts算子采用对角线方向相邻两像素之差近似梯度幅值检测边缘。

检测水平和垂直边缘的效果好于斜向边缘,定位精度高,对噪声敏感。

  Sobel算子根据像素点上下、左右邻点灰度加权差,在边缘处达到极值这一现象检测边缘。

对噪声具有平滑作用,提供较为精确的边缘方向信息,边缘定位精度不够高。

当对精度要求不是很高时,是一种较为常用的边缘检测方法。

  Prewitt算子利用像素点上下、左右邻点灰度差,在边缘处达到极值检测边缘。

对噪声具有平滑作用,定位精度不够高。

2.实验中所使用的四种算子所得到的边界有什么异同?

算子的存在就是对这种导数分割原理进行的实例化计算,是为了在计算过程中直接使用的一种计算单位。

Roberts算子:

边缘定位准,但是对噪声敏感。

适用于边缘明显且噪声较少的图像分割。

Roberts边缘检测算子是一种利用局部差分算子寻找边缘的算子,Robert算子图像处理后结果边缘不是很平滑。

经分析,由于Robert算子通常会在图像边缘附近的区域内产生较宽的响应,故采用上述算子检测的边缘图像常需做细化处理,边缘定位的精度不是很高。

Prewitt算子:

对噪声有抑制作用,抑制噪声的原理是通过像素平均,但是像素平均相当于对图像的低通滤波,所以Prewitt算子对边缘的定位不如Roberts算子。

Sobel算子:

Sobel算子和Prewitt算子都是加权平均,但是Sobel算子认为,邻域的像素对当前像素产生的影响不是等价的,所以距离不同的像素具有不同的权值,对算子结果产生的影响也不同。

一般来说,距离越远,产生的影响越小。

IsotropicSobel算子:

加权平均算子,权值反比于邻点与中心点的距离,当沿不同方向检测边缘时梯度幅度一致,就是通常所说的各向同性。

Laplacian算子:

这是二阶微分算子。

其具有各向同性,即与坐标轴方向无关,坐标轴旋转后梯度结果不变。

但是,其对噪声比较敏感,所以,图像一般先经过平滑处理,因为平滑处理也是用模板进行的,所以,通常的分割算法都是把Laplacian算子和平滑算子结合起来生成一个新的模板。

Laplacian算子一般不以其原始形式用于边缘检测,因为其作为一个二阶导数,Laplacian算子对噪声具有无法接受的敏感性;

同时其幅值产生算边缘,这是复杂的分割不希望有的结果;

最后Laplacian算子不能检测边缘的方向;

所以Laplacian在分割中所起的作用包括:

(1)利用它的零交叉性质进行边缘定位;

(2)确定一个像素是在一条边缘暗的一面还是亮的一面;

一般使用的是高斯型拉普拉斯算子(LaplacianofaGaussian,LoG),由于二阶导数是线性运算,利用LoG卷积一幅图像与首先使用高斯型平滑函数卷积改图像,然后计算所得结果的拉普拉斯是一样的。

所以在LoG公式中使用高斯函数的目的就是对图像进行平滑处理,使用Laplacian算子的目的是提供一幅用零交叉确定边缘位置的图像;

图像的平滑处理减少了噪声的影响并且它的主要作用还是抵消由Laplacian算子的二阶导数引起的逐渐增加的噪声影响。

五、实验心得体会

通过这个实验,我熟练学会了利用MatLab软件进行图像的分割。

在通过实验体会到了一些主要的分割算子对图像处理的效果,以及各种因素对分割效果的影响。

在评价各主要算子在无噪声条件下和噪声条件下的分割性能下,掌握分割条件(阈值等)的选择。

完成规定图像的处理并评价处理结果。

六、源程序清单

%%

%1.使用Roberts算子的图像分割实验

I=imread('

rh=[-10;

01];

rv=[0-1;

10];

g45=imfilter(double(I),rh,'

g135=imfilter(double(I),rv,'

subplot(3,2,1);

imshow(g45,[]);

title('

g45'

subplot(322);

imshow(g135,[]);

g135'

%计算梯度模

%

(1)欧几里得距离计算梯度模

OD=sqrt(g45.^2+g135.^2);

subplot(323);

imshow(OD,[]);

(1)欧几里得距离计算梯度模'

T=0.1*max(OD(:

));

BWOD=OD>

T;

subplot(324);

imshow(BWOD);

(1)欧几里得距离计算梯度模二值化'

%

(2)街区距离计算梯度摸

JD=abs(g45)+abs(g135);

subplot(325);

imshow(JD,[]);

(2)街区距离计算梯度模'

T=0.1*max(JD(:

subplot(326);

(2)街区距离计算梯度模二值化'

%2.使用Prewitt算子的图像分割实验

rh=[-1-1-1;

000;

111];

rv=[-101;

-101];

%

(2)街区距离计算梯度模

%3.使用Sobel算子的图像分割实验

rh=[-1-2-1;

121];

-202;

%4.使用LoG(拉普拉斯-高斯)算子的图像分割实验

log'

subplot(1,3,1);

imshow(gv);

gv'

subplot(1,3,2);

imshow(gb);

gb'

subplot(1,3,3);

imshow(g45);

%5打印全部结果并进行讨论。

%使用sobel、prewitt和roberts算子对图像进行分割实验。

sobel(gv)'

sobel(gb)'

sobel(g45)'

%使用prewitt算子对图像进行分割实验。

[gv2,t3]=edge(f,'

imshow(gv2);

prewitt(gv)'

[gb2,t4]=edge(f,'

imshow(gb2);

prewitt(gb)'

prewitt(g45)'

%使用roberts算子对图像进行分割实验。

[gv3,t5]=edge(f,'

imshow(gv3);

roberts(gv)'

[gb3,t6]=edge(f,'

imshow(gb3);

roberts(gb)'

roberts(g45)'

%图像像素值的标定

subplot(121);

未标定'

cg45=(g45-min(g45(:

)))/(max(g45(:

))-min(g45(:

subplot(122);

imshow(cg45);

已标定'

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1