快捷方式

調整大小

class torchvision.transforms.v2.Resize(size: Optional[Union[int, Sequence[int]]], interpolation: Union[InterpolationMode, int] = InterpolationMode.BILINEAR, max_size: Optional[int] = None, antialias: Optional[bool] = True)[source]

將輸入調整到給定尺寸。

如果輸入是 torch.TensorTVTensor (例如 Image, Video, BoundingBoxes 等),它可以包含任意數量的前導批次維度。例如,影像的形狀可以為 [..., C, H, W]。邊界框的形狀可以為 [..., 4]

引數:
  • size (序列, 整型, 或 None) –

    期望的輸出尺寸。

    • 如果 size 是像 (h, w) 這樣的序列,則輸出尺寸將與此匹配。

    • 如果 size 是一個整型數,則影像的較短邊將匹配到此數字。即,如果 height > width,則影像將被重新縮放為 (size * height / width, size)。

    • 如果 size 為 None,則輸出形狀由引數 max_size 決定。

    注意

    在 torchscript 模式下,不支援將 size 作為單個整型數,請使用長度為 1 的序列:[size, ]

  • interpolation (InterpolationMode, 可選) – 期望的插值列舉,由 torchvision.transforms.InterpolationMode 定義。預設為 InterpolationMode.BILINEAR。如果輸入是 Tensor,僅支援 InterpolationMode.NEARESTInterpolationMode.NEAREST_EXACTInterpolationMode.BILINEARInterpolationMode.BICUBIC。也接受相應的 Pillow 整型常量,例如 PIL.Image.BILINEAR

  • max_size (整型, 可選) –

    調整大小後的影像長邊的最大允許尺寸。

    • 如果 size 是一個整型數:如果影像的長邊在根據 size 調整大小後大於 max_size,則 size 將被覆蓋,使得長邊等於 max_size。結果是,短邊可能會小於 size。僅當 size 是一個整型數(或在 torchscript 模式下是長度為 1 的序列)時支援此功能。

    • 如果 size 為 None:影像的長邊將匹配到 max_size。即,如果 height > width,則影像將被重新縮放為 (max_size, max_size * width / height)。

    size 是一個序列時,此引數應保持 None(預設值)。

  • antialias (布林型, 可選) –

    是否應用抗鋸齒。它僅影響雙線性或雙三次模式下的 tensor,在其他情況下會被忽略:對於 PIL 影像,在雙線性或雙三次模式下總是應用抗鋸齒;對於其他模式(PIL 影像和 tensor),抗鋸齒沒有意義,此引數將被忽略。可能的值為

    • True(預設):將對雙線性或雙三次模式應用抗鋸齒。其他模式不受影響。這可能是您想要使用的設定。

    • False:將不對 tensor 在任何模式下應用抗鋸齒。PIL 影像在雙線性或雙三次模式下仍然會應用抗鋸齒,因為 PIL 不支援關閉抗鋸齒。

    • None:對於 tensor 等同於 False,對於 PIL 影像等同於 True。此值是出於相容性原因而存在,除非您非常清楚自己在做什麼,否則可能不希望使用它。

    預設值在 v0.17 中從 None 更改為 True,以使 PIL 和 Tensor 後端保持一致。

使用 Resize 的示例

變換示例

變換示例
transform(inpt: Any, params: Dict[str, Any]) Any[source]

自定義變換需要覆蓋的方法。

參見 如何編寫自己的 v2 變換

文件

訪問 PyTorch 的全面開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源