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代码真的很爽
Aug 26 Python
python根据出生日期获得年龄的方法
Mar 31 Python
Python向日志输出中添加上下文信息
May 24 Python
TensorFLow用Saver保存和恢复变量
Mar 10 Python
Python 将Matrix、Dict保存到文件的方法
Oct 30 Python
Python3爬虫学习之爬虫利器Beautiful Soup用法分析
Dec 12 Python
python使用PIL实现多张图片垂直合并
Jan 15 Python
Python中的几种矩阵乘法(小结)
Jul 10 Python
pip install python 快速安装模块的教程图解
Oct 08 Python
Python实现快速排序的方法详解
Oct 25 Python
Python文件路径名的操作方法
Oct 30 Python
Python 使用dict实现switch的操作
Apr 07 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表单转换textarea换行符的方法
2010/09/10 PHP
解析PHP获取当前网址及域名的实现代码
2013/06/23 PHP
apache中为php 设置虚拟目录
2014/12/17 PHP
详解Laravel设置多态关系模型别名的方式
2019/10/17 PHP
学习YUI.Ext 第七天--关于View&JSONView
2007/03/10 Javascript
JS 操作符整理[推荐收藏]
2011/11/15 Javascript
定义JavaScript二维数组采用定义数组的数组来实现
2012/12/09 Javascript
jquery.post用法关于type设置问题补充
2014/01/03 Javascript
基于javascript实现判断移动终端浏览器版本信息
2014/12/09 Javascript
jquery实现的伪分页效果代码
2015/10/29 Javascript
JavaScript为事件句柄绑定监听函数实例详解
2015/12/15 Javascript
WordPress中利用AJAX技术进行评论提交的实现示例
2016/01/12 Javascript
基于javascript实现九宫格大转盘效果
2020/05/28 Javascript
vue-cli中打包图片路径错误的解决方法
2017/10/26 Javascript
JS div匀速移动动画与变速移动动画代码实例
2019/03/26 Javascript
微信小程序授权登陆及每次检查是否授权实例代码
2019/09/18 Javascript
解决vue项目获取dom元素宽高总是不准确问题
2020/07/29 Javascript
浅谈python类属性的访问、设置和删除方法
2016/07/25 Python
浅谈Python处理PDF的方法
2017/11/10 Python
同时安装Python2 & Python3 cmd下版本自由选择的方法
2017/12/09 Python
11个Python Pandas小技巧让你的工作更高效(附代码实例)
2019/04/30 Python
使用Rasterio读取栅格数据的实例讲解
2019/11/26 Python
pytorch中的transforms模块实例详解
2019/12/31 Python
HTML5+CSS3应用详解
2014/02/24 HTML / CSS
Swisse官方海外旗舰店:澳大利亚销量领先,自然健康品牌
2017/12/15 全球购物
美国首屈一指的高品质珠宝设计师和零售商:Allurez
2018/01/23 全球购物
《中国的气候》教学反思
2014/02/23 职场文书
企业领导对照检查材料
2014/08/20 职场文书
黄石寨导游词
2015/02/05 职场文书
教师工作表现自我评价
2015/03/05 职场文书
2015年民主评议党员工作总结
2015/05/19 职场文书
毕业生政审意见范文
2015/06/04 职场文书
新闻发布会新闻稿
2015/07/17 职场文书
Oracle笔记
2021/04/05 Oracle
mysql数据库入门第一步之创建表
2021/05/14 MySQL
MySQL中日期型单行函数代码详解
2021/06/21 MySQL