Импорт всех картинок из каталога - PullRequest
1 голос
/ 15 апреля 2019

В этом каталоге «C: \ Users \ KG \ Documents \ R \ data» у меня есть 40 папок с именами от s1 до s40, где в каждой папке есть 10 изображений (.png) лиц, названных как(1,2, .. 10).Как импортировать коллекцию картинок - лиц в виде сплющенного массива?Я использую код ниже, но он дает мне ошибку (не скачивает картинки):

from skimage import io
ic = io.ImageCollection('C:/Users/KG/Documents/R/data/*/*.png')
ic = np.array(ic)
ic_flat = ic.reshape((len(ic), -1))

Ответы [ 2 ]

1 голос
/ 15 апреля 2019

Попробуйте этот код:

import os
from skimage import io
import numpy as np

folder = 'C:/Users/KG/Documents/R/data'

images = [os.path.join(root, filename)
          for root, dirs, files in os.walk(folder)
          for filename in files
          if filename.lower().endswith('.png')]

ic = []
for img in images:
    ic.append(io.imread(img).flatten())
1 голос
/ 15 апреля 2019

Вы можете использовать библиотеку PIL:

from PIL import Image 
import numpy as np 

ic = []
for i in folders:
    for j in images:
        image = Image.open(i + j)
        ic.append(np.asarray(image))

ic = np.array(ic)

, где папки и изображения - это массивы строк с именами

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