方法

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

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐