1

tf.readfileでバッチ学習する方法は?テンソルフローのステレオ画像による一括学習

for i in range(len(files_mask)): 
    t_image_left = tf.read_file(files_left[i], name='read_fileimage_left') 
    t_image_right = tf.read_file(files_right[i], name='read_fileimage_right') 
    t_image_mask = tf.read_file(files_mask[i], name='read_fileimage_mask') 
    t_left = tf.image.decode_png(t_image_left, name='decode_png_t_left', dtype=tf.uint8) 
    t_right = tf.image.decode_png(t_image_right, name='decode_png_t_right', dtype=tf.uint8) 
    t_mask = tf.image.decode_png(t_image_mask, name='decode_png_t_mask', dtype=tf.uint8) 

左右の画像とマスクのバッチは、一致する必要があります。左上のバッチは、すべての画像の左上のバッチにする必要があります。

それは可能でしょうか:https://www.tensorflow.org/versions/r1.2/api_docs/python/tf/train/batch

答えて

1

あなたはtf.train.batchを使用することができますが、あなたはまた、このような異なる画像サイズを有する約あるものtf.train.slice_input_producer

filename_queue = tf.train.slice_input_producer([files_left, files_right, files_mask]) 
t_image_left = tf.read_file(filename_queue[0], name='read_fileimage_left') 
t_image_right = tf.read_file(filename_queue[1], name='read_fileimage_right') 
t_image_mask = tf.read_file(filename_queue[2], name='read_fileimage_mask') 
t_left = tf.image.decode_png(t_image_left, name='decode_png_t_left', dtype=tf.uint8) 
t_right = tf.image.decode_png(t_image_right, name='decode_png_t_right', dtype=tf.uint8) 
t_mask = tf.image.decode_png(t_image_mask, name='decode_png_t_mask', dtype=tf.uint8 
batch_left, batch_right, batch_mask = tf.train.batch([t_left, t_right, t_mask], batch_size=32, num_threads=1, 
    capacity=500, enqueue_many=False,) 
+0

としてファイル名のキューを使用する必要がありますか?それはまだ可能ですか? – j35t3r

+0

はい、image_sizesは関係ありません –

+0

filename_queue [0]: 'FifoQueue'オブジェクトはインデックス作成をサポートしていません。 – j35t3r

関連する問題