我使用了Keras中预训练的VGG-16模型。
到目前为止,我的工作源代码如下:
from keras.applications.vgg16 import VGG16
from keras.preprocessing.image import load_img
from keras.preprocessing.image import img_to_array
from keras.applications.vgg16 import preprocess_input
from keras.applications.vgg16 import decode_predictions
model = VGG16()
print(model.summary())
image = load_img('./pictures/door.jpg', target_size=(224, 224))
image = img_to_array(image) #output Numpy-array
image = image.reshape((1, image.shape[0], image.shape[1], image.shape[2]))
image = preprocess_input(image)
yhat = model.predict(image)
label = decode_predictions(yhat)
label = label[0][0]
print('%s (%.2f%%)' % (label[1], label[2]*100))
我发现这个模型是在1000类上训练的。有没有可能获取这个模型所训练的类别列表?打印出所有的预测标签并不可行,因为只返回了5个。
先行致谢。
prediction = model.predict(img)
model.decode_predictions(predictions, top = 1000)
- TheSHETTY-Paradise