Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(4->3) Add GUI Elements for Interacting With RecordingSession #1283

Open
wants to merge 65 commits into
base: liezl/asc-initial-update-instances-across-views
Choose a base branch
from
Open
Changes from 3 commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
ff1c45f
Fix (de)serialization of `RecordingSession`
roomrys Apr 18, 2023
4ec66b5
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys Apr 19, 2023
b694b7b
Remove tracks from multiview dataset
roomrys Apr 19, 2023
5807276
Merge branch 'liezl/asc-initial-update-instances-across-views' of htt…
roomrys Apr 19, 2023
9dd22f7
Merge branch 'liezl/asc-initial-update-instances-across-views' of htt…
roomrys Apr 19, 2023
c6c97d0
[wip] Add sessions dock for triangulation on demmand
roomrys Apr 19, 2023
9f8474a
Move some logic from app to `TriangulateSession` command
roomrys Apr 19, 2023
dd76841
Move `RecordingSession.update_views` to `TriangulateSession`
roomrys Apr 19, 2023
89ec6a2
Make `triangulateSession` more testable
roomrys Apr 19, 2023
9d9e5e3
Add shortcut for navigating views
roomrys Apr 20, 2023
66440c5
Replace `RecordingSession` test data
roomrys Apr 24, 2023
f66438d
Add `RecordingSession` to test set and adapt fixture
roomrys Apr 24, 2023
526b9c2
Merge branch 'liezl/iuiav-fix-(de)-serialization' into liezl/add-gui-…
roomrys Apr 24, 2023
0037d88
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys Apr 27, 2023
90609af
Merge branch 'liezl/iuiav-fix-(de)-serialization' into liezl/add-gui-…
roomrys Apr 27, 2023
1d2fb50
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys Jul 20, 2023
264c2b6
Merge branch 'liezl/iuiav-fix-(de)-serialization' into liezl/add-gui-…
roomrys Jul 20, 2023
9896a19
Merge branch 'liezl/asc-initial-update-instances-across-views' of htt…
roomrys Oct 13, 2023
b53c103
Refactor `TriangulateSession`
roomrys Oct 13, 2023
2c9ea0c
Uncomment test lines
roomrys Oct 13, 2023
b9e7158
Merge branch 'liezl/asc-initial-update-instances-across-views' of htt…
roomrys Oct 16, 2023
5d67989
Add "goto prev view" to yaml
roomrys Oct 16, 2023
b61d90b
Add `Ctrl` key to mark instances as incomplete
roomrys Oct 16, 2023
cc78c91
Merge branch 'liezl/asc-initial-update-instances-across-views' of htt…
roomrys Oct 19, 2023
90a2c0e
Add `RecordingSession`s table to `SessionsDock` (#1654)
vaibhavtrip29 Mar 15, 2024
145a1d1
Add `CamerasTable` to `SessionsDock` (#1671)
roomrys Mar 18, 2024
936663e
(4a -> 4) Add `UnlinkedVideosTable` to `SessionsDock` (#1720)
roomrys Apr 5, 2024
b6f6563
Merge branch 'liezl/asc-initial-update-instances-across-views' of htt…
Apr 18, 2024
72788a2
Lint
Apr 18, 2024
106d023
(4b -> 4) Display the left-ellipsis for Video filename in UnlinkedVid…
7174Andy Apr 19, 2024
481a07f
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys Apr 23, 2024
370573f
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys Apr 25, 2024
ce9f2a1
Always use `Instance.from_predicted` to determine `Labels.instances_t…
Apr 25, 2024
72e03d2
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys Apr 25, 2024
3cb6fc7
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys May 1, 2024
84dc0eb
(4a -> 4) Add menu to assign an `Instance` to an `InstanceGroup` (#1747)
ramizhajj1 May 1, 2024
45eeea7
Merge branch 'liezl/asc-initial-update-instances-across-views' into l…
roomrys May 2, 2024
6de801c
(4c -> 4) Add color by `InstanceGroup` option (#1760)
7174Andy May 29, 2024
e5b8c67
(4a -> 4) Add instance group dock (#1775)
vaibhavtrip29 May 29, 2024
ddeb083
(4a -> 4) Re-encode multiview videos (#1787)
roomrys May 29, 2024
00f9a3b
(4a -> 4) Add double click functionality to UnlinkVideoTable (#1763)
ramizhajj1 May 29, 2024
3cba6d0
Update session as callback to updating video
roomrys May 30, 2024
83713d3
Fix coloring issue where ungrouped instances where colored black
roomrys May 30, 2024
52962a0
(4a -> 4) Add visual indicator for current camera (#1783)
justinvshen May 30, 2024
d4136f5
Change switch view hotkey (#1793)
justinvshen Jun 7, 2024
f9858ad
(4b -> 4) Automatically add videos when “Add Recording Session” (#1788)
7174Andy Jun 8, 2024
c76a030
Add feature to maintain current frame index (#1789)
ramizhajj1 Jun 20, 2024
a5b4769
Fix skeleton table coloring bug (#1826)
roomrys Jun 25, 2024
a32d68a
Add id property to RecordingSession (#1829)
roomrys Jun 26, 2024
5d120c6
Switch to linked video when double click on camera in `CamerasTable` …
7174Andy Jul 1, 2024
42ffe4e
Link videos to camera when add session (#1827)
roomrys Jul 1, 2024
475283d
Overwrite the `CameraGroup.optim_points` function (#1845)
roomrys Jul 3, 2024
f82a0d6
Always update non visible points (#1844)
roomrys Jul 9, 2024
16e775d
Use oks score for reprojections (#1836)
roomrys Jul 9, 2024
1bc63ed
Add editing feature for InstanceGroup.name (#1819)
justinvshen Jul 10, 2024
0f9fe25
Enforce projection bounds (#1863)
roomrys Jul 12, 2024
69e00b1
Add highlight for instance group dock (#1860)
justinvshen Jul 26, 2024
f97e19d
Ensure cameras follow same order when (de)serializing
roomrys Oct 4, 2024
b55d4ef
Revert changes to sort cameras before (de)serializing
roomrys Oct 4, 2024
c7185c7
Add color by instance group preference saving (#1999)
justinvshen Nov 1, 2024
62035aa
[Temp MV fix to] add frame to Instance (when using Labels.add_instanc…
roomrys Nov 1, 2024
ef8a496
[MV] Update instance state as frame idx callback (#2012)
roomrys Nov 1, 2024
ef9751a
Check if predicted instance is removed that it's not referenced (#2026)
justinvshen Nov 22, 2024
9775fc2
[MV] Do not sort keys when loading calibration toml (#2038)
roomrys Dec 13, 2024
d898a84
Add timeout to CI tests
roomrys Feb 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 50 additions & 18 deletions tests/data/cameras/minimal_session/calibration.toml
Original file line number Diff line number Diff line change
@@ -1,33 +1,65 @@
[cam_0]
name = "back"
size = [ 1280, 1024,]
matrix = [ [ 769.8864926727645, 0.0, 639.5,], [ 0.0, 769.8864926727645, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.2853406116327607, 0.0, 0.0, 0.0, 0.0,]
rotation = [ -0.01620434170631696, 0.00243953661952865, -0.0008482754607133058,]
translation = [ 0.11101046010648573, -5.942766688873288, -122.27936818948484,]
matrix = [ [ 762.513822135494, 0.0, 639.5,], [ 0.0, 762.513822135494, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.2868458380166852, 0.0, 0.0, 0.0, 0.0,]
rotation = [ 0.3571857188780474, 0.8879473292757126, 1.6832001677006176,]
translation = [ -555.4577842902744, -294.43494957092884, -190.82196458369515,]

[cam_1]
name = "mid"
name = "backL"
size = [ 1280, 1024,]
matrix = [ [ 759.1049091821777, 0.0, 639.5,], [ 0.0, 759.1049091821777, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.3019598217075406, 0.0, 0.0, 0.0, 0.0,]
rotation = [ -0.5899610967415617, -1.4541149329590473, -2.6096557771132054,]
translation = [ -117.01279148208383, -335.68277970969496, 87.84524145188074,]
matrix = [ [ 817.6484736604496, 0.0, 639.5,], [ 0.0, 817.6484736604496, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.33100176822475913, 0.0, 0.0, 0.0, 0.0,]
rotation = [ -0.026283027462693898, -0.010379556518966196, -0.027099257463872917,]
translation = [ 9.862823625864475, -26.76921192059893, -434.1389532578435,]

[cam_2]
name = "side"
name = "mid"
size = [ 1280, 1024,]
matrix = [ [ 964.7203950924776, 0.0, 639.5,], [ 0.0, 964.7203950924776, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.2939343017698909, 0.0, 0.0, 0.0, 0.0,]
rotation = [ 0.5133644577490065, 0.4933577839393885, 2.712950645410121,]
translation = [ -137.65379909555472, -91.75965072441964, -19.01274966036669,]
matrix = [ [ 757.8876636778425, 0.0, 639.5,], [ 0.0, 757.8876636778425, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.28903872836928324, 0.0, 0.0, 0.0, 0.0,]
rotation = [ -0.37194922755270515, -0.4001867844465869, -1.0086626457565362,]
translation = [ 170.36246990443806, -465.67014395255075, -308.4662718040283,]

[cam_3]
name = "midL"
size = [ 1280, 1024,]
matrix = [ [ 865.1641815534884, 0.0, 639.5,], [ 0.0, 865.1641815534884, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.36452920053871213, 0.0, 0.0, 0.0, 0.0,]
rotation = [ 0.05817434916890774, -1.054534889033804, -2.7344311787180726,]
translation = [ 64.84029309392507, -664.6153475753681, -175.7828934255145,]

[cam_4]
name = "side"
size = [ 1280, 1024,]
matrix = [ [ 754.7093944045533, 0.0, 639.5,], [ 0.0, 754.7093944045533, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.2952746154319528, 0.0, 0.0, 0.0, 0.0,]
rotation = [ -0.8648522139486137, -1.1788453690264329, -1.0219549009876152,]
translation = [ 260.9490547859552, -1027.1241968566128, 279.38287656265214,]

[cam_5]
name = "sideL"
size = [ 1280, 1024,]
matrix = [ [ 754.8402306632529, 0.0, 639.5,], [ 0.0, 754.8402306632529, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.28917397473074263, 0.0, 0.0, 0.0, 0.0,]
rotation = [ -0.7375958632452171, -1.5393315718217462, -1.3307245772011242,]
translation = [ 254.07566513275054, -1043.3222053681916, 408.2123665768046,]

[cam_6]
name = "top"
size = [ 1280, 1024,]
matrix = [ [ 964.7203950924776, 0.0, 639.5,], [ 0.0, 964.7203950924776, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.2939343017698909, 0.0, 0.0, 0.0, 0.0,]
rotation = [ 0.5133644577490065, 0.4933577839393885, 2.712950645410121,]
translation = [ -137.65379909555472, -91.75965072441964, -19.01274966036669,]
matrix = [ [ 958.8409001521982, 0.0, 639.5,], [ 0.0, 958.8409001521982, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.2883038721040841, 0.0, 0.0, 0.0, 0.0,]
rotation = [ 0.14923195260261604, -0.35651045266677683, -1.571999724050101,]
translation = [ 320.58744336418937, -113.31460508230508, -298.24659146410477,]

[cam_7]
name = "topL"
size = [ 1280, 1024,]
matrix = [ [ 860.8004120100271, 0.0, 639.5,], [ 0.0, 860.8004120100271, 511.5,], [ 0.0, 0.0, 1.0,],]
distortions = [ -0.34378860528857375, 0.0, 0.0, 0.0, 0.0,]
rotation = [ 0.19329909189795189, -0.4852167922768701, -1.5625699029758116,]
translation = [ 459.78373522464585, -180.81976306477637, -266.6352363727575,]

[metadata]
Binary file not shown.
Binary file not shown.
Binary file added tests/data/videos/min_session_back.mp4
Binary file not shown.
Binary file added tests/data/videos/min_session_backL.mp4
Binary file not shown.
Binary file added tests/data/videos/min_session_mid.mp4
Binary file not shown.
Binary file added tests/data/videos/min_session_midL.mp4
Binary file not shown.
Binary file added tests/data/videos/min_session_side.mp4
Binary file not shown.
Binary file added tests/data/videos/min_session_sideL.mp4
Binary file not shown.
Binary file added tests/data/videos/min_session_top.mp4
Binary file not shown.
Binary file added tests/data/videos/min_session_topL.mp4
Binary file not shown.
Binary file removed tests/data/videos/minimal_back.mp4
Binary file not shown.
Binary file removed tests/data/videos/minimal_mid.mp4
Binary file not shown.
Binary file removed tests/data/videos/minimal_side.mp4
Binary file not shown.
Binary file removed tests/data/videos/minimal_top.mp4
Binary file not shown.
2 changes: 1 addition & 1 deletion tests/fixtures/datasets.py
Original file line number Diff line number Diff line change
@@ -250,6 +250,6 @@ def movenet_video():
@pytest.fixture
def multiview_min_session_labels():
return Labels.load_file(
"tests/data/cameras/minimal_session/minimal_proofread.slp",
"tests/data/cameras/minimal_session/min_session.slp",
video_search=["tests/data/videos/"],
)
2 changes: 1 addition & 1 deletion tests/io/test_cameras.py
Original file line number Diff line number Diff line change
@@ -64,7 +64,7 @@ def test_camera_cluster(

# Test __len__
assert len(camera_cluster) == len(camera_cluster.cameras)
assert len(camera_cluster) == 4
assert len(camera_cluster) == 8

# Test __getitem__, __iter__, and __contains__
for idx, cam in enumerate(camera_cluster):