2017-02-01 54 views
3

我注意到TensorflowPython包提供了讀取文件後解碼jpeg,pnggif圖像的標準程序。例如,對於pngTensorflow機器學習:TIFF圖像無解碼器?

import tensorflow as tf 
filename_queue = tf.train.string_input_producer(['/Image.png']) # list of files to read 
reader = tf.WholeFileReader()  
key, value = reader.read(filename_queue) 
decoded_image = tf.image.decode_png(value) # use png or jpg decoder based on your files. 

然而,tiff格式解碼器似乎缺少。

那麼對於tiff文件有什麼解決方案?當然,我可以將我的輸入圖像轉換爲png,但這似乎不是一個非常聰明的解決方案。

+0

嗨,我目前面臨同樣的問題。你最終使用了哪種方法?編寫您自己的TIFF格式解碼器或簡單地將您的文件轉換爲支持的格式,例如PNG?謝謝! – jlhw

+1

@jlhw嗨,在這一天結束我加載在Python的圖片我自己(通過標準的Python庫圖片),然後放他們,如同張量來TensorFlow。它的優點是可以很容易地在實際的網絡培訓之前用Python中的numpy或枕頭以預想的方式預處理圖像。我的圖片很大,但很少,所以我只需要預先加載一次,這不是過程的瓶頸。希望這可以幫助。 –

回答

4

正確,TIFF圖像沒有解碼器。看在tensorflow/core/kernels,你會看到

decode_csv_op.cc 
decode_gif_op.cc 
decode_jpeg_op.cc 
decode_png_op.cc 
decode_raw_op.cc 

沒有decode_tiff_op.cc。這可能是社區貢獻的良好目標。

+0

謝謝。這可能與tiff格式支持的許多標準有關?但這也是它如此受歡迎的原因...... –