mocap-desktop-gui 2.3.1__py3-none-any.whl → 2.4.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mocap_desktop_gui/__init__.py +4 -4
- mocap_desktop_gui/axengine_1755532232_2406665611.py +246 -0
- mocap_desktop_gui/gen/__init__.py +4 -4
- mocap_desktop_gui/gen/rc_icons.py +4 -4
- mocap_desktop_gui/gen/rc_qml.py +4 -4
- mocap_desktop_gui/gen/rc_style.py +4 -4
- mocap_desktop_gui/main.py +4 -4
- mocap_desktop_gui/mc/__init__.py +4 -4
- mocap_desktop_gui/mc/bld_fbx_2_glb.py +4 -4
- mocap_desktop_gui/mc/bld_utils.py +4 -4
- mocap_desktop_gui/mc/{camera_models.py → cm_license/AccessHandler.py} +4 -4
- mocap_desktop_gui/mc/cm_license/LicenseCheck.py +18 -0
- mocap_desktop_gui/mc/cm_license/ListProductItem.py +18 -0
- mocap_desktop_gui/mc/gpu_info.py +4 -4
- mocap_desktop_gui/mc/mc_actor_profile.py +4 -4
- mocap_desktop_gui/mc/mc_actor_profile_model.py +4 -4
- mocap_desktop_gui/mc/mc_app_manager.py +4 -4
- mocap_desktop_gui/mc/mc_auth_core.py +4 -4
- mocap_desktop_gui/mc/mc_calib.py +4 -4
- mocap_desktop_gui/mc/mc_calib_data.py +18 -0
- mocap_desktop_gui/mc/mc_camera_views_model.py +4 -4
- mocap_desktop_gui/mc/mc_cloud_service.py +4 -4
- mocap_desktop_gui/mc/mc_common_paths.py +4 -4
- mocap_desktop_gui/mc/mc_context.py +4 -4
- mocap_desktop_gui/mc/mc_diagnosis.py +4 -4
- mocap_desktop_gui/mc/mc_env_vars.py +18 -0
- mocap_desktop_gui/mc/mc_error_codes.py +4 -4
- mocap_desktop_gui/mc/mc_file_util.py +4 -4
- mocap_desktop_gui/mc/mc_import_folder.py +4 -4
- mocap_desktop_gui/mc/mc_intrinsic_cam_models.py +18 -0
- mocap_desktop_gui/mc/mc_mocap_edit_session.py +18 -0
- mocap_desktop_gui/mc/mc_mocap_models.py +4 -4
- mocap_desktop_gui/mc/mc_project.py +4 -4
- mocap_desktop_gui/mc/mc_project_manager.py +4 -4
- mocap_desktop_gui/mc/mc_qml_defines.py +4 -4
- mocap_desktop_gui/mc/mc_rig.py +4 -4
- mocap_desktop_gui/mc/mc_scene_3d_service.py +4 -4
- mocap_desktop_gui/mc/mc_sync_media_player.py +4 -4
- mocap_desktop_gui/mc/mc_sync_video_decoder_service.py +4 -4
- mocap_desktop_gui/mc/mc_sync_video_paint_item.py +4 -4
- mocap_desktop_gui/mc/mc_take.py +4 -4
- mocap_desktop_gui/mc/mc_take_cloud_job.py +4 -4
- mocap_desktop_gui/mc/mc_take_cloud_job_action.py +4 -4
- mocap_desktop_gui/mc/mc_take_cloud_job_calib.py +4 -4
- mocap_desktop_gui/mc/mc_take_list_model.py +4 -4
- mocap_desktop_gui/mc/mc_take_local_job.py +4 -4
- mocap_desktop_gui/mc/mc_take_local_job_action.py +4 -4
- mocap_desktop_gui/mc/mc_take_local_job_calib.py +4 -4
- mocap_desktop_gui/mc/mc_take_local_job_service.py +4 -4
- mocap_desktop_gui/mc/mc_take_run.py +4 -4
- mocap_desktop_gui/mc/mc_take_run_common.py +4 -4
- mocap_desktop_gui/mc/mc_take_run_data_prep.py +4 -4
- mocap_desktop_gui/mc/mc_take_run_settings.py +4 -4
- mocap_desktop_gui/mc/mc_take_runs_base.py +18 -0
- mocap_desktop_gui/mc/mc_take_runs_cloud_manager.py +4 -4
- mocap_desktop_gui/mc/mc_take_runs_local_manager.py +4 -4
- mocap_desktop_gui/mc/mc_take_runs_manager.py +4 -4
- mocap_desktop_gui/mc/mc_take_settings.py +4 -4
- mocap_desktop_gui/mc/mc_take_settings_action.py +4 -4
- mocap_desktop_gui/mc/mc_take_video_model.py +4 -4
- mocap_desktop_gui/mc/mc_task_trt_engine_gen.py +4 -4
- mocap_desktop_gui/mc/mc_video.py +4 -4
- mocap_desktop_gui/mc/mc_video_file_parser.py +4 -4
- mocap_desktop_gui/mc/mc_video_manager.py +4 -4
- mocap_desktop_gui/mc/mc_video_uploader.py +4 -4
- mocap_desktop_gui/mc/mc_videos_uploader.py +4 -4
- mocap_desktop_gui/mc/mc_worker.py +4 -4
- mocap_desktop_gui/mc/qml_engine.py +4 -4
- mocap_desktop_gui/mc/rig/default/move_mo/Move_Mo.blend +0 -0
- mocap_desktop_gui/mc/rig/default/move_ve/Move_Ve.blend +0 -0
- mocap_desktop_gui/mc/rig/default/move_ve/mapping_body.csv +0 -0
- mocap_desktop_gui/mc/rig/default/move_ve/mapping_fingers.csv +0 -0
- mocap_desktop_gui/mc/rig/rig_path.py +4 -4
- mocap_desktop_gui/mc/settings/camera_models.yaml +2 -2
- mocap_desktop_gui/mc/settings/camera_models_path.py +18 -0
- mocap_desktop_gui/mc/settings/settings_action.yaml +10 -268
- mocap_desktop_gui/mc/settings/settings_action_m2.yaml +12 -196
- mocap_desktop_gui/mc/settings/settings_extrinsic.yaml +2 -147
- mocap_desktop_gui/mc/settings/settings_gen.py +18 -0
- mocap_desktop_gui/mc/settings/settings_path.py +4 -4
- mocap_desktop_gui/mc/util.py +4 -4
- mocap_desktop_gui/sample.py +4 -4
- {mocap_desktop_gui-2.3.1.dist-info → mocap_desktop_gui-2.4.1.dist-info}/METADATA +3 -1
- {mocap_desktop_gui-2.3.1.dist-info → mocap_desktop_gui-2.4.1.dist-info}/RECORD +93 -77
- move_errors/codes/engine/enums.py +7 -0
- move_errors/codes/engine/ops_animation_files_exports.py +41 -0
- move_errors/codes/engine/ops_blender_files_creation.py +41 -0
- move_errors/codes/engine/ops_blender_v2_export.py +40 -0
- move_errors/codes/engine/ops_hands_gen2.py +40 -0
- move_errors/codes/engine/ops_kalman_v2.py +40 -0
- move_errors/codes/engine/ops_online_ball_tracking.py +40 -0
- move_errors/codes/engine/ops_prep_kalman_v2.py +40 -0
- move_errors/codes/internal_services/jobs_runner.py +1 -4
- mocap_desktop_gui/axengine_1752653125_187673042.py +0 -246
- {mocap_desktop_gui-2.3.1.dist-info → mocap_desktop_gui-2.4.1.dist-info}/WHEEL +0 -0
- {mocap_desktop_gui-2.3.1.dist-info → mocap_desktop_gui-2.4.1.dist-info}/entry_points.txt +0 -0
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(539, globals())
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(45, globals())
|
mocap_desktop_gui/mc/mc_video.py
CHANGED
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(1220, globals())
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(1278, globals())
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(870, globals())
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(1032, globals())
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(530, globals())
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(963, globals())
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(600, globals())
|
Binary file
|
Binary file
|
File without changes
|
File without changes
|
@@ -2,17 +2,17 @@ import os as _os
|
|
2
2
|
import sys as _sys
|
3
3
|
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
4
|
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
-
'
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
6
|
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
7
|
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
8
|
break
|
9
9
|
_axeSearchPath = _newAxeSearchPath
|
10
10
|
try:
|
11
11
|
_sys.path.append(_axeSearchPath)
|
12
|
-
import
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
13
|
except Exception as e:
|
14
14
|
raise Exception('Failed to load AxEngine!') from e
|
15
15
|
finally:
|
16
16
|
_sys.path.pop()
|
17
|
-
from
|
18
|
-
_axengine._axe_run(
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(1097, globals())
|
@@ -181,7 +181,7 @@ Sony_RX0_I_HD:
|
|
181
181
|
displayName: "Sony RX0-I HD"
|
182
182
|
resolution: [1280, 720]
|
183
183
|
isLocal: true
|
184
|
-
isCloud:
|
184
|
+
isCloud: true
|
185
185
|
|
186
186
|
Sony_RX0_II_FHD:
|
187
187
|
K: [[1.29357165e03, 0.00000000e00, 9.55895638e02], [0.00000000e00, 1.28891128e03, 5.41381367e02], [0.00000000e00, 0.00000000e00, 1.00000000e00]]
|
@@ -189,7 +189,7 @@ Sony_RX0_II_FHD:
|
|
189
189
|
displayName: "Sony RX0-II FHD"
|
190
190
|
resolution: [1920, 1080]
|
191
191
|
isLocal: true
|
192
|
-
isCloud:
|
192
|
+
isCloud: true
|
193
193
|
|
194
194
|
OptiTrack_Prime41:
|
195
195
|
K: [ [ 2.16063e03, 0.00000e00, 1.04008e03 ], [ 0.00000e00, 2.16124e03, 1.05735e03 ], [ 0.00000e00, 0.00000e00, 1.00000e00 ] ]
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import os as _os
|
2
|
+
import sys as _sys
|
3
|
+
_axeSearchPath = _os.path.dirname(_os.path.abspath(__file__))
|
4
|
+
while not _os.path.exists(_os.path.join(_axeSearchPath,
|
5
|
+
'axengine_1755532232_2406665611.py')):
|
6
|
+
_newAxeSearchPath = _os.path.normpath(_os.path.join(_axeSearchPath, '..'))
|
7
|
+
if _newAxeSearchPath == _axeSearchPath or len(_axeSearchPath) == 0:
|
8
|
+
break
|
9
|
+
_axeSearchPath = _newAxeSearchPath
|
10
|
+
try:
|
11
|
+
_sys.path.append(_axeSearchPath)
|
12
|
+
import axengine_1755532232_2406665611 as _axengine
|
13
|
+
except Exception as e:
|
14
|
+
raise Exception('Failed to load AxEngine!') from e
|
15
|
+
finally:
|
16
|
+
_sys.path.pop()
|
17
|
+
from axengine_1755532232_2406665611 import WupiError, WupiLicenseError, WupiErrorCode
|
18
|
+
_axengine._axe_run(1105, globals())
|
@@ -3,26 +3,20 @@ general_cfg:
|
|
3
3
|
foo: 'bar'
|
4
4
|
|
5
5
|
ops:
|
6
|
-
OpsDownloadDataset: false
|
7
6
|
OpsInputVideosAudios: true # atm this just validates the videos metadata if is_gopro is true.
|
8
7
|
OpsSyncMultiviewVideos: true
|
9
8
|
OpsCorrectCalib: false
|
10
9
|
# cpp pose and tracking op
|
11
10
|
OpsMocap: true
|
12
11
|
# ea jersey pose and tracking op (this is an alternative to OpsMocap)
|
13
|
-
|
14
|
-
|
15
|
-
OpsMdcTracking: false
|
12
|
+
OpsOnlineBallTracking: false
|
13
|
+
OpsMarkersToBlend: false
|
16
14
|
|
17
|
-
OpsDetectObjects: false
|
18
|
-
OpsDetectMarkerObjects: false
|
19
15
|
OpsPose3dMultiview: false # runs pose-3d for mdc, mainly useful for 2 camera cases.
|
20
16
|
OpsPrepKalmanData: true
|
21
17
|
OpsKalman: true
|
22
18
|
OpsHand3dPoseOnTracks: false
|
23
19
|
OpsFloorPlaneRootAdjustment: false
|
24
|
-
OpsMarkerKalmanFilter: false
|
25
|
-
OpsMarkersToBlend: false
|
26
20
|
OpsBlenderFBXExport: true
|
27
21
|
OpsMayaExport: false
|
28
22
|
|
@@ -31,32 +25,6 @@ ops:
|
|
31
25
|
|
32
26
|
|
33
27
|
ops_cfg:
|
34
|
-
OpsDownloadDataset:
|
35
|
-
dataset:
|
36
|
-
- in_files: # input video files
|
37
|
-
- "s3://testcases.moveai/MDC/case6/videos/cam01.mov"
|
38
|
-
- "s3://testcases.moveai/MDC/case6/videos/cam02.mov"
|
39
|
-
- "s3://testcases.moveai/MDC/case6/videos/cam03.mov"
|
40
|
-
- "s3://testcases.moveai/MDC/case6/videos/cam04.mov"
|
41
|
-
- "s3://testcases.moveai/MDC/case6/videos/cam05.mov"
|
42
|
-
- "s3://testcases.moveai/MDC/case6/videos/cam06.mov"
|
43
|
-
out_path: "~/MOX_projects/videos"
|
44
|
-
unzip: false
|
45
|
-
- in_files: [ "s3://testcases.moveai/MDC/case6/calib/cam01.pkl", # calib files
|
46
|
-
"s3://testcases.moveai/MDC/case6/calib/cam02.pkl",
|
47
|
-
"s3://testcases.moveai/MDC/case6/calib/cam03.pkl",
|
48
|
-
"s3://testcases.moveai/MDC/case6/calib/cam04.pkl",
|
49
|
-
"s3://testcases.moveai/MDC/case6/calib/cam05.pkl",
|
50
|
-
"s3://testcases.moveai/MDC/case6/calib/cam06.pkl" ]
|
51
|
-
out_path: "~/MOX_projects/calib"
|
52
|
-
unzip: false
|
53
|
-
- in_files: [ "s3://testcases.moveai/MDC/case1/sdc_rig.zip" ] # rig compressed directory
|
54
|
-
out_path: "~/MOX_projects/rig"
|
55
|
-
unzip: true
|
56
|
-
- in_files: [ "s3://testcases.moveai/MDC/case1/scene/scene_3d.blend" ] # scene file
|
57
|
-
out_path: "~/MOX_projects/scene"
|
58
|
-
unzip: false
|
59
|
-
|
60
28
|
OpsInputVideosAudios:
|
61
29
|
is_gopro: false
|
62
30
|
inputs:
|
@@ -64,173 +32,6 @@ ops_cfg:
|
|
64
32
|
outputs:
|
65
33
|
log_dir: '~/MOX_projects/log'
|
66
34
|
|
67
|
-
OpsSyncMultiviewVideos:
|
68
|
-
# auto sync settings
|
69
|
-
# set action_ss and action_to if you want to crop a specific time range in input videos.
|
70
|
-
# warning: 'ss' and 'to' must be specified on the video whose lag is smallest; otherwise, it could fail
|
71
|
-
# for the case when the lag between videos are large.
|
72
|
-
# example. action_start_time: '20.15' action_end_time: '30.35' means action stats from the seconds 20.15 to 30.35
|
73
|
-
action_start_time: 0 # start time of the action in format seconds.millisecond. ffmpeg -ss
|
74
|
-
action_end_time: "" # end time of the action in the format seconds.millisecond. ffmpeg -to
|
75
|
-
search_win: [2.0, 6.0] # clap hand time range, in seconds. If no range is specified then search_win
|
76
|
-
# is calculated automatically in the code based on clapping.
|
77
|
-
delete_input_videos: false
|
78
|
-
inputs:
|
79
|
-
video_raw_dir: '~/MOX_projects/videos'
|
80
|
-
outputs:
|
81
|
-
log_dir: '~/MOX_projects/log'
|
82
|
-
video_dir: '~/MOX_projects/videos_processed'
|
83
|
-
sync_vis_dir: '~/MOX_projects/sync_vis'
|
84
|
-
# Use iphone metadata to sync
|
85
|
-
iphone_sync:
|
86
|
-
use_host_timecode: false
|
87
|
-
use_tentacle: false
|
88
|
-
# manual sync settings
|
89
|
-
manual_sync:
|
90
|
-
active: false # set it to true if you want to run manual sync given delay in timestamp
|
91
|
-
# seconds.milliseconds. relative offset. earliest camera should have ss = 0.0
|
92
|
-
cams_lag: # ffmpeg -ss
|
93
|
-
cam01: 0.0
|
94
|
-
#cam02: 0.02
|
95
|
-
#cam03: 0.04
|
96
|
-
#....
|
97
|
-
# all cameras share the same duration and starting time
|
98
|
-
base_ss: 0.0 # seconds.milliseconds
|
99
|
-
duration: 0.0 # ffmpeg -t seconds.milliseconds. 0.0 means the whole video.
|
100
|
-
win_len_samples: 1024
|
101
|
-
win_step_sec: 0.001
|
102
|
-
use_audio_files: false
|
103
|
-
timecode: false
|
104
|
-
|
105
|
-
|
106
|
-
OpsCorrectCalib:
|
107
|
-
bump_threshold: 0.01
|
108
|
-
inputs:
|
109
|
-
calib_pkl_dir: '~/MOX_projects/calib'
|
110
|
-
video_dir: '~/MOX_projects/videos_processed'
|
111
|
-
outputs:
|
112
|
-
calib_quality_dir: '~/MOX_projects/calib_quality'
|
113
|
-
|
114
|
-
OpsMocap:
|
115
|
-
max_actor_number: 1
|
116
|
-
enable_vis_debug: true # expensive video debugging
|
117
|
-
vis_debug_rate_ms: 1000 # one frame every second
|
118
|
-
enable_new_track_vis_debug: true # cheap debugging that output the first frame of a new cross-view match
|
119
|
-
max_cpp_running_time_minutes: 2000
|
120
|
-
use_actor_profile_if_avail: false
|
121
|
-
use_cuda_decoder: true
|
122
|
-
use_jersey_id_prediction: false
|
123
|
-
MocapCppParams:
|
124
|
-
DebugCaptureVolumeVisDir: ""
|
125
|
-
DebugLabeledBBoxVisDir: ""
|
126
|
-
CudaGraphInference: false
|
127
|
-
|
128
|
-
YoloModelMaxBs: -1
|
129
|
-
YoloModelType: "yolov5m"
|
130
|
-
YoloModelFp16: true
|
131
|
-
|
132
|
-
JerseyModelName: "jersey_model_7"
|
133
|
-
DetectJerseyNumber: false
|
134
|
-
DetectJerseyFramePeriod: 3
|
135
|
-
|
136
|
-
PoseModelFp16: true
|
137
|
-
UseVerticalPoseAlignment: false
|
138
|
-
PoseModelMaxBs: -1
|
139
|
-
Single2DPoseModelName: "pose_2D_vit_large_moveai29"
|
140
|
-
use_temporal_2D_pose_refinement: false
|
141
|
-
Temporal2DPoseModelName: "pose_2D_refine_3"
|
142
|
-
UseTemporalRefinementPostProcess: false
|
143
|
-
TemporalRefinementPostProcessQueueSize: 4
|
144
|
-
|
145
|
-
NewTrackRequireHandOverShoulder: false
|
146
|
-
|
147
|
-
NewTrackCheckInsideCaptureVolume: true
|
148
|
-
NewTrackMinCaptureVolumeEdgeDist: 0.0
|
149
|
-
NewTrackMinReprojectionError: 0.15
|
150
|
-
NewTrackMinMultiviewKeypoints: 2
|
151
|
-
NewTrackMinCameraNumbers: 2
|
152
|
-
NewTrackMinDistanceFromOthers: 0.25
|
153
|
-
|
154
|
-
ActorProfileMatchMaxTimestampDifference: 1000
|
155
|
-
ActorProfileMatchMinIoU: 0.25
|
156
|
-
ActorProfileMatchMinValidObsCount: 1
|
157
|
-
|
158
|
-
NumMaxPeople: 1
|
159
|
-
DebugNumMaxActors: -1
|
160
|
-
NumMaxBoundingBoxPerFrameFactor: 4
|
161
|
-
|
162
|
-
TrackingBBOX_LPF_Parameter: 0.1
|
163
|
-
PoseTorsoDir_LPF_Parameter: 0.1
|
164
|
-
PoseKpts_LPF_Parameter: 0.1
|
165
|
-
BBOXVerticalScalingFactor: 1.0
|
166
|
-
BBOXHorizontalScalingFactor: 1.0
|
167
|
-
|
168
|
-
ExportSpineHeatmap: false
|
169
|
-
|
170
|
-
Clamp2DBBoxSizeChange: true
|
171
|
-
MaxBBSizeChangePercentage: 0.1
|
172
|
-
|
173
|
-
TrackFilterTopKBest2DPoses: 4
|
174
|
-
FilterBadObjectAssociation: false
|
175
|
-
FilterBadObjectAssociationTemporalDstFactor: 1.5
|
176
|
-
FilterBadObjectAssociationBBoxWidthFactor: 0.4
|
177
|
-
|
178
|
-
Clamp3DJointLocationChange: true
|
179
|
-
Max3DJointLocationChange: 0.5
|
180
|
-
Max3DJointLocationMaxAcclerationFactor: 5.0
|
181
|
-
ClampJointStateChange: true
|
182
|
-
MaxJointStateChange: 0.5
|
183
|
-
MaxJointStateMaxAcclerationFactor: 5.0
|
184
|
-
|
185
|
-
UseKalmanFilter: false
|
186
|
-
KalmanLatencyUpdateFrames: 0
|
187
|
-
NumKalmanTransitionFrames: 20
|
188
|
-
NumFramesBeforeKalmanFilter: 50
|
189
|
-
|
190
|
-
NumBoneLengthOptimzationFrames: 50
|
191
|
-
UseBoneLengthFromTriangulation: true
|
192
|
-
|
193
|
-
PinoStateUpdateFactor: 0.0
|
194
|
-
MaxPoseOptimizeIteration: 10
|
195
|
-
MaxBoneOptimizeIteration: 10
|
196
|
-
PoseFunctionTolerance: 0.01
|
197
|
-
PoseParameterTolerance: 0.01
|
198
|
-
PoseSolverHeightNormalization: true
|
199
|
-
BoneLengthFunctionTolerance: 0.01
|
200
|
-
BoneLengthParameterTolerance: 0.01
|
201
|
-
NumCeresThreads: 4
|
202
|
-
|
203
|
-
CalcCircularCaptureAreaFrom2CameraPositions: true
|
204
|
-
CalcCaptureAreaFromCameraPositions: true
|
205
|
-
|
206
|
-
inputs:
|
207
|
-
video_dir: '~/MOX_projects/videos_processed'
|
208
|
-
calib_pkl_dir: '~/MOX_projects/calib'
|
209
|
-
mocap_path: '/usr/local/moveai/bin/mocap-nogui'
|
210
|
-
settings_path: '/usr/local/moveai/settings_rt.ini'
|
211
|
-
actor_profile_dir: null
|
212
|
-
actor_prior_obs_dir: null
|
213
|
-
outputs:
|
214
|
-
log_dir: '~/MOX_projects/log'
|
215
|
-
mocap_result_dir: '~/MOX_projects/mocap_result'
|
216
|
-
mocap_new_track_debug_dir: '~/MOX_projects/mocap_new_track_debug'
|
217
|
-
mocap_viz_debug_dir: '~/MOX_projects/mocap_viz_debug'
|
218
|
-
vis_calib_area_dir: '~/MOX_projects/vis_calib_area'
|
219
|
-
prelabelled_bb_dir: '~/MOX_projects/prelabelled_bb'
|
220
|
-
pose2d_dir: '~/MOX_projects/pose2d_track'
|
221
|
-
calib_yaml_dir: '~/MOX_projects/mocap_calib'
|
222
|
-
|
223
|
-
OpsPose3dMultiview:
|
224
|
-
torch_batch_size: 4
|
225
|
-
inputs:
|
226
|
-
metrabs_3dpose_ckpt_path: "/usr/local/moveai/models/metrabs/metrabs_eff2l_384px_800k_28ds_pytorch"
|
227
|
-
video_dir: "~/MOX_projects/videos_processed"
|
228
|
-
calib_pkl_dir: "~/MOX_projects/calib"
|
229
|
-
pose2d_dir: "~/MOX_projects/pose2d_track"
|
230
|
-
outputs:
|
231
|
-
pose3d_dir: "~/MOX_projects/pose_3d"
|
232
|
-
|
233
|
-
|
234
35
|
OpsPrepKalmanData:
|
235
36
|
run_type: multiview
|
236
37
|
mdc_use_3d_bone_dir_obs: false
|
@@ -293,35 +94,6 @@ ops_cfg:
|
|
293
94
|
outputs:
|
294
95
|
kalman_dir: ~/MOX_projects/kalman
|
295
96
|
|
296
|
-
OpsQualityMetrics:
|
297
|
-
visualize_epipolar_line: true
|
298
|
-
|
299
|
-
|
300
|
-
OpsFloorPlaneRootAdjustment:
|
301
|
-
enforce_spatial_distribution: true # To spatially distribute the sample points
|
302
|
-
grid_size: 1.0 # [m]
|
303
|
-
n_pts_in_cell_max: 20 # Max number of points per cell for each sample
|
304
|
-
iterations: 2500
|
305
|
-
Z_threshold: 0.05 # [m]
|
306
|
-
ransac_sample_perc: 0.2
|
307
|
-
inputs:
|
308
|
-
pose2d_dir: '~/MOX_projects/pose2d_track'
|
309
|
-
kalman_dir: '~/MOX_projects/kalman'
|
310
|
-
|
311
|
-
|
312
|
-
OpsMarkersToBlend:
|
313
|
-
export_fbx: true
|
314
|
-
export_gltf: true
|
315
|
-
inputs:
|
316
|
-
video_dir: ~/MOX_projects/videos_processed
|
317
|
-
marker_kalman_dir: ~/MOX_projects/markers_kalman
|
318
|
-
marker_track_path: ~/MOX_projects/markers_kalman
|
319
|
-
outputs:
|
320
|
-
log_dir: ~/MOX_projects/log
|
321
|
-
props_dir: ~/MOX_projects/props_anims
|
322
|
-
export_dir: ~/MOX_projects/blender
|
323
|
-
|
324
|
-
|
325
97
|
OpsBlenderFBXExport:
|
326
98
|
camera_model: unknown
|
327
99
|
export_fbx: true
|
@@ -385,44 +157,6 @@ ops_cfg:
|
|
385
157
|
outputs:
|
386
158
|
hand_dir: '~/MOX_projects/hands'
|
387
159
|
|
388
|
-
|
389
|
-
OpsDetectObjects:
|
390
|
-
# sort all detect bbs using area or score, then pick the first n_max_objects, if it > 0
|
391
|
-
n_max_objects: -1 # -1 for taking all object bounding boxes.
|
392
|
-
n_max_objects_selection_strategy: "area" # in ["score", "area", "score_area"]
|
393
|
-
batch_size: 8
|
394
|
-
# for YOLOV5.
|
395
|
-
conf_thres: 0.25 # NNS threshold
|
396
|
-
iou_thres: 0.45 # NNS threshold
|
397
|
-
augment: false # flipping augmentation.
|
398
|
-
yolov5_class_ids: [ 32 ]
|
399
|
-
yolov5_class_names: [ 'ball' ]
|
400
|
-
visualize: false
|
401
|
-
inputs:
|
402
|
-
video_dir: '~/MOX_projects/videos_processed'
|
403
|
-
model_path: '/usr/local/moveai/models/yolo/yolov5x_updated.pt'
|
404
|
-
outputs:
|
405
|
-
detect_dir: '~/MOX_projects/detect_obj_2d'
|
406
|
-
detect_vis_dir: '~/MOX_projects/detect_obj_2d_viz'
|
407
|
-
|
408
|
-
|
409
|
-
OpsDetectMarkerObjects:
|
410
|
-
marker_settings: [ { "object": "ball", "n_markers": 1, "n_objects": 1 } ]
|
411
|
-
inputs :
|
412
|
-
video_dir: '~/MOX_projects/videos_processed'
|
413
|
-
detect_dir: '~/MOX_projects/detect_obj_2d'
|
414
|
-
outputs:
|
415
|
-
detect_semantic_dir: '~/MOX_projects/detect_semantic_obj_2d'
|
416
|
-
|
417
|
-
|
418
|
-
OpsMarkerKalmanFilter:
|
419
|
-
marker_settings: [ { "object": "ball", "n_markers": 1, "n_objects": 1 } ]
|
420
|
-
inputs:
|
421
|
-
detect_semantic_dir: '~/MOX_projects/detect_semantic_obj_2d'
|
422
|
-
calib_pkl_dir: '~/MOX_projects/calib'
|
423
|
-
outputs:
|
424
|
-
marker_kalman_dir: '~/MOX_projects/markers_kalman'
|
425
|
-
|
426
160
|
OpsOnFailure:
|
427
161
|
inputs:
|
428
162
|
run_dir: '~/MOX_projects'
|
@@ -530,3 +264,11 @@ ops_cfg:
|
|
530
264
|
debug_temporal_track_association_dir: "~/MOX_projects/mdc_temporal_track_assoc_vis" # optional, can have null value
|
531
265
|
debug_temporal_track_association_view_dir: "~/MOX_projects/mdc_temporal_track_assoc_vis_cams" # optional, can have null value
|
532
266
|
debug_new_track_dir: "~/MOX_projects/mdc_new_track_vis" # optional, can have null value
|
267
|
+
|
268
|
+
OpsOnlineBallTracking:
|
269
|
+
inputs:
|
270
|
+
video_dir: '~/MOX_projects/videos_processed'
|
271
|
+
calib_pkl_dir: '~/MOX_projects/calib'
|
272
|
+
yolo_model_path: "/usr/local/moveai/models/yolo/yolo11x.pt"
|
273
|
+
outputs:
|
274
|
+
marker_kalman_dir: "~/MOX_projects/markers_kalman"
|