追风赶月莫停留,平芜尽处是春山。这篇文章主要讲述Canny 边缘检测相关的知识,希望能为你提供帮助。
Canny 边缘检测 在 OpenCV 中,使用函数:cv2.Canny()
cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient ]]])
参数解释
- image:源图像
- threshold1:阈值1
- threshold2:阈值2
- apertureSize:可选参数,Sobel算子的大小,默认值为 3
- L2gradient,它可以用来设定求梯度大小的方程。如果设为 True,就会使用方程:Edge?Gradient(G)=Gx2+Gy2E d g e_{-} \\text {Gradient}(G)=\\sqrt{G_{x}^{2}+G_{y}^{2}}Edge??Gradient(G)=Gx2?+Gy2? ?,否则使用方程:KaTeX parse error: Expected \'}\', got \'_\' at position 12: \\text {Edge_?Gradient}(G)=\\l…代替,默认值为 False。
def nothing(x):
pass
img = cv2.imread(\'lena.jpg\')
cv2.namedWindow(\'edges\',cv2.WINDOW_NORMAL)
cv2.createTrackbar(\'minVal\',\'edges\',0,255,nothing)
cv2.createTrackbar(\'maxVal\',\'edges\',0,255,nothing)while(1):
minval=cv2.getTrackbarPos(\'minVal\',\'edges\')
maxval=cv2.getTrackbarPos(\'maxVal\',\'edges\')
edges = cv2.Canny(img,minval,maxval)
cv2.imshow(\'edges\',edges)
k=cv2.waitKey(1)&
0xFF
if k==27:
break
cv2.destroyAllWindows()
【Canny 边缘检测】
文章图片
参考文献:《数字图像处理》《OpenCV-python 中文教程》
推荐阅读
- 穷举搜索的例子(Google方程式(Java题解))
- 2021年数字货币时代加速到来
- 非线性方程组求解
- 图像梯度
- 区块链十年与传统金融的变化
- 形态学操作
- 阈值处理
- 区块链科普系列(区块链是什么())
- mount 挂载光盘