opencv-Canny边缘检测(Python)

Canny边缘检测

在Opencv中却使用起来非常方便。

在学习完书本上的内容之后做的笔记,目前还没有开始看算法:

  1. 高斯滤波器对图像进行去噪
  2. 计算梯度
  3. 在边缘上使用非最大抑制(NMS)
  4. 在检测到的边缘上使用双阈值去除假阳性
  5. 分析所用的边缘以及其之间的连接

效果

原图:
opencv-Canny边缘检测(Python)_第1张图片

算法效果图:

opencv-Canny边缘检测(Python)_第2张图片

使用的生成代码:

import cv2

img = cv2.imread('2.jpg')
data = (100, 300)
cv2.imshow('img-Canny', cv2.Canny(img, *data))
cv2.imwrite('2-Canny.jpg', cv2.Canny(img, *data))
cv2.waitKey()
cv2.destroyAllWindows()

data是要传进去的两个参数,经过调整发现,当data的两个值变化的时候会影响到边缘检测的效果。
data = (200, 300)时:

opencv-Canny边缘检测(Python)_第3张图片

data = (100, 200)时
opencv-Canny边缘检测(Python)_第4张图片

data = (100, 400)时

opencv-Canny边缘检测(Python)_第5张图片

data = (400, 400)时

opencv-Canny边缘检测(Python)_第6张图片

你可能感兴趣的:(Python,OpenCV)