拉普拉斯算子也是一种基于图像导数运算的高通线性滤波器,它通过计算二阶导数来度量图像函数的曲率。
在 OpenCV 中,可用 cv::Laplacian 函数计算图像的拉普拉斯算子。它与 cv::Sobel 函数非常类似。实际上,为了获得核心矩阵,它们使用了同一个基本函数 cv::getDerivKernels。根据定义,它采用二阶导数,因此和 cv::Sobel 函数唯一的区别是它没有用来表示导数的阶的参数。
我们为这个算子创建一个简单的类,封装几个与拉普拉斯算子有关的运算。基本的属性和方法如下所示:
class LaplacianZC {
private:
// 拉普拉斯算子
cv::Mat laplace;
// 拉普拉斯内核的孔径大小
int aperture;
public:
LaplacianZC() :