3DiVi Face SDK  3.21.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Groups
pbio::VideoWorker::TrackingCallbackData Struct Reference

Tracking callback data. More...

#include <VideoWorker.h>

Public Attributes

int64_t stream_id
 Integer id of the video stream (0 <= stream_id < streams_count).
 
int64_t frame_id
 Integer id of the frame (that was returned by VideoWorker::addVideoFrame).
 
std::vector< RawSample::Ptrsamples
 Vector of face samples found by the tracker.
Most of the samples are received from the frame_id frame but some samples can be received from the previous frames.
Use RawSample::getFrameID to determine which frame the sample belongs to.
 
std::vector< int > samples_track_id
 Vector of face IDs (track_id). track_id is equal to sample.getID() for the sample given in any VideoWorker callback. (samples_track_id.size() == samples.size())
 
std::vector< bool > samples_weak
 Since this is tracking, some samples may be false, so we mark the samples with the "weak" flag if they haven’t passed one of the rechecks (see: samples_good_face_size, samples_good_angles, samples_depth_liveness_confirmed, samples_ir_liveness_confirmed, samples_detector_confirmed, samples_good_light_and_blur). "Weak" samples are not used for recognition (samples_weak.size() == samples.size())
 
std::vector< float > samples_quality
 Quality value for the face sample. The same as from the FaceQualityEstimator (samples_quality.size() == samples.size())
 
std::vector
< SampleCheckStatus::Verdict
samples_good_light_and_blur
 The result of checking the sample for good lighting conditions and absence of a strong blur (samples_good_light_and_blur.size() == samples.size())
 
std::vector
< SampleCheckStatus::Verdict
samples_good_angles
 The result of checking the sample for absence of too high yaw/pitch angles (samples_good_angles.size() == samples.size())
 
std::vector
< SampleCheckStatus::Verdict
samples_good_face_size
 The result of checking the sample for suitable face size, see the min_template_generation_face_size parameter in config file. (samples_good_face_size.size() == samples.size())
 
std::vector
< SampleCheckStatus::Verdict
samples_detector_confirmed
 The result of checking the sample with the frontal face detector (samples_detector_confirmed.size() == samples.size())
 
std::vector
< DepthLivenessEstimator::Liveness
samples_depth_liveness_confirmed
 The result of checking the sample with DepthLivenessEstimator, depth frames are required, see VideoWorker::addDepthFrame. See DepthLivenessEstimator::Liveness for details. (samples_depth_liveness_confirmed.size() == samples.size())
 
std::vector
< IRLivenessEstimator::Liveness
samples_ir_liveness_confirmed
 The result of checking the sample with IRLivenessEstimator, IR frames are required, see VideoWorker::addIRFrame. See IRLivenessEstimator::Liveness for details. (samples_ir_liveness_confirmed.size() == samples.size())
 
std::vector< bool > samples_track_age_gender_set
 Flag indicating that age and gender were estimated for this track. (samples_track_age_gender_set.size() == samples.size())
 
std::vector
< AgeGenderEstimator::AgeGender
samples_track_age_gender
 Estimated age and gender for this track. (samples_track_age_gender.size() == samples.size())
 
std::vector< bool > samples_track_emotions_set
 Flag indicating that emotions were estimated for this track. (samples_track_emotions_set.size() == samples.size())
 
std::vector
< EmotionsEstimator::EstimatedEmotionsVector
samples_track_emotions
 Estimated emotions for this track. (samples_track_emotions.size() == samples.size())
 
std::vector
< ActiveLiveness::ActiveLivenessStatus
samples_active_liveness_status
 Face active liveness check status. See ActiveLiveness::ActiveLivenessStatus for details. (samples_active_liveness_status.size() == samples.size())
 

Detailed Description

Tracking callback data.