python实现给文件夹下图片加入高斯噪声并批量保存
时间: 2023-12-06 20:00:25 浏览: 137
使用Python实现给文件夹下的图片添加高斯噪声并批量保存可以按照以下步骤进行:
首先,需要导入所需的库:OpenCV用于图像处理和保存,os用于文件夹操作,numpy用于生成高斯噪声。
```python
import cv2
import os
import numpy as np
```
然后,定义一个函数用于给单个图片添加高斯噪声:
```python
def add_gaussian_noise(image, mean=0, std=25):
noise = np.random.normal(mean, std, image.shape).astype(np.uint8)
noisy_image = cv2.add(image, noise)
return noisy_image
```
接下来,遍历指定文件夹下的所有图片文件,并使用上述定义的函数添加高斯噪声,并保存到新的文件夹中:
```python
source_folder = "input_folder"
target_folder = "output_folder"
if not os.path.exists(target_folder):
os.makedirs(target_folder)
for filename in os.listdir(source_folder):
img_path = os.path.join(source_folder, filename)
img = cv2.imread(img_path)
noisy_img = add_gaussian_noise(img)
target_path = os.path.join(target_folder, filename)
cv2.imwrite(target_path, noisy_img)
```
其中,input_folder是原始图片所在的文件夹,output_folder是保存添加噪声后的图片的文件夹。
最后,运行程序即可自动批量给文件夹下的图片添加高斯噪声并保存到指定文件夹中。
阅读全文