Canny 算法

目录

一、边缘分割评判标准

二、一些边缘分割算法的缺点(sobel prewitt)

三、Canny 算法

(一)高斯滤波-高斯模板哪里来的

(二)Sobel算子

(三)非极大值抑制

(四)双阈值的滞后阈值处理


一、边缘分割评判标准

  1. 要对边缘的错误检测率尽可能的低;
  2. 检测出来的边缘要尽可能接近真实边缘;
  3. 单边缘相应准则,对同一边缘要有低的相应次数,即对但边缘最好只有一个相应。

二、一些边缘分割算法的缺点(sobel prewitt)

  1. 没有充分利用边缘的梯度方向(仅仅是xy方向或者是45 135度方向);
  2. 最后输出的边缘二值图,只是简单地利用阈值进行处理,如果阈值过大,则会损失很多边缘信息,如果过小,则会有很多噪声。

三、Canny 算法

        针对以上两个缺点,canny 算法做出了改进,提出了:

        1、基于边缘梯度方向的非极大值抑制;

        2、双阈值的滞后阈值处理。

(一)高斯滤波-高斯模板哪里来的

        通常对图像先进行高斯滤波,滤去噪声;高斯滤波要用高斯模板
        例如:

        高斯模板来源于高斯函数,通过选取不同的sigma,得到不同的模板,得到模板后,进行归一化,成为最终的现在我用使用的高斯滤波模板。

G(x,y) = \frac{1}{2\pi \sigma ^{2}}e^{-\frac{x^{2}+y^{2}}{2\sigma ^{2}}}

        例如选取sigma为1.4,得到5*5模板(x,y)的坐标带入进去得到

123456   
10.01210.02610.03370.02610.0121
20.02610.05610.07240.05610.0261
30.03370.07240.09350.07240.0337
40.02610.05610.07240.05610.0261
50.01210.02610.03370.02610.0121
6

                然后进行归一化处理,然后进行约等于,得到5*5模板

(二)Sobel算子

        用3*3 Sobel 算子模板求得x以及y方向上的梯度,以及两方向梯度的平方和;例如现在有一个图像的数字化信息是这样的:

        经过卷积后,得到x以及y方向的梯度——dx dy:

        以及dx和dy的平方和开方:

        Sobel 算法的话,到了这里基本上就要结束了,只需要将以上数值缩放至 0-255,然后设置
國值进行2值化就完成了。下面我们看一下Canny算法的过程。

(三)非极大值抑制

        首先求出 angle:angle 本质上来说就是梯度的方向;然后根据得到的方向,对该方向的值进行比对,非极大值要抑制为0,极大值保留。

        根据angle来进行相应方向上的大小比较,如果和相应方向上的两个值进行对比,不是极大值,那么这一点置零;是极大值则保留。如下图:

        我们可以看到,在我们写程序过程中,不同角度比对不同位置的数值,如下图:

        全部比对后,完成了非极大值的抑制。

        然后将所有数值 convertTo 到0-255区间,得到了非极大值抑制的图像。

·加入插值算法的非极大值抑制

        根据 ratio = x/y 来得到系数,然后进行插值,之后在进行比对。


(四)双阈值的滞后阈值处理

        然后进行双阈值二值化,设置低阈值为40,高域值为150;这一过程的思路是首先选定边缘强度大于高阈值的所有确定边缘点,然后在边缘强度大于低阈值的情况下尽可能延长边缘,如果最终能够连接到强边缘点,则这些点保留。

        具体实现来说:小于低阈值的边缘点直接剔除;大于高阈值的点确认为边缘点;

        重点:对强边缘进行延伸(trace 函数),只有大于低阈值的点都进行保留,直到没有为止。        

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值