def generator(z, latent_c):
depths = [32, 64, 64, 64, 64, 64, 3]
sizes = zip(
np.linspace(4, IMAGE_SIZE['resized'][0], len(depths)).astype(np.int),
np.linspace(6, IMAGE_SIZE['resized'][1], len(depths)).astype(np.int))
with slim.arg_scope([slim.conv2d_transpose],
normalizer_fn=slim.batch_norm,
kernel_size=3):
with tf.variable_scope("gen"):
size = sizes.pop(0)
net = tf.concat(1, [z, latent_c])
net = slim.fully_connected(net, depths[0] * size[0] * size[1])
net = tf.reshape(net, [-1, size[0], size[1], depths[0]])
for depth in depths[1:-1] + [None]:
net = tf.image.resize_images(
net, sizes.pop(0),
tf.image.ResizeMethod.NEAREST_NEIGHBOR)
if depth:
net = slim.conv2d_transpose(net, depth)
net = slim.conv2d_transpose(
net, depths[-1], activation_fn=tf.nn.tanh, stride=1, normalizer_fn=None)
tf.image_summary("gen", net, max_images=8)
return net
评论列表
文章目录