2016-07-27 25 views
0

Ich versuche, TensorFlow zu lernen, also habe ich versucht, ihr Beispiel mit kleineren Dimensionen zu verstehen. Angenommen, ich habe image1, image2, image3 drei 28x28-Matrizen, die Graustufenwerte enthalten (0..255). image1 ist das Trainingsbild, image2 ist das Validierungsbild und image3 ist das Testbild. Ich habe versucht zu verstehen, wie ich meine eigenen Bilder in das MNIST-Beispiel einspeisen kann, das sie haben here.TensorFlow MNIST Beispiel Feeding eigene Bilder

Ich interessiere mich besonders für die folgende Zeile mit meinem eigenen Grafiksammlung ersetzen:

X, Y, testX, testY = mnist.load_data(one_hot=True) 

Ihre Hilfe wird sehr geschätzt.

Antwort

1

Angenommen, Ihr Bild ist ein numpliges Array mit der Form [1, 28, 28, 1].

Sie können dieses numplige Array einfach dem Knoten X oder textX zuführen. Obwohl X kein Platzhalter ist, können Sie TensorFlow seinen Wert zuweisen.

X_value = ... # numpy array 
# ... same for Y_value, testX_value, testY_value 

feed_dict = {X: X_value, Y: Y_value, testX: testX_value, testY: testY_value} 
sess.run(train_op, feed_dict=feed_dict) 
0

mnist.load_data(one_hot=True) ist nichts als einige Preprosossing der Daten. Wenn Sie einige Bilder in der Hand haben, können Sie sie einfach zu einem ndarray machen und in das Diagramm einspeisen. Wenn Sie beispielsweise einen Knoten mit dem Namen images haben, können Sie die Bilder mit feed_dict = {images: some_image} einspeisen.