*Memos:
- My post explains GaussianBlur() about
kernel_size
argument. - My post explains GaussianBlur() about
sigma
argument.
GaussianBlur() can randomly blur an image as shown below. *It's about kernel_size=[a, b]
and sigma=50
:
from torchvision.datasets import OxfordIIITPet from torchvision.transforms.v2 import GaussianBlur origin_data = OxfordIIITPet( root="data", transform=None ) ks1_1s50_data = OxfordIIITPet( # `ks` is kernel_size and `s` is sigma. root="data", transform=GaussianBlur(kernel_size=[1, 1], sigma=50) ) ks1_5s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[1, 5], sigma=50) ) ks1_11s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[1, 11], sigma=50) ) ks1_51s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[1, 51], sigma=50) ) ks1_101s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[1, 101], sigma=50) ) ks1_501s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[1, 501], sigma=50) ) ks1_1s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[1, 1], sigma=50) ) ks5_1s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[5, 1], sigma=50) ) ks11_1s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[11, 1], sigma=50) ) ks51_1s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[51, 1], sigma=50) ) ks101_1s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[101, 1], sigma=50) ) ks501_1s50_data = OxfordIIITPet( root="data", transform=GaussianBlur(kernel_size=[501, 1], sigma=50) ) 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_1s50_data, main_title="ks1_1s50_data") show_images1(data=ks1_5s50_data, main_title="ks1_5s50_data") show_images1(data=ks1_11s50_data, main_title="ks1_11s50_data") show_images1(data=ks1_51s50_data, main_title="ks1_51s50_data") show_images1(data=ks1_101s50_data, main_title="ks1_101s50_data") show_images1(data=ks1_501s50_data, main_title="ks1_501s50_data") print() show_images1(data=origin_data, main_title="origin_data") show_images1(data=ks1_1s50_data, main_title="ks1_1s50_data") show_images1(data=ks5_1s50_data, main_title="ks5_1s50_data") show_images1(data=ks11_1s50_data, main_title="ks11_1s50_data") show_images1(data=ks51_1s50_data, main_title="ks51_1s50_data") show_images1(data=ks101_1s50_data, main_title="ks101_1s50_data") show_images1(data=ks501_1s50_data, main_title="ks501_1s50_data") # ↓ ↓ ↓ ↓ ↓ ↓ The code below is identical to the code above. ↓ ↓ ↓ ↓ ↓ ↓ def show_images2(data, main_title=None, ks=None, s=(0.1, 2)): plt.figure(figsize=[10, 5]) plt.suptitle(t=main_title, y=0.8, fontsize=14) if main_title != "origin_data": 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_1s50_data", ks=[1, 1], s=50) show_images2(data=origin_data, main_title="ks1_5s50_data", ks=[1, 5], s=50) show_images2(data=origin_data, main_title="ks1_11s50_data", ks=[1, 11], s=50) show_images2(data=origin_data, main_title="ks1_51s50_data", ks=[1, 51], s=50) show_images2(data=origin_data, main_title="ks1_101s50_data", ks=[1, 101], s=50) show_images2(data=origin_data, main_title="ks1_501s50_data", ks=[1, 501], s=50) print() show_images2(data=origin_data, main_title="origin_data") show_images2(data=origin_data, main_title="ks1_1s50_data", ks=[1, 1], s=50) show_images2(data=origin_data, main_title="ks5_1s50_data", ks=[5, 1], s=50) show_images2(data=origin_data, main_title="ks11_1s50_data", ks=[11, 1], s=50) show_images2(data=origin_data, main_title="ks51_1s50_data", ks=[51, 1], s=50) show_images2(data=origin_data, main_title="ks101_1s50_data", ks=[101, 1], s=50) show_images2(data=origin_data, main_title="ks501_1s50_data", ks=[501, 1], s=50)
Top comments (0)