Tracker object tracks persons in the video stream and collects faces of the same person in one track.
More...
#include <face_sdk_tracker.h>
Tracker object tracks persons in the video stream and collects faces of the same person in one track.
Use face_sdk::make_tracker() functions to instantiate an object of this type.
- Warning
- This module uses face detector module (see Face Detector), so make sure that your license allows to use face detector. See Licensing.
Usage scenario:
- Call one of face_sdk::make_tracker() function to get a face_sdk::tracker instance. You have to pass own face_sdk::itracker_events implementation to be able to handle events from a tracker object.
- Call face_sdk::tracker::make_stream(uint32_t) and get a face_sdk::video_stream object for each video to be processed
- Decode video and push any number of frames into face_sdk::video_stream. Call face_sdk::video_stream::push_frame(const std::shared_ptr<face_sdk::video_frame> &)
- Call face_sdk::tracker::commit_frames() - all pushed frames will be processed in batch. All events will be raised. repeat steps 3 and 4 until a video is ended
- Call face_sdk::tracker::free_stream() for each ended video stream
◆ commit_frames()
virtual void face_sdk::tracker::commit_frames |
( |
| ) |
|
|
pure virtual |
The function processes all pushed frames. All events will be raised.
- Exceptions
-
◆ free_stream()
The function releases stream from tracker object.
- Parameters
-
[in] | stream | Stream to be released. |
- Exceptions
-
face_sdk::invalid_parameter_exception | If stream isn't made by tracker object or if stream is nullptr |
◆ make_stream()
The function makes a video stream.
- Parameters
-
[in] | track_id | Use face_sdk::video_stream::id() to get track_id. Tracker object can't have two streams with the same ids at the same time. |
- Exceptions
-
face_sdk::invalid_parameter_exception | If tracker object has a stream with the same track_id |
The documentation for this class was generated from the following file: