Spaces:
Paused
Paused
| import subprocess, sys, os | |
| import tyro | |
| from pixel3dmm import env_paths | |
| def run_and_check(cmd, cwd=None): | |
| print(f"> {' '.join(cmd)} (in {cwd or os.getcwd()})") | |
| # stream logs live | |
| result = subprocess.run( | |
| cmd, | |
| cwd=cwd, | |
| check=True, | |
| ) | |
| return result | |
| def main(video_or_images_path: str): | |
| vid_name = ( | |
| os.path.basename(video_or_images_path) | |
| if os.path.isdir(video_or_images_path) | |
| else os.path.splitext(os.path.basename(video_or_images_path))[0] | |
| ) | |
| SCRIPTS = os.path.join(env_paths.CODE_BASE, "scripts") | |
| MICA = os.path.join(env_paths.CODE_BASE, "src", "pixel3dmm", "preprocessing", "MICA") | |
| try: | |
| run_and_check( | |
| [sys.executable, "-u", "run_cropping.py", "--video_or_images_path", video_or_images_path], | |
| cwd=SCRIPTS, | |
| ) | |
| run_and_check( | |
| [sys.executable, "-u", "demo.py", "-video_name", vid_name], | |
| cwd=MICA, | |
| ) | |
| run_and_check( | |
| [sys.executable, "-u", "run_facer_segmentation.py", "--video_name", vid_name], | |
| cwd=SCRIPTS, | |
| ) | |
| except subprocess.CalledProcessError as e: | |
| print(f"ERROR: {e.cmd!r} exited with {e.returncode}", file=sys.stderr) | |
| print("---- STDOUT ----", file=sys.stderr) | |
| print(e.stdout, file=sys.stderr) | |
| print("---- STDERR ----", file=sys.stderr) | |
| sys.exit(e.returncode) | |
| if __name__ == "__main__": | |
| tyro.cli(main) | |