Вот как выглядит моя структура каталогов:
Dataset
---> Images
----> n02085620-Chihuahua
---> n02085620_01.jpg
---> n02085620_02.jpg
.
.
. (~ 150+ files)
----> n02086646-Blenheim-Spaniel
----> n02087046-Toy-Terrier
.
.
.
(120 Folders)
---> Training
---> Chihuahua
---> Blenheim Spaniel
---> Toy Terrier
.
.
.
(120 Empty Folders)
У меня также есть список путей к файлам:
train_file_list = ['n02085620-Chihuahua/n02085620_5927.jpg', ... ', 'n02086646-Blenheim_spaniel/n02086646_1342.jpg', ..., 'n02087046-toy_terrier/n02087046_3490.jpg' ]
Этот список содержит 12 000 элементов, 100 путей к файлам длякаждая из 120 пород в порядке , т. е. первые 100 изображений - чихуахуа, следующие 100 - бленхейм-спаниель и т. д.* составлен из двух соответствующих списков:
n02097658: Chihuahua
n02092002: Japanese Spaniel
n02099849: Maltese
.
.
.
(120 key-value pairs)
Я пытаюсь перебрать свой список путей к файлам, и для каждого пути к файлу, который начинается с dog_id
, я хочу переместить этот файл в соответствующую папкув Dataset/Training
используется словарь для сопоставления его с породой.
Вот код, который я пробовал на Jupyter Notebook , который, кажется, не работает,Куда я иду не так?Пожалуйста, помогите !!!
root = "/Users/krithika/Desktop/GitHub Repositories/The-Pup-Files"
os.chdir(root)
for d_id, file in zip(dog_ids, train_file_list):
if file.startswith(d_id):
shutil.copy((root + "/Dataset/Images/" + file), (root + "/Dataset/Training/" + dog_ids_breeds[d_id]))