Как добавить новый образец в CIFAR10 torchvision?

Привет, я хочу добавить свои собственные изображения в набор данных CIFAR10 в torchvision, как я могу это сделать?

train_data = torchvision.datasets.CIFAR10(root='./data', train=True, download=True, transform=train_transform)
train_data.add # or a workaround!

Спасибо

1 ответ

Вы можете создать собственный набор данных для CIFAR10, Используя сырые изображения cifar10 здесь или вы все еще можете использоватьCIFAR10 набор данных внутри вашего нового настраиваемого набора данных, а затем добавьте свою логику в __getitem__()метод.
Это простой пример, который поможет вам начать работу:

class CIFAR10_2(torch.utils.data.Dataset):
    def __init__(self, dataset_path='/cifar10', transformations=None, should_download=True):
        self.dataset_train = torchvision.datasets.CIFAR10(dataset_path, download=should_download)
        self.transformations = transformations

    def __getitem__(self, index):
        # do as you wish , add your logic here
        (img, label) = self.dataset_train[index]
        # for transformations for example
        if self.transformations is not None:
            return self.transformations(img), label
        return img, label

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

вы можете придумать и добавить логику для тестирования, проверки и т. д. и делать то, что вам нравится.

Другие вопросы по тегам