pytorch 数据集图片显示方法


Posted in Python onJuly 26, 2018

图片显示

pytorch 载入的数据集是元组tuple 形式,里面包括了数据及标签(train_data,label),其中的train_data数据可以转换为torch.Tensor形式,方便后面计算使用。

同样给一些刚入门的同学在使用载入的数据显示图片的时候带来一些难以理解的地方,这里主要是将Tensor与numpy转换的过程,理解了这些就可以就行转换了

CIAFA10数据集

首先载入数据集,这里做了一些数据处理,包括图片尺寸、数据归一化等

import torch
from torch.autograd import Variable 
import matplotlib.pyplot as plt 
import torchvision.datasets as dset
import torchvision.transforms as transforms
from autoencoder import AutoEncoder
import torch.nn as nn
import torchvision
import numpy as np
dataset = dset.CIFAR10(root='../train/data', download=True, 
    transform=transforms.Compose([
    transforms.Scale(200),
    transforms.ToTensor(),
    transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)),
    transforms.Gray()
    ]))

在这里 dataset 是一个CIFAR10对象,(大家可以查看一下他的源代码)

方式一

dataset[1] = ([torch.FloatTensor of size 1x200x200],9)

载入的第二个数据是个tensor格式,包含一个标签 9

这里我们做的就是将torch.FloatTensor 转换为numpy,然后显示

b = dataset[1][0].numpy()
#取数据,不取标签

因为这里的b仍然是1*200*200的大小,所以要重新reshape一下,适合输出图像

plt.imshow(b.reshape(200,200),cmap = 'gray')
plt.show()

然后可以显示图像了

方式二

利用torch的接口

img = torchvision.utils.make_grid(dataset[1][0]).numpy()
plt.imshow(np.transpose(img,(1,2,0)))
plt.show()

这用np.transpose 是因为plt.imshow在显示 时候输入的是(imgsize,imgsieze,channels),而这里得到的img是(3,200,200)的格式,所以进行了转换,才能显示

以上这篇pytorch 数据集图片显示方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python批量重命名同一文件夹下文件的方法
May 25 Python
Python实现简单的文件传输与MySQL备份的脚本分享
Jan 03 Python
浅析Git版本控制器使用
Dec 10 Python
pycharm 配置远程解释器的方法
Oct 28 Python
JupyterNotebook设置Python环境的方法步骤
Dec 03 Python
Python监控服务器实用工具psutil使用解析
Dec 19 Python
Python Selenium安装及环境配置的实现
Mar 17 Python
Python sorted排序方法如何实现
Mar 31 Python
keras 使用Lambda 快速新建层 添加多个参数操作
Jun 10 Python
解决keras GAN训练是loss不发生变化,accuracy一直为0.5的问题
Jul 02 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
Oct 10 Python
在Windows下安装配置CPU版的PyTorch的方法
Apr 02 Python
mac安装pytorch及系统的numpy更新方法
Jul 26 #Python
浅谈pytorch和Numpy的区别以及相互转换方法
Jul 26 #Python
pytorch: tensor类型的构建与相互转换实例
Jul 26 #Python
pytorch中tensor的合并与截取方法
Jul 26 #Python
Python爬虫框架Scrapy常用命令总结
Jul 26 #Python
Python退火算法在高次方程的应用
Jul 26 #Python
Python爬虫框架Scrapy基本用法入门教程
Jul 26 #Python
You might like
PHP 数组排序方法总结 推荐收藏
2010/06/30 PHP
php中最简单的字符串匹配算法
2014/12/16 PHP
PHP设计模式之工厂模式实例总结
2017/09/01 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
2017/11/17 PHP
js识别不同浏览器基于userAgent做判断
2014/07/29 Javascript
举例讲解JavaScript中关于对象操作的相关知识
2015/11/16 Javascript
浅谈jQuery中ajaxPrefilter的应用
2016/08/01 Javascript
vue+node+webpack环境搭建教程
2017/11/05 Javascript
微信小程序实现蒙版弹窗效果
2018/11/01 Javascript
vscode中eslint插件的配置(prettier配置无效)
2019/09/10 Javascript
vue中英文切换实例代码
2020/01/21 Javascript
利用Vue的v-for和v-bind实现列表颜色切换
2020/07/17 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
python链接Oracle数据库的方法
2015/06/28 Python
python实现微信发送邮件关闭电脑功能
2018/02/22 Python
Python 给屏幕打印信息加上颜色的实现方法
2019/04/24 Python
python射线法判断一个点在图形区域内外
2019/06/28 Python
python opencv对图像进行旋转且不裁剪图片的实现方法
2019/07/09 Python
python 中值滤波,椒盐去噪,图片增强实例
2019/12/18 Python
Python 面向对象之类class和对象基本用法示例
2020/02/02 Python
Python异常原理及异常捕捉实现过程解析
2020/03/25 Python
Python验证码截取识别代码实例
2020/05/16 Python
一款纯css3实现的鼠标悬停动画按钮
2014/12/29 HTML / CSS
澳大利亚儿童鞋在线:The Trybe
2019/07/16 全球购物
如何将整数int转换成字串String
2014/03/21 面试题
Linux Interview Questions For software testers
2012/06/02 面试题
毕业生求职简历中的自我评价
2013/10/18 职场文书
技术人员面试提纲
2013/11/28 职场文书
八一建军节部队活动方案
2014/02/04 职场文书
团队经理竞聘书
2014/03/31 职场文书
学校节能减排倡议书
2014/05/16 职场文书
实习科室评语
2015/01/04 职场文书
英文慰问信
2015/02/14 职场文书
教师网络培训心得体会
2016/01/09 职场文书
数学复习课教学反思
2016/02/18 职场文书
Moment的feature导致线上bug解决分析
2022/09/23 Javascript