如何在张量流中设置变量占位符形状?

问题描述:

我定义的那些象征性的占位符:如何在张量流中设置变量占位符形状?

t_im0 = tf.placeholder(tf.float32, [1, None, None, 3]) 
t_im1 = tf.placeholder(tf.float32, [1, None, None, 3]) 
t_mask = tf.placeholder(tf.float32, [1, None, None, 1]) 

后来,我想优化我的形象价值。

for obj in images: 
    sess.run(optimizer, feed_dict={t_im0: obj.l_img, t_im1.eval(): obj.r_img.eval(), t_mask: obj.mask.eval()}) 

当我执行进行优化的代码,我得到以下错误:

InvalidArgumentError (see above for traceback): Shape [1,-1,-1,3] has negative dimensions 
[[Node: Placeholder_1 = Placeholder[dtype=DT_FLOAT, shape=[1,?,?,3], _device="/job:localhost/replica:0/task:0/gpu:0"]()]] 

我的问题是,我的图片具有不同的形状。我怎样才能解决加载他们没有调整磁盘上的所有图像?

+0

您可以将图像保存为不同大小的jpeg,然后使用'tf.imag.decode_jpeg',然后将图像大小调整为固定大小。 –

我没有足够的声望直接评论你的问题,所以我会在这里分享我的想法。

我假设你正在训练一个卷积神经网络。问题在于,CNN不接受可变输入大小。也许this答案可以帮助你理解这个问题。