У меня есть набор данных, который состоит из 100 папок, и каждая из папок содержит несколько изображений, как показано ниже. Как мне прочитать эти изображения и метки, чтобы, если я назову метку папки, в ней будет коллекция изображений? (например, если я назову метку Cat, она будет состоять из img_001 и img_032, а не просто img_001 или img_032). Я попытался использовать словарь в качестве кода ниже, но словарь берет только первое изображение из каждой папки, в то время как я хочу взять все изображения. Как это сделать? Спасибо
(Folder Structure)
Cat:
-img_001.jpg
-img_032.jpg
Dog:
-img_002.jpg
-img_012.jpg
-img_011.jpg
-img_000.jpg
Bird:
-img_003.jpg
... until 100 folders
(My code)
path = 'animal/'
img_dict = dict()
for root, dirs, files in os.walk(path):
print(os.path.basename(root))
my_key = os.path.basename(root)
for file_ in files:
full_file_path = os.path.join(root, file_)
img = cv2.imread(full_file_path)
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
img_dict[my_key] = img
(Output using my code with only one images per labels)
Cat:
-img_001.jpg
Dog:
-img_002.jpg
Bird:
-img_003.jpg
... until end of dictionary (100 labels)