opencv从入门到放弃---Canny边缘检测
Canny边缘检测
opencv-Python中的函数的原型是:
edge = cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient ]]])
第一参数是待处理的图像
第二个参数是较小的阈值
第三个参数是较大的阈值
后面两个参数主要是为了确定哪些边界才是真的边界,当灰度梯度高于较大的阈值的时候被认为是真的边界;当灰度梯度小于较小的阈值的时候会被抛弃;如果介于两者之间的话,就要看这个点是否与某个确定的边界点相连,如果是就认为它也是边界点,如果不是就被抛弃
代码:
image = cv.cvtColor(image, cv.COLOR_BGR2GRAY)
image = cv.GaussianBlur(image, (5, 5), 0)
print(image.shape)
dst = cv.Canny(image, 50, 150)
cv.imshow('image', dst)
cv.imwrite('D:/2019-02/canny.jpg', dst)
cv.waitKey(0)
原图像:
运行结果: