重写 Dataset ; python导入、导出安装包;numpy 与 tensor转换

重写 Dataset

from torch.utils.data.dataset import Dataset
from torchvision import transforms

class MyDataset(Dataset):
 def __init__(self,img, label):
        super(MyDataset, self).__init__()
        self.img = img
        self.label = label
        self.transform = transforms

    def __getitem__(self, index):
        image = self.img[index]
        label = self.label[index]

        trans = self.transform.Compose([
            transforms.ToTensor(),  # 数据转化为tensor 并归一化
        ])
        image = trans(image)
        label = trans(label)
        return image, label

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

**python导出安装包,python导入安装包

pip freeze 
requirements.txt
pip install -r requirements.txt**

numpy 与 tensor转换

 import torch
 import numpy as np
 
 x = torch.rand(1, 3, 512, 512)  # ternsor
 x = x.numpy() # numpy
 # 结果 : torch.Size([1, 3, 512, 512]) --->(1, 3, 512, 512) 
 
 img =  cv2.imread('./people.png',1) #(512, 512, 3)
 img = img.reshape(1,3,img.shape[0],img.shape[1])# (1, 3, 512, 512)
 print(img.shape)# (1, 3, 512, 512)
 x = torch.tensor(img, dtype=torch.float) # 转化tensor 和 类型转换
 print(x.shape) # torch.Size([1, 3, 512, 512]) 
# 或者:
 x = np.float32(img) # 转化为float类型
 x =  torch.from_numpy(img)  # 转化tensor
 print(x.shape) # torch.Size([1, 3, 512, 512]) 
 print(x.dtype)

pytorch中Tensor的数据类型

推荐总结 [ https://blog.csdn.net/moshiyaofei/article/details/89703161]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值