megengine.functional.nn.pad¶
- pad(src, pad_width, mode='constant', constant_value=0.0)[source]¶
Pads the input tensor.
- Parameters
pad_width (
Tuple
[Tuple
[int
,int
],...
]) – A tuple. Each element in the tuple is the tuple of 2-elements, the 2 elements represent the padding size on both sides of the current dimension,(front_offset, back_offset)
mode (
str
) –One of the following string values. Default:
'constant'
'constant'
: Pads with a constant value.'reflect'
: Pads with the reflection of the tensor mirrored on the first and last values of the tensor along each axis.'replicate'
: Pads with the edge values of tensor.
constant_val – Fill value for
'constant'
padding. Default: 0
Examples
>>> import numpy as np >>> inp = Tensor([[1., 2., 3.],[4., 5., 6.]]) >>> inp Tensor([[1. 2. 3.] [4. 5. 6.]], device=xpux:0) >>> F.nn.pad(inp, pad_width=((1, 1),), mode="constant") Tensor([[0. 0. 0.] [1. 2. 3.] [4. 5. 6.] [0. 0. 0.]], device=xpux:0) >>> F.nn.pad(inp, pad_width=((1, 1),), mode="constant", constant_value=9) Tensor([[9. 9. 9.] [1. 2. 3.] [4. 5. 6.] [9. 9. 9.]], device=xpux:0) >>> F.nn.pad(inp, pad_width=((1, 1), (1, 2)), mode="reflect") Tensor([[5. 4. 5. 6. 5. 4.] [2. 1. 2. 3. 2. 1.] [5. 4. 5. 6. 5. 4.] [2. 1. 2. 3. 2. 1.]], device=xpux:0) >>> F.nn.pad(inp, pad_width=((1, 1), (1, 2)), mode="replicate") Tensor([[1. 1. 2. 3. 3. 3.] [1. 1. 2. 3. 3. 3.] [4. 4. 5. 6. 6. 6.] [4. 4. 5. 6. 6. 6.]], device=xpux:0)
- Return type