数字图像处理实验教案实验

发布时间:2019-01-10   来源:文档文库   
字号:
实验四 图像的边缘提取
一、实验目的
1.掌握边缘提取的原理;
2.了解各种边缘提取算子定义及其性质; 3.掌握几种常用边缘算子的提取方法; 4.掌握边缘检测Matlab函数的使用方法. 二、实验仪器设备
1.计算机 2Matlab软件环境 三、实验原理 1.边缘检测算子
边缘大致可分为阶跃状和屋顶状两种.阶跃状边缘位于其两边的像素灰度值有明显不同的地方;屋顶状边缘位于灰度值从增加到减少的转折处.还有一种脉冲状边缘,是屋顶状边缘的特殊情况. 边缘是灰度值不连续的结果,这种不连续常可利用求导数方便地检测到,一般常用一阶和二阶导数来检测边缘.如下图所示,第1排是一些具有边缘的图像示例,第2排是沿图像水平方向的1个剖面图,第3排和第4排分别为剖面的一阶和二阶导数.1列和第2列是阶梯状边缘,第3列是屋顶状边缘,第4列是脉冲状边缘.
可用一阶导数的幅度值来检测边缘的存在,幅度峰值一般对应边缘位置.可用二阶导数的过零点检测边缘位置,而用二阶导数在过零点附近的符号确定边缘像素在图像边缘的暗区或明区. 利用边缘灰度变化的一阶或二阶导数特点,可以将边缘点检测出来.对于数字图像导数可以用差分近似.
常用的一阶导数类算子有Roberts梯度算子、Prewitt算子和Sobel算子,常用二阶导数类算子有Laplacian算子和LoG算子,最优边缘检测算子有Canny算子. 常用的一阶导数类算子的模板见下图.
以梯度算子为例,为检测边缘点,选取适当的阈值T,对梯度图像进行二值化,则有:
1g(x,y0grad(x,yT其他
这样形成一幅边缘二值图像g(xy. Matlab函数 2边缘检测的
MATLAB 图像处理工具箱提供了 edge 函数利用以上算子来检测灰度图像的边缘.1 / 2
持六种不同的边缘提取方法, SobelPrewittRobertLaplacian过零点方法和 Canny 方法.其语法格式为:
BW=edge(I,’method’ BW=edge(I,’method’,thresh BW=edge(I,’method’,thresh,direction 其中:
methodsobelprewittrobertlogzerocrosscanny. thresh:设定阈值门限,缺省时自动选取阈值. direction:对于sobelprewitt’方法指定方向,’horizontal(水平方向);’vertical(垂直方向);’both(缺省值,表示两个方向). 四、实验内容及步骤
1编写Matlab程序,调用以上六种常用的边缘检测算子,提取一幅灰度图像rice.tif的边缘,并比较不同的算子的检测效果. 2)编写Matlab程序,读取图像,加高斯噪声,调用以上六种常用的边缘检测算子,取一幅灰度图像(rice.tif)的边缘,并比较不同的算子的检测效果. 五、实验报告要求
1、叙述实验过程;
2、提交实验的原始图像和结果图像. 六、思考题
1.总结实验结果,比较各种边缘检测算子的性能特点.
2 / 2

本文来源:https://www.2haoxitong.net/k/doc/e0044a07a55177232f60ddccda38376baf1fe0cf.html

《数字图像处理实验教案实验.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式