diff --git a/cape_convert.py b/cape_convert.py index 2835b78..a42a336 100644 --- a/cape_convert.py +++ b/cape_convert.py @@ -587,7 +587,8 @@ def create_mask(): def verify(): - root = os.path.join('/home/workspace/local-data/cape_processed', phase, gender) + root = os.path.join('/home/workspace/local-data/train') + # root = os.path.join('/home/workspace/local-data/cape_processed', phase, gender) mesh_static = os.listdir(os.path.join(root, 'mesh_static')) @@ -617,6 +618,35 @@ def verify(): pass +def pack_data(): + in_folder = '/home/workspace/local-data/cape_processed/test/female' + out_folder = '/home/workspace/local-data/cape_processed/test/female_packed' + excluded = set(['mesh_static', 'uv_static_32', 'uv_static_64', 'uv_static_128', 'uv_static_256', 'uv_static', 'mesh_mask', 'uv_mask', 'curvatures_raw']) + os.makedirs(out_folder, exist_ok=True) + + sub_folders = sorted(os.listdir(in_folder)) + + frames = sorted(os.listdir(os.path.join(in_folder, 'pose_shape'))) + + for frame in tqdm.tqdm(frames): + out = dict() + id, frame_nr = frame.split('.')[0], frame.split('.')[1] + out['id'] = id + + for sub_f in sub_folders: + if sub_f in excluded: + continue + if os.path.exists(os.path.join(in_folder, sub_f, id + '.' + frame_nr + '.npz')): + data = np.load(os.path.join(in_folder, sub_f, id + '.' + frame_nr + '.npz')) + out[sub_f] = data[data.files[0]] + else: + data = np.load(os.path.join(in_folder, sub_f, id + '.' + frame_nr + '.npy')) + out[sub_f] = data + + np.savez_compressed(os.path.join(out_folder, id + '.' + frame_nr + '.npz'), out) + + + if __name__ == '__main__': phases = ['test', 'test', 'train', 'train'] genders = ['male', 'female', 'male', 'female'] @@ -630,6 +660,9 @@ if __name__ == '__main__': # create_static() # create_unposed() # create_posed() - verify() + # verify() + pass + + pack_data() print() \ No newline at end of file