成都网站建设设计

将想法与焦点和您一起共享

PyTorch怎么实现​椒盐噪声效果

这篇文章主要讲解了“PyTorch怎么实现椒盐噪声效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PyTorch怎么实现椒盐噪声效果”吧!

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比洛隆网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式洛隆网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖洛隆地区。费用合理售后完善,10年实体公司更值得信赖。

1.     将介绍的transforms方法一一地,单独地实现对图片的变换,并且通过plt.savefig将图片保存下来

2.      自定义一个增加椒盐噪声的transforms方法,使得其能正确运行

见下面代码

3.      用手机将自己钱包中的100元人民币正面进行拍照,并且放到hello pytorch/lesson/lesson-09/test_data/100文件夹下,通过修改不同的数据增强方法,使得模型在10个epoch之后能正确区分你钱包中的100元

椒盐噪声

peper noise

import torch 
import numpy as np 
from PIL import Image
from torchvision import datasets, models, transforms


np.random.seed(1234)

image_path = 'a.jpg'

class AddPepperNoise(object):
    def __init__(self, snr, p):
        self.snr = snr
        self.p = p 

    def __call__(self, img):
        p1 = np.random.uniform(low = 0.0, high = 1.0)
        if p1 > self.p:
            return img
        else:
            out_img = np.asarray(img).copy()
            h, w, c = out_img.shape
            for i in range(h):
                for j in range(w):
                    for k in range(c):
                        p2 = np.random.uniform(low = 0.0, high = 1.0)
                        if p2 < self.snr:
                            out_img[i][j][k] = out_img[i][j][k]
                        elif p2 < self.snr + (1 - self.snr) / 2:
                            out_img[i][j][k] = 0
                        else:
                            out_img[i][j][k] = 255
                        # print(out_img[i][j][k])
            print(out_img)
            tmp = Image.fromarray(out_img.astype('uint8')).convert('RGB')
            print('tmp:', tmp, np.asarray(tmp))
            return tmp


def main():
    img = Image.open(image_path)

    
    now_transforms = transforms.Compose([
        transforms.Resize((224, 224)),
        AddPepperNoise(snr = 0.9, p = 1.0),
        # transforms.ToTensor(),
    ])
    img_transformed = now_transforms(img)

    print(img_transformed, np.asarray(img_transformed))
    img_transformed.save('a_pepperNoise.jpg')



if __name__ == '__main__':
    main()

感谢各位的阅读,以上就是“PyTorch怎么实现椒盐噪声效果”的内容了,经过本文的学习后,相信大家对PyTorch怎么实现椒盐噪声效果这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


本文名称:PyTorch怎么实现​椒盐噪声效果
URL标题:http://chengdu.cdxwcx.cn/article/pjcsce.html