图像二阶导数与Laplacian滤波
利用中心差商可以得到某点的一阶导数,同理可以得到二阶导数:
因此,一维拉普拉斯平滑滤波为:
利用拉普拉斯进行平滑的结果:
拉普拉斯算子
由于我们感兴趣的是关于点x的二阶导数。故将上式中的变量减1后,得到:
在图像处理中通过拉普拉斯模板求二阶导数,其定义如下:
拉普拉斯对应的模板为:
或者
模板中心位置的数字是-8而不是-4,是因为要使这些系数之和为0,当遇到恒定湖对区域时,模板响应应将0。
在用lapacian算子图像进行卷积运算时,当响应的绝对值超过指定阈值时,那么该点就是被检测出来的孤立点,具体输出如下:
拉普拉斯代码演示
//load the Original Image and get some informations
Mat src = imread("012.jpg",0);
namedWindow("OriginalImage");
imshow("OriginalImage",src);
CV_Assert(src.depth() == CV_8U);
//OpenCV solution - Laplacian
Mat dst,abs_dst_laplace;
Laplacian(src,dst,CV_16S,3);
convertScaleAbs(dst,abs_dst_laplace);
//show the result
namedWindow("result_laplacian");
imshow("result_laplacian",abs_dst_laplace);
效果演示
原始图片:
拉普拉斯处理过的图片
参考网址:
https://blog.csdn.net/forever_and_forever/article/details/82721356
https://blog.csdn.net/wsj998689aa/article/details/40303561