This content originally appeared on DEV Community and was authored by Super Kai (Kazuya Ito)
*Memos:
- My post explains OxfordIIITPet().
Resize() can resize zero or more images as shown below:
*Memos:
- The 1st argument for initialization is
size
(Required-Type:int
,tuple/list
(int
) or size()): *Memos:- It's
[height, width]
. - It must be 1 <= x.
-
None
can be explicitly set to it only ifmax_size
isn'tNone
. - A tuple/list must be the 1D with 1 or 2 elements.
- A single value(
int
ortuple/list
(int
)) is applied to a smaller image's width or height edge, then the other larger width or height edge is also resized: *Memos: - If an image's width is smaller than its height, it's
[size * height / width, size]
. - If an image width is larger than its height, it's
[size, size * width / height]
. - If an image width is equal to its height, it's
[size, size]
.
- It's
- The 2nd argument for initialization is
interpolation
(Optional-Default:InterpolationMode.BILINEAR
-Type:InterpolationMode). - The 3rd argument for initialization is
max_size
(Optional-Default:None
-Type:int
): *Memos:- It's only supported if
size
is a single value(int
ortuple/list
(int
)). - After
size
is applied if a larger image's width or height edge exceeds it, it's applied to a larger image's width or height edge to limit the image size, then the other smaller image's width or height edge also becomes smaller than before.
- It's only supported if
- The 4th argument for initialization is
antialias
(Optional-Default:True
-Type:bool
). *Even if settingFalse
to it, it's alwaysTrue
ifinterpolation
isInterpolationMode.BILINEAR
orInterpolationMode.BICUBIC
. - The 1st argument is
img
(Required-Type:PIL Image
ortensor
(int
,float
,complex
orbool
)): *Memos:- A tensor must be the 3D or more D of one or more elements.
- Don't use
img=
.
-
v2
is recommended to use according to V1 or V2? Which one should I use?.
from torchvision.datasets import OxfordIIITPet
from torchvision.transforms.v2 import Resize
from torchvision.transforms.functional import InterpolationMode
resize = Resize(size=100)
resize = Resize(size=100,
interpolation=InterpolationMode.BILINEAR,
max_size=None,
antialias=True)
resize
# Resize(size=[100],
# interpolation=InterpolationMode.BILINEAR,
# antialias=True)
resize.size
# [100]
resize.interpolation
# <InterpolationMode.BILINEAR: 'bilinear'>
print(resize.max_size)
# None
resize.antialias
# True
origin_data = OxfordIIITPet(
root="data",
transform=None
)
s1000_data = OxfordIIITPet(
root="data",
transform=Resize(size=1000)
# transform=Resize(size=[1000])
# transform=Resize(size=[1000, 1000])
)
s100_data = OxfordIIITPet(
root="data",
transform=Resize(size=100)
)
s50_data = OxfordIIITPet(
root="data",
transform=Resize(size=50)
)
s10_data = OxfordIIITPet(
root="data",
transform=Resize(size=10)
)
s100_180_data = OxfordIIITPet(
root="data",
transform=Resize(size=[100, 180])
)
s180_100_data = OxfordIIITPet(
root="data",
transform=Resize(size=[180, 100])
)
s100ms110_data = OxfordIIITPet(
root="data",
transform=Resize(size=100, max_size=110)
)
sNonems110_data = OxfordIIITPet(
root="data",
transform=Resize(size=None, max_size=110)
)
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")
show_images1(data=s1000_data, main_title="s1000_data")
show_images1(data=s100_data, main_title="s100_data")
show_images1(data=s50_data, main_title="s50_data")
show_images1(data=s10_data, main_title="s10_data")
print()
show_images1(data=origin_data, main_title="origin_data")
show_images1(data=s100_180_data, main_title="s100_180_data")
show_images1(data=s180_100_data, main_title="s180_100_data")
print()
show_images1(data=s100_data, main_title="s100_data")
show_images1(data=s100ms110_data, main_title="s100ms110_data")
show_images1(data=sNonems110_data, main_title="sNonems110_data")
# ↓ ↓ ↓ ↓ ↓ ↓ The code below is identical to the code above. ↓ ↓ ↓ ↓ ↓ ↓
def show_images2(data, main_title=None, s=None, ms=None):
plt.figure(figsize=(10, 5))
plt.suptitle(t=main_title, y=0.8, fontsize=14)
temp_s = s
for i, (im, _) in zip(range(1, 6), data):
plt.subplot(1, 5, i)
if not temp_s and not ms:
s = [im.size[1], im.size[0]]
resize = Resize(size=s, max_size=ms) # Here
plt.imshow(X=resize(im)) # Here
plt.tight_layout()
plt.show()
show_images2(data=origin_data, main_title="origin_data")
show_images2(data=origin_data, main_title="s1000_data", s=1000)
show_images2(data=origin_data, main_title="s100_data", s=100)
show_images2(data=origin_data, main_title="s100_data", s=50)
show_images2(data=origin_data, main_title="s10_data", s=10)
print()
show_images2(data=origin_data, main_title="origin_data")
show_images2(data=origin_data, main_title="s100_180_data", s=[100, 180])
show_images2(data=origin_data, main_title="s180_100_data", s=[180, 100])
print()
show_images2(data=origin_data, main_title="s100_data", s=100)
show_images2(data=origin_data, main_title="s100ms110_data", s=100, ms=110)
show_images2(data=origin_data, main_title="sNonems110_data", ms=110)
This content originally appeared on DEV Community and was authored by Super Kai (Kazuya Ito)
Print
Share
Comment
Cite
Upload
Translate
Updates
There are no updates yet.
Click the Upload button above to add an update.

APA
MLA
Super Kai (Kazuya Ito) | Sciencx (2025-01-21T15:56:33+00:00) Resize in PyTorch. Retrieved from https://www.scien.cx/2025/01/21/resize-in-pytorch/
" » Resize in PyTorch." Super Kai (Kazuya Ito) | Sciencx - Tuesday January 21, 2025, https://www.scien.cx/2025/01/21/resize-in-pytorch/
HARVARDSuper Kai (Kazuya Ito) | Sciencx Tuesday January 21, 2025 » Resize in PyTorch., viewed ,<https://www.scien.cx/2025/01/21/resize-in-pytorch/>
VANCOUVERSuper Kai (Kazuya Ito) | Sciencx - » Resize in PyTorch. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2025/01/21/resize-in-pytorch/
CHICAGO" » Resize in PyTorch." Super Kai (Kazuya Ito) | Sciencx - Accessed . https://www.scien.cx/2025/01/21/resize-in-pytorch/
IEEE" » Resize in PyTorch." Super Kai (Kazuya Ito) | Sciencx [Online]. Available: https://www.scien.cx/2025/01/21/resize-in-pytorch/. [Accessed: ]
rf:citation » Resize in PyTorch | Super Kai (Kazuya Ito) | Sciencx | https://www.scien.cx/2025/01/21/resize-in-pytorch/ |
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.