Canny边缘提取算法

原理祥解
  • 彩色图像转换为灰色图像
  • 高斯滤波,滤除噪声点
  • 计算图像梯度,根据梯度计算边缘幅值与角度
  • 非极大值抑制
  • 双阀值边缘连接处理
  • 二值化图像输出结果
非极大值抑制

非极大值抑制是一种边缘稀疏技术,非极大值抑制的作用在于“瘦”边,对图像进行梯度计算后,梯度值提取的边缘仍然很模糊(边缘比较厚),而非极大值抑制则可以帮助将局部最大值之外的所有梯度值抑制为0
1.将当前像素的梯度强度与沿正负梯度方向上的两个像素进行比较
2.如果当前像素的梯度强度与另外两个像素相比最大,则该像素点保留为边缘点,否则该像素点将被抑制。
NMS

双阀值边缘连接处理

这个阶段决定哪些边缘是真正的边缘,为此,我们需要两个阀值,minVal和maxVal,强度梯度大于maxVal的边缘肯定是边缘,而minVal以下的边缘肯定是非边缘的,因此被丢弃,两者之间的值要判断是否与真正的边界相连,相连就保留,不相连就舍弃。
双阀值

import cv2
import numpy as np

src = cv2.imread('6.jpg',0)
dst = cv2.GaussianBlur(src,(3,3),0)
canny = cv2.Canny(dst,50,150)

cv2.imshow('src show',src)
cv2.imshow('dst show',canny)

cv2.waitKey(0)

Canny

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值