Any fix to enable skeleton tracking for an SVO with no inertial data?

I’m working with the ZED SDK (pyzed 4.2) and trying to play back an SVO file through Camera.enable_body_tracking(), but I keep getting:

[WARNING] Positional Tracking GEN1 with IMU fusion enabled requires sensors data. IMU Fusion will be disabled, performance will be degraded  
[WARNING] MOTION SENSORS REQUIRED in enum sl::ERROR_CODE __cdecl sl::Camera::enableBodyTracking(...)  
enable_body_tracking returned: MOTION_SENSORS_REQUIRED  
Error name: MOTION_SENSORS_REQUIRED
  • Is there any way to force the body tracker to run purely on depth data without requiring IMU/area-memory?
  • Are there any hidden flags or init parameters I’m missing that allow non‑IMU playback?

This recording is important and I would really appreciate if I could do something with it.

Here is a test code I used:

#!/usr/bin/env python3
import sys
import pyzed.sl as sl

def main():
if len(sys.argv) < 2:
print(“Usage: python test_body_tracking.py <svo_file>”)
sys.exit(1)

svo_file = sys.argv[1]
zed = sl.Camera()
init_params = sl.InitParameters()
init_params.set_from_svo_file(svo_file)

# Open SVO
status = zed.open(init_params)
if status != sl.ERROR_CODE.SUCCESS:
    print(f"❌ Failed to open SVO file: {status}")
    sys.exit(1)

# Positional tracking with NO IMU fusion and NO area memory
tracking_params = sl.PositionalTrackingParameters()
tracking_params.enable_imu_fusion = False
tracking_params.enable_area_memory = False
zed.enable_positional_tracking(tracking_params)

# Body tracking setup
body_params = sl.BodyTrackingParameters()
body_params.enable_tracking    = True
body_params.enable_body_fitting = True
body_params.detection_model     = sl.BODY_TRACKING_MODEL.HUMAN_BODY_ACCURATE

# Attempt to start body tracking
ret_bt = zed.enable_body_tracking(body_params)
print(f"enable_body_tracking returned: {ret_bt}")
if ret_bt != sl.ERROR_CODE.SUCCESS:
    print(f"Error name: {ret_bt.name}")

# Clean up
zed.close()

if name == “main”:
main()

Hi,

No, the IMU dara is required to run the body tracking module, you can’ enable it without it.

Do you remember how the SVO has been recorded?
If it is possible, you could also send the SVO to us at support@stereolabs.com so we can take a look at it, to know if there is no IMU data at all or if something else is wrong.

Best,

Hi Benjamin, Thanks for the quick answer. That’s a pity. The SVO was recorded by a python app with PyQt GUI that control the start/stop of the recording. Unfortunately, the user forgot to stop the recording and unplugged the camera while after 40 min or something of recording. For other recording, when the stop button was clicked and the other recordings were fine. The file is around 14 Gbs. I would like to send it to you to check, any help would be highly appreciated. How can I share the file with you?

Is it a svo2 or svo?

Stereolabs Support

It is recorded in SVO2

You can try to repair the SVO using the ZED SVOEditor tool, available in the ZED SDK installation folder.

This tool also allows you to cut your SVO, so you can also send us a small SVO for a few hundred frames.

Stereolabs Support