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定时杀进程
Jun 06 Python
Python实现对百度云的文件上传(实例讲解)
Oct 21 Python
Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例
Jun 09 Python
Python解析、提取url关键字的实例详解
Dec 17 Python
python读取xlsx的方法
Dec 25 Python
python爬虫之验证码篇3-滑动验证码识别技术
Apr 11 Python
python单向循环链表原理与实现方法示例
Dec 03 Python
pytorch方法测试详解——归一化(BatchNorm2d)
Jan 15 Python
Python动态强类型解释型语言原理解析
Mar 25 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
May 15 Python
一文读懂Python 枚举
Aug 25 Python
python 爬取京东指定商品评论并进行情感分析
May 27 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 smarty模版引擎中变量操作符及使用方法
2009/12/11 PHP
PHP 第二节 数据类型之数值型
2012/04/28 PHP
PHP $_FILES中error返回值详解
2014/01/30 PHP
浅析PHP中Session可能会引起并发问题
2015/07/23 PHP
Symfony2学习笔记之模板用法详解
2016/03/17 PHP
PHP strip_tags保留多个HTML标签的方法
2016/05/22 PHP
Laravel框架基于ajax实现二级联动功能示例
2019/01/17 PHP
永不消失的title提示代码
2007/02/15 Javascript
Code: write(s,d) 输出连续字符串
2007/08/19 Javascript
Javascript 获取链接(url)参数的方法
2009/02/15 Javascript
JQuery 写的个性导航菜单
2009/12/24 Javascript
Jquery 高亮显示文本中重要的关键字
2009/12/24 Javascript
Notify - 基于jquery的消息通知插件
2011/10/18 Javascript
ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList
2012/02/03 Javascript
js判断背景图片是否加载成功使用img的width实现
2013/05/29 Javascript
JS对象转换为Jquery对象实现代码
2013/12/29 Javascript
DOM基础教程之使用DOM设置文本框
2015/01/20 Javascript
几种经典排序算法的JS实现方法
2016/03/25 Javascript
浅析BootStrap模态框的使用(经典)
2016/04/29 Javascript
JavaScript读二进制文件并用ajax传输二进制流的方法
2016/07/18 Javascript
JavaScript学习笔记整理_关于表达式和语句
2016/09/19 Javascript
node打造微信个人号机器人的方法示例
2018/04/26 Javascript
简单明了区分escape、encodeURI和encodeURIComponent
2018/05/26 Javascript
webstrom Debug 调试vue项目的方法步骤
2018/07/17 Javascript
详解VS Code使用之Vue工程配置format代码格式化
2019/03/20 Javascript
[42:34]VP vs VG 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
更改Python命令行交互提示符的方法
2015/01/14 Python
Python连接Redis的基本配置方法
2018/09/13 Python
python 计算数据偏差和峰度的方法
2019/06/29 Python
Myprotein亚太地区:欧洲第一在线运动营养品牌
2020/12/20 全球购物
双立人美国官方商店:ZWILLING集团餐具和炊具
2020/05/07 全球购物
实习求职信
2013/12/01 职场文书
读书月活动方案
2014/05/22 职场文书
销售人员管理制度
2015/08/06 职场文书
python学习之panda数据分析核心支持库
2021/05/07 Python
Python爬虫基础之简单说一下scrapy的框架结构
2021/06/26 Python