0

我運行下面的代碼片段:谷歌雲ML scipy.misc.imread返回<PIL.JpegImagePlugin.JpegImageFile>

import tensorflow as tf 
import scipy.misc 
from tensorflow.python.lib.io import file_io 

file = file_io.FileIO('gs://BUCKET/data/celebA/000007.jpg', mode='r') 
img = scipy.misc.imread(file) 

如果我跑在雲端控制檯是片段,我得到一個合適的陣列。但是,當同一片段在雲ML運行時,IMG對象

<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=178x218 at 0x7F1F8F26DA10>

This stackoverflow answer表明,安裝PIL時未安裝的libjpeg。 Cloud ML Runtime Version list顯示,對於Tensorflow 0.12,libjpeg-dev是已安裝的debian軟件包。

回答

0

我能夠在Cloud ML上重現此問題,它似乎是Tensorflow 0.12.1中file_io版本的問題,如果安裝了Tensorflow 1.0,則會消失。

如果可以,請升級到TF的1.0版本。

如果您需要0.12版本,Cloud ML「0.12」運行時使用TF的0.12.1官方版本,但您可以上傳自己的版本進行安裝(如果您喜歡的話)。我沒有確切地追蹤問題的解決方案,但2月2日的Tensorflow版本似乎正常工作。