Spaces:
No application file
No application file
import argparse | |
import os | |
from visualize import vis_utils | |
import shutil | |
from tqdm import tqdm | |
if __name__ == '__main__': | |
parser = argparse.ArgumentParser() | |
parser.add_argument("--input_path", type=str, required=True, help='stick figure mp4 file to be rendered.') | |
parser.add_argument("--cuda", type=bool, default=True, help='') | |
parser.add_argument("--device", type=int, default=0, help='') | |
params = parser.parse_args() | |
assert params.input_path.endswith('.mp4') | |
parsed_name = os.path.basename(params.input_path).replace('.mp4', '').replace('sample', '').replace('rep', '') | |
sample_i, rep_i = [int(e) for e in parsed_name.split('_')] | |
npy_path = os.path.join(os.path.dirname(params.input_path), 'results.npy') | |
out_npy_path = params.input_path.replace('.mp4', '_smpl_params.npy') | |
assert os.path.exists(npy_path) | |
results_dir = params.input_path.replace('.mp4', '_obj') | |
if os.path.exists(results_dir): | |
shutil.rmtree(results_dir) | |
os.makedirs(results_dir) | |
npy2obj = vis_utils.npy2obj(npy_path, sample_i, rep_i, | |
device=params.device, cuda=params.cuda) | |
print('Saving obj files to [{}]'.format(os.path.abspath(results_dir))) | |
for frame_i in tqdm(range(npy2obj.real_num_frames)): | |
npy2obj.save_obj(os.path.join(results_dir, 'frame{:03d}.obj'.format(frame_i)), frame_i) | |
print('Saving SMPL params to [{}]'.format(os.path.abspath(out_npy_path))) | |
npy2obj.save_npy(out_npy_path) | |