win10+Python3.7.3+OpenCV3.4.1入门学习(九 图像梯度)————9.7 算子总结

Python版本是Python3.7.3,OpenCV版本OpenCV3.4.1,开发环境为PyCharm

Sobel算子、Scharr算子、Laplacian算子都可以用作边缘检测,它们的核如下图所示。
win10+Python3.7.3+OpenCV3.4.1入门学习(九 图像梯度)————9.7 算子总结_第1张图片

Sobel算子和Scharr算子计算的都是一阶近似导数的值。通常情况下,可以将它们表示为:

Sobel算子=|左-右| / |下-上|
Scharr算子=|左-右| / |下-上|

式中“|左-右|”表示左侧像素值减右侧像素值的结果的绝对值,“|下-上|”表示下方像素值减上方像素值的结果的绝对值。
Laplacian算子计算的是二阶近似导数值,可以将它表示为:

Laplacian算子=|左-右| + |左-右| + |下-上| + |下-上|

通过公式可以发现,Sobel算子和Scharr算子各计算了一次“|左-右|”和“|下-上|”的值,而Laplacian算子分别计算了两次“|左-右|”和“|下-上|”的值。

你可能感兴趣的:(Python-OpenCV)