opencv-python 图像处理 —— canny边缘检测

客官°小女子只卖身不卖艺 2022-01-21 05:15 658阅读 0赞

canny边缘检测

有个canny函数用起来非常方便简单

  1. import cv2
  2. import numpy as np
  3. img = cv2.imread('screenshot.png', 0)
  4. cv2.imwrite('canny.jpg', cv2.Canny(img, 200, 300))
  5. cv2.imshow('canny', cv2.imread('canny.jpg'))
  6. cv2.waitKey()
  7. cv2.destroyAllWindows()

cv2.Canny()原型为
edge = cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient ]]])
第一个参数为原图,第二个参数为阈值一,第三个参数为阈值二
调整不同的阈值会得到不同的结果

参考:https://blog.csdn.net/sunny2038/article/details/9202641


书上说效果不错,实现复杂。但总感觉这样直接简单地调用函数不加参数,效果一般般。
原图:
在这里插入图片描述
得到的边缘图
在这里插入图片描述
看看经典的lenna图
在这里插入图片描述
边缘:
在这里插入图片描述
看看百科里的图片,这就牛逼多了。
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,658人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Canny边缘检测算法

    1、概述       图象的边缘是指图象局部区域亮度变化显著的部分,该区域的灰度剖面一般可以看作是一个阶跃,既从一个灰度值在很小的缓冲区域内急剧变化到另一个灰度相差较...

    相关 canny边缘检测

    Canny边缘检测算法是1986提出的多阶段的边缘检测算法。 预处理 由于边缘易受噪声影响,所以对图像利用高斯滤波器来去除噪声。 ![G\_\{0\}(x, y) =

    相关 Canny 边缘检测

    Canny 边缘检测主要步骤: 1. 先把图像变成灰色 2. 计算图像梯度,其中每个像素的亮度对应该店的梯度值。通过寻找最大的梯度值,就可以找到边缘。 首先,我们需要读

    相关 canny边缘检测C++实现

    Canny边缘检测算法是澳大利亚科学家John F. Canny在1986年提出来的,不得不提一下的是当年John Canny本人才28岁!到今天已经30年过去了,Canny算