椒盐噪声 python
时间: 2024-03-05 07:46:33 浏览: 82
椒盐噪声是一种常见的图像噪声类型,它在图像中随机地添加黑色和白色的像素点,模拟图像中的噪声。在Python中,可以使用OpenCV库来添加椒盐噪声。
以下是使用Python和OpenCV库添加椒盐噪声的示例代码:
```python
import cv2
import numpy as np
def add_salt_pepper_noise(image, probability):
noisy_image = np.copy(image)
height, width = noisy_image.shape[:2]
num_salt = int(probability * height * width)
coords = [np.random.randint(0, i - 1, num_salt) for i in noisy_image.shape]
noisy_image[coords] = 255
num_pepper = int(probability * height * width)
coords = [np.random.randint(0, i - 1, num_pepper) for i in noisy_image.shape]
noisy_image[coords] = 0
return noisy_image
# 读取图像
image = cv2.imread('image.jpg', cv2.IMREAD_GRAYSCALE)
# 添加椒盐噪声
noisy_image = add_salt_pepper_noise(image, 0.05)
# 显示原始图像和添加噪声后的图像
cv2.imshow('Original Image', image)
cv2.imshow('Noisy Image', noisy_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
上述代码中,`add_salt_pepper_noise`函数用于添加椒盐噪声。它首先创建一个与原始图像相同大小的副本,然后根据指定的概率在随机位置添加白色和黑色像素点,模拟椒盐噪声。最后,通过调用`cv2.imshow`函数显示原始图像和添加噪声后的图像。
阅读全文