pad¶
- torchvision.transforms.functional.pad(img: Tensor, padding: List[int], fill: Union[int, float] = 0, padding_mode: str = 'constant') Tensor[source]¶
使用給定的“填充”值對給定影像的所有邊進行填充。如果影像是 torch Tensor,則其形狀應為 […, H, W],其中對於 `reflect` 和 `symmetric` 模式,`…` 表示最多 2 個前導維度;對於 `edge` 模式,表示最多 3 個前導維度;對於 `constant` 模式,表示任意數量的前導維度。
- 引數:
img (PIL Image 或 Tensor) – 要填充的影像。
padding (int 或 sequence) –
每條邊上的填充量。如果提供一個 int 值,則用於填充所有邊。如果提供一個長度為 2 的 sequence,則分別用於填充左/右和上/下邊。如果提供一個長度為 4 的 sequence,則分別用於填充左、上、右和下邊。
注意
在 torchscript 模式下不支援將 padding 指定為單個 int 值,請使用長度為 1 的 sequence,例如:
[padding, ]。fill (number 或 tuple) – 常量填充的畫素填充值。預設為 0。如果是一個長度為 3 的 tuple,則分別用於填充 R、G、B 通道。此值僅在 padding_mode 為 constant 時使用。對於 torch Tensor 只支援 number 型別。對於 PIL Image 只支援 int 或 tuple 值。
padding_mode (str) –
填充型別。應為:constant, edge, reflect 或 symmetric。預設為 constant。
constant: 使用常量值填充,該值由 fill 引數指定
edge: 使用影像邊緣的最後一個值填充。如果輸入是 5D 的 torch Tensor,則會填充最後 3 個維度而不是最後 2 個。
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]
- 返回值:
填充後的影像。
- 返回型別:
PIL Image 或 Tensor
使用
pad的示例