SL_BodyTrackingParameters Struct Reference

Structure containing a set of parameters for the body tracking module. More...

Data Fields

unsigned int instance_module_id
 Id of the module instance. More...
 
bool enable_tracking
 Whether the body tracking system includes body/person tracking capabilities across a sequence of images. More...
 
bool enable_segmentation
 Whether the body/person masks will be computed. More...
 
enum SL_BODY_TRACKING_MODEL detection_model
 SL_BODY_TRACKING_MODEL to use. More...
 
bool enable_body_fitting
 Whether to apply the body fitting. More...
 
enum SL_BODY_FORMAT body_format
 Body format to be outputted by the ZED SDK with sl_retrieve_bodies(). More...
 
enum SL_BODY_KEYPOINTS_SELECTION body_selection
 Selection of keypoints to be outputted by the ZED SDK with sl_retrieve_bodies(). More...
 
float max_range
 Upper depth range for detections. More...
 
float prediction_timeout_s
 Prediction duration of the ZED SDK when an object is not detected anymore before switching its state to SL_OBJECT_TRACKING_STATE_SEARCHING. More...
 
bool allow_reduced_precision_inference
 Whether to allow inference to run at a lower precision to improve runtime and memory usage. More...
 

Detailed Description

Structure containing a set of parameters for the body tracking module.

The default constructor sets all parameters to their default settings.

Note
Parameters can be user adjusted.

Field Documentation

◆ instance_module_id

unsigned int SL_BodyTrackingParameters::instance_module_id

Id of the module instance.

This is used to identify which body tracking module instance is used.

◆ enable_tracking

bool SL_BodyTrackingParameters::enable_tracking

Whether the body tracking system includes body/person tracking capabilities across a sequence of images.

Default: true

◆ enable_segmentation

bool SL_BodyTrackingParameters::enable_segmentation

Whether the body/person masks will be computed.

Default: false

◆ detection_model

enum SL_BODY_TRACKING_MODEL SL_BodyTrackingParameters::detection_model

◆ enable_body_fitting

bool SL_BodyTrackingParameters::enable_body_fitting

Whether to apply the body fitting.

Default: false

◆ body_format

enum SL_BODY_FORMAT SL_BodyTrackingParameters::body_format

Body format to be outputted by the ZED SDK with sl_retrieve_bodies().

Default: SL_BODY_FORMAT_BODY_18

◆ body_selection

enum SL_BODY_KEYPOINTS_SELECTION SL_BodyTrackingParameters::body_selection

Selection of keypoints to be outputted by the ZED SDK with sl_retrieve_bodies().

Default: SL_BODY_KEYPOINTS_SELECTION_FULL

◆ max_range

float SL_BodyTrackingParameters::max_range

Upper depth range for detections.

Default: -1.f (value set in SL_InitParameters.depth_maximum_distance)

Note
The value cannot be greater than SL_InitParameters.depth_maximum_distance and its unit is defined in SL_InitParameters.coordinate_unit.

◆ prediction_timeout_s

float SL_BodyTrackingParameters::prediction_timeout_s

Prediction duration of the ZED SDK when an object is not detected anymore before switching its state to SL_OBJECT_TRACKING_STATE_SEARCHING.

It prevents the jittering of the object state when there is a short misdetection.
The user can define their own prediction time duration.
Default: 0.2f

Note
During this time, the object will have SL_OBJECT_TRACKING_STATE_OK state even if it is not detected.
The duration is expressed in seconds.
Warning
prediction_timeout_s will be clamped to 1 second as the prediction is getting worse with time.
Setting this parameter to 0 disables the ZED SDK predictions.

◆ allow_reduced_precision_inference

bool SL_BodyTrackingParameters::allow_reduced_precision_inference

Whether to allow inference to run at a lower precision to improve runtime and memory usage.

It might increase the initial optimization time and could include downloading calibration data or calibration cache and slightly reduce the accuracy.

Note
The fp16 is automatically enabled if the GPU is compatible and provides a speed up of almost x2 and reduce memory usage by almost half, no precision loss.
This setting allow int8 precision which can speed up by another x2 factor (compared to fp16, or x4 compared to fp32) and half the fp16 memory usage, however some accuracy could be lost.
The accuracy loss should not exceed 1-2% on the compatible models.
The current compatible models are all SL_AI_MODELS_HUMAN_BODY_XXXX.