OpenCV2.x 学习笔记04-canny原理及源码分析

Time:20181018

Env:VS2013\Opencv2.4.9

Author:New

Today: be down in spirits

-------------------------------

Canny Edge Detecto

目标:
使用Opencv函数canny去实现边缘检测器

理论:

John F. Canny 在1986发明了 canny边缘检测器,被许多人称为最佳检测器,canny算法满足三个主要准则 :

低错误率:意味着只对现有的边缘进行良好的检测。 

良好的定位:边缘像素与实际边缘像素之间的距离必须最小化。 

最小响应:每个边缘只有一个检测器响应。 

步骤

1、滤除噪声。使用高斯滤波器,下面例子是一个大小为5的高斯核 ,frac=1/159

K=frac{}{} \begin{bmatrix} 2 & 4& 5 & 4& 2\\ 4& 9& 12& 9&4 \\ 5& 12& 15& 12&5 \\ 4& 9 & 12& 9&4 \\ 2& 4 5& 4&2 \end{bmatrix}

2、找到图像的梯度 ,我使用一个类似Sobel 程序

(1)在x,y方向应用一对卷积模块

(2)通过下面公式找到梯度的强度和方向:

猜你喜欢

转载自blog.csdn.net/qq_40025335/article/details/83153571