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 相关文章推荐
Python中的异常处理简明介绍
Apr 13 Python
一个基于flask的web应用诞生 记录用户账户登录状态(6)
Apr 11 Python
使用python实现BLAST
Feb 12 Python
python爬取淘宝商品详情页数据
Feb 23 Python
python实现通过flask和前端进行数据收发
Aug 22 Python
python实现截取屏幕保存文件,删除N天前截图的例子
Aug 27 Python
浅谈tensorflow中张量的提取值和赋值
Jan 19 Python
Python Tkinter Entry和Text的添加与使用详解
Mar 04 Python
使用Python将Exception异常错误堆栈信息写入日志文件
Apr 08 Python
在django admin中配置搜索域是一个外键时的处理方法
May 20 Python
用Python简陋模拟n阶魔方
Apr 17 Python
用Python爬取某乎手机APP数据
Jun 15 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
PHP 组件化编程技巧
2009/06/06 PHP
php中多维数组按指定value排序的实现代码
2014/08/19 PHP
PHP中strtr字符串替换用法详解
2014/11/26 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
jquery选择器之基本过滤选择器详解
2014/01/27 Javascript
Jquery 实现table样式的设定
2015/01/28 Javascript
cocos2dx骨骼动画Armature源码剖析(一)
2015/09/08 Javascript
Angularjs中如何使用filterFilter函数过滤
2016/02/06 Javascript
AngularJS基础 ng-submit 指令简单示例
2016/08/03 Javascript
vue多级多选菜单组件开发
2020/09/08 Javascript
angular2+nodejs实现图片上传功能
2017/03/27 NodeJs
详解AngularJs路由之Ui-router-resolve(预加载)
2017/06/13 Javascript
react native实现往服务器上传网络图片的实例
2017/08/07 Javascript
微信小程序实现展示评分结果功能
2019/02/15 Javascript
优雅地使用loading(推荐)
2019/04/20 Javascript
jquery 遍历hash操作示例【基于ajax交互】
2019/10/12 jQuery
javascript实现时间日期的格式化的方法汇总
2020/08/06 Javascript
Openlayers绘制聚合标注
2020/09/28 Javascript
python3新特性函数注释Function Annotations用法分析
2016/07/28 Python
python中使用print输出中文的方法
2018/07/16 Python
详解Python学习之安装pandas
2019/04/16 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
2019/06/12 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
2020/01/15 Python
keras中的History对象用法
2020/06/19 Python
Puritan’s Pride(普丽普莱)官方网站:美国最大最全的保健品公司之一
2016/10/23 全球购物
Volcom法国官网:美国冲浪滑板品牌
2017/05/25 全球购物
PHP中如何创建和修改数组
2012/05/02 面试题
市场营销专业个人自荐信格式
2013/09/21 职场文书
入党自我评价范文
2014/02/02 职场文书
三分钟英语演讲稿
2014/04/24 职场文书
有关九一八事变的演讲稿
2014/09/14 职场文书
2014年设计师工作总结
2014/11/25 职场文书
2015年公共机构节能宣传周活动总结
2015/03/26 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
2015年社区计生工作总结
2015/04/21 职场文书
员工保密协议范本,您一定得收藏!很有用!
2019/08/08 职场文书