6 Commits
Author SHA1 Message Date
luni 45cbfe4da0 try less gnn 2023-02-26 10:41:11 +00:00
luni 5ecf87c401 gnn_4 2023-02-24 21:34:29 +00:00
luni 53bfbabcd7 gnn_4 2023-02-24 21:32:02 +00:00
luni 9a74c476a6 gnn_3 2023-02-24 21:31:37 +00:00
luni 68b2d0d3af new gnn smoothing trial 2023-02-24 18:52:37 +00:00
luni 21bd18cbe2 fix training 2023-02-22 22:51:00 +00:00
4 changed files with 13 additions and 14 deletions
+1 -1
View File
@@ -8,7 +8,7 @@ nohup python auto_encoder_body.py --name="lhunor_body_iccv_1_skirt" > nohup/iccv
nohup python auto_encoder_curv.py --name="lhunor_curv_iccv_1 " > nohup/iccv/encoders/curv_iccv_1.out 2>&1 &
nohup python auto_encoder_curv.py --name="lhunor_curv_iccv_1_skirt" > nohup/iccv/encoders/curv_iccv_1_skirt.out 2>&1 &
nohup python auto_encoder_curv.py --name="lhunor_curv_iccv_1_cape_f" > nohup/iccv/encoders/curv_iccv_1_cape_f.out 2>&1 &
nohup python cvae.py --name="lhunor_cvae_iccv_gnn_1" > nohup/iccv/cvae_iccv_gnn_1.out 2>&1 &
nohup python cvae.py --name="lhunor_cvae_iccv_gnn_5" > nohup/iccv/cvae_iccv_gnn_5.out 2>&1 &
skirts!!!!
pyramid next week
+2 -2
View File
@@ -19,8 +19,8 @@ config['only_curvatures'] = False
ablation_count = [config['use_skinning'], config['remove_global_orientation'], config['use_curvature'], config['use_extra_losses'], config['use_offsets']].count(False)
assert ablation_count == 1 or ablation_count == 0
config['gpu'] = '3'
config['name'] = 'iccv_gnn_2'
config['gpu'] = '0'
config['name'] = 'iccv_gnn_5'
config['notes'] = ''
config['tags'] = ['iccv', 'gnn']
+2 -2
View File
@@ -128,8 +128,8 @@ def train_step(batch):
# ms_ssim = tf.reduce_mean(tf.image.ssim_multiscale(pred + 5, batch['uv_unposed'] + 5, max_val=10, power_factors=(0.5, 0.2, 0.1, 0.1, 0.1)))
metric = tf.reduce_sum(tf.math.sqrt(tf.reduce_sum(batch['mesh_mask'][:,:,tf.newaxis] * (mesh_orig - mesh_pred) ** 2, axis=-1))) / tf.reduce_sum(batch['mesh_mask'])
gradients = tape.gradient(loss, model.trainable_variables)
optimizer.apply_gradients(zip(gradients, model.trainable_variables))
gradients = tape.gradient(loss, model.trainable_variables + smoother.trainable_variables)
optimizer.apply_gradients(zip(gradients, model.trainable_variables + smoother.trainable_variables))
return { 'train/loss': loss, 'train/edge_loss': e_loss, 'train/collision_loss': c_loss, 'train/euclid_error': metric,
'train/reconstr_loss': reconstr_loss, 'train/collision_ratio': c_ratio,
'train/mean': mean, 'train/logvar': logvar, 'train/kl_loss': kl, 'train/var': np.e ** logvar,
+8 -9
View File
@@ -16,21 +16,20 @@ class Smoother(tf.keras.Model):
def __init__(self, ):
super().__init__()
self.a = sp_matrix_to_sp_tensor(sio.loadmat("custom_utils/ssmpl0.mat")['L'].tocoo())
self.conv1 = GeneralConv(channels=32, batch_norm=True, dropout=0.1, aggregate='mean', activation='prelu', use_bias=True)
self.conv2 = GeneralConv(channels=128, batch_norm=True, dropout=0.1, aggregate='mean', activation='prelu', use_bias=True)
self.conv3 = GeneralConv(channels=64, batch_norm=True, dropout=0.0, aggregate='mean', activation='prelu', use_bias=True)
self.conv4 = GeneralConv(channels=16, batch_norm=True, dropout=0.0, aggregate='mean', activation='prelu', use_bias=True)
self.conv5 = GCNConv(3, activation='tanh', use_bias=False)
self.conv1 = GCNConv(3, activation='tanh', use_bias=False)
self.conv2 = GCNConv(3, activation='tanh', use_bias=False)
# self.conv3 = GCNConv(3, activation='tanh', use_bias=False)
# self.conv4 = GCNConv(64, activation='tanh', use_bias=False)
# self.conv5 = GCNConv(64, activation='tanh', use_bias=False)
self.conv6 = GCNConv(3, activation='tanh', use_bias=False)
def call(self, inputs, training=None):
x = inputs
x = self.conv1([x, self.a], training=training)
x = self.conv2([x, self.a], training=training)
x = self.conv3([x, self.a], training=training)
x = self.conv4([x, self.a], training=training)
x = self.conv5([x, self.a], training=training)
# x = self.conv3([x, self.a], training=training)
# x = self.conv4([x, self.a], training=training)
# x = self.conv5([x, self.a], training=training)
x = self.conv6([x, self.a], training=training)
return x