在OpenCV中有一种快速简便的方法来计算图像的渐变吗?

zeb*_*bra 6 c++ opencv

使用最新的OpenCV,有一种简单的方法来计算特定cv :: Mat的渐变图像吗?

mev*_*ron 15

假设您指的是典型的图像渐变 ; 您可以使用Chris提到的Sobel算子轻松计算这些数据.在这里查看Sobel Derivatives教程.您可能也对Laplace运算符及其教程感兴趣.

以下是使用Sobel计算X和Y渐变的简短片段:

cv::Mat src = ...; // Fill the input somehow.

cv::Mat Dx;
cv::Sobel(src, Dx, CV_64F, 1, 0, 3);

cv::Mat Dy;
cv::Sobel(src, Dy, CV_64F, 0, 1, 3);
Run Code Online (Sandbox Code Playgroud)