填充¶
- class torchvision.transforms.Pad(padding, fill=0, padding_mode='constant')[源代码]¶
使用给定的“填充”值填充给定图像的所有边。如果图像是 torch Tensor,则其形状应为 […, H, W],其中 … 表示对于 reflect 和 symmetric 模式,最多有 2 个前导维度;对于 edge 模式,最多有 3 个前导维度;对于 constant 模式,前导维度数量不限
- 参数:
padding (int 或 sequence) –
每个边界上的填充量。如果提供一个单独的 int 值,则用于填充所有边界。如果提供一个长度为 2 的 sequence,则分别表示左右和顶部/底部边界的填充量。如果提供一个长度为 4 的 sequence,则分别表示左、顶、右和底边界的填充量。
注意
在 torchscript 模式下,不支持单个 int 值的填充,请使用长度为 1 的 sequence:
[padding, ]
。fill (number 或 tuple) – 对于 constant 填充的像素填充值。默认为 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]
使用
Pad
的示例