pytorch进行上采样的种类实例


Posted in Python onFebruary 18, 2020

1、其中再语义分割比较常用的上采样:

其实现方法为:

def upconv2x2(in_channels, out_channels, mode='transpose'):
 if mode == 'transpose':
  # 这个上采用需要设置其输入通道,输出通道.其中kernel_size、stride
  # 大小要跟对应下采样设置的值一样大小。这样才可恢复到相同的wh。这里时反卷积操作。
  return nn.ConvTranspose2d(
   in_channels,
   out_channels,
   kernel_size=2,
   stride=2)
 else:
  # out_channels is always going to be the same
  # as in_channels
  # 这里不会改变通道数,其中scale_factor是上采用的放大因子,其是相对于当前的
  # 输入大小的倍数
  return nn.Sequential(
   nn.Upsample(mode='bilinear', scale_factor=2, align_corners=True))
  # 这里的代码是在这里设置多一个卷积,这样子就起到了可以修改其输出通道的功能了。
  # 相当于功能跟ConvTranspose2d()差不多,只是上采样的方法不同
  conv1x1((in_channels, out_channels))
 
 
def conv1x1(in_channels, out_channels, groups=1):
 return nn.Sequential(nn.Conv2d(
  in_channels,
  out_channels,
  kernel_size=1,
  groups=groups,
  stride=1),
 nn.BatchNorm2d(out_channels))

另一种上采样的方法是,参考代码:segnet_pytorch:

# Stage 5
  x51 = F.relu(self.bn51(self.conv51(x4p)))
  x52 = F.relu(self.bn52(self.conv52(x51)))
  x53 = F.relu(self.bn53(self.conv53(x52)))
  #这个id5记录的是池化操作时最大值的index,其要设置参数return_indices为True
  x5p, id5 = F.max_pool2d(x53,kernel_size=2, stride=2,return_indices=True)
 
 
  # Stage 5d
  #这个是进行最大值上采样的函数,其是根据id5来把值放到什么位置,其它位置没有值的地方
  补0
  x5d = F.max_unpool2d(x5p, id5, kernel_size=2, stride=2)
  x53d = F.relu(self.bn53d(self.conv53d(x5d)))
  x52d = F.relu(self.bn52d(self.conv52d(x53d)))
  x51d = F.relu(self.bn51d(self.conv51d(x52d)))

测试例子:

#测试上采样
m=nn.MaxPool2d((3,3),stride=(1,1),return_indices=True)
upm=nn.MaxUnpool2d((3,3),stride=(1,1))
data4=torch.randn(1,1,3,3)
output5,indices=m(data4)
output6=upm(output5,indices)
 
print('\ndata4:',data4,
  '\nmaxPool2d',output5,
  '\nindices:',indices,
  '\noutput6:',output6)

其输出为:

data4: tensor([[[[ 2.3151, -1.0391, 0.1074],
   [ 1.9360, 0.2524, 2.3735],
   [-0.1151, 0.4684, -1.8800]]]]) 
maxPool2d tensor([[[[2.3735]]]]) 
indices: tensor([[[[5]]]]) 
output6: tensor([[[[0.0000, 0.0000, 0.0000],
   [0.0000, 0.0000, 2.3735],
   [0.0000, 0.0000, 0.0000]]]])

以上这篇pytorch进行上采样的种类实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Pyrex来扩展和加速Python程序的教程
Apr 13 Python
Python函数中的函数(闭包)用法实例
Mar 15 Python
Numpy截取指定范围内的数据方法
Nov 14 Python
Django实现学员管理系统
Feb 26 Python
在Python中表示一个对象的方法
Jun 25 Python
Windows平台Python编程必会模块之pywin32介绍
Oct 01 Python
PyTorch中 tensor.detach() 和 tensor.data 的区别详解
Jan 06 Python
python数据类型可变不可变知识点总结
Mar 06 Python
python实现交并比IOU教程
Apr 16 Python
对python中list的五种查找方法说明
Jul 13 Python
利用Python优雅的登录校园网
Oct 21 Python
Python爬虫框架之Scrapy中Spider的用法
Jun 28 Python
new_zeros() pytorch版本的转换方式
Feb 18 #Python
对pytorch的函数中的group参数的作用介绍
Feb 18 #Python
基于python3实现倒叙字符串
Feb 18 #Python
Python日期格式和字符串格式相互转换的方法
Feb 18 #Python
Python数组并集交集补集代码实例
Feb 18 #Python
通过python检测字符串的字母
Feb 18 #Python
Python安装whl文件过程图解
Feb 18 #Python
You might like
支持oicq头像的留言簿(二)
2006/10/09 PHP
将OICQ数据转成MYSQL数据
2006/10/09 PHP
dede全站URL静态化改造[070414更正]
2007/04/17 PHP
Zend Framework中的简单工厂模式 图文
2012/07/10 PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
提交表单后 PHP获取提交内容的实现方法
2016/05/25 PHP
浅谈PHP的反射机制
2016/12/15 PHP
js apply/call/caller/callee/bind使用方法与区别分析
2009/10/28 Javascript
JS date对象的减法处理实现代码
2010/12/28 Javascript
js split 的用法和定义 js split分割字符串成数组的实例代码
2012/05/13 Javascript
jquery实现隐藏与显示动画效果/输入框字符动态递减/导航按钮切换
2013/07/01 Javascript
解析使用JS 清空File控件的路径值
2013/07/08 Javascript
jquery单行文字向上滚动效果示例
2014/03/06 Javascript
jQuery中阻止冒泡事件的方法介绍
2014/04/12 Javascript
超赞的动手创建JavaScript框架的详细教程
2015/06/30 Javascript
jquery实现用户信息修改验证输入方法汇总
2015/07/18 Javascript
jquery实现倒计时功能
2015/12/28 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
JS与HTML结合实现流程进度展示条思路详解
2017/09/03 Javascript
js getBoundingClientRect使用方法详解
2019/07/17 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
python使用在线API查询IP对应的地理位置信息实例
2014/06/01 Python
Python图像处理之直线和曲线的拟合与绘制【curve_fit()应用】
2018/12/26 Python
Python从list类型、range()序列简单认识类(class)【可迭代】
2019/05/31 Python
Python发展史及网络爬虫
2019/06/19 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
Django 删除upload_to文件的步骤
2020/03/30 Python
python 实用工具状态机transitions
2020/11/21 Python
BCBG官网:BCBGMAXAZRIA
2017/12/29 全球购物
Lookfantastic香港官网:英国知名美妆购物网站
2018/06/19 全球购物
夜大毕业生自我鉴定
2013/10/31 职场文书
大学生学业生涯规划
2014/01/05 职场文书
会计岗位说明书
2014/07/29 职场文书
交通工程专业推荐信
2014/09/06 职场文书
杜甫草堂导游词
2015/02/03 职场文书
使用CSS自定义属性实现骨架屏效果
2022/06/21 HTML / CSS