*Memos:
- My post explains RandomResizedCrop() about
size
argument (1). - My post explains RandomResizedCrop() about
size
argument (2). - My post explains RandomResizedCrop() about
scale
argument (1). - My post explains RandomResizedCrop() about
ratio
argument (1). - My post explains RandomResizedCrop() about
ratio
argument (2).
RandomResizedCrop() can crop a random part of an image, then resize it to a given size as shown below. *It's about scale
argument (2):
from torchvision.datasets import OxfordIIITPet from torchvision.transforms.v2 import RandomResizedCrop from torchvision.transforms.functional import InterpolationMode origin_data = OxfordIIITPet( root="data", transform=None ) s1000sc0_0r1_1origin_data = OxfordIIITPet( # `s` is size and `sc` is scale. root="data", # `r` is ratio. transform=RandomResizedCrop(size=1000, scale=[0, 0], ratio=[1, 1]) ) s1000sc0_1r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0, 1], ratio=[1, 1]) ) s1000sc0_05r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0, 0.5], ratio=[1, 1]) ) s1000sc05_1r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.5, 1], ratio=[1, 1]) ) s1000sc0001_0001r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.001, 0.001], ratio=[1, 1]) ) s1000sc001_001r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.01, 0.01], ratio=[1, 1]) ) s1000sc01_01r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.1, 0.1], ratio=[1, 1]) ) s1000sc02_02r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.2, 0.2], ratio=[1, 1]) ) s1000sc03_03r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.3, 0.3], ratio=[1, 1]) ) s1000sc04_04r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.4, 0.4], ratio=[1, 1]) ) s1000sc05_05r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.5, 0.5], ratio=[1, 1]) ) s1000sc06_06r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.6, 0.6], ratio=[1, 1]) ) s1000sc07_07r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.7, 0.7], ratio=[1, 1]) ) s1000sc08_08r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.8, 0.8], ratio=[1, 1]) ) s1000sc09_09r1_1_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[0.9, 0.9], ratio=[1, 1]) ) s1000sc1_1r1_1origin_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[1, 1], ratio=[1, 1]) ) s1000sc10_10r1_1origin_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[10, 10], ratio=[1, 1]) ) s1000sc100_100r1_1origin_data = OxfordIIITPet( root="data", transform=RandomResizedCrop(size=1000, scale=[100, 100], ratio=[1, 1]) ) 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.tight_layout() plt.show() show_images1(data=origin_data, main_title="origin_data") print() show_images1(data=s1000sc0_0r1_1origin_data, main_title="s1000sc0_0r1_1origin_data") show_images1(data=s1000sc0_1r1_1_data, main_title="s1000sc0_1r1_1_data") show_images1(data=s1000sc0_05r1_1_data, main_title="s1000sc0_05r1_1_data") show_images1(data=s1000sc05_1r1_1_data, main_title="s1000sc05_1r1_1_data") print() show_images1(data=s1000sc0_0r1_1origin_data, main_title="s1000sc0_0r1_1origin_data") show_images1(data=s1000sc0001_0001r1_1_data, main_title="s1000sc0001_0001r1_1_data") show_images1(data=s1000sc001_001r1_1_data, main_title="s1000sc001_001r1_1_data") show_images1(data=s1000sc01_01r1_1_data, main_title="s1000sc01_01r1_1_data") show_images1(data=s1000sc02_02r1_1_data, main_title="s1000sc02_02r1_1_data") show_images1(data=s1000sc03_03r1_1_data, main_title="s1000sc03_03r1_1_data") show_images1(data=s1000sc04_04r1_1_data, main_title="s1000sc04_04r1_1_data") show_images1(data=s1000sc05_05r1_1_data, main_title="s1000sc05_05r1_1_data") show_images1(data=s1000sc06_06r1_1_data, main_title="s1000sc06_06r1_1_data") show_images1(data=s1000sc07_07r1_1_data, main_title="s1000sc07_07r1_1_data") show_images1(data=s1000sc08_08r1_1_data, main_title="s1000sc08_08r1_1_data") show_images1(data=s1000sc09_09r1_1_data, main_title="s1000sc09_09r1_1_data") show_images1(data=s1000sc1_1r1_1origin_data, main_title="s1000sc1_1r1_1origin_data") show_images1(data=s1000sc10_10r1_1origin_data, main_title="s1000sc10_10r1_1origin_data") show_images1(data=s1000sc100_100r1_1origin_data, main_title="s1000sc100_100r1_1origin_data") # ↓ ↓ ↓ ↓ ↓ ↓ The code below is identical to the code above. ↓ ↓ ↓ ↓ ↓ ↓ def show_images2(data, main_title=None, s=None, sc=(0.08, 1), r=(0.75, 1.3333333333333333), ip=InterpolationMode.BILINEAR, a=True): 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) rrc = RandomResizedCrop(size=s, scale=sc, ratio=r, interpolation=ip, antialias=a) plt.imshow(X=rrc(im)) else: for i, (im, _) in zip(range(1, 6), data): plt.subplot(1, 5, i) plt.imshow(X=im) plt.tight_layout() plt.show() show_images2(data=origin_data, main_title="origin_data") print() show_images2(data=origin_data, main_title="s1000sc0_0r1_1origin_data", s=1000, sc=[0, 0], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc0_1r1_1_data", s=1000, sc=[0, 1], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc0_05r1_1_data", s=1000, sc=[0, 0.5], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc05_1r1_1_data", s=1000, sc=[0.5, 1], r=[1, 1]) print() show_images2(data=origin_data, main_title="s1000sc0_0r1_1origin_data", s=1000, sc=[0, 0], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc0001_0001r1_1_data", s=1000, sc=[0.001, 0.001], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc001_001r1_1_data", s=1000, sc=[0.01, 0.01], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc01_01r1_1_data", s=1000, sc=[0.1, 0.1], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc02_02r1_1_data", s=1000, sc=[0.2, 0.2], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc03_03r1_1_data", s=1000, sc=[0.3, 0.3], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc04_04r1_1_data", s=1000, sc=[0.4, 0.4], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc05_05r1_1_data", s=1000, sc=[0.5, 0.5], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc06_06r1_1_data", s=1000, sc=[0.6, 0.6], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc07_07r1_1_data", s=1000, sc=[0.7, 0.7], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc08_08r1_1_data", s=1000, sc=[0.8, 0.8], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc09_09r1_1_data", s=1000, sc=[0.9, 0.9], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc1_1r1_1origin_data", s=1000, sc=[1, 1], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc10_10r1_1origin_data", s=1000, sc=[10, 10], r=[1, 1]) show_images2(data=origin_data, main_title="s1000sc100_100r1_1origin_data", s=1000, sc=[100, 100], r=[1, 1])
Top comments (0)