From 456a8b2c378131b18ba38a4674cf9c9c16e3902d Mon Sep 17 00:00:00 2001 From: Hunor Laczko Date: Tue, 20 Sep 2022 22:55:32 +0000 Subject: [PATCH] add fix_noise option --- models/cvae_model.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/models/cvae_model.py b/models/cvae_model.py index df8f3eb..51458e3 100644 --- a/models/cvae_model.py +++ b/models/cvae_model.py @@ -159,8 +159,12 @@ class CVAE(tf.keras.Model): return x - def reparameterize(self, mean, logvar): + def reparameterize(self, mean, logvar, fix_noise=False): + if not fix_noise: eps = tf.random.normal(shape=mean.shape) + else: + eps = tf.random.normal(shape=(1, mean.shape[1])) + eps = tf.tile(eps, [mean.shape[0],1]) return eps * tf.exp(logvar * .5) + mean @@ -172,7 +176,7 @@ class CVAE(tf.keras.Model): return logits - def call(self, inputs, training=None, zero_latent=False): + def call(self, inputs, training=None, zero_latent=False, fix_noise=False): uv_unposed, uv_template, uv_body_posed, uv_curv = inputs uv_unposed, uv_template, uv_body_posed = tf.transpose(uv_unposed, [0,2,3,1]), tf.transpose(uv_template, [0,2,3,1]), tf.transpose(uv_body_posed, [0,2,3,1]) z_static = self.static_enc(uv_template) @@ -182,7 +186,7 @@ class CVAE(tf.keras.Model): x = tf.concat([uv_unposed, uv_template, uv_body_posed, uv_curv], axis=-1) mean, logvar = self.encoder(x) - z = self.reparameterize(mean, logvar) + z = self.reparameterize(mean, logvar, fix_noise) z_cond = tf.concat([z_static, z_body, z_curv], axis=-1) z_cond = self.cond_encoder(z_cond)