Ich möchte ein JPEG-Bild in Cloud-ml vorhersagen.Wie richtige Vorhersagen von JPEG-Bild in Cloud-ml machen
Mein Trainingsmodell ist das Anfangsmodell, und ich möchte die Eingabe an die erste Ebene des Graphen senden: 'DecodeJpeg/contents:0'
(wo ich ein JPEG-Bild senden muss). Ich habe diese Schicht wie möglich Eingang eingestellt durch Zugabe in retrain.py:
inputs = {'image_bytes': 'DecodeJpeg/contents:0'}
tf.add_to_collection('inputs', json.dumps(inputs))
Dann speichere ich die Ergebnisse der Ausbildung in zwei Dateien (Export und export.meta) mit:
saver.save(sess, os.path.join(output_directory,'export'))
und ich schaffen Ein Modell in Cloud-ml mit diesen Dateien.
Wie in einigen Stellen vorgeschlagen (here, here und here von Google offiziellen Blog Wolke) Ich versuche, die Vorhersage mit
gcloud beta ml predict --json-instances=request.json --model=MODEL
wo die Instanz ist das JPEG-Bild mit in base64 zu machen Format dekodiert :
python -c 'import base64, sys, json; img = base64.b64encode(open(sys.argv[1], "rb").read()); print json.dumps({"key":"0", "image_bytes": {"b64": img}})' image.jpg &> request.json
jedoch die Anforderung mich zurück:
error: 'Prediction failed: '
Was ist das Problem meines Verfahrens? Hast du irgendwelche Vorschläge? ich insbesondere von this post Ich gehe davon aus, dass Cloud-ml automatisch das Base64-Bild im JPEG-Format konvertieren, wenn es eine Anfrage mit image_bytes liest. Ist es richtig? Sonst wie kann ich tun?
Ich könnte weitere Informationen benötigen, um Ihnen besser zu helfen. Könnten Sie mir bitte Ihre Projektnummer, Modell- und Versionsnamen an [email protected] senden? – rhaertel80