Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
@@ -94,10 +94,18 @@ def step2_preprocess(state):
|
|
94 |
base_dir = state["base_dir"]
|
95 |
trimmed = state["trimmed_path"]
|
96 |
|
97 |
-
|
|
|
|
|
|
|
|
|
98 |
"python", "scripts/run_preprocessing.py",
|
99 |
"--video_or_images_path", trimmed
|
100 |
], check=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
|
|
|
|
|
|
|
|
101 |
|
102 |
crop_dir = os.path.join(base_dir, "cropped")
|
103 |
out = os.path.join(os.path.dirname(trimmed), f"crop_{session_id}.mp4")
|
@@ -110,11 +118,17 @@ def step3_normals(state):
|
|
110 |
session_id = state["session_id"]
|
111 |
base_dir = state["base_dir"]
|
112 |
|
113 |
-
|
|
|
|
|
114 |
"python", "scripts/network_inference.py",
|
115 |
"model.prediction_type=normals", f"video_name={session_id}"
|
116 |
], check=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
117 |
-
|
|
|
|
|
|
|
|
|
118 |
normals_dir = os.path.join(base_dir, "p3dmm", "normals")
|
119 |
out = os.path.join(os.path.dirname(state["trimmed_path"]), f"normals_{session_id}.mp4")
|
120 |
video = make_video_from_frames(normals_dir, out)
|
@@ -126,10 +140,16 @@ def step4_uv_map(state):
|
|
126 |
session_id = state["session_id"]
|
127 |
base_dir = state["base_dir"]
|
128 |
|
129 |
-
|
|
|
|
|
130 |
"python", "scripts/network_inference.py",
|
131 |
"model.prediction_type=uv_map", f"video_name={session_id}"
|
132 |
], check=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
|
|
|
|
|
|
|
|
133 |
|
134 |
uv_dir = os.path.join(base_dir, "p3dmm", "uv_map")
|
135 |
out = os.path.join(os.path.dirname(state["trimmed_path"]), f"uv_map_{session_id}.mp4")
|
@@ -151,7 +171,7 @@ def step5_track(state):
|
|
151 |
except subprocess.CalledProcessError as e:
|
152 |
# e.stdout contains everything
|
153 |
err = f"❌ Tracking failed (exit {e.returncode}).\n\n{e.stdout}"
|
154 |
-
|
155 |
|
156 |
# if we get here, it succeeded:
|
157 |
tracking_dir = os.path.join(os.environ["PIXEL3DMM_TRACKING_OUTPUT"], session_id, "frames")
|
|
|
94 |
base_dir = state["base_dir"]
|
95 |
trimmed = state["trimmed_path"]
|
96 |
|
97 |
+
|
98 |
+
|
99 |
+
try:
|
100 |
+
# capture both stdout & stderr
|
101 |
+
p = subprocess.run([
|
102 |
"python", "scripts/run_preprocessing.py",
|
103 |
"--video_or_images_path", trimmed
|
104 |
], check=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
105 |
+
except subprocess.CalledProcessError as e:
|
106 |
+
# e.stdout contains everything
|
107 |
+
err = f"❌ Preprocess failed (exit {e.returncode}).\n\n{e.stdout}"
|
108 |
+
raise RuntimeError(err)
|
109 |
|
110 |
crop_dir = os.path.join(base_dir, "cropped")
|
111 |
out = os.path.join(os.path.dirname(trimmed), f"crop_{session_id}.mp4")
|
|
|
118 |
session_id = state["session_id"]
|
119 |
base_dir = state["base_dir"]
|
120 |
|
121 |
+
try:
|
122 |
+
# capture both stdout & stderr
|
123 |
+
p = subprocess.run([
|
124 |
"python", "scripts/network_inference.py",
|
125 |
"model.prediction_type=normals", f"video_name={session_id}"
|
126 |
], check=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
127 |
+
except subprocess.CalledProcessError as e:
|
128 |
+
# e.stdout contains everything
|
129 |
+
err = f"❌ Normal map failed (exit {e.returncode}).\n\n{e.stdout}"
|
130 |
+
raise RuntimeError(err)
|
131 |
+
|
132 |
normals_dir = os.path.join(base_dir, "p3dmm", "normals")
|
133 |
out = os.path.join(os.path.dirname(state["trimmed_path"]), f"normals_{session_id}.mp4")
|
134 |
video = make_video_from_frames(normals_dir, out)
|
|
|
140 |
session_id = state["session_id"]
|
141 |
base_dir = state["base_dir"]
|
142 |
|
143 |
+
try:
|
144 |
+
# capture both stdout & stderr
|
145 |
+
p = subprocess.run([
|
146 |
"python", "scripts/network_inference.py",
|
147 |
"model.prediction_type=uv_map", f"video_name={session_id}"
|
148 |
], check=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
149 |
+
except subprocess.CalledProcessError as e:
|
150 |
+
# e.stdout contains everything
|
151 |
+
err = f"❌ UV map failed (exit {e.returncode}).\n\n{e.stdout}"
|
152 |
+
raise RuntimeError(err)
|
153 |
|
154 |
uv_dir = os.path.join(base_dir, "p3dmm", "uv_map")
|
155 |
out = os.path.join(os.path.dirname(state["trimmed_path"]), f"uv_map_{session_id}.mp4")
|
|
|
171 |
except subprocess.CalledProcessError as e:
|
172 |
# e.stdout contains everything
|
173 |
err = f"❌ Tracking failed (exit {e.returncode}).\n\n{e.stdout}"
|
174 |
+
raise RuntimeError(err)
|
175 |
|
176 |
# if we get here, it succeeded:
|
177 |
tracking_dir = os.path.join(os.environ["PIXEL3DMM_TRACKING_OUTPUT"], session_id, "frames")
|