Canay边缘检测
1)使用高斯滤波器,以平滑图像,滤除噪声。
2)计算图像中每个像素点的梯度强度和方向。
3)应用非极大值抑制,以消除边缘检测带来的杂散响应。
4)应用双阈值检测来确定真实和潜在的边缘。
5)通过抑制孤立的弱边缘最终完成边缘检测。
1.高斯滤波器
2.梯度和方向
3.非极大值抑制
1)第一种方法
第二种方法:
4.双阈值检测
import cv2
import numpy as np
def cv_show(img,name):
cv2.imshow('img', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
img = cv2.imread('D:/opencv/tx/lena.jpg',0)
v1 = cv2.Canny(img,80,150)#80 为minVal 150 为maxVal
v2 = cv2.Canny(img,50,100)
res = np.hstack((v1,v2))
cv_show(res,'res')
minVal越小,检测到的边界越多