ValueError: невозможно преобразовать массив размером 6744500 в форму (574,1,64,47) - PullRequest
0 голосов
/ 20 мая 2018

Я использую fetch_lfw_people из sklearn, чтобы заставить лица распознавать, но когда я пытаюсь изменить форму II, я получаю эту ошибку ValueError: cannot reshape array of size 6744500 into shape (574,1,64,47), но для данных, которые у меня есть Кажется, что правильные параметры, это размер изображения, который говоритдокумент документ Я знаю, что 574 * 1 * 64 * 47 - это не 6744500, а данные, которые у меня есть

lfw_people = fetch_lfw_people(min_faces_per_person=200, resize=1)
X = lfw_people.data
y = lfw_people.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25)

X_train = X_train.reshape(X_train.shape[0], 1, 64, 47).astype('float32')
X_test = X_test.reshape(X_test.shape[0], 1, 64, 47).astype('float32')

1 Ответ

0 голосов
/ 20 мая 2018

Попробуйте:

получить информацию о размере изображения:

In [46]: print(lfw_people.images.shape)
(766, 125, 94)

, т. Е. Весь набор данных содержит 766 изображений.Каждая картинка имеет форму: (125, 94)

изменение формы:

In [47]: X_train = X_train.reshape((X_train.shape[0],) + lfw_people.images.shape[1:])

результат:

In [48]: X_train.shape
Out[48]: (574, 125, 94)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...