OpenCV
3.3.1
Open Source Computer Vision
|
This class is used to track multiple objects using the specified tracker algorithm. The MultiTracker is naive implementation of multiple object tracking. It process the tracked objects independently without any optimization accross the tracked objects. More...
#include "tracker.hpp"
Public Member Functions | |
MultiTracker () | |
Constructor. More... | |
~MultiTracker () | |
Destructor. More... | |
bool | add (Ptr< Tracker > newTracker, InputArray image, const Rect2d &boundingBox) |
Add a new object to be tracked. More... | |
bool | add (std::vector< Ptr< Tracker > > newTrackers, InputArray image, std::vector< Rect2d > boundingBox) |
Add a set of objects to be tracked. More... | |
const std::vector< Rect2d > & | getObjects () const |
Returns a reference to a storage for the tracked objects, each object corresponds to one tracker algorithm. More... | |
bool | update (InputArray image) |
Update the current tracking status. The result will be saved in the internal storage. More... | |
bool | update (InputArray image, std::vector< Rect2d > &boundingBox) |
Update the current tracking status. More... | |
Public Member Functions inherited from cv::Algorithm | |
Algorithm () | |
virtual | ~Algorithm () |
virtual void | clear () |
Clears the algorithm state. More... | |
virtual bool | empty () const |
Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read. More... | |
virtual String | getDefaultName () const |
virtual void | read (const FileNode &fn) |
Reads algorithm parameters from a file storage. More... | |
virtual void | save (const String &filename) const |
virtual void | write (FileStorage &fs) const |
Stores algorithm parameters in a file storage. More... | |
Static Public Member Functions | |
static Ptr< MultiTracker > | create () |
Returns a pointer to a new instance of MultiTracker. More... | |
Static Public Member Functions inherited from cv::Algorithm | |
template<typename _Tp > | |
static Ptr< _Tp > | load (const String &filename, const String &objname=String()) |
Loads algorithm from the file. More... | |
template<typename _Tp > | |
static Ptr< _Tp > | loadFromString (const String &strModel, const String &objname=String()) |
Loads algorithm from a String. More... | |
template<typename _Tp > | |
static Ptr< _Tp > | read (const FileNode &fn) |
Reads algorithm from the file node. More... | |
Protected Attributes | |
std::vector< Rect2d > | objects |
std::vector< Ptr< Tracker > > | trackerList |
< storage for the tracker algorithms. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from cv::Algorithm | |
void | writeFormat (FileStorage &fs) const |
This class is used to track multiple objects using the specified tracker algorithm. The MultiTracker is naive implementation of multiple object tracking. It process the tracked objects independently without any optimization accross the tracked objects.
cv::MultiTracker::MultiTracker | ( | ) |
Constructor.
cv::MultiTracker::~MultiTracker | ( | ) |
Destructor.
bool cv::MultiTracker::add | ( | Ptr< Tracker > | newTracker, |
InputArray | image, | ||
const Rect2d & | boundingBox | ||
) |
Add a new object to be tracked.
newTracker | tracking algorithm to be used |
image | input image |
boundingBox | a rectangle represents ROI of the tracked object |
bool cv::MultiTracker::add | ( | std::vector< Ptr< Tracker > > | newTrackers, |
InputArray | image, | ||
std::vector< Rect2d > | boundingBox | ||
) |
Add a set of objects to be tracked.
newTrackers | list of tracking algorithms to be used |
image | input image |
boundingBox | list of the tracked objects |
|
static |
Returns a pointer to a new instance of MultiTracker.
const std::vector<Rect2d>& cv::MultiTracker::getObjects | ( | ) | const |
Returns a reference to a storage for the tracked objects, each object corresponds to one tracker algorithm.
bool cv::MultiTracker::update | ( | InputArray | image | ) |
Update the current tracking status. The result will be saved in the internal storage.
image | input image |
bool cv::MultiTracker::update | ( | InputArray | image, |
std::vector< Rect2d > & | boundingBox | ||
) |
Update the current tracking status.
image | input image |
boundingBox | the tracking result, represent a list of ROIs of the tracked objects. |
|
protected |
< storage for the tracker algorithms.
storage for the tracked objects, each object corresponds to one tracker algorithm.