当前位置:网站首页>【Pytorch】nn.PixelShuffle

【Pytorch】nn.PixelShuffle

2022-08-11 06:28:00 二进制人工智能

torch.nn.PixelShuffle(upscale_factor)

PixelShuffle是一种上采样方法,它将形状 ( ∗ , C × r 2 , H , W ) (∗, C\times r^2, H, W) (,C×r2,H,W)的张量重新排列转换为形状为 ( ∗ , C , H × r , W × r ) (∗, C, H\times r, W\times r) (,C,H×r,W×r)的张量:


图片来源:[1]

其中 r r rupscale_factor因子。

输入输出尺寸:

例子: ( 1 , 8 , 2 , 2 ) → ( 1 , 2 , 4 , 4 ) (1, 8, 2, 2)\rightarrow (1,2,4,4) (1,8,2,2)(1,2,4,4)

import torch
import torch.nn as nn

ps = nn.PixelShuffle(2)
input = torch.arange(0, 8 * 2 * 2).view(1, 8, 2, 2)
output = ps(input)

print('input:\n',input)
print('output:\n',output)


[1] Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network https://openaccess.thecvf.com/content_cvpr_2016/papers/Shi_Real-Time_Single_Image_CVPR_2016_paper.pdf

原网站

版权声明
本文为[二进制人工智能]所创,转载请带上原文链接,感谢
https://binaryai.blog.csdn.net/article/details/126267016