- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于中值滤波和数学的形态学的图像边缘检测
基于中值滤波和数学形态学的图像边缘检测
摘 要 本文对数学形态学中的腐蚀和膨胀的原理和中值滤波除噪应用进行研究,针对二值化图像把中值滤波与腐蚀相结合研究一种边缘检测的方法,通过Visual C++6.0仿真实现,得到满意的效果。该方法能够有效地去噪,检测图像中的细节,定位准确,并且计算量小,效率高。 关键词 数学形态学; 中值滤波; 腐蚀; 边缘检测0 引言 图像边缘是图像最基本的特征, 边缘中包含着有价值的目标边界信息,这些信息可以用于图像分析、目标识别以及图像滤波。边缘检测是图像处理的重要内容,是模式识别和计算机视觉的基础[1]。所谓边缘(或边沿)是指其周围像素灰度有阶跃变化或屋顶变化的那些象素的集合[2] ,边缘检测是图像工程的一个重要内容。数学形态学的主要用途是获取物体拓扑和结果信息,它通过物体和结构元素相互作用的某些运算,得到物体的本质形态。随着数学形态学理论的不断完善与发展.数学形态学在图像边缘检测中得到了广泛的研究和应用。边缘检测的难题是检测精度与抗噪性能之间的矛盾.图像普遍存在噪声。图像边缘和噪声均为频域中的高频分量,这给边缘检测带来了困难。针对以上问题,本文重点研究数学形态学的基本原理并结合图像中值滤波分析数学形态学在边缘检测中的应用。1 数学形态学的基本原理 数学形态学是分析几何形状和结构的数学方法,是建立在集合代数基础上,用集合论方法定量描述几何结构的科学。数学形态学是一组形态学的代数运算子组成。用这些算子及其组合进行图象形状和结构的分析处理包括图象分割、特征抽取、边缘检测等方面的工作[3]。图1.1 腐蚀的基本原理 腐蚀是把结构元素B平移a后得到Ba,若Ba包含于X,我们记下这个a点,所有满足上述条件的a点组成的集合称做X被B腐蚀的结果。用公式表示为:E(X)={a| BaX}=XθB如图1.1所示。膨胀可以认为是腐蚀的对偶运算,其定义是:把结构元素B平移a后得到Ba,若Ba击中X,我们记下这个a点,所有满足上述条件的a点组成的集合称做X被B膨胀的结果。用公式表示为:D(X)={x|B[x]∩x≠ф} =XB 如图1.2所示:图1.2 膨胀的基本原理 在数学形态学中,最为重要的两个组合运算是形态学开运算和闭运算。我们可以利用腐蚀和膨胀来定义开运算和闭运算。先腐蚀后膨胀称为开运算,即OPEN(X)=D(E(X)) 。开运算可以消除散点和毛刺即对图像进行平滑。先膨胀后腐蚀称为闭运算,即CLOSE(X)=E(D(X)) 通过选择适当的元素结构可以通过闭运算将两个邻近的目标连接起来。开运算使图像变小,闭运算使图像增大。开闭运算有一个有趣的性质等幂性,它意味着一次滤波就能把所有特定于结构元素的噪声滤除干净,重复运算不会再有效果。这与经典方法(如中值滤波,线性卷积)不同。文献[4]研究了膨胀和中值滤波结合在边缘检测中的应用。本文介绍腐蚀和中值滤波结合在边缘检测中的应用。2 基于中值滤波和数学形态学的图像边缘检测方法 分别采用邻域平均和中值滤波对有噪声的二值图片进行处理,处理结果如图2.1所示。通过对图2.1的分析可知,采用中值滤波的效果要比采用邻域平均处理的滤波效果好,主要是中值滤波后图像的轮廓比较清晰,故本文采用中值滤波处理原图像。 原图 邻域平均 中值滤波图2.1 采用不同滤波后图像效果 中值滤波是基于排序的非线性滤波的典型,他被成功地应用于保留需要的图像结构的同时消除(脉冲)噪声。中值滤波可用如下步骤完成:(1) 将模板在图像中漫游,并将模板中心与图中某个像素位置重合 (2)读取模板下各对应像素的灰度值 (3)将这些灰度值从小到大排成一列 (4)找出这些值中排在中间的一个 (5)将这个中间值赋给对应模板中心位置的像素[5]。 文中使用3Χ3的中值滤波模板。经过中值滤波后,图像噪声被去除,而且图像边缘保护得比较好,再运用基于腐蚀运算的边缘提取算法对图像进行腐蚀运算,使图像边缘上的灰度得到加强,再用原图像减去腐蚀后的图像,从而得到图像的边缘。本文利用采用3x3模板元素对图像进行腐蚀。设原图像为F, 滤波后输入的图像为A, B是“结构元素”则A被B腐蚀可以表示为:M=AθB,利用原图减去腐蚀后的图像,则可获得图像的边缘:H=A-M=A- Aθ B。其原理如图2.2所示,理论分析可知,与文献[4]提到方法相比,通过本文方法能够更准确地检测到图像的边缘。A B M H图2.2 腐蚀检测边缘的原理图3 试验结果分析 使用Visual C++6.0对文中所用方法编程实现并且与其他的边缘检测算法结果比较,如图3.1~图3.4所示。图3.1canny算子 图3.2 susan算子 图3.3 文献[4]方法 图3.4 本文方法 由上图我们可以看出,canny算子和susan算子两种算法提取的边缘细节损失都比较多,且边
文档评论(0)