pixel_unshuffle¶
- paddle.nn.functional. pixel_unshuffle ( x, downscale_factor, data_format='NCHW', name=None ) [源代码] ¶
将一个形为 [N,C,H,W] 或 [N,H,W,C] 的 Tensor 重新排列成形为 [N,r2C,H/r,W/r] 或 [N,H/r,W/r,r2C] 的 Tensor,这里 r 是减小空间分辨率的减小因子。这个算子是 pixel_shuffle 算子(请参考:pixel_shuffle)的逆算子。详见施闻哲等人在 2016 年发表的论文 Real Time Single Image and Video Super Resolution Using an Efficient Sub Pixel Convolutional Neural Network 。
注解
详细请参考对应的 Class 请参考:PixelUnshuffle 。
参数¶
x (Tensor) – 当前算子的输入,其是一个形状为 [N,C,H,W] 或 [N,H,W,C] 的 4-D Tensor。其中 N 是批大小,C 是通道数,H 是输入特征的高度,W 是输入特征的宽度。其数据类型为 float32 或 float64。
downscale_factor (int) – 减小空间分辨率的减小因子。
data_format (str,可选) – 数据格式,可选 NCHW 或 NHWC,默认为 NCHW,即(批大小,通道数,高度,宽度)的格式。
name (str,可选) - 具体用法请参见 Name,一般无需设置,默认值为 None。
返回¶
Tensor
,重新排列过的 Tensor,其数据类型与输入相同。
代码示例¶
>>> import paddle
>>> import paddle.nn.functional as F
>>> x = paddle.randn([2, 1, 12, 12])
>>> out = F.pixel_unshuffle(x, 3)
>>> print(out.shape)
[2, 9, 4, 4]