mindspore.mint.nn.functional.pixel_shuffle

查看源文件
mindspore.mint.nn.functional.pixel_shuffle(input, upscale_factor)[源代码]

根据上采样系数重排Tensor中的元素。

将shape为 (,C×r2,H,W) 的Tensor重排shape为 (,C,H×r,W×r) 的Tensor,其中r是放大因子。

这是步长为 1/r 的子像素卷积。

关于pixel_shuffle算法详细介绍,请参考 Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network

警告

这是一个实验性API,后续可能修改或删除。

参数:
  • input (Tensor) - Tensor,shape为 (,C×r2,H,W)input 的维度需要大于2,并且倒数第三维length可以被 upscale_factor 的平方整除。

  • upscale_factor (int) - 打乱输入Tensor的因子,是正整数。 upscale_factor 是上面提到的 r

返回:
  • output (Tensor) - Tensor,shape为 (,C,H×r,W×r)

异常:
  • ValueError - upscale_factor 不是正整数。

  • ValueError - input 倒数第三维度的length不能被 upscale_factor 的平方整除。

  • ValueError - input 维度小于3。

支持平台:

Ascend

样例:

>>> from mindspore import mint
>>> input = mint.randn(1, 9, 4, 4)
>>> output = mint.nn.functional.pixel_shuffle(input, 3)
>>> print(output.shape)
    (1, 1, 12, 12)