python - 如何准备我自己的数据集并使用 pytorch 或 tensorflow 对其进行转换?

标签 python deep-learning pytorch

实际上我想做的是,我有大约 80 张图片的小图像数据,然后我想正确准备它,所以我不确定我的步骤是否正确。

class MyCustomDataset(Dataset):
     def __init__(self,path,transform=None):
        self.transformations = transforms.Compose([transforms.Normalize((.5, .5, .5), (.5, .5, .5)), 
                                transforms.ToTensor()])
        self.name=os.listdir(path)
        self.count=np.size(self.name)
        self.transform = transform
        self.to_tensor = transforms.ToTensor()
        #transforms.CenterCrop(100),
     def __getitem__(self, index):

         label=self.name[index]


         im3 = Image.open(path2 + '//' + label)

         imge=self.to_tensor(im3)
         if self.transform is not None:
             imge = self.transform(imge)
         return (imge, label)

     def __len__(self):
         return self.count   # of how many data(images?) you have

if __name__ == '__main__':
    # Call the dataset

path=path2
custom_dataset = MyCustomDataset(path)#.(Dataset).__init__(path)
data_loader = torch.utils.data.DataLoader(custom_dataset, batch_size=100, shuffle=True)
num_batches = len(data_loader)

最佳答案

您的实现中有两个 transforms.ToTensor()。你只需要一个。请注意,某些变换对 PIL.Image 对象进行操作,而其他变换则对张量进行操作。请参阅torchvision.transforms哪个是哪个。

关于python - 如何准备我自己的数据集并使用 pytorch 或 tensorflow 对其进行转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54112169/

相关文章:

python - 可以在 Python 中执行此操作吗?

pytorch - PyTorch:new_ones与1

pytorch - torch 在 2 个 2D 张量中找到匹配行的索引

deep-learning - caffe 中的 L2 正则化,从 lasagne 转换

tensorflow - 温和地批量读取 tfrecords 数据的方法

python - 计算 torch.utils.data.DataLoader 中数据对应的光流

python - 修改开源python程序

python - 收款计数器 - 如何从输出中删除 "counter"

python - 在 iOS 应用程序中运行 python 脚本

machine-learning - keras vgg 16 形状错误