2017-08-09 68 views
0

这是我的代码片段,我怎样做conatenate所有列车图像(左,右,面罩)。在变数l,用[4, ?, ?, 3]形状řtensores被分配。InvalidArgumentError:ConcatOp:输入尺寸应当匹配:形状[0] = [1,246,381,3]对形状[1] = [1,252,367,3]

with tf.Session() as session: 
    l_train = [x.l_img for x in images][:4] 
    r_train = [x.r_img for x in images][:4] 
    m_train = [x.mask for x in images][:4] 
    l = tf.concat(l_train, 0) 
    r = tf.concat(r_train, 0) 
    m = tf.concat(m_train, 0) 

    l.eval() 

当使用eval()我得到这个错误?

Traceback (most recent call last): 

    File "/home/test/anaconda2/envs/tensorflow/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 2881, in run_code 
exec(code_obj, self.user_global_ns, self.user_ns) 

    File "<ipython-input-5-f78dccf94f7f>", line 1, in <module> 
l.eval() 

    File "/home/test/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 606, in eval 
return _eval_using_default_session(self, feed_dict, self.graph, session) 

    File "/home/test/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 3928, in _eval_using_default_session 
return session.run(tensors, feed_dict) 

    File "/home/test/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 789, in run 
run_metadata_ptr) 

    File "/home/test/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 997, in _run 
feed_dict_string, options, run_metadata) 

    File "/home/test/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1132, in _do_run 
target_list, options, run_metadata) 

File "/home/test/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1152, in _do_call 
raise type(e)(node_def, op, message) 

InvalidArgumentError: ConcatOp : Dimensions of inputs should match: shape[0] = [1,246,381,3] vs. shape[1] = [1,252,367,3] 
[[Node: concat = ConcatV2[N=4, T=DT_FLOAT, Tidx=DT_INT32, _device="/job:localhost/replica:0/task:0/gpu:0"](Reading/reshape_t_left/_1, Reading/reshape_t_left_1/_3, Reading/reshape_t_left_2/_5, Reading/reshape_t_left_3/_7, concat/axis)]] 
[[Node: concat/_9 = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/cpu:0", send_device="/job:localhost/replica:0/task:0/gpu:0", send_device_incarnation=1, tensor_name="edge_370_concat", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/cpu:0"]()]] 

如何训练我的训练集动态补丁大小?同时,循环播放我的图像并将一个图像接连送入CNN。

_, summary_str, costs = sess.run([optimizer, merged_summary_op, cost_function], 
             feed_dict={t_im0: l.eval(), t_im1: r.eval(), 
                t_label: m.eval()}) 

回答

0

我有完全相同的问题,我认为这是因为在更快的R-CNN纸上的批量大小是1。

相关问题