共计 664 个字符,预计需要花费 2 分钟才能阅读完成。
是的,torchvision 的 transforms.Resize 能够批改图像的大小和比例。如果您只指定了一个维度(例如高度),则另一个维度(例如宽度)将按比例调整以放弃原始图像的纵横比。如果您指定两个维度,则图像将被拉伸以填充新尺寸。
以下是一个示例,展现了 transforms.Resize 如何批改图像的大小和比例:
import torch
from torchvision import transforms
from PIL import Image
img = Image.open("example.jpg") # 原始图像
print(img.size) # 输入原始图像尺寸
# 将图像高度调整为 256 像素,宽度将按比例调整以放弃纵横比
resize_transform = transforms.Resize((256,))
resized_img = resize_transform(img)
print(resized_img.size) # 输入批改后的图像尺寸
# 将图像调整为 224x224 像素,不放弃纵横比
resize_transform = transforms.Resize((224, 224))
resized_img = resize_transform(img)
print(resized_img.size) # 输入批改后的图像尺寸
输入后果:
(640, 360)
(455, 256)
(224, 224)
在第一个示例中,图像高度被调整为 256 像素,宽度按比例调整以放弃原始图像的纵横比。在第二个示例中,图像被调整为 224×224 像素,不放弃纵横比,因而图像可能会被拉伸。
正文完