您好,登錄后才能下訂單哦!
這篇文章主要講解了“PyTorch怎么實現椒鹽噪聲效果”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“PyTorch怎么實現椒鹽噪聲效果”吧!
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怎么實現椒鹽噪聲效果這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。