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


书上说效果不错,实现复杂。但总感觉这样直接简单地调用函数不加参数,效果一般般。
原图:

得到的边缘图
opencv-python 图像处理 —— canny边缘检测_第1张图片
看看经典的lenna图
opencv-python 图像处理 —— canny边缘检测_第2张图片
边缘:
opencv-python 图像处理 —— canny边缘检测_第3张图片
看看百科里的图片,这就牛逼多了。
opencv-python 图像处理 —— canny边缘检测_第4张图片

你可能感兴趣的:(openCV,opencv,边缘检测,canny)