From d92a18e212e93f4c804d35221f2a93af5e3fe363 Mon Sep 17 00:00:00 2001 From: Hunor Laczko Date: Tue, 14 Mar 2023 14:08:03 +0000 Subject: [PATCH] save --- aaa_helpers.txt | 1 + calculate_error.py | 10 ++-- .../iccv/config_abl_pyr_32_64_128_256_seq.py | 4 +- evaluate_ae_pyramid.py | 2 +- get_error.py | 46 +++++++++---------- 5 files changed, 32 insertions(+), 31 deletions(-) diff --git a/aaa_helpers.txt b/aaa_helpers.txt index 9c4c9ca..db2d2f9 100644 --- a/aaa_helpers.txt +++ b/aaa_helpers.txt @@ -165,6 +165,7 @@ nohup python evaluate_ae_pyramid.py --name evaluate_ae_iccv_pyr_32_64_128_curv > nohup python evaluate_ae_pyramid.py --name evaluate_ae_iccv_pyr_32_64_128_curv_skirt > nohup/iccv/evaluate/iccv_pyr_32_64_128_curv_skirt.out 2>&1 & nohup python evaluate_ae_pyramid.py --name evaluate_ae_iccv_pyr_32_64_128_256 > nohup/iccv/evaluate/iccv_pyr_32_64_128_256.out 2>&1 & +nohup python evaluate_ae_pyramid.py --name evaluate_ae_iccv_pyr_32_64_128_256_seq > nohup/iccv/evaluate/iccv_pyr_32_64_128_256_seq.out 2>&1 & nohup python evaluate_ae_pyramid.py --name evaluate_ae_iccv_pyr_32_64_128_256_skirt > nohup/iccv/evaluate/iccv_pyr_32_64_128_256_skirt.out 2>&1 & nohup python evaluate_ae_pyramid.py --name evaluate_ae_iccv_pyr_32_64_128_256_skin > nohup/iccv/evaluate/iccv_pyr_32_64_128_256_skin.out 2>&1 & nohup python evaluate_ae_pyramid.py --name evaluate_ae_iccv_pyr_32_64_128_256_curv > nohup/iccv/evaluate/iccv_pyr_32_64_128_256_curv.out 2>&1 & diff --git a/calculate_error.py b/calculate_error.py index c08f03d..80ebb38 100644 --- a/calculate_error.py +++ b/calculate_error.py @@ -1,6 +1,6 @@ import os import sys -from configs.iccv.config_abl_pyr_32_64_128_skin_skirt import config +from configs.iccv.config_abl_pyr_32_64_128_256_seq import config os.environ["CUDA_VISIBLE_DEVICES"] = config['gpu'] import tensorflow as tf @@ -58,7 +58,7 @@ if __name__ == '__main__': # smpl = SMPL(use_one_hot=config['use_one_hot']) skirt_modifier = '_skirt' if config['is_skirt'] else '' - error_type = 'collision' # 'euclidean' 'collision' edge normal + error_type = 'euclidean' # 'euclidean' 'collision' edge normal folder = config['test_dir'] @@ -92,9 +92,9 @@ if __name__ == '__main__': frames = [frame for frame in frames if not frame.endswith('_fixed_coll.npy')] # frames = frames[:100] - print('Reading bodies...') - bodies_folder = '/home/workspace/local-data' + ('' if config['is_skirt'] else '_127') + '/test' + ('_skirt' if config['is_skirt'] else '') + '_ready' + ('_2' if config['is_skirt'] else '') + '/mesh_posed_body_no_orient' - bodies = {frame : np.load(bodies_folder + '/' + frame[:-1] + 'z')['mesh_posed_body_no_orient'] for frame in tqdm(frames) } + # print('Reading bodies...') + # bodies_folder = '/home/workspace/local-data' + ('' if config['is_skirt'] else '_127') + '/test' + ('_skirt' if config['is_skirt'] else '') + '_ready' + ('_2' if config['is_skirt'] else '') + '/mesh_posed_body_no_orient' + # bodies = {frame : np.load(bodies_folder + '/' + frame[:-1] + 'z')['mesh_posed_body_no_orient'] for frame in tqdm(frames) } if config['remove_global_orientation']: gt_name = 'mesh_posed_no_orient' diff --git a/configs/iccv/config_abl_pyr_32_64_128_256_seq.py b/configs/iccv/config_abl_pyr_32_64_128_256_seq.py index 8640b23..4ddab6d 100644 --- a/configs/iccv/config_abl_pyr_32_64_128_256_seq.py +++ b/configs/iccv/config_abl_pyr_32_64_128_256_seq.py @@ -1,6 +1,6 @@ config = dict() -config['gpu'] = '4' +config['gpu'] = '3' config['name'] = 'iccv_pyr_32_64_128_256_seq_2' config['notes'] = '' config['tags'] = ['pyr', 'iccv'] @@ -32,7 +32,7 @@ config['pyramid']['final_upscale_enhancer'] = '' config['train_dir'] = '/home/workspace/local-data/train' config['valid_dir'] = '/home/workspace/local-data/valid' -config['test_dir'] = '/home/workspace/local-data_127/test_ready' +config['test_dir'] = '/home/workspace/local-data/test_ready' config['batch_size'] = 4 config['is_skirt'] = False diff --git a/evaluate_ae_pyramid.py b/evaluate_ae_pyramid.py index a582d20..6e965a5 100644 --- a/evaluate_ae_pyramid.py +++ b/evaluate_ae_pyramid.py @@ -1,6 +1,6 @@ import os import sys -from configs.iccv.config_abl_pyr_32_64_128_skin_skirt import config +from configs.iccv.config_abl_pyr_32_64_128_256_seq import config os.environ["CUDA_VISIBLE_DEVICES"] = config['gpu'] import tensorflow as tf diff --git a/get_error.py b/get_error.py index 5379a97..8311d7a 100644 --- a/get_error.py +++ b/get_error.py @@ -8,11 +8,11 @@ if __name__ == '__main__': garment_type_table = np.load('custom_data/garment_type_table_test.npy', allow_pickle=True).item() folder = '/home/workspace/data/results/errors/iccv' - checkpoint_name = 'iccv_pyr_32_64_128_skin' + checkpoint_name = 'iccv_pyr_32_64_128_256_seq_2' checkpoint_name_skirt = 'iccv_pyr_32_64_128_skin_skirt' - iteration = '75' + '000' + iteration = '185' + '000' iteration_skirt : str = '155' + '000' - error_type = 'collision' # 'euclidean' 'collision' edge normal + error_type = 'euclidean' # 'euclidean' 'collision' edge normal errors = [] @@ -21,31 +21,31 @@ if __name__ == '__main__': per_garment_errors_skirt = { 'Tshirt': [], 'Dress': [], 'Skirt': [], 'Top': [] } - # with open(os.path.join(folder, f'{checkpoint_name}-{iteration}-{error_type}.csv'), 'r') as f: - # csv_reader = csv.reader(f, delimiter=',') - # for row in csv_reader: - # per_garment_errors[garment_type_table[row[0].split('_')[0]]].append(float(row[1])) - - # print('\nNon-skirt:') - # for key in per_garment_errors.keys(): - # avg = np.mean(per_garment_errors[key]) - # errors.append(avg) - # print(key + ': ' + str(avg)) - - # print('\nAvg non-skirt: ' + str(np.mean(errors))) - - with open(os.path.join(folder, f'{checkpoint_name_skirt}-{iteration_skirt}-{error_type}.csv'), 'r') as f: + with open(os.path.join(folder, f'{checkpoint_name}-{iteration}-{error_type}.csv'), 'r') as f: csv_reader = csv.reader(f, delimiter=',') for row in csv_reader: - per_garment_errors_skirt[garment_type_table[row[0].split('_')[0]]].append(float(row[1])) + per_garment_errors[garment_type_table[row[0].split('_')[0]]].append(float(row[1])) - print('\nSkirt:') - for key in per_garment_errors_skirt.keys(): - avg = np.mean(per_garment_errors_skirt[key]) - errors_skirt.append(avg) + print('\nNon-skirt:') + for key in per_garment_errors.keys(): + avg = np.mean(per_garment_errors[key]) + errors.append(avg) print(key + ': ' + str(avg)) - print('Avg skirt: ' + str(np.mean(errors_skirt))) + print('\nAvg non-skirt: ' + str(np.mean(errors))) + + # with open(os.path.join(folder, f'{checkpoint_name_skirt}-{iteration_skirt}-{error_type}.csv'), 'r') as f: + # csv_reader = csv.reader(f, delimiter=',') + # for row in csv_reader: + # per_garment_errors_skirt[garment_type_table[row[0].split('_')[0]]].append(float(row[1])) + + # print('\nSkirt:') + # for key in per_garment_errors_skirt.keys(): + # avg = np.mean(per_garment_errors_skirt[key]) + # errors_skirt.append(avg) + # print(key + ': ' + str(avg)) + + # print('Avg skirt: ' + str(np.mean(errors_skirt))) # cum_avg_shirt = np.mean(per_garment_errors['Tshirt'] + per_garment_errors_skirt['Tshirt']) # cum_avg_top = np.mean(per_garment_errors['Top'] + per_garment_errors_skirt['Top'])