c++ 高斯滤波函数使用方法
时间: 2023-12-16 08:05:54 浏览: 134
高斯滤波方法
高斯滤波是一种常用的图像处理方法,可以用来去除图像中的噪声,平滑图像等。在C++中,可以使用OpenCV库提供的高斯滤波函数来实现。
下面是一个简单的高斯滤波函数使用示例:
```cpp
#include <opencv2/opencv.hpp>
int main()
{
// 读取图像
cv::Mat image = cv::imread("input.jpg");
// 定义高斯核大小和标准差
int kernel_size = 5;
double sigma = 1.0;
// 高斯滤波
cv::Mat result;
cv::GaussianBlur(image, result, cv::Size(kernel_size, kernel_size), sigma);
// 显示结果
cv::imshow("Input Image", image);
cv::imshow("Output Image", result);
cv::waitKey(0);
return 0;
}
```
在代码中,首先使用`cv::imread`函数读取输入图像。然后定义高斯核大小和标准差,这里使用了一个大小为5x5,标准差为1.0的高斯核。接着调用`cv::GaussianBlur`函数进行高斯滤波,将结果保存在`result`中。最后使用`cv::imshow`函数显示输入图像和输出图像,并等待用户按下任意键退出程序。
需要注意的是,在使用OpenCV库时需要添加库文件和头文件的引用。可以通过在编译器中添加库文件和头文件路径,或者直接将库文件和头文件拷贝到项目目录下来实现。
阅读全文