mindspore.nn.PixelUnshuffle
- class mindspore.nn.PixelUnshuffle(downscale_factor)[源代码]
在多个输入平面组成的输入上面应用PixelUnshuffle算法。关于PixelUnshuffle算法详细介绍,请参考 Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network 。
通常情况下,输入shape \((*, C, H \times r, W \times r)\) ,输出shape \((*, C \times r^2, H, W)\) 。r 是缩小因子。 * 是大于等于0的维度。
- 参数:
downscale_factor (int) - 减小空间分辨率的因子,是正整数。
- 输入:
x (Tensor) - Tensor,shape为 \((*, C, H \times r, W \times r)\) 。输入Tensor的维度需要大于2,并且倒数第一和倒数第二维length可以被 downscale_factor 整除。
- 输出:
output (Tensor) - Tensor,shape为 \((*, C \times r^2, H, W)\) 。
- 异常:
ValueError - downscale_factor 不是正整数。
ValueError - 输入 x 倒数第一和倒数第二维度的length不能被 downscale_factor 整除。
TypeError - 输入 x 维度小于3。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> pixel_unshuffle = nn.PixelUnshuffle(3) >>> input_x = np.arange(12 * 12).reshape((1, 1, 12, 12)) >>> input_x = mindspore.Tensor(input_x, mindspore.dtype.int32) >>> output = pixel_unshuffle(input_x) >>> print(output.shape) (1, 9, 4, 4)