当前位置: 首页 > wzjs >正文

千阳做网站上海百度

千阳做网站,上海百度,莱芜做网站公司,响应式网站demo新创建一个load_cifar10源文件 需要导入的包 import glob from torchvision import transforms from torch.utils.data import DataLoader ,Dataset import os #读取工具 from PIL import Image import numpy as np 01同样定义10个类别的标签名数组 label_name ["airpl…

新创建一个load_cifar10源文件

需要导入的包

import glob
from torchvision import transforms
from torch.utils.data import DataLoader ,Dataset
import os
#读取工具
from PIL import Image
import numpy as np

 01同样定义10个类别的标签名数组

label_name = ["airplane","automobile","bird","cat","deer","dog","frog","horse","ship","truck"]

02将类别存放到字典label_dict中,并将本来对应的10个分类的字符串airplane、bird等一一对应顺序递增的从0开始递增的数字

#将类别存到字典中
label_dict={}
#将字符串全部转换成数字
for idx, name in enumerate(label_name):label_dict[name] = idx

 03自定义一个数据集加载的类

class MyDataset(Dataset):

类中有一个init初始化方法和两个方法,一个用于读取数据并根据transform判断是否应该对训练的数据进行数据增强,如图片的旋转、颜色增强、灰度增强等;另一个用于获取图片总共的数量

init函数:

    def __init__(self,im_list,transforms=None,loader = default_loader):#入参是所有文件列表,传入数据增强的函数super(MyDataset,self).__init__()#图像列表imgs = []for im_item in im_list:#"E:\CIFAR10\TRAIN\airplane\aeroplane_s_000037.png"im_label_name=im_item.split("\\")[-2]#倒数第二个就是标签名#新列表imgs[]imgs.append([im_item,label_dict[im_label_name]])#路径im_item,ID#类内变量self.imgs=imgs#每一个图片元素self.transform=transforms#数据增强方法self.loader=loader#数据加载(读取)方法

这其中自定义的默认default_loader如下

def default_loader(path):#采用PRL完成对图像数据的读取return Image.open(path).convert("RGB")

 getitem函数:

     #定义对数据的读取以及数据的增强,返回图片的数据和分类(label)def __getitem__(self,index):#根据索引值im_path,im_label=self.imgs[index]im_data=self.loader(im_path)#如果没有数据增强if self.transform is not None:im_data=self.transform(im_data)#主要定义的是训练数据集的数据增强return im_data,im_label

 len函数:

    def __len__(self):return len(self.imgs)

04拿到训练、测试数据的列表

#拿到训练数据的列表
im_train_list=glob.glob("E:/CIFAR10/TRAIN/**/*.png")#斜杠要变成这种正的原因是\是反斜杠有可能出现转义的问题
#测试数据的列表
im_test_list=glob.glob("E:/CIFAR10/TEST/**/*.png")

 05拿到训练、测试数据的数据集,并对数据集进行读取

train_dataset = MyDataset(im_train_list,transforms = train_transform)
test_dataset=MyDataset(im_test_list,transforms.ToTensor)#不进行数据增强
#对数据集读取
train_dataloader=DataLoader(dataset=train_dataset,batch_size=6,shuffle=True,num_workers=4)
test_dataloader=DataLoader(dataset=test_dataset,batch_size=6,shuffle=False,num_workers=4)

这其中的方法要自己组合定义如下:

train_transform=transforms.Compose([transforms.RandomResizedCrop((28,28)),#调用完这个方法尺寸会变小到28,28,原来是32*32transforms.RandomHorizontalFlip(),#默认概率0.5transforms.RandomVerticalFlip(),#翻转后数据label会发生变化,需要修改相应的labeltransforms.RandomRotation(90),#旋转角度在-90和90之间transforms.RandomGrayscale(0.1),#随机转换成灰度,概率为0.1transforms.ColorJitter(0.3,0.3,0.3,0.3),#颜色增强#将PRL的数据转换为网络输入的数据transforms.ToTensor()
])

06最后输出打印训练集和测试集的数量

print("训练集数量",len(train_dataset))
print("测试集数量",len(test_dataset))

得到的结果是:

http://www.dtcms.com/wzjs/1424.html

相关文章:

  • 阿里云服务器开源做几个网站手机关键词点击排名软件
  • 成都网站建设公司好做吗软文推广什么意思
  • 网站html下载池州网络推广
  • c2c的电子商务网站有哪些南平seo
  • 网站建设的cms系统搜索引擎优化岗位
  • 保定seo管理武汉网站设计十年乐云seo
  • 装饰网站建设策划书河北百度seo
  • 手机做任务网站有哪些广告推广赚钱在哪接
  • 毕设做网站可能遇到的问题无锡网站推广公司
  • python 做网站优势最新热搜榜
  • 网站评论区怎么做爱营销电信版下载app最新版
  • 怎么做论坛的网站吗优秀软文范例800字
  • o2o网站平台怎么做百度登录注册
  • wordpress搜索产品伪静态seo长沙
  • 四川泸州做网站的公司有哪些站长百度
  • 国外那些视频网站做的不错官网排名优化
  • 做网站代理拉不到人网络推广员具体做什么的
  • 公司网站免费网站免费重庆网站制作公司哪家好
  • 外贸网站faq建站企业网站
  • 综合门户网站开发关键词权重
  • 网站建设新闻 常识百度推广代理
  • 武陟县住房和城乡建设局网站建立网站的基本步骤
  • 企业解决方案中的关键点seo数据是什么
  • 邵阳邵东网站建设什么软件可以发布广告信息
  • 网站怎么可以做视频播放淮安网站seo
  • 哪个网站可以免费下载电视剧看网页设计制作网站教程
  • 深圳市建设工程交易服务中心网站销售的技巧与口才
  • 济南公司建设网站自媒体视频剪辑培训班
  • 网站设计素材网站推荐泰安优化关键词排名哪家合适
  • c 网站开发如何每天10点执行任务seo公司官网