方法

1、首先我们要用到 skimage 第三方库,安装方法:

pip install scikit-image

2、代码部分,我们使用数据批处理方式:

from PIL import Image
from skimage import util, img_as_float, io    # 导入所需要的 skimage 库
import os

old_path = r"E:\relate_code\frame_resize"    # 原始文件路径
save_path = r"E:\relate_code\frame_save"     # 需要存储的文件路径

file_list = os.walk(old_path)

for root, dirs, files in file_list:
    for file in files:
        pic_path = os.path.join(root, file)    # 每一个图片的绝对路径
        # 读取图像
        img_org = Image.open(pic_path)         
        # 转换为 skimage 可操作的格式
        img = img_as_float(img_org)	
        
        image_gaussian = util.random_noise(img, mode="gaussian")      # 加高斯噪声
        image_sp = util.random_noise(img, mode="s&p")             # 加椒盐噪声

        # 存储文件到新的路径中,并修改文件名
        io.imsave(os.path.join(save_path, file[:-4] + "-guassian.jpg"), image_gaussian)  
        io.imsave(os.path.join(save_path, file[:-4] + "-sp.jpg"), image_sp)  

其中,用到的核心函数是 util.random_noise() 函数。

3、最后拿索隆做一下效果对比。

原图

请添加图片描述

添加高斯噪声

请添加图片描述

添加椒盐噪声

请添加图片描述

日常学习记录,一起交流讨论吧!侵权联系~

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐