Skip to content

Commit ce4db23

Browse files
Merge branch 'main' into lpconvert
2 parents 4d95221 + 1b68ded commit ce4db23

3 files changed

Lines changed: 14 additions & 14 deletions

File tree

poseinterface/io.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -640,8 +640,8 @@ def _convert_movement_ds_to_videolabels(
640640
positions = ds["position"].values # (time, space, keypoints, individuals)
641641
n_frames = positions.shape[0]
642642

643-
keypoint_names = ds.coords["keypoints"].values.tolist()
644-
individual_names = ds.coords["individuals"].values.tolist()
643+
keypoint_names = ds.coords["keypoint"].values.tolist()
644+
individual_names = ds.coords["individual"].values.tolist()
645645

646646
# Build categories list (one entry per individual)
647647
# NOTE: categories are 1-indexed to avoid conflicts

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ dynamic = ["version"]
1212

1313
dependencies = [
1414
"jupyter>=1.1.1",
15-
"movement==0.16.0",
15+
"movement>=0.17.0",
1616
"sleap-io>=0.7.1",
1717
]
1818

tests/test_unit/test_io.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -72,19 +72,19 @@ def sample_movement_ds():
7272
return xr.Dataset(
7373
{
7474
"position": (
75-
["time", "space", "keypoints", "individuals"],
75+
["time", "space", "keypoint", "individual"],
7676
position_array,
7777
),
7878
"confidence": (
79-
["time", "keypoints", "individuals"],
79+
["time", "keypoint", "individual"],
8080
confidence_array,
8181
),
8282
},
8383
coords={
8484
"time": [0, 1],
8585
"space": ["x", "y"],
86-
"keypoints": ["Nose", "Tail"],
87-
"individuals": ["id_0"],
86+
"keypoint": ["Nose", "Tail"],
87+
"individual": ["id_0"],
8888
},
8989
)
9090

@@ -844,22 +844,22 @@ def test_convert_movement_ds_to_videolabels(
844844
assert coco_data["images"][k]["width"] == img_w
845845
assert coco_data["images"][k]["height"] == img_h
846846

847-
assert len(coco_data["categories"]) == len(ds.individuals)
848-
assert coco_data["categories"][0]["name"] == ds.individuals.values[0]
847+
assert len(coco_data["categories"]) == len(ds.individual)
848+
assert coco_data["categories"][0]["name"] == ds.individual.values[0]
849849
assert (
850-
coco_data["categories"][0]["keypoints"] == ds.keypoints.values.tolist()
850+
coco_data["categories"][0]["keypoints"] == ds.keypoint.values.tolist()
851851
)
852852

853853
# 2 frames x 1 individual = 2 annotations
854-
assert len(coco_data["annotations"]) == len(ds.time) * len(ds.individuals)
854+
assert len(coco_data["annotations"]) == len(ds.time) * len(ds.individual)
855855

856856
# Frame 0: both keypoints visible, kpt0=(10, 30), kpt1=(20, 40)
857857
annot0 = coco_data["annotations"][0]
858858
assert annot0["num_keypoints"] == 2
859859
assert annot0["keypoints"] == [
860-
*ds.position.isel(time=0, keypoints=0, individuals=0).values.tolist(),
860+
*ds.position.isel(time=0, keypoint=0, individual=0).values.tolist(),
861861
2.0,
862-
*ds.position.isel(time=0, keypoints=1, individuals=0).values.tolist(),
862+
*ds.position.isel(time=0, keypoint=1, individual=0).values.tolist(),
863863
2.0,
864864
]
865865
# bbox: [xmin, ymin, width, height]
@@ -873,7 +873,7 @@ def test_convert_movement_ds_to_videolabels(
873873
0.0,
874874
0.0,
875875
0.0,
876-
*ds.position.isel(time=1, keypoints=1, individuals=0).values.tolist(),
876+
*ds.position.isel(time=1, keypoint=1, individual=0).values.tolist(),
877877
2.0,
878878
]
879879
# bbox covers only the single visible keypoint

0 commit comments

Comments
 (0)