Как подготовить мой собственный набор данных и использовать его с помощью pytorch или tenorflow?

1

на самом деле, я пытаюсь сделать так, чтобы у меня были небольшие данные изображений около 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)
Теги:
deep-learning
pytorch

1 ответ

0

У вас есть два transforms.ToTensor() в вашей реализации. Вам нужен только один. Обратите внимание, что некоторые преобразования работают с объектами PIL.Image а другие - с тензорами. Смотрите torchvision.transforms который есть что.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню