捷徑

Resize

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 (例如 ImageVideoBoundingBoxes 等),它可以具有任意數量的領先批次維度。例如,圖片可以具有 [..., C, H, W] 形狀。邊界框可以具有 [..., 4] 形狀。

參數:
  • size (sequence, int, 或 None) –

    期望的輸出大小。

    • 如果 size 是一個序列,如 (h, w),則輸出大小將與此匹配。

    • 如果 size 是一個整數,則圖片的較小邊將與此數字匹配。即,如果高度 > 寬度,則圖片將縮放到 (size * height / width, size)。

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

    注意

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

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

  • max_size (int, optional) –

    調整大小後,允許調整大小的圖片的較長邊的最大值。

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

    • 如果 size 為 None:圖片的較長邊將與 max_size 匹配。即,如果高度 > 寬度,則圖片將縮放到 (max_size, max_size * width / height)。

    size 是序列時,應將此項留為 None (預設值)。

  • antialias (bool, optional) –

    是否應用抗鋸齒。它僅影響具有雙線性或雙立方模式的張量,否則將被忽略:在 PIL 圖片上,始終在雙線性或雙立方模式下應用抗鋸齒;在其他模式下(對於 PIL 圖片和張量),抗鋸齒沒有意義,並且此參數將被忽略。可能的值為

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

    • False:將不會對任何模式下的張量應用抗鋸齒。PIL 圖片在雙線性或雙立方模式下仍會進行抗鋸齒處理,因為 PIL 不支援不進行抗鋸齒處理。

    • None:對於張量等效於 False,對於 PIL 圖片等效於 True。此值出於歷史原因而存在,除非您真的知道自己在做什麼,否則您可能不想使用它。

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

使用 Resize 的範例

轉換的圖示

轉換的圖示
transform(inpt: Any, params: Dict[str, Any]) Any[source]

覆寫自訂轉換的方法。

請參閱如何編寫您自己的 v2 轉換

文件

存取 PyTorch 的完整開發者文件

查看文件

教學

取得適用於初學者和進階開發者的深入教學

查看教學

資源

尋找開發資源並獲得問題解答

查看資源