Pytorch - Подклассы torchvision.dataset.ImageFolder - Ошибка импорта - PullRequest
0 голосов
/ 12 июня 2018

После моего последнего поста я сейчас пытаюсь реализовать подкласс класса torchvision.datasets.ImageFolder.Следующий код возвращает ошибку ("name 'default_loader' is not defined"), и я не могу понять, почему.Не могли бы вы мне помочь?

class ExtendingImageFolder(torchvision.datasets.ImageFolder)
   def __init__(self,root,transform=None, target_transform=None,loader=default_loader):
       super().__init__(root,transform,target_transform,loader)

Когда я удаляю "None" и "default_loader" и пишу так:

    class ExtendingImageFolder(torchvision.datasets.ImageFolder)
   def __init__(self,root,transform, target_transform,loader):
       super().__init__(root,transform,target_transform,loader)

Я получаю ошибкуотсутствующих входных аргументов при попытке создать экземпляр этого класса, например:

JJ=ExtendingImageFolder(root='C:/',transform=transform)

Что я здесь не так делаю?

Заранее спасибо!

1 Ответ

0 голосов
/ 12 июня 2018

default_loader() - это функция, определенная в torchvision/datasets/folder.py, вместе с ImageFolder и другими помощниками наборов данных на основе папок.

Однако она не экспортируется в torchvision/datasets/__init__.py (в отличие от ImageFolder).Вы по-прежнему можете импортировать его напрямую с помощью «from torchvision.datasets.folder import default_loader», что должно решить вашу ошибку импорта.

...