opencv-python 图像处理 —— canny边缘检测
canny边缘检测
有个canny函数用起来非常方便简单
import cv2
import numpy as np
img = cv2.imread('screenshot.png', 0)
cv2.imwrite('canny.jpg', cv2.Canny(img, 200, 300))
cv2.imshow('canny', cv2.imread('canny.jpg'))
cv2.waitKey()
cv2.destroyAllWindows()
cv2.Canny()原型为edge = cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient ]]])
第一个参数为原图,第二个参数为阈值一,第三个参数为阈值二
调整不同的阈值会得到不同的结果
参考:https://blog.csdn.net/sunny2038/article/details/9202641
书上说效果不错,实现复杂。但总感觉这样直接简单地调用函数不加参数,效果一般般。
原图:
得到的边缘图
看看经典的lenna图
边缘:
看看百科里的图片,这就牛逼多了。
还没有评论,来说两句吧...