Canny边缘检测
目标
在本篇文章中,我们将学习到以下内容:
- Canny边缘检测的概念
- OpenCV函数: cv.Canny()
理论
Canny Edge Detection是一种流行的边缘检测算法。它由John F. Canny提出,具有以下特点:
- 这是一个多阶段算法,我们将经历每个阶段。
- 具有降噪效果,由于边缘检测容易受到图像中噪声的影响,因此第一步是使用5x5高斯滤波器消除图像中的噪声。我们已经在前面的章节中看到了这一点。
- 使用Sobel核在水平和垂直方向上对平滑的图像进行滤波,以在水平方向(Gx)和垂直方向(Gy)上获得一阶导数。从上一篇OpenCV基于Python图像梯度处理文章可知,我们可以找到每个像素的边缘渐变和方向,关系式如下所示:
E d g e _ G r a d i e n t ( G ) = G x 2 + G y 2 A n g l e ( θ ) = tan − 1 ( G y G x ) Edge\_Gradient \; (G) = \sqrt{G_x^2 + G_y^2} \\ Angle \; (\theta) = \tan^{-1} \bigg(\frac{G_y}{G_x}\bigg) Edge_Gradient(G)=Gx2+G<

本文详细介绍了Canny边缘检测算法,包括非极大值抑制和磁滞阈值的概念,并展示了如何使用OpenCV的cv.Canny()函数进行边缘检测。通过实例解释了如何设置阈值和Sobel内核大小,以获得高质量的边缘检测结果。
最低0.47元/天 解锁文章
848

被折叠的 条评论
为什么被折叠?



