Spaces:
Paused
Paused
output pose coords as list
Browse files- libs/easy_dwpose/dwpose.py +4 -2
- main.py +6 -1
libs/easy_dwpose/dwpose.py
CHANGED
|
@@ -26,7 +26,7 @@ class DWposeDetector:
|
|
| 26 |
candidates[..., 1] /= float(height)
|
| 27 |
|
| 28 |
bodies = candidates[:, :18].copy()
|
| 29 |
-
|
| 30 |
|
| 31 |
body_scores = scores[:, :18]
|
| 32 |
for i in range(len(body_scores)):
|
|
@@ -43,12 +43,14 @@ class DWposeDetector:
|
|
| 43 |
hands_scores = np.vstack([scores[:, 92:113], scores[:, 113:]])
|
| 44 |
|
| 45 |
pose = dict(
|
| 46 |
-
bodies=
|
|
|
|
| 47 |
body_scores=body_scores,
|
| 48 |
hands=hands,
|
| 49 |
hands_scores=hands_scores,
|
| 50 |
faces=faces,
|
| 51 |
faces_scores=faces_scores,
|
|
|
|
| 52 |
)
|
| 53 |
|
| 54 |
return pose
|
|
|
|
| 26 |
candidates[..., 1] /= float(height)
|
| 27 |
|
| 28 |
bodies = candidates[:, :18].copy()
|
| 29 |
+
bodies_flat = bodies.reshape(num_candidates * 18, locs)
|
| 30 |
|
| 31 |
body_scores = scores[:, :18]
|
| 32 |
for i in range(len(body_scores)):
|
|
|
|
| 43 |
hands_scores = np.vstack([scores[:, 92:113], scores[:, 113:]])
|
| 44 |
|
| 45 |
pose = dict(
|
| 46 |
+
bodies=bodies_flat,
|
| 47 |
+
bodies_multi=bodies,
|
| 48 |
body_scores=body_scores,
|
| 49 |
hands=hands,
|
| 50 |
hands_scores=hands_scores,
|
| 51 |
faces=faces,
|
| 52 |
faces_scores=faces_scores,
|
| 53 |
+
num_candidates=num_candidates,
|
| 54 |
)
|
| 55 |
|
| 56 |
return pose
|
main.py
CHANGED
|
@@ -314,7 +314,12 @@ def prepare_inputs_inference(in_img, in_vid, fps, dwpose, rembg_session, bg_remo
|
|
| 314 |
#print(tpose_coords)
|
| 315 |
coords = {}
|
| 316 |
for k in tpose_coords:
|
| 317 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 318 |
#print(coords)
|
| 319 |
target_poses.append(tpose)
|
| 320 |
target_poses_coords.append(json.dumps(coords))
|
|
|
|
| 314 |
#print(tpose_coords)
|
| 315 |
coords = {}
|
| 316 |
for k in tpose_coords:
|
| 317 |
+
if k == 'bodies_multi':
|
| 318 |
+
coords['bodies'] = tpose_coords[k].tolist()
|
| 319 |
+
elif k in ['hands']:
|
| 320 |
+
coords[k] = tpose_coords[k].tolist()
|
| 321 |
+
elif k in ['num_candidates']:
|
| 322 |
+
coords[k] = tpose_coords[k]
|
| 323 |
#print(coords)
|
| 324 |
target_poses.append(tpose)
|
| 325 |
target_poses_coords.append(json.dumps(coords))
|