Привет, я попытался применить PCA к папке со многими картинками внутри (.jpg).Тем не менее, я застрял при преобразовании его в формат, который принимает PCA scikit-learn.Похоже, что PCA принимает формат данных массива.Я читаю статьи типа PCA для данных изображения , но для меня это выглядит довольно сложно.Я просто хочу преобразовать изображения в принятый формат, а затем использовать pca.fit
Перед тем, как использовать os.walk, измените изображения на оттенки серого и измените их размер (как показано ниже).Мне было интересно, смогу ли я использовать его и на PCA.
from sklearn.decomposition import PCA
from PIL import Image
import os
import numpy as np
WORK_DIR = 'D:/folder/' #working folder
source = os.path.join(WORK_DIR, 'train')
target = os.path.join(WORK_DIR, 'gray')
for root, dirpath, filenames in os.walk(source):
for file in filenames:
image_file = Image.open(os.path.join(root, file))
image_file.draft('L', (256, 128))
image_file.save(os.path.join(target, file))
Любые другие более простые методы тоже подойдут.