2017-04-19 2 views
0

Bisher habe ich trainiert mein neuronales Netzwerk ist auf dem MNIST-Datensatz trainiert (from this tutorial). Jetzt möchte ich es testen, indem ich meine eigenen Bilder hineinspeise.Wie kann ich ein Bild in mein neurales Netzwerk einspeisen?

Ich habe das Bild mit OpenCV verarbeitet, indem ich die Abmessungen 28x28 Pixel gemacht habe, um es in Graustufen umzuwandeln und adaptive Schwellwertbildung zu verwenden. Wohin gehe ich von hier aus?

Antwort

0

Ein 'Bild' ist ein 28x28 Array von Werten von 0-1 ... so nicht wirklich ein Bild. Wenn Sie das ursprüngliche Bild nur grob skalieren, wird es nicht für die Eingabe geeignet. Sie müssen die folgenden Schritte durchlaufen.

  • Legen Sie Ihr Bild in Ihre Programmierung Langauge, mit 784 rgb Werte Pixel
  • für jeden RGB-Wert, den Durchschnitt von r, g und b darstellt. Dann teilen Sie diesen Wert durch 255. Sie werden nun die Graustufen eines Bildes, einen Wert zwischen 0 und 1
  • Ersetzen Sie die RGB-Werte mit den Grauwerten

Sie jetzt ein Bild, das wie folgt aussieht (siehe rechte Array) :

enter image description here

So müssen Sie alles über Ihre Programmiersprache tun. Wenn Sie ein Bild mit einem Fotoeditor graustufen, werden die Pixel weiterhin r,g,b sein.

0

können Sie Bibliotheken verwenden, wie PIL, skimage, dass Sie die Daten in numpy Arrays in Python laden lassen und auch viele Bildoperationen wie Grauskalierung unterstützen, usw. Skalierung

Nachdem Sie das Bild verarbeitet und lesen die Daten in numpy array können Sie diese dann Ihrem Netzwerk zuführen.

Verwandte Themen