def make_input(model_options):
'''
Prepare the input placeholders and queues
'''
model_vars = {}
if model_options['mode'] == 'train':
images = tf.placeholder("float",[None,224,224,model_options['num_channels']])
model_vars['images'] = images
labels = tf.placeholder("uint8",[1])
model_vars['labels'] = labels
q = tf.RandomShuffleQueue(200, model_options['min_to_keep'], [tf.float32, tf.uint8],
shapes=[[model_options['example_size'],224,224,\
model_options['num_channels']],1])
model_vars['queue'] = q
enqueue_op = q.enqueue([images, labels])
model_vars['enqueue_op'] = enqueue_op
elif model_options['mode'] == 'test':
num_crops = 10 if model_options['flip'] else 5;
images = tf.placeholder("float",[num_crops,model_options['example_size']\
,224,224,model_options['num_channels']])
labels = tf.placeholder("uint8",[num_crops,1])
names = tf.placeholder("string",[num_crops,1])
model_vars['images'] = images
model_vars['labels'] = labels
model_vars['names'] = names
q = tf.FIFOQueue(200, [tf.float32, tf.uint8, "string"],
shapes=[[model_options['example_size'],224,224,\
model_options['num_channels']],[1],[1]])
model_vars['queue'] = q
enqueue_op = q.enqueue_many([images, labels, names])
model_vars['enqueue_op'] = enqueue_op
elif model_options['mode'] == 'save':
images = tf.placeholder("float",[None,224,224,model_options['num_channels']],
name = 'images')
model_vars['images'] = images
return model_vars
评论列表
文章目录