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获取CPU、内存和硬盘等windowns系统信息的2个例子
Apr 15 Python
自动化Nginx服务器的反向代理的配置方法
Jun 28 Python
Python的SimpleHTTPServer模块用处及使用方法简介
Jan 22 Python
Python OpenCV 直方图的计算与显示的方法示例
Feb 08 Python
TensorFlow平台下Python实现神经网络
Mar 10 Python
解决csv.writer写入文件有多余的空行问题
Jul 06 Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
Jul 12 Python
Python用5行代码写一个自定义简单二维码
Oct 21 Python
浅析Python 引号、注释、字符串
Jul 25 Python
python进程池实现的多进程文件夹copy器完整示例
Nov 27 Python
python opencv如何实现图片绘制
Jan 19 Python
python实现b站直播自动发送弹幕功能
Feb 20 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
全国FM电台频率大全 - 29 青海省
2020/03/11 无线电
无数据库的详细域名查询程序PHP版(3)
2006/10/09 PHP
ThinkPHP采用GET方式获取中文参数查询无结果的解决方法
2014/06/26 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
同一个表单 根据要求递交到不同页面的实现方法小结
2009/08/05 Javascript
JS 文件本身编码转换 图文教程
2009/10/12 Javascript
javascript 窗口加载蒙板 内嵌网页内容
2010/11/19 Javascript
JavaScript中判断函数是new还是()调用的区别说明
2011/04/07 Javascript
js检测判断日期大于多少天的方法
2015/05/04 Javascript
jquery表单对象属性过滤选择器实例分析
2015/05/18 Javascript
JavaScript中的Promise使用详解
2015/06/24 Javascript
jQuery处理XML文件的几种方法
2016/06/14 Javascript
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
2016/08/19 Javascript
深入理解jquery中的each用法
2016/12/14 Javascript
JavaScript检查数据中是否存在相同的元素(两种方法)
2018/10/07 Javascript
微信小程序实现自动定位功能
2018/10/31 Javascript
微信小程序外卖选购页实现切换分类与数量加减功能案例
2019/01/15 Javascript
js贪心算法 钱币找零问题代码实例
2019/09/11 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
vue实现图片裁剪后上传
2020/12/16 Vue.js
js实现简单图片拖拽效果
2021/02/22 Javascript
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
代码总结Python2 和 Python3 字符串的区别
2020/01/28 Python
Python要求O(n)复杂度求无序列表中第K的大元素实例
2020/04/02 Python
Tensorflow中的降维函数tf.reduce_*使用总结
2020/04/20 Python
vscode+PyQt5安装详解步骤
2020/08/12 Python
俄罗斯韩国化妆品网上商店:Cosmasi.ru
2019/10/31 全球购物
数控专业推荐信范文
2013/12/02 职场文书
师范教师专业大学生职业生涯规划范文
2014/03/02 职场文书
庆六一文艺汇演活动方案
2014/08/26 职场文书
2014党员学习习主席讲话思想汇报
2014/09/15 职场文书
党员民主生活会对照检查材料思想汇报
2014/09/28 职场文书
志愿者服务活动总结报告
2015/05/06 职场文书
反腐倡廉影片观后感
2015/06/08 职场文书
2016暑期社会实践新闻稿
2015/11/25 职场文书
详解Go与PHP的语法对比
2021/05/29 PHP