给我买咖啡☕
*备忘录:
- 我的帖子解释了牛津iiitpet()。
gaussianblur()可以随机模糊图像,如下所示:
>
*备忘录:
- >初始化的第一个参数是num_output_channels(必需类型:int或tuple/list(int)): *备忘录:
- 是[高度,宽度]。
- 它一定是奇数1
- 元组/列表必须是具有1或2个元素的1d。
单个值(int或tuple/list(int))表示[num_output_channels,num_output_channels]。
-
- 是[min,max],所以必须是最小
- 第一个参数是img(必需类型:pil图像或张量(int)): *备忘录:
初始化的第二个参数是sigma(可选默认:(0.1,2.0)-type:int或tuple/tuple/list(int)): *备忘录:
必须是0 元组/列表必须是具有1或2个元素的1d。 单个值(int或tuple/list(int))表示[sigma,sigma]。
张量必须为2d或3d。 不使用img =。
建议根据v1或v2使用v2?我应该使用哪一个?
from torchvision.datasets import OxfordIIITPet from torchvision.transforms.v2 import GaussianBlur gaussianblur = GaussianBlur(kernel_size=1) gaussianblur = GaussianBlur(kernel_size=1, sigma=(0.1, 2.0)) gaussianblur # GaussianBlur(kernel_size=(1, 1), sigma=[0.1, 2.0]) gaussianblur.kernel_size # (1, 1) gaussianblur.sigma # [0.1, 2.0] origin_data = OxfordIIITPet( root="data", transform=None ) ks1_data = OxfordIIITPet( # `ks` is kernel_size. root="data", transform=GaussianBlur(kernel_size=1) # transform=GaussianBlur(kernel_size=[1]) # transform=GaussianBlur(kernel_size=[1, 1]) ) ks3_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=3) ) ks5_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=5) ) ks7_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=7) ) ks9_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=9) ) ks11_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=11) ) ks51_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=51) ) ks101_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=101) ) ks9_51_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[9, 51]) ) ks51_9_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[51, 9]) ) import matplotlib.pyplot as plt def show_images1(data, main_title=None): plt.figure(figsize=[10, 5]) plt.suptitle(t=main_title, y=0.8, fontsize=14) for i, (im, _) in zip(range(1, 6), data): plt.subplot(1, 5, i) plt.imshow(X=im) plt.xticks(ticks=[]) plt.yticks(ticks=[]) plt.tight_layout() plt.show() show_images1(data=origin_data, main_title="origin_data") show_images1(data=ks1_data, main_title="ks1_data") show_images1(data=ks3_data, main_title="ks3_data") show_images1(data=ks5_data, main_title="ks5_data") show_images1(data=ks7_data, main_title="ks7_data") show_images1(data=ks9_data, main_title="ks9_data") show_images1(data=ks11_data, main_title="ks11_data") show_images1(data=ks51_data, main_title="ks51_data") show_images1(data=ks101_data, main_title="ks101_data") print() show_images1(data=origin_data, main_title="origin_data") show_images1(data=ks9_51_data, main_title="ks9_51_data") show_images1(data=ks51_9_data, main_title="ks51_9_data") # ↓ ↓ ↓ ↓ ↓ ↓ The code below is identical to the code above. ↓ ↓ ↓ ↓ ↓ ↓ def show_images2(data, main_title=None, ks=None, s=(0.1, 2.0)): plt.figure(figsize=[10, 5]) plt.suptitle(t=main_title, y=0.8, fontsize=14) if ks: for i, (im, _) in zip(range(1, 6), data): plt.subplot(1, 5, i) gb = GaussianBlur(kernel_size=ks, sigma=s) plt.imshow(X=gb(im)) plt.xticks(ticks=[]) plt.yticks(ticks=[]) else: for i, (im, _) in zip(range(1, 6), data): plt.subplot(1, 5, i) plt.imshow(X=im) plt.xticks(ticks=[]) plt.yticks(ticks=[]) plt.tight_layout() plt.show() show_images2(data=origin_data, main_title="origin_data") show_images2(data=origin_data, main_title="ks1_data", ks=1) show_images2(data=origin_data, main_title="ks3_data", ks=3) show_images2(data=origin_data, main_title="ks5_data", ks=5) show_images2(data=origin_data, main_title="ks7_data", ks=7) show_images2(data=origin_data, main_title="ks9_data", ks=9) show_images2(data=origin_data, main_title="ks11_data", ks=11) show_images2(data=origin_data, main_title="ks51_data", ks=51) show_images2(data=origin_data, main_title="ks101_data", ks=101) print() show_images2(data=origin_data, main_title="origin_data") show_images2(data=origin_data, main_title="ks9_51data", ks=[9, 51]) show_images2(data=origin_data, main_title="ks51_9_data", ks=[51, 9])
登录后复制
以上就是Pytorch中的高斯布鲁尔(1)的详细内容,更多请关注php中文网其它相关文章!