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实现查询苹果手机维修进度
Mar 16 Python
Python中str is not callable问题详解及解决办法
Feb 10 Python
Pandas探索之高性能函数eval和query解析
Oct 28 Python
Python理解递归的方法总结
Jan 28 Python
Python将列表数据写入文件(txt, csv,excel)
Apr 03 Python
torch 中各种图像格式转换的实现方法
Dec 26 Python
python的Jenkins接口调用方式
May 12 Python
Python DES加密实现原理及实例解析
Jul 17 Python
解决pytorch-gpu 安装失败的记录
May 24 Python
Pytorch中的数据集划分&正则化方法
May 27 Python
python 算法题——快乐数的多种解法
May 27 Python
python lambda 表达式形式分析
Apr 03 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基于Redis消息队列实现的消息推送的方法
2018/11/28 PHP
php实现的顺序线性表示例
2019/05/04 PHP
PHP7创建COOKIE和销毁COOKIE的实例方法
2020/02/03 PHP
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
2007/04/21 Javascript
基于jQuery的表格操作插件
2010/04/22 Javascript
基于jQuery的输入框无值自动显示指定数据的实现代码
2011/01/24 Javascript
基于JQuery的浮动DIV显示提示信息并自动隐藏
2011/02/11 Javascript
快速排序 php与javascript的不同之处
2011/02/22 Javascript
javascript截取字符串(通过substring实现并支持中英文混合)
2013/06/24 Javascript
从jquery的过滤器.filter()方法想到的
2013/09/29 Javascript
浅谈angularJS 作用域
2015/07/05 Javascript
JavaScript子窗口调用父窗口变量和函数的方法
2015/10/09 Javascript
如何清除IE10+ input X 文本框的叉叉和密码输入框的眼睛图标
2016/12/21 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
bootstrap导航栏、下拉菜单、表单的简单应用实例解析
2017/01/06 Javascript
ES6 Promise对象概念与用法分析
2017/04/01 Javascript
vue中for循环更改数据的实例代码(数据变化但页面数据未变)
2017/09/15 Javascript
浅谈redux, koa, express 中间件实现对比解析
2019/05/23 Javascript
使用flow来规范javascript的变量类型
2019/09/12 Javascript
JavaScript实现省市区三级联动
2020/02/13 Javascript
JavaScript原生数组函数实例汇总
2020/10/14 Javascript
快速入手Python字符编码
2016/08/03 Python
flask + pymysql操作Mysql数据库的实例
2017/11/13 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
Python3生成手写体数字方法
2018/01/30 Python
Python+PyQt5实现美剧爬虫可视工具的方法
2019/04/25 Python
Python高级特性之闭包与装饰器实例详解
2019/11/19 Python
Python如何执行系统命令
2020/09/23 Python
大学教师年终总结的自我评价
2013/10/29 职场文书
财务总经理岗位职责
2014/02/16 职场文书
教师求职自荐信
2014/03/09 职场文书
企业党建工作汇报材料
2014/08/19 职场文书
基层党组织建设整改方案
2014/09/16 职场文书
2014医学院领导干部四风对照检查材料思想汇报
2014/09/16 职场文书
幼儿园感恩节活动总结
2015/03/24 职场文书
vue动态绑定style样式
2022/04/20 Vue.js