#python #pandas #numpy #machine-learning
#python #pandas #numpy #машинное обучение
Вопрос:
Мне нужно загрузить изображения в массив numpy matrix из набора данных, который содержит 800 изображений, каждое размером 64 на 64 пикселя. Мне нужно преобразовать каждое изображение размером 64 на 64 в строку матрицы, которая содержит 4096 столбцов. Ниже я показал, как я подхожу к коду. Я получаю ошибку ValueError: не удается преобразовать массив размером 4096 в форму (64,). Пожалуйста, помогите, спасибо.
array = np.zeros((800, 64))
for i in range(800):
path = “some path”
img = mpimg.imread(path)
array[i] = img.reshape(64)
Ответ №1:
Ваш исходный массив должен иметь форму 800, 4096
, поскольку каждый подмассив представляет (64, 64)
изображение, для которого требуется 4096 элементов.
Поэтому, я думаю, вы хотите это вместо:
array = np.zeros((800, 4096))
paths = [...] # set paths here
for i, path in enumerate(paths):
array[i] = mpimg.imread(path).reshape(4096)