Запись изображений в другую папку
У меня есть два каталога:
dir1 = path/to/original/imgs
а также
dir2 = path/to/subset/imgs
dir1 содержит изображения из набора данных COCO, а dir2 в настоящее время пуст. У меня также есть список, содержащий названия некоторых изображений (извлечено из dir1):
list1 = ['img1', 'img2', 'img3', 'img4', 'img5']
Что мне нужно сделать, это сравнить имена изображений из list1 с именами изображений в dir1 и сохранить соответствующие изображения в dir2. Вот что я имею до сих пор:
import os
path_to_imgs = "/path/to/dir1"
path_to_subset_imgs = "/path/to/dir2"
file_list = os.listdir(path_to_imgs)
for img_name in list1:
for filename in file_list:
if img_name == filename:
Я не могу понять, как продолжить сохранение идентичных изображений в dir2. Я проверил эту ссылку и эту. Любая помощь высоко ценится. Благодарю вас.
2 ответа
Решение
Вы могли бы рассмотреть возможность использования Shutil
import shutil
image_list = ['img1', 'img2', 'img3', 'img4', 'img5']
dirs_list = [("/path/to/dir1/", "/path/to/dir2/")]
for img in image_list:
for source_folder, destination_folder in dirs_list:
shutil.copy(source_folder+img, destination_folder+img)
Сначала проверьте, существует ли изображение в папке dir1, и, если оно существует, скопируйте изображение из dir1 в dir2.
for img in list1:
if os.path.exists(dir1+img):
shutil.copy(dir1+img, dir2+img)
else:
print "Image %s doesn't exist"%img