python给图像添加噪声
时间: 2023-10-20 20:23:47 浏览: 95
在Python中,可以使用NumPy和OpenCV库为图像添加噪声。以下是两种添加噪声的方法:
1. 使用NumPy库添加噪声:
```python
import numpy as np
import cv2
# 加载图像
img = cv2.imread('image.png')
# 添加高斯噪声
noise = np.random.normal(loc=0, scale=20, size=img.shape)
img_noise = img + noise.astype(np.uint8)
# 显示图像
cv2.imshow('image', img)
cv2.imshow('noisy image', img_noise)
cv2.waitKey(0)
```
在上面的代码中,我们使用NumPy生成高斯噪声,并将它添加到原始图像中。参数`loc`表示噪声的均值,`scale`表示噪声的标准差,`size`表示噪声的形状。
2. 使用OpenCV库添加噪声:
```python
import cv2
# 加载图像
img = cv2.imread('image.png')
# 添加高斯噪声
img_noise = cv2.GaussianBlur(img, (5, 5), 0)
# 显示图像
cv2.imshow('image', img)
cv2.imshow('noisy image', img_noise)
cv2.waitKey(0)
```
在上面的代码中,我们使用OpenCV的`cv2.GaussianBlur()`函数来添加高斯噪声,参数`(5, 5)`表示噪声的核大小,`0`表示噪声的标准差。
你也可以使用其他函数来添加噪声,例如`cv2.salt()`和`cv2.pepper()`函数来添加椒盐噪声。
阅读全文