opencv-canny边缘检测大法(十九)

###                             边缘检测终极大法,Canny
    1、canny边缘检测
        1.1 来源
        canny边缘检测算子是传统边缘检测算子中最优秀的,canny检测基于下面三个目标:
        
        (1)低错误率。即所有边缘都应该找到,并且没有虚假边缘。
        
        (2)准确的定位边缘。即检测到的边缘应该接近真实的边缘。
        
        (3)单个边缘点响应。即对于边缘检测,只返回单点厚度的结果。
        
        1.2 方法步骤
        (1)使用5x5高斯滤波器平滑图像(基本边缘检测基本都有这步,为了减少噪声的影响)
        
        (2)计算梯度幅值和边缘方向(0/45/90/135)
        
        (3)非极大值抑制(细化边缘),取局部极大值
        
        (4)使用双阈值处理和连通性分析检测和链接边缘
    2.Canny API:
            Canny(img,minVal,maxVal,...)minVal最小阈值,maxVal最大阈值
import cv2 as cv
import numpy as np

img = cv.imread('./img/houmo.png')

dst = cv.Canny(img,100,200)

# 将识别边缘后的图像绘制到源图像中
img[:][dst != 0] = [0,0,255]

cv.imshow('dst',dst)
cv.imshow('img',img)
cv.waitKey(0)

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值