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 算子就实现了对边缘像素的精确定位。
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/15579.html