---
title: GaussianBlur
description: "GaussianBlur函数用于对图像进行高斯模糊，主要用于平滑图像、去除噪声和细节。通过应用高斯滤波，图像中的边缘和细节会被柔化，适合在边缘检测和图像预处理等场景中使用。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/251RC1/accel/kunpengaccel_kpcv_06_0014.html
sourcePath: /source/zh/kunpengboostkithistory/251RC1/accel/kunpengaccel_kpcv_06_0014.html
indexId: 54b6f73f08b85f706e0b6baf88a599e2ba1fd2ff61a8ac4104fde045d02c162b77
---
# GaussianBlur

#### 函数功能

GaussianBlur函数用于对图像进行高斯模糊，主要用于平滑图像、去除噪声和细节。通过应用高斯滤波，图像中的边缘和细节会被柔化，适合在边缘检测和图像预处理等场景中使用。


#### 函数接口

```
cv2.GaussianBlur(src, ksize, sigmaX, sigmaY=0, borderType=cv2.BORDER_DEFAULT)
```


#### 参数

| 参数名 | 描述 | 取值范围 | 输入/输出 |
| --- | --- | --- | --- |
| src | 输入图像。 | 非空 | 输入 |
| ksize | 高斯核的大小，必须是正奇数，如(3, 3)或(5, 5)。 | (width, height)，其中width和height均为大于1的奇数 | 输入 |
| sigmaX | X方向的高斯标准差，控制模糊程度。 | (0, inf) | 输入 |
| sigmaY | Y方向的高斯标准差，默认为0（自动计算与sigmaX相同）。 | (0, inf) | 输入 |
| borderType | 边界模式，默认为cv2.BORDER\_DEFAULT，用于处理边界像素。 | cv2.BORDER\_DEFAULT、cv2.BORDER\_REPLICATE、cv2.BORDER\_REFLECT、cv2.BORDER\_REFLECT\_101、cv2.BORDER\_WRAP、cv2.BORDER\_CONSTANT等 | 输入 |


#### 返回值

- 输出图像。


#### 示例

```
import numpy as np
import cv2

# 创建一个5x5的简单图像 
src = np.array([[0, 0, 0, 0, 0],
                [0, 1, 1, 1, 0], 
                [0, 1, 0, 1, 0],
                [0, 1, 1, 1, 0],
                [0, 0, 0, 0, 0]], dtype=np.uint8)

# 定义高斯模糊核的大小 
ksize = (3, 3)  

# 定义高斯模糊核的标准差 
sigmaX = 1 
sigmaY = 1

dst = cv2.GaussianBlur(src, ksize, sigmaX, sigmaY, borderType=cv2.BORDER_DEFAULT)

print(dst)
```

运行结果：

```
[[0 0 1 0 0]
 [0 0 1 0 0]
 [1 1 1 1 1]
 [0 0 1 0 0]
 [0 0 1 0 0]]
```
