当前位置:   article > 正文

OpenCV-26 拉普拉斯算子

OpenCV-26 拉普拉斯算子

一、拉普拉斯算子概念及其推导

索贝尔算子是模拟一阶导数,一阶导数越大的地方说明变化越剧烈,越有可能是边缘。

但是如果我们对f(t)求二阶导数呢?

可以发现边缘处的二阶导数 = 0,因此,我们可以利用这一特性去寻找图像的边缘,但是,需要注意:二阶导数为0的位置也可能是无意义的位置。(一般为噪声)

以拉普拉斯算子推导过程

这样就得到了拉普拉斯算子的卷积核,即卷积模板。

二、拉普拉斯算子在Python中的使用

使用API---Laplacian(src,ddepth[,dst[,ksize[,scale[,delta[,boredType]]]])

1) 可以同时求两个方向的边缘.

2) 对噪声敏感,一般需要先进行去噪再调用拉普拉斯.

 示例代码如下:

  1. import cv2
  2. import numpy as np
  3. img = cv2.imread("chess.png")
  4. dst = cv2.Laplacian(img, -1, ksize=3)
  5. cv2.imshow("img", np.hstack((img, dst)))
  6. cv2.waitKey(0)
  7. cv2.destroyAllWindows()

输出结果如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/45087?site
推荐阅读
相关标签
  

闽ICP备14008679号