关于pytorch:pytorch-的-torchvision-的-transformsResize-会修改图片比例吗

29次阅读

共计 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 像素,不放弃纵横比,因而图像可能会被拉伸。

正文完
 0