Canny边缘检测

Canny边缘检测算子(Canny,1986)是一个在工程中广泛应用的多阶段边缘检测方法,该方法提出了判定边缘检测效果的三个准则:

a)低错误率准则:即尽可能的标识出目标的真实边缘,同时降低噪声产生的干扰,Canny算子认为当信噪比达到最高值时,边缘提取的质量最优;

b)高定位性准则:需要检测到的边缘与真实的边缘尽可能的接近;

c)单边响应准则:图像中的边缘应该只被标记一次,并尽可能的抑制虚假边缘的出现。

Canny算法的本质就是通过数学方法来对上述三个准则进行描述。因此,相比于传统Sobel、Prewitt等边缘检测算法,Canny算子具有更高的信噪比和检测精度。Canny边缘检测方法主要分为5个步骤:

首先使用高斯滤波器平滑图像,滤除图像中的噪声干扰。为了降低计算强度往往将二维高斯函数G(x,y)分解为两个一维高斯函数G(x)和Gy)分别对原始图像f(x,y)进行卷积得到平滑后的图像I(x,y)。

对图像完成高斯平滑后,要计算图像中每一个像素点梯度幅值强度和方向。利用2×2邻域的一阶有限差分滤波器计算平滑后的图像,可以分别得到滤波器沿x方向和y方向作用的结果Ex和Ey,梯度的幅值E和方向为:

在计算过梯度的幅值和方向后,基于梯度值提取的边缘仍然很模糊,要进一步对梯度图像中的每一个像素进行梯度方向上的非极大值抑制。通常为了更加精确的计算,还需要在跨越梯度方向的两个相邻像素之间使用线性插值来得到要比较的像素梯度。当E(i,j)为梯度方向上的最大值是,保留点(i,j)为候选的边缘点。

非极大值抑制后的候选像素可已经能够准确地表示图像中的实际边缘。但图像中仍然存在少量由于噪声等引起的假边缘像素。为了解决这些杂散响应Canny算子采取双阈值判别策略,将大于高阈值的像素全部提取保留为边缘像素,小于低阈值的像素直接排除。高阈值决定了目标与背景对比度程,用于将目标轮廓与背景区分开来,低阈值用来平滑轮廓线,使不连续的像素连接起来。

对于介于高低阈值之间的候选像素点,仅当该像素与大于高阈值点的像素连接在一起时才会被保留为边缘像素。这样Canny 算子就实现了对边缘像素的精确定位。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值