02深度学习——数据集制作

import torch
from torch.utils import data
import os
import numpy as np
from PIL import Image
#怎么制作数据集
class dataset(data.Dataset):
    def __init__(self,path):
        self.path = path
        self.dataset =[]  #当数据是较大的图片时,一次性不要全部加载进数据
        self.dataset.extend(os.listdir(path))#路径  路径里包含信息
        os.listdir()
    def __len__(self):
        return len(self.dataset)
    def __getitem__(self,index):
        lable=torch.Tensor([int(self.dataset[index][0])])#取出标签  通过numpy转tensor不容易出错
        img_path=os.path.join(self.path,self.dataset[index])
        img=Image.open(img_path)
        img_data=torch.Tensor(np.array((img))/255-0.5)#/255归1化  -0.5去均值化 后转成Tensor
        return img_data,lable

#验证一下数据
if __name__=='__main__':
    #1看取出的数据是否有问题
    train_dataset = dataset('D:\workFile\深度学习_神经网络\img')
    x=train_dataset[1][0]
    y=train_dataset[1][1]

    #举证转回图像,看看是否有问题
    x2 = train_dataset[0][0].numpy()
    y2 = train_dataset[1][1].numpy()

    img_data=np.array((x2+0.5)*255,dtype=np.int8)
    img = Image.fromarray(img_data,"RGB")
    img.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值