3

Я использую предварительно подготовленных модели VGG16 keras', следуя этой ссылке: Keras VGG16 Я пытаюсь декодировать результат предсказания в слово то, что на картинке:Keras: ValueError: decode_predictions ожидает партию предсказаний

model = VGG16(weights='imagenet', include_top=False) 
img_path = 'elephant.jpg' 
img = image.load_img(img_path, target_size=(224, 224)) 
x = image.img_to_array(img) 
x = np.expand_dims(x, axis=0) 
x = preprocess_input(x) 

features = model.predict(x) 
(inID, label) = decode_predictions(features)[0] #ERROR HERE 

полная ошибка:

ValueError: decode_predictions expects a batch of predictions (i.e. a 2D array of shape (samples, 1000)). Found array with shape: (1, 7, 7, 512)

Любые комментарии или предложения, высоко ценится. Спасибо.

ответ

8

Вы должны изменить первую строку на:

model = VGG16(weights='imagenet', include_top=True) 

Без этой линии ваша модель производит 512 полнометражных карты с размером 7 х 7 пикселей. Это причина вашей ошибки.

+0

Это решило мою проблему. Огромное спасибо :) – matchifang

Смежные вопросы