回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在尝试创建一个深度CNN,它可以对图像中的每个像素进行分类。我正在复制从<a href="https://github.com/dhasl002/Research-DeepLearning/blob/master/DEEP.pdf" rel="noreferrer">this</a>纸上拍摄的图片的架构。文中提到使用反褶积方法,使得输入的任何大小都是可能的。这可以在下图中看到。在</p>
<p><a href="https://github.com/dhasl002/Research-DeepLearning" rel="noreferrer">Github Repository</a></p>
<p><a href="https://i.stack.imgur.com/VgITR.png" rel="noreferrer"><img src="https://i.stack.imgur.com/VgITR.png" alt="enter image description here"/></a></p>
<p>目前,我已经硬编码我的模型,以接受32x32x7大小的图像,但我想接受任何大小的输入。<strong>我需要对代码进行哪些更改才能接受可变大小的输入?</strong></p>
<pre><code> x = tf.placeholder(tf.float32, shape=[None, 32*32*7])
y_ = tf.placeholder(tf.float32, shape=[None, 32*32*7, 3])
...
DeConnv1 = tf.nn.conv3d_transpose(layer1, filter = w, output_shape = [1,32,32,7,1], strides = [1,2,2,2,1], padding = 'SAME')
...
final = tf.reshape(final, [1, 32*32*7])
W_final = weight_variable([32*32*7,32*32*7,3])
b_final = bias_variable([32*32*7,3])
final_conv = tf.tensordot(final, W_final, axes=[[1], [1]]) + b_final
</code></pre>