几种边缘算子的程序仿真和比较结果

本文介绍了常用的边缘检测算法,包括Roberts、Sobel、Prewitt、Laplace和Canny边缘检测算子的工作原理和特点。实验结果显示,Roberts和Laplace算子定位精度高但对噪声敏感,Sobel和Prewitt算子具有一定的平滑作用,Canny算子在抗噪和边缘定位方面表现良好。
摘要由CSDN通过智能技术生成

1 常用的边缘检测算法简介

边缘是指图像中周围像素灰度有阶跃变化或屋顶变化的那些像素的集合。在图理过程中,边缘能大大地减少要处理的图像信息而又可以保留图像中物体的形状信息。边缘检测的目的是为了标识数字图像中亮度变化明显的点。边缘检测可以划分为两类:基于查找和基于零穿越的边缘检测。基于查找的方法通过寻找图像一阶导数中的最大和最小值来检测边界,通常是将边界定位在梯度最大的方向。基于零穿越的方法通常采用 Laplace 过零点或者非线性差分表示的过零点来进行边缘检测。对常用的几种边缘检测算法简介如下:

Roberts 算子采用对角线方向相邻两像素之差近似的梯度幅值来检测边缘。算子定位比较精确,但由于不包括平滑,所以对于噪声比较敏感,检测水平和垂直边缘的效果好于斜向边缘,定位精度高,对噪声敏感。

Sobel 算子根据图像的像素点上下、左右邻点灰度加权差在边缘处达到极值这一现象来检测边缘。算子对噪声具有平滑作用,能提供较为精确的边缘方向信息,边缘定位精度不够高。当对精度要求不是很高时,是一种较为常用的图像边缘检测方法。

Prewitt 算子边缘检测的思路与 Sobel 微分算子的思路类似,是在一个奇数大小的模板中定义其微分运算。算子对噪声具有平滑作用,定位精度也不够高。

Laplace 算子是二阶微分算子,利用边缘点处二阶导函数出现零交叉原理来检测图像的边缘。算子不具方向性,对灰度突变比较敏感,定位精度高,同时对噪声比较敏感,且不能获得边缘方向等信息。

Canny 方法则是以一阶导数为基础来判断图像的边缘点。它是一阶传统微分中检测阶跃型边缘效果最好的算子之一。它比 Roberts 算子、Sobel 算子和 Prewitt 算子极小值算法的去噪能力都要强,并能产生较细的边缘,但它也容易平滑掉一些边缘信息。

 

1.1 Roberts边缘算子

Roberts边缘检测算子是一种利用局部差分算子寻找边缘的算子, 所采用的是对角方向相邻的两个像之差,算子由式(1)给出。


其幅值为:  

其中 G(x,y)表示处理后 (x,y)点的灰度值, f(x,y)表示处理前各点的灰度值。

该算子对应的两个2*2  模板为:


1.2 Sobel边缘算子

Sobel边缘检测算子是先做成加权平均,再微分,然后求梯度"算子的计算方法如式(2)

(2)

其幅值为: |

以下两个卷积核形成了Sobel边缘检测算子,前者对水平边缘影响最大,后者则对垂直边缘影响最大。实际应用中,图像中的每个像素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值