| import os
|
| from .base import ArgumentParser, adding_cuda
|
| from .tools import load_args
|
|
|
|
|
| def parser():
|
| parser = ArgumentParser()
|
| parser.add_argument("checkpointname")
|
|
|
| opt = parser.parse_args()
|
|
|
| folder, checkpoint = os.path.split(opt.checkpointname)
|
| parameters = load_args(os.path.join(folder, "opt.yaml"))
|
|
|
| adding_cuda(parameters)
|
| epoch = int(checkpoint.split("_")[-1].split('.')[0])
|
| return parameters, folder, checkpoint, epoch
|
|
|
|
|
| def construct_checkpointname(parameters, folder):
|
| implist = [parameters["modelname"],
|
| parameters["dataset"],
|
| parameters["extraction_method"],
|
| parameters["pose_rep"]]
|
| if parameters["pose_rep"] != "xyz":
|
|
|
| if "glob" in parameters:
|
| implist.append("glob" if parameters["glob"] in [True, ""] else "noglob")
|
| else:
|
| implist.append("noglob")
|
| if "translation" in parameters:
|
| implist.append("translation" if parameters["translation"] in [True, ""] else "notranslation")
|
| else:
|
| implist.append("notranslation")
|
|
|
| if "rcxyz" in parameters["modelname"]:
|
| implist.append("joinstype_{}".format(parameters["jointstype"]))
|
|
|
| if "num_layers" in parameters:
|
| implist.append("numlayers_{}".format(parameters["num_layers"]))
|
|
|
| for name in ["num_frames", "min_len", "max_len", "num_seq_max"]:
|
| pvalue = parameters[name]
|
| pname = name.replace("_", "")
|
| if pvalue != -1:
|
| implist.append(f"{pname}_{pvalue}")
|
|
|
| if "view" in parameters:
|
| if parameters["view"] == "frontview":
|
| implist.append("frontview")
|
|
|
| if "use_z" in parameters:
|
| if parameters["use_z"] != 0:
|
| implist.append("usez")
|
| else:
|
| implist.append("noz")
|
|
|
| if "vertstrans" in parameters:
|
| implist.append("vetr" if parameters["vertstrans"] else "novetr")
|
|
|
| if "ablation" in parameters:
|
| abl = parameters["ablation"]
|
| if abl not in ["", None]:
|
| implist.append(f"abl_{abl}")
|
|
|
| if parameters["num_frames"] != -1:
|
| implist.append("sampling_{}".format(parameters["sampling"]))
|
| if parameters["sampling"] == "conseq":
|
| implist.append("samplingstep_{}".format(parameters["sampling_step"]))
|
| if "lambda_kl" in parameters:
|
| implist.append("kl_{:.0e}".format(float(parameters["lambda_kl"])))
|
|
|
| if "activation" in parameters:
|
| act = parameters["activation"]
|
| implist.append(act)
|
|
|
| implist.append("bs_{}".format(parameters["batch_size"]))
|
| implist.append("ldim_{}".format(parameters["latent_dim"]))
|
|
|
| checkpoint = "_".join(implist)
|
| return os.path.join(folder, checkpoint)
|
|
|
|
|
|
|