我正在尝试第一次使用pdb调试器,并且在单步执行代码时,我注意到有几行代码重复其本身。该步骤将我带到python3.6 / os.py
> /usr/local/lib/python3.6/dist-packages/torchvision/datasets/folder.py(47)make_dataset()
-> for root, _, fnames in sorted(os.walk(d)):
(Pdb)
--Call--
/usr/lib/python3.6/os.py(277)walk() -> def walk(top,topdown = True,onerror = None,followlinks = False): (Pdb) /usr/lib/python3.6/os.py(335)walk() ->顶部= fspath(顶部) (Pdb) /usr/lib/python3.6/os.py(336)walk() -> dirs = [] (Pdb) /usr/lib/python3.6/os.py(337)walk() -> nondirs = [] (Pdb) /usr/lib/python3.6/os.py(338)walk() -> walk_dirs = [] (Pdb) /usr/lib/python3.6/os.py(345)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(348)walk() -> scandir_it = scandir(顶部) (Pdb) /usr/lib/python3.6/os.py(354)walk() ->使用scandir_it: (Pdb) /usr/lib/python3.6/os.py(355)walk() ->而True: (Pdb) /usr/lib/python3.6/os.py(356)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(357)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(358)walk() ->条目=下一个(scandir_it) (Pdb) /usr/lib/python3.6/os.py(366)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(367)walk() -> is_dir = entry.is_dir() (Pdb) /usr/lib/python3.6/os.py(373)walk() ->如果is_dir: (Pdb) /usr/lib/python3.6/os.py(376)walk() -> nondirs.append(entry.name) (Pdb) /usr/lib/python3.6/os.py(378)walk() ->如果不是topdown和is_dir: (Pdb) /usr/lib/python3.6/os.py(356)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(357)walk() ->尝试: (Pdb) (Pdb) /usr/lib/python3.6/os.py(358)walk() ->条目=下一个(scandir_it) /usr/lib/python3.6/os.py(366)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(367)walk() -> is_dir = entry.is_dir() (Pdb) (Pdb) /usr/lib/python3.6/os.py(373)walk() ->如果is_dir: /usr/lib/python3.6/os.py(376)walk() -> nondirs.append(entry.name) (Pdb) /usr/lib/python3.6/os.py(378)walk() ->如果不是topdown和is_dir: (Pdb) /usr/lib/python3.6/os.py(356)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(357)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(358)walk() ->条目=下一个(scandir_it) (Pdb) /usr/lib/python3.6/os.py(366)walk() ->尝试: (Pdb) /usr/lib/python3.6/os.py(367)walk() -> is_dir = entry.is_dir() (Pdb) /usr/lib/python3.6/os.py(373)walk() ->如果is_dir:
这是否意味着主代码无法访问数据集的目录?无论我执行多少步骤,这些行都会重复。我正在使用google colab,并将我的数据路径设置为DATA_DIR = '/content/Images
,其中有一个名为“ 1”的子文件夹,其中存储了所有图像。
然后我使用以下内容加载数据
def load_data(path_to_folder):
data_transform = transforms.Compose([
transforms.Resize(64),
transforms.CenterCrop(64),
transforms.ToTensor(),
transforms.Normalize(mean=[0.5, 0.5, 0.5],std=[0.5, 0.5, 0.5])
])
if IMAGE_DATA_SET == 'lsun':
dataset = datasets.LSUN(path_to_folder, classes=classes, transform=data_transform)
else:
dataset = datasets.ImageFolder(root=path_to_folder,transform=data_transform)
dataset_loader = torch.utils.data.DataLoader(dataset,batch_size=BATCH_SIZE, shuffle=True, num_workers=5, drop_last=True, pin_memory=True)
return dataset_loader
def training_data_loader(): 返回load_data(DATA_DIR) 这与ImageFolder函数不接受根路径有关吗?任何建议都会很棒!