Red neuronal de convolución Tensorflow con imágenes de diferentes tamaños

Estoy intentando crear una CNN profunda que pueda clasificar cada píxel individual en una imagen. Estoy replicando la arquitectura de la imagen a continuación tomada deesta papel. En el documento se menciona que se utilizan desconvoluciones para que sea posible cualquier tamaño de entrada. Esto se puede ver en la imagen a continuación.

Repositorio Github

Actualmente, he codificado mi modelo para aceptar imágenes de tamaño 32x32x7, pero me gustaría aceptar cualquier tamaño de entrada.¿Qué cambios necesitaría hacer en mi código para aceptar entradas de tamaño variable?

 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

Respuestas a la pregunta(2)

Su respuesta a la pregunta