上采样操作及PixelShuffle

2023-05-16

1、是什么?

论文((ESPCN)Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network, CVPR2016)

亚像素卷积层包含两个过程:

  • 一个普通的卷积层:得到通道数为 c^2 的与输入图像大小一样的特征图

  • 像素重排操作,操作图解如下:

该重排操作的代码如下:

#torch version
def shuffle_up(input, scale):
    N, C, iH, iW = input.size()
    oH = iH * scale
    oW = iW * scale
    out = input.view(N, -1, scale, scale, iH, iW)
    out = out.permute(0,1,4,3,5,2).contiguous()
    out = out.view(N, -1, oH, oW)
    return out
#numpy vesion
def shuff_up2(input, scale):
    N, C, iH, iW = input.size()
    oH = iH * scale
    oW = iW * scale
    out = input.reshape((N, -1, scale, scale, iH, iW))
    out = out.transpose((0,1,4,3,5,2))
    out = out.reshape((N, -1, oH, oW))
    return out

2、为什么?

Sub-pixel convolution的上采样操作可通过两步实现:

  • 对输入图像插0

  • 对插0后的图像进行正常卷积

详情参考:https://blog.csdn.net/huachao1001/article/details/79131814

而该方式也等价于:

  • 先卷积

  • 再进行周期性的像素选择

详情参考:https://blog.csdn.net/g11d111/article/details/82855946

3、扩展

可发现,对于待预测 SR 图像上的每个像素点(i, j),是由LR图像上的对应点与相应卷积滤波器相乘得到,那么为了实现任意尺寸的上采样,可动态学习不同数量的滤波器。论文详情见: Meta-SR: AMagnification-Arbitrary Network for Super-Resolution

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

上采样操作及PixelShuffle 的相关文章

  • 找出数组中没有出现的最小正整数

    题目描述 xff1a 给定一个无序整型数组arr 找到数组中未出现的最小整数 例子 arr 61 1 2 3 4 return 1 arr 61 1 2 3 4 return 5 时间复杂度O n 空间复杂度O 1 解题思路 xff1a x
  • 公有云弹性IP的实现原理及优势

    原文链接 xff1a http news west cn 26218 html 在利用公有云服务部署我们的应用时 xff0c 为了访问到我们的服务器 xff0c 我们需要为我们的服务部署公网IP 公有云服务商除了可以为服务器提供固定的公网I
  • vim 怎么取消高亮 或取消选中状态

    原文链接 xff1a https blog csdn net weixin 40539892 article details 78946659 神操作 在vim中编写代码 xff0c 常常会遇到多行注释和取消注释的情况 xff0c 在VS中
  • 工单关联销售订单

    CREATE OR REPLACE TRIGGER CUX WIP DISCRETE JOBS BEFORE INSERT ON INV MTL RESERVATIONS FOR EACH ROW when NEW SUPPLY SOURC
  • P2P(Peer to Peer)对等网络

    P2P xff08 Peer to Peer xff09 对等网络 P2P技术属于覆盖层网络 Overlay Network 的范畴 xff0c 是相对于客户机 服务器 C S 模式来说的一种网络信息交换方式 在C S模式中 xff0c 数
  • JAVA四大域对象总结

    JAVA四大域对象总结 根据有作用范围由小到大 xff1a page 当前jsp页面 page域指的是pageContext request 一次请求 request域request HttpServletContext session 一
  • Java中如何判断两个对象是否相等

    如何判断两个对象相等 xff0c 这个问题实际上可以看做是如何对equals方法和hashcode方法的理解 从以下几个点来理解equals和hashCode方法 xff1a 1 equals的作用及与 61 61 的区别 2 hashco
  • nginx中的日志管理

    我们观察nginx的server段 可以看到如下类似信息 access log logs host access log main 这说明 该server 它的访问日志的文件是 logs host access log 使用的格式 main
  • 用SQL来校验证件号码是否合法

    正确时返回证件号 xff0c 错误时返回错误原因 select t centno xingming ZJHM FUNC AAC002 15 18 ZJHM from TABLEt where ZJHM lt gt FUNC AAC002 1
  • 微信聊天记录做成词云~

    最近快毕业了 xff0c 所以想把微信聊天记录全部导出 做成词云 然后寄给好友 xff0c 想想都很浪漫 xff0c 哈哈 先上词云结果图 xff08 结果图拿 三国演义 做的 xff0c 想啥呢 xff0c 我才不会把我的聊天记录发到网上
  • iOS collectionView添加头部底部view

    定义一个collectionview 创建colloectionview private func createCollectionView let layout 61 UICollectionViewFlowLayout layout s
  • UIBezierPath详解

    使用UIBezierPath类可以创建基于矢量的路径 xff0c 这个类在UIKit中 此类是Core Graphics框架关于path的一个封装 使用此类可以定义简单的形状 xff0c 如椭圆或者矩形 xff0c 或者有多个直线和曲线段组
  • 树莓派vnc连接

    网上大多数的树莓派连接都是采用tightvncserver xff0c 事实上刷入最新版的树莓派系统已经自带vnc 了 xff0c 不需要用那个tightvncserver了 xff0c 因为它用起来太不方便安装后还要设置自启动等等 xff
  • VSCode 编写C#代码有提示,但是没有报错

    使用VSCode去编写C 的时候 xff0c 突然遇到一个问题 xff1a 按道理这里的Demoalkdfljadflk是一个未定义的类 xff0c 应该会给红色的波浪线提示 xff0c 到这里没有 xff0c 同时代码不能跟踪进入到源码
  • Pending transaction

    In this Document Purpose Last Review Date Instructions for the Reader Troubleshooting Details 1 Pending WIP Material Tra
  • nginx配置不生效

    1 先确认是否存在多个nginx配置文件以及配置是否正确 nginx span class token operator span t 可以看到我这里反馈出 etc nginx nginx conf的配置文件配置正常 如果你这里出现的配置文
  • debian10中文乱码的问题

    首先输入locale xff0c 查看本机语言包 xff0c 发现没有中文的 输入 dpkg reconfigure locales 在末尾选择按空格键选中图中四个 xff0c 按enter确认 xff0c 最后终端选中中文utf 8的即可
  • 利用HBuilder打包前端开发webapp为apk

    现在的前端开发可谓是 xff0c 百花齐放啦 xff0c 什么都可以做 xff0c 只有想不到没有做不到的 xff0c 今天就简单的介绍用vue xff0c ng或者是react开发的单页应用如何打包为apk xff0c 在移动设备上运行
  • 回调函数基本介绍和基本使用场景

    1 回调函数基本定义 什么是函数指针 通俗来说 xff0c 函数指针是一个指向特定函数的指针 函数的类型由其参数及返回类型共同决定 xff0c 与函数具体名称无关 示例代码如下 xff1a int testFun1 int param1 l

随机推荐