2017-10-15 3 views
0

J'essaie de prédire le résultat pour une seule image mais cela donne un résultat non pertinent. J'ai modèle formé sur ICRA 10 jeu de données J'ai utilisé keras et tensorflow pour former ce modèlekeras: prédire sur une seule image

est ici l'essentiel du code de formation: https://github.com/09rohanchopra/cifar10/blob/master/cifar10-simple-cnn.ipynb Code pour prédire l'image simgle

#
from keras.preprocessing import image 
from keras.models import load_model 
from scipy.misc import imread,imresize 
import numpy as np 
model=load_model('augmented_best_model.h5') 
im=imread('1.jpg') 
im=im/255 
im=im.resize(im,(32,32)) 
pr=model.predict(im.reshape(-1,3,32,32)) 
+2

Pourquoi? Dans votre code d'apprentissage, la forme d'entrée de l'image est 'input_shape = (IMAGE_SIZE, IMAGE_SIZE, CHANNELS)' – Matin

+0

Aussi, si im a dtype d'un entier, 'im/255' le mettra probablement à zéro dans Python 2 –

Répondre

0

Je suis la réponse

x=imread('test/2.jpg',mode='RGB') 
x=imresize(x,(32,32)) 
x=np.invert(x) 
x=x.reshape(-1,32,32,3) 
1

imread est maintenant obsolète. Une meilleure alternative est d'utiliser les fonctions keras. Pourquoi avez-vous remodelé l'image pour la première chaîne?

x = image.load_img('test/2.jpg', target_size=(32,32)) 
x = image.img_to_array(x) 
x = x.reshape((1,) + x.shape) 
x = x/255.