Чтение путей к папкам как int вместо строки - PullRequest
0 голосов
/ 04 мая 2020

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

DATADIR = "C:\Dataset"
CATEGORIES = ["folder1", "folder2", "folder3", "folder4", "folder5"]

И мой код:

descr = "A image classification dataset"
flat_data = []
target = []
images = []
dimension=(64, 64)
for category in CATEGORIES:
    path = os.path.join(DATADIR, category)
    for person in os.listdir(path):
        personfolder = os.path.join(path, person)
        for imgname in os.listdir(personfolder):
            class_num = CATEGORIES.index(category)
            fullpath = os.path.join(personfolder, imgname)
            images[fullpath] = skimage.io.imread(fullpath)
            img_resized = resize(images[fullpath], dimension, anti_aliasing=True, mode='reflect')
            flat_data.append(img_resized.flatten())
            images.append(img_resized)
            target.append(class_num)

flat_data = np.array(flat_data)
target = np.array(target)
images = np.array(images)
print(folders)

Ошибка по адресу:

Ошибка типа: индексы списка должны быть целыми числами или кусочками, а не str

---> 14 изображений [fullpath] = skimage.io. imread (полный путь)

Я понимаю, причина в том, что мои категории задаются как строки, а не как int. Проблема заключается в том, что из-за того, что я новичок в python, я не знаю, как его прочитать и сохранить изображения в моем наборе данных в виде целых чисел, главным образом потому, что было достаточно сложно заставить его глубоко читать распределение папок. поиск в том виде, в котором он есть в данный момент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...