图像边缘检测(Canny)
  4fj4wU5xgAdW 2023年11月02日 77 0

Canny检测的流程

Canny检测主要是用于边缘检测

1)使用高斯滤波器,以平滑图像,滤除噪声。

 

2)计算图像中每个像素点的梯度强度和方向。

3)应用非极大值(Non-Maximum Suppression)抑制,以消除边缘检测带来的杂散响应

4)应用双阈值(Double-Threshold)检测来确定真实的和潜在的边缘

5)通过抑制孤立的弱边缘最终完成边缘检测。

注:

NMS(非极大值抑制):

  就是抑制不是极大值的元素,可以理解为局部最大搜索。这个局部代表的是一个邻域,邻域有两个参数可变,一是邻域的维数,二是邻域的大小。

  例如:

    行人检测中,滑动窗口经提取特征,经分类器分类识别后,每个窗口都会得到一个分数。但是滑动窗口会导致很多窗口与其他窗口在包含或者大部分交                                                                                                    

    叉的情况。这时就需要用到NMS来选取那些邻域里分数最高(是行人的概率最大),并且抑制那些分数低的窗口

  算法:

    线性插值法

应用双阈值:大于maxval的设置为边界,

      处于maxval和minval中间 和边界点相连保留,其余舍去,

      小于minval 舍去

1 #cv2.Canny(src,minval,maxval)
2 #minval:最低阈值
3 #maxval:最高阈值
4 #阈值越低,图像越细致
5 canny1 = cv2.Canny(img,80,150)
6 canny2 = cv2.Canny(img,50,100)
7 res = np.hstack((canny1,canny2))
8 Cv_Show('res',res)

 

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  2Fnpj8K6xSCR   2024年05月17日   104   0   0 Python
  xKQN3Agd2ZMK   2024年05月17日   72   0   0 Python
  fwjWaDlWXE4h   2024年05月17日   38   0   0 Python
  YpHJ7ITmccOD   2024年05月17日   39   0   0 Python
4fj4wU5xgAdW