Resize¶
- class torchvision.transforms.Resize(size, interpolation=InterpolationMode.BILINEAR, max_size=None, antialias=True)[source]¶
将输入图像调整为给定尺寸。如果图像是 torch Tensor,则预期其形状为 […, H, W],其中 … 表示最多两个前导维度
- 参数:
size (sequence 或 int) –
期望的输出尺寸。如果 size 是一个序列,如 (h, w),输出尺寸将匹配此序列。如果 size 是一个 int,图像的较短边将匹配此数字。即,如果 height > width,则图像将缩放到 (size * height / width, size)。
注意
在 torchscript 模式下不支持 size 为单个 int,请使用长度为 1 的序列:
[size, ]。interpolation (InterpolationMode) – 由
torchvision.transforms.InterpolationMode定义的期望插值枚举。默认为InterpolationMode.BILINEAR。如果输入是 Tensor,仅支持InterpolationMode.NEAREST、InterpolationMode.NEAREST_EXACT、InterpolationMode.BILINEAR和InterpolationMode.BICUBIC。也接受相应的 Pillow 整数常量,例如PIL.Image.BILINEAR。max_size (int, 可选) – 调整大小后图像较长边的最大允许尺寸。如果图像较长边在根据
size调整大小后大于max_size,则size将被覆盖,使较长边等于max_size。结果是,较短边可能小于size。这仅在size是 int (或在 torchscript 模式下是长度为 1 的序列) 时支持。antialias (bool, 可选) –
是否应用抗锯齿。它仅影响具有双线性或双三次模式的 张量,否则将被忽略:对于 PIL 图像,在双线性或双三次模式下始终应用抗锯齿;在其他模式下(对于 PIL 图像和张量),抗锯齿没有意义,此参数将被忽略。可能的值为
True(默认):将对抗双线性或双三次模式应用抗锯齿。其他模式不受影响。这可能是您想要使用的设置。False:将不对任何模式下的张量应用抗锯齿。PIL 图像在双线性或双三次模式下仍会应用抗锯齿,因为 PIL 不支持无抗锯齿。None:等同于张量的False和 PIL 图像的True。此值是为了兼容旧版本而存在,除非您确实知道自己在做什么,否则您可能不想使用它。
默认值从 v0.17 中的
None更改为True,以使 PIL 和 Tensor 后端保持一致。
使用
Resize的示例