图片添加周期噪声python
时间: 2023-10-07 22:13:40 浏览: 61
Python给图像添加噪声具体操作
你可以使用Python的NumPy和OpenCV库来添加周期噪声到图像中。以下是一个示例代码:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg')
# 创建噪声图像
rows, cols, channels = img.shape
freq = 30 # 噪声频率
noise = np.zeros((rows, cols, channels), dtype=np.uint8)
for i in range(rows):
for j in range(cols):
noise[i,j,0] = 255 * np.sin(2 * np.pi * freq * i / rows)
noise[i,j,1] = 255 * np.sin(2 * np.pi * freq * j / cols)
noise[i,j,2] = 255 * np.sin(2 * np.pi * (i+j) / (rows+cols))
# 将噪声图像添加到原始图像中
noisy_img = cv2.add(img, noise)
# 显示图像
cv2.imshow('Original Image', img)
cv2.imshow('Noisy Image', noisy_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,我们首先读取了一张图像。然后,我们使用三个嵌套循环来创建一个周期噪声的图像。这里,我们使用了三个正弦波来创建每个通道的噪声。最后,我们将噪声图像添加到原始图像中,并显示两个图像。
你可以调整`freq`参数来控制噪声的频率。你也可以尝试使用其他类型的波形来创建噪声。
阅读全文