PixelShuffle特征图的上采样的方法

PixelShuffle是一种上采样方法,可以对缩小后的特征图进行有效的放大。可以替代插值或解卷积的方法实现upscale

PixelShuffle

PixelShuffle(像素重组)的主要功能是将低分辨的特征图,通过卷积和多通道间的重组得到高分辨率的特征图。这一方法最初是为了解决图像超分辨率问题而提出的,这种称为Sub-Pixel Convolutional Neural Network的方法成为了上采样的有效手段。
在这里插入图片描述
要把一张低分辨输入转变为高分辨输出,论文ESPCN中提出用基于特征抽取和亚像素卷积的方法来扩大特征图,将特征图从低分辨空间转换到高分辨空间中去.上图中左侧第一部分是用于对图像的特征进行抽取。而后在倒数第二层生成 r 2 r^2 r2个通道特征图,这里r就是希望上采样的倍数。

pixelshuffle的主要功能就是将这 r 2 r^2 r2个通道的特征图组合为新的 w ∗ r , h ∗ r w*r,h*r wr,hr的上采样结果。具体来说,就是将原来一个低分辨的像素划分为rr各更小的格子,利用rr个特征图对应位置的值按照一定的规则来填充这些小格子。按照同样的规则将每个低分辨像素划分出的小格子填满就完成了重组过程。在这一过程中模型可以调整r*r个shuffle通道权重不断优化生成的结果。
主要实现了这样的功能:N*(C*r*r)*W*H---->>N*C*(H*r)*(W*r)

实现

在pytorch,mxnet和tensorflow都用相应的pixelshuffle实现。

pytorch 中主要使用nn.PixelShuffle函数:

    #官方文档的实例可以参考::

        >>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值