Class containing data of a detected body/person such as its bounding_box, id and its 3D position. More...
Functions | |
BodyData () | |
Default constructor. More... | |
~BodyData () | |
Default destructor. More... | |
Attributes | |
int | id |
Body/person identification number. More... | |
String | unique_object_id |
Unique id to help identify and track AI detections. More... | |
OBJECT_TRACKING_STATE | tracking_state |
Body/person tracking state. More... | |
OBJECT_ACTION_STATE | action_state |
Body/person action state. More... | |
sl::float3 | position |
Body/person 3D centroid. More... | |
sl::float3 | velocity |
Body/person 3D velocity. More... | |
float | position_covariance [6] |
Covariance matrix of the 3D position. More... | |
std::vector< sl::uint2 > | bounding_box_2d |
2D bounding box of the body/person represented as four 2D points starting at the top left corner and rotation clockwise. More... | |
sl::Mat | mask |
Mask defining which pixels which belong to the body/person (in bounding_box_2d and set to 255) and those of the background (set to 0). More... | |
float | confidence |
Detection confidence value of the body/person. More... | |
std::vector< sl::float3 > | bounding_box |
3D bounding box of the body/person represented as eight 3D points. More... | |
sl::float3 | dimensions |
3D body/person dimensions: width, height, length. More... | |
std::vector< sl::float2 > | keypoint_2d |
Set of useful points representing the human body in 2D. More... | |
std::vector< sl::float3 > | keypoint |
Set of useful points representing the human body in 3D. More... | |
std::vector< sl::uint2 > | head_bounding_box_2d |
2D bounding box of the head of the body/person represented as four 2D points starting at the top left corner and rotation clockwise. More... | |
std::vector< sl::float3 > | head_bounding_box |
3D bounding box of the head of the body/person represented as eight 3D points. More... | |
sl::float3 | head_position |
3D centroid of the head of the body/person. More... | |
std::vector< float > | keypoint_confidence |
Vector of detection confidences for each keypoint. More... | |
std::vector< std::array< float, 6 > > | keypoint_covariances |
Vector of detection covariance for each keypoint. More... | |
std::vector< sl::float3 > | local_position_per_joint |
Vector of local position (position of the child keypoint with respect to its parent expressed in its parent coordinate frame) for each keypoint. More... | |
std::vector< sl::float4 > | local_orientation_per_joint |
Vector of local orientation for each keypoint. More... | |
sl::float4 | global_root_orientation |
Global root orientation of the skeleton. More... | |
Class containing data of a detected body/person such as its bounding_box, id and its 3D position.
BodyData | ( | ) |
Default constructor.
~BodyData | ( | ) |
Default destructor.
int id |
Body/person identification number.
It is used as a reference when tracking the body through the frames.
String unique_object_id |
Unique id to help identify and track AI detections.
It can be either generated externally, or by using generate_unique_id() or left empty.
OBJECT_TRACKING_STATE tracking_state |
Body/person tracking state.
OBJECT_ACTION_STATE action_state |
Body/person action state.
sl::float3 position |
Body/person 3D centroid.
sl::float3 velocity |
Body/person 3D velocity.
sl::InitParameters.coordinate_units / s
and expressed in sl::RuntimeParameters.measure3D_reference_frame. float position_covariance[6] |
Covariance matrix of the 3D position.
position_covariance[i]
std::vector<sl::uint2> bounding_box_2d |
2D bounding box of the body/person represented as four 2D points starting at the top left corner and rotation clockwise.
[0, 0]
is the top left corner. sl::Mat mask |
Mask defining which pixels which belong to the body/person (in bounding_box_2d and set to 255) and those of the background (set to 0).
mask.isInit() == false
). float confidence |
Detection confidence value of the body/person.
From 0 to 100, a low value means the body might not be localized perfectly.
std::vector<sl::float3> bounding_box |
3D bounding box of the body/person represented as eight 3D points.
sl::float3 dimensions |
3D body/person dimensions: width, height, length.
std::vector<sl::float2> keypoint_2d |
Set of useful points representing the human body in 2D.
[0, 0]
is the top left corner. std::vector<sl::float3> keypoint |
Set of useful points representing the human body in 3D.
std::vector<sl::uint2> head_bounding_box_2d |
2D bounding box of the head of the body/person represented as four 2D points starting at the top left corner and rotation clockwise.
[0, 0]
is the top left corner. std::vector<sl::float3> head_bounding_box |
3D bounding box of the head of the body/person represented as eight 3D points.
sl::float3 head_position |
3D centroid of the head of the body/person.
std::vector<float> keypoint_confidence |
Vector of detection confidences for each keypoint.
std::vector<std::array<float, 6 > > keypoint_covariances |
Vector of detection covariance for each keypoint.
std::vector<sl::float3> local_position_per_joint |
Vector of local position (position of the child keypoint with respect to its parent expressed in its parent coordinate frame) for each keypoint.
std::vector<sl::float4> local_orientation_per_joint |
Vector of local orientation for each keypoint.
sl::float4 q = sl::float4(qx, qy, qz, qw);
) sl::float4 global_root_orientation |
Global root orientation of the skeleton.
The orientation is also represented by a quaternion with the same format as local_orientation_per_joint.