椒盐噪声Python
时间: 2024-04-12 07:25:14 浏览: 107
椒盐噪声是一种常见的图像噪声类型,它在图像中随机地添加黑色和白色的像素点,模拟图像中的噪声。在Python中,可以使用OpenCV库来实现椒盐噪声的添加。
下面是一个简单的示例代码,演示如何在Python中添加椒盐噪声:
```python
import cv2
import numpy as np
def add_salt_and_pepper_noise(image, noise_ratio):
height, width = image.shape[:2]
num_noise_pixels = int(noise_ratio * height * width)
# 添加椒盐噪声
for _ in range(num_noise_pixels):
x = np.random.randint(0, width)
y = np.random.randint(0, height)
if np.random.rand() < 0.5:
image[y, x] = 0 # 添加黑色像素
else:
image[y, x] = 255 # 添加白色像素
return image
# 读取图像
image = cv2.imread('image.jpg', cv2.IMREAD_GRAYSCALE)
# 添加椒盐噪声
noisy_image = add_salt_and_pepper_noise(image, 0.1) # 噪声比例为0.1
# 显示原始图像和添加噪声后的图像
cv2.imshow('Original Image', image)
cv2.imshow('Noisy Image', noisy_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上述代码中,`add_salt_and_pepper_noise`函数接受一个灰度图像和噪声比例作为输入,然后根据噪声比例随机地在图像中添加黑色和白色的像素点。最后,通过OpenCV的`imshow`函数显示原始图像和添加噪声后的图像。
阅读全文