opencv - 如何使用 OpenCV 将偏导数高斯核应用于图像?

标签 opencv gaussian derivative

我正在尝试重现一篇论文的结果,其中他们将图像与高斯核的水平偏导数进行卷积。我还没有找到用 OpenCV 实现这一目标的任何方法。那可能吗 ?

我是否必须获得高斯滤波器然后手动计算偏导数?

最佳答案

OpenCV 没有内置函数来计算高斯偏导数。但是你可以使用 cv::getGaussianKernelcv::filter2D这样做。

例如:

  cv::Mat kernel = cv::getGaussianKernel(3, 0.85, CV_32F);
  kernel = kernel.reshape(1, 1);
  cv::filter2D(img, img, CV_8U, kernel);

请注意,cv::getGaussianKernel 返回列过滤器,因此您需要reshape 使其水平。

关于opencv - 如何使用 OpenCV 将偏导数高斯核应用于图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35012080/

相关文章:

c++ - 如何获取 OpenCV getGaussianKernel 返回的 Mat 的实际核值?

python - 衍生品在 python 中爆炸

python - 在 Python 中求多项式的导数

Java - Highgui.imread 返回一个空矩阵

c++ - Android.mk - 包含 OpenCV 目录,用于使用 NDK 进行 native C++ 编译

android - 使用android的OpenCV构建库在 “not building target XXX because there was no build command for it”上失败

machine-learning - 高斯贝叶斯网络中的推理

c - 检测人脸并将检测到的人脸保存在 OpenCV 中

scikit-learn - 置信区间的高斯过程回归估计

python - Pytorch - 如何区分两个参数