camvid数据集使用方法_使用PyTorch处理CIFAR10数据集并显示

在训练图像分类的时候,我们通常会使用CIFAR10数据集,今天就先写一下如何展示数据集的图片及预处理。

第一部分代码,展示原始图像:

import numpy as npimport torch#导入内置cifarfrom torchvision.datasets import cifar#预处理模块import torchvision.transforms as transformsfrom torch.utils.data import DataLoaderimport matplotlib.pyplot as pltclasses = ('plane', 'car', 'bird', 'cat','deer', 'dog', 'frog', 'horse', 'ship', 'truck')#Compose将一些转换函数组合在一起#ToTensor,原始数据是numpy,现在改成Tensor。会将数据从[0,255]归一化到[0,1] 除以255transforms=transforms.Compose([transforms.ToTensor()])trainData=cifar.CIFAR10('./picdata',train=True,transform=transforms,download=True)testData=cifar.CIFAR10('./picdata',train=False,transform=transforms)x=0for images, labels in trainData:    plt.subplot(3,3,x+1)    plt.tight_layout()    images = images.numpy().transpose(1, 2, 0)  # 把channel那一维放到最后    plt.title(str(classes[labels]))    plt.imshow(images)    plt.xticks([])    plt.yticks([])    x+=1    if x==9:        breakplt.show()

图片展示如下:

035e8171062845c0ac1b5708d48ce580.png

第二部分代码,灰度化图片:

import numpy as npimport torch#导入内置cifarfrom torchvision.datasets import cifar#预处理模块import torchvision.transforms as transformsfrom torch.utils.data import DataLoaderimport matplotlib.pyplot as pltclasses = ('plane', 'car', 'bird', 'cat','deer', 'dog', 'frog', 'horse', 'ship', 'truck')#Compose将一些转换函数组合在一起#ToTensor,原始数据是numpy,现在改成Tensor。会将数据从[0,255]归一化到[0,1] 除以255#Normalize则是将数据按照通道进行标准化,(输入[通道]-均值[通道])/标准差[通道],将数据归一化到[-1,1]#如果数据在[0,1]之间,则实际的偏移量bias会很大。而一般模型初始化的时候,bias=0,这样收敛的就会慢。经过Normalize后加快收敛速度#后面两个0.5就是制定mean和std,原来[0,1]变成:(0-0.5)/0.5=-1,(1-0.5)/0.5=1。本例是要灰度化,就一个通道,如果是三通道RGB,则应该为[0.5,0.5,0.5]  ,transforms.Normalize([0.5,0.5,0.5],[0.5,0.5,0.5])transforms=transforms.Compose([transforms.ToTensor(),transforms.Normalize([0.5],[0.5])])trainData=cifar.CIFAR10('./picdata',train=True,transform=transforms,download=True)testData=cifar.CIFAR10('./picdata',train=False,transform=transforms)#shuffle随机打乱trainLoader=DataLoader(trainData,batch_size=64,shuffle=False)testLoader=DataLoader(testData,batch_size=128,shuffle=False)#enumerate组合成一个索引序列,同时列出数据下标和数据examples=enumerate(trainLoader)batchIndex,(imgData,labels)=next(examples)fig=plt.figure()for i in range(9):    plt.subplot(3,3,i+1)    plt.tight_layout()    plt.imshow(imgData[i][0],cmap='gray',interpolation='none')    plt.title("{}".format(classes[labels[i]]))    plt.xticks([])    plt.yticks([])plt.show()

图片展示如下:

e2dd27c1df9d2d02ffac39b046820032.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/355586.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

rhel 8.2不识别unicode_基于tensorflow 实现端到端的OCR:二代身份证号识别

最近在研究OCR识别相关的东西,最终目标是能识别身份证上的所有中文汉字数字,不过本文先设定一个小目标,先识别定长为18的身份证号,当然本文的思路也是可以复用来识别定长的验证码识别的。本文实现思路主要来源于Xlvector的博客&am…

Lua和C++交互详细总结

转载自:http://www.cnblogs.com/sevenyuan/p/4511808.html 一、Lua堆栈 要理解Lua和C交互,首先要理解Lua堆栈。 简单来说,Lua和C/C语言通信的主要方法是一个无处不在的虚拟栈。栈的特点是先进后出。 在Lua中,Lua堆栈就是一个struc…

adf开发_ADF BC:创建绑定到业务组件的UI表

adf开发在此示例中,我们将展示如何创建绑定到业务组件的简单UI表(af:table)。 我再次尝试使用简单的标准在网上进行搜索: “如何创建绑定到业务组件ADF 11g的af:table” 我必须承认我没有得到我想要的答案…

java游戏热血江湖,热血江湖源码_附安装教程

释放双眼,带上耳机,听听看~!源码里面可能有联系方式之类的不要相信,反正我在这里已经说过了,你们上当就不管我的事了还有,源码里面的联系方式跟我没关系!教程来了认真看!!&#xff0…

在没有适当上下文的情况下引发异常是一种不良习惯

Allison Anders等人的《四个房间》(1995)。 我不断重复同样的错误。 因此,该停止并制定规则以防止这种情况了。 错误不是致命的,但很烦人。 当查看生产日志时,经常会看到类似"File doesnt exist" &#xff…

内存压力测试软件_日常游戏,毫无压力,荣耀Magicbook 14锐龙版性能测试

上期蚂蚁给大家带来了荣耀Magicbook 14锐龙版的初见评测,本期将会带来性能的测试,究竟这台高性价比的电脑,能不能应付得了日常的游戏使用呢?蚂蚁这次使用的测试软件分别为:鲁大师、CPU-Z、Cinebench R15、CrystalDiskM…

c 解析java byte,深入解析Java编程中面向字节流的一些应用

文件输入输出流文件输入输出流 FileInputStream 和 FileOutputStream 负责完成对本地磁盘文件的顺序输入输出操作。【例】通过程序创建一个文件,从键盘输入字符,当遇到字符“#”时结束,在屏幕上显示该文件的所有内容import java.io.*;class e…

cdatabase读取excel第一行数据_pandas读取excel数据并对重复数据进行标记或者删除

pandas读取excel数据并对重复数据进行标记或者删除​mp.weixin.qq.compandas通常在读取excel数据之后,如果需要进行去重,有两种方式,一种是进行标记,另一种是在pandas中直接去重如下图所示,excel数据:&…

java 7.函数-递归_带有谓词的Java中的函数样式-第2部分

java 7.函数-递归在本文的第一部分中,我们介绍了谓词,这些谓词通过具有返回true或false的单一方法的简单接口,为Java等面向对象的语言带来了函数式编程的某些好处。 在第二部分和最后一部分中,我们将介绍一些更高级的概念&#xf…

apk改之理_一份礼物.apk-O泡果奶的逆向分析

事情起因是震惊全国大学生的1013事件!!!刚好看到社团群里在讨论这个,于是就发挥专业特长分析一下拿到apk ,第一步肯定先放到虚拟机里跑一下看下效果emmm这似曾相识的页面,这熟悉的音量,唯一变化的就是音乐变成了O泡果奶的魔性洗脑…

python彩色螺旋线_解决python彩色螺旋线绘制引发的问题

彩色螺旋线的绘制代码如下: import turtle import time turtle.pensize(2) turtle.bgcolor(black) colors [red, yellow, purple, blue] turtle.tracer(False) for x in range(400): turtle.forward(2*x) turtle.color(colors[x % 4]) turtle.left(91) turtle.trac…

ID3和C4.5分类决策树算法 - 数据挖掘算法(7)

(2017-05-18 银河统计)决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干&#xff0c…

mysql 聚簇索引和非聚簇索引_图文并茂,说说MySQL索引

点击上方 小伟后端笔记 ,选择 星标 公众号重磅资讯、干货,第一时间送达作者:小小木的博客来源:cnblogs.com/wyc1994666/p/10831039.html序开门见山,直接上图,下面的思维导图即是现在要讲的内容,…

mysql数据库日志截断,MySQL基础(十一):查询截取分析

下面是小凰凰的简介,看下吧!💗人生态度:珍惜时间,渴望学习,热爱音乐,把握命运,享受生活💗学习技能:网络 -> 云计算运维 -> python全栈( 当前正在学习中…

component是什么接口_阿里高级技术专家:整洁的应用架构“长”什么样?

很多同学不止一次和我反馈,我们的系统很混乱,主要表现在:应用的层次结构混乱:不知道应用应该如何分层、应该包含哪些组件、组件之间的关系是什么;缺少规范的指导和约束:新加一段业务逻辑不知道放在什么地方…

20155202 实验四 Android开发基础

20155202 实验四 Android开发基础 实验内容 1.基于Android Studio开发简单的Android应用并部署测试; 2.了解Android、组件、布局管理器的使用; 3.掌握Android中事件处理机制。 实验要求 第24章:初识Android任务一:完成Hello World…

python的代码在哪写_python代码在哪里编写

编写python代码,可以在自带的ide中写,也可以使用第三方编辑器,下面介绍几款常见的python IDE 1. VimVim 可以说是 Python 最好的 IDE。Vim 是高级文本编辑器,旨在提供实际的 Unix 编辑器‘Vi’功能,支持更多更完善的特…

如果您在2015年编写过Java代码-这是您不容错过的趋势

去年我们有机会遇到的最有趣趋势的实用概述 在这篇文章中,我们将回顾构成我们2015年对话的5个主题和新发展。与其他许多年终总结保持较高水平的不同,我们将做一个更实际的操作不用流行语 。 好吧,没有太多*流行语。 与往常一样,对…

mel滤波器组频率响应曲线_了解二阶滤波器的奈奎斯特图

在之前的文章中,我介绍了奈奎斯特图,然后我们通过检查奈奎斯特曲线和截止频率与一阶无源滤波器之间的关系,更详细地探索了这些类型的图。在本文中,我们将查看二阶滤波器的奈奎斯特图。二阶过滤器当我说“二阶”滤波器时&#xff0…

python爬取知乎标题_python爬虫 爬取知乎文章标题及评论

目的:学习笔记2.首先我们试着爬取下来一篇文章的评论,通过搜索发现在 response里面我们并没有匹配到评论,说明评论是动态加载的。3.此时我们清空请求,收起评论,再次打开评论 4.完成上面操作后,我们选择XHR&…