快捷方式

填充

class torchvision.transforms.v2.Pad(padding: Union[int, Sequence[int]], fill: Union[int, float, Sequence[int], Sequence[float], None, Dict[Union[Type, str], Optional[Union[int, float, Sequence[int], Sequence[float]]]]] = 0, padding_mode: Literal['constant', 'edge', 'reflect', 'symmetric'] = 'constant')[source]

使用給定的“填充”值對輸入的所有邊進行填充。

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

引數:
  • padding (intsequence) –

    每個邊界上的填充量。如果提供單個 int,則用於填充所有邊界。如果提供長度為 2 的 sequence,則分別表示左/右和上/下邊界的填充量。如果提供長度為 4 的 sequence,則分別表示左、上、右和下邊界的填充量。

    注意

    在 torchscript 模式下,不支援將單個 int 作為填充量,請使用長度為 1 的 sequence:[padding, ]

  • fill (numbertupledict, 可選) – 當 padding_mode 為 constant 時使用的畫素填充值。預設為 0。如果提供長度為 3 的 tuple,則分別用於填充 R、G、B 通道。填充值也可以是一個字典,將資料型別對映到填充值,例如 fill={tv_tensors.Image: 127, tv_tensors.Mask: 0},其中 Image 將用 127 填充,而 Mask 將用 0 填充。

  • padding_mode (str, 可選) –

    填充型別。應為:constant、edge、reflect 或 symmetric。預設為 “constant”。

    • constant: 使用一個常量值填充,該值由 fill 指定

    • edge: 使用影像邊緣的最後一個值進行填充。

    • reflect: 使用影像的反射進行填充,不重複邊緣的最後一個值。例如,在 reflect 模式下,在 [1, 2, 3, 4] 的兩側填充 2 個元素將得到 [3, 2, 1, 2, 3, 4, 3, 2]

    • symmetric: 使用影像的反射進行填充,重複邊緣的最後一個值。例如,在 symmetric 模式下,在 [1, 2, 3, 4] 的兩側填充 2 個元素將得到 [2, 1, 1, 2, 3, 4, 4, 3]

使用 Pad 的示例

變換示意圖

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

自定義變換需要重寫的方法。

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

文件

訪問 PyTorch 的全面開發者文件

檢視文件

教程

獲取適合初學者和高階開發者的深入教程

檢視教程

資源

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

檢視資源