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