OpenCV图像处理技术(Python)——Canny边缘检测
© Fu Xianjun. All Rights Reserved.
3.非极大值抑制
目的:边缘细化
4.双阈值边缘
知识储备:
Canny边缘检测
(1) 使用高斯滤波器,以平滑图像,滤除噪声。
(2) 计算图像中每个像素点的梯度强度和方向。
(3) 应用非极大值(Non-Maximum Suppression)抑制,以消除边缘检测带来的杂散响应。
(4) 应用双阈值(Double-Threshold)检测来确定真实的和潜在的边缘。
(5) 通过抑制孤立的弱边缘最终完成边缘检测。
import cv2
def doCanny(x):
position = cv2.getTrackbarPos(“CannyBar”, “Canny”)
canny = cv2.Canny(gauss, position, position*2.5)
cv2.imshow(“Canny”, canny)
img = cv2.imread(“peppa.png”,0)
gauss = cv2.GaussianBlur(img, (3, 3), 1)
cv2.namedWindow(“Canny”)
cv2.createTrackbar(“CannyBar”, “Canny”, 1, 100, doCanny)
cv2.waitKey()
cv2.destroyAllWindows()
本小节到此结束,谢谢大家!
未成年人禁止吸烟!!!