中文opencv GaussianBlur函数
时间: 2023-05-29 22:05:49 浏览: 201
GaussianBlur是OpenCV中用于图像模糊处理的函数,其函数原型如下:
```c++
void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double sigmaY = 0, int borderType = BORDER_DEFAULT );
```
其中,各参数的含义为:
- src:输入图像
- dst:输出图像
- ksize:高斯核大小,即卷积核大小。其值应为正奇数,如3、5、7等。一般情况下,ksize的值越大,图像的模糊程度就越高。
- sigmaX:高斯核在x方向的标准差,用于控制高斯分布的形状。当sigmaX为0时,函数会根据ksize来自动计算sigmaX的值。
- sigmaY:高斯核在y方向的标准差。当sigmaY为0时,函数会将其设为sigmaX的值。
- borderType:边界处理方式。默认值为BORDER_DEFAULT。
示例代码如下:
```c++
#include<opencv2/opencv.hpp>
#include<iostream>
using namespace cv;
using namespace std;
int main()
{
// 读取原始图像
Mat src = imread("lena.png");
if (src.empty())
{
cout << "读取图像失败!" << endl;
return -1;
}
// 对图像进行高斯模糊处理
Mat dst;
GaussianBlur(src, dst, Size(5, 5), 0, 0);
// 显示原始图像和处理结果
imshow("原始图像", src);
imshow("高斯模糊结果", dst);
waitKey(0);
return 0;
}
```
阅读全文