opencv轮廓检测之椭圆检测-----算法篇(5)---LAPLACIAN算子

关于检测edge的算法有很多,  感觉有些算法像前面我一直截取的PPT里面说的一样,  有些过时和不太好用.

接下来再列举两个, 是我在查论文时常看见的两个算法

接着上面的问题
边缘(edge)的获取?
        3.Laplacian Operater
    The Laplacian is a high-pass linear filter that is based on the computation of the
image derivatives. As it will be explained, it computes second-order derivatives to measure
the curvature of the image function.   ------------------------------Opencv cookbook 2nd edition P190

与前面讲的sobel一阶算子相对应, 拉普拉斯算子是个二阶算子,  就像一阶算子用大小来判断是否为边缘,  二阶算子用过零点表示是否为edge(我是这么理解, 过零点也就是拐点, 也就是原图像的尖点(即edge),  或者说是一阶导的最大值最小值点),   但是它对噪声很敏感(就像一阶导不可导点,  噪声可能会改变原图像在该点处的凹凸性,个人理解, 仅供参考).

 

opencv轮廓检测之椭圆检测-----算法篇(5)---LAPLACIAN算子_第1张图片

当然,  拉普拉斯卷积核还有其他的类型.

在opencv中的使用

          void Laplacian( InputArray src, OutputArray dst, int ddepth, int ksize=1, double                                          scale=1, doubledelta=0, int borderType=BORDER_DEFAULT )


这里就不写程序了,  与用sobel类似


怎样寻找过零点(zero crossing)?

opencv轮廓检测之椭圆检测-----算法篇(5)---LAPLACIAN算子_第2张图片

视频截图来源 http://crcv.ucf.edu/videos/lectures/2012.php



你可能感兴趣的:(算法,opencv,轮廓检测,Laplacian,opencv2)