mirror of
https://github.com/opencv/opencv_contrib.git
synced 2025-10-19 02:16:34 +08:00
docs
This commit is contained in:
@@ -9,6 +9,10 @@ The following algorithms are implemented at the moment.
|
||||
|
||||
.. [OLB] H Grabner, M Grabner, and H Bischof, Real-time tracking via on-line boosting, In Proc. BMVC, volume 1, pages 47– 56, 2006
|
||||
|
||||
.. [MedianFlow] Z. Kalal, K. Mikolajczyk, and J. Matas, “Forward-Backward Error: Automatic Detection of Tracking Failures,” International Conference on Pattern Recognition, 2010, pp. 23-26.
|
||||
|
||||
.. [TLD] Z. Kalal, K. Mikolajczyk, and J. Matas, “Tracking-Learning-Detection,” Pattern Analysis and Machine Intelligence 2011.
|
||||
|
||||
TrackerBoosting
|
||||
---------------
|
||||
|
||||
@@ -63,7 +67,7 @@ Constructor
|
||||
:param parameters: BOOSTING parameters :ocv:struct:`TrackerBoosting::Params`
|
||||
|
||||
TrackerMIL
|
||||
----------
|
||||
----------------------
|
||||
|
||||
The MIL algorithm trains a classifier in an online manner to separate the object from the background. Multiple Instance Learning avoids the drift problem for a robust tracking. The implementation is based on [MIL]_.
|
||||
|
||||
@@ -118,3 +122,108 @@ Constructor
|
||||
.. ocv:function:: Ptr<trackerMIL> TrackerMIL::createTracker(const trackerMIL::Params ¶meters=trackerMIL::Params())
|
||||
|
||||
:param parameters: MIL parameters :ocv:struct:`TrackerMIL::Params`
|
||||
|
||||
TrackerMedianFlow
|
||||
----------------------
|
||||
|
||||
Implementation of a paper "Forward-Backward Error: Automatic Detection of Tracking Failures" by Z. Kalal, K. Mikolajczyk
|
||||
and Jiri Matas. The implementation is based on [MedianFlow]_.
|
||||
|
||||
The tracker is suitable for very smooth and predictable movements when object is visible throughout the whole sequence. It's quite and
|
||||
accurate for this type of problems (in particular, it was shown by authors to outperform MIL). During the implementation period the code at
|
||||
http://www.aonsquared.co.uk/node/5, the courtesy of the author Arthur Amarra, was used for the reference purpose.
|
||||
|
||||
.. ocv:class:: TrackerMedianFlow
|
||||
|
||||
Implementation of TrackerMedianFlow from :ocv:class:`Tracker`::
|
||||
|
||||
class CV_EXPORTS_W TrackerMedianFlow : public Tracker
|
||||
{
|
||||
public:
|
||||
void read( const FileNode& fn );
|
||||
void write( FileStorage& fs ) const;
|
||||
static Ptr<trackerMedianFlow> createTracker(const trackerMedianFlow::Params ¶meters=trackerMedianFlow::Params());
|
||||
virtual ~trackerMedianFlow(){};
|
||||
|
||||
protected:
|
||||
bool initImpl( const Mat& image, const Rect2d& boundingBox );
|
||||
bool updateImpl( const Mat& image, Rect2d& boundingBox );
|
||||
};
|
||||
|
||||
TrackerMedianFlow::Params
|
||||
------------------------------------
|
||||
|
||||
.. ocv:struct:: TrackerMedianFlow::Params
|
||||
|
||||
List of MedianFlow parameters::
|
||||
|
||||
struct CV_EXPORTS Params
|
||||
{
|
||||
Params();
|
||||
int pointsInGrid; //square root of number of keypoints used; increase it to trade
|
||||
//accurateness for speed; default value is sensible and recommended
|
||||
|
||||
void read( const FileNode& fn );
|
||||
void write( FileStorage& fs ) const;
|
||||
};
|
||||
|
||||
TrackerMedianFlow::createTracker
|
||||
-----------------------------------
|
||||
|
||||
Constructor
|
||||
|
||||
.. ocv:function:: Ptr<trackerMedianFlow> TrackerMedianFlow::createTracker(const trackerMedianFlow::Params ¶meters=trackerMedianFlow::Params())
|
||||
|
||||
:param parameters: Median Flow parameters :ocv:struct:`TrackerMedianFlow::Params`
|
||||
|
||||
TrackerTLD
|
||||
----------------------
|
||||
|
||||
TLD is a novel tracking framework that explicitly decomposes the long-term tracking task into tracking, learning
|
||||
and detection. The tracker follows the object from frame to frame. The detector localizes all appearances that have been observed so
|
||||
far and corrects the tracker if necessary. The learning estimates detector’s errors and updates it to avoid these errors in the future.
|
||||
The implementation is based on [TLD]_.
|
||||
|
||||
The Median Flow algorithm (see above) was chosen as a tracking component in this implementation, following authors. Tracker is supposed to be able
|
||||
to handle rapid motions, partial occlusions, object absence etc.
|
||||
|
||||
.. ocv:class:: TrackerTLD
|
||||
|
||||
Implementation of TrackerTLD from :ocv:class:`Tracker`::
|
||||
|
||||
class CV_EXPORTS_W TrackerTLD : public Tracker
|
||||
{
|
||||
public:
|
||||
void read( const FileNode& fn );
|
||||
void write( FileStorage& fs ) const;
|
||||
static Ptr<trackerTLD> createTracker(const trackerTLD::Params ¶meters=trackerTLD::Params());
|
||||
virtual ~trackerTLD(){};
|
||||
|
||||
protected:
|
||||
bool initImpl( const Mat& image, const Rect2d& boundingBox );
|
||||
bool updateImpl( const Mat& image, Rect2d& boundingBox );
|
||||
};
|
||||
|
||||
TrackerTLD::Params
|
||||
------------------------
|
||||
|
||||
.. ocv:struct:: TrackerTLD::Params
|
||||
|
||||
List of TLD parameters::
|
||||
|
||||
struct CV_EXPORTS Params
|
||||
{
|
||||
Params();
|
||||
|
||||
void read( const FileNode& fn );
|
||||
void write( FileStorage& fs ) const;
|
||||
};
|
||||
|
||||
TrackerTLD::createTracker
|
||||
-------------------------------
|
||||
|
||||
Constructor
|
||||
|
||||
.. ocv:function:: Ptr<trackerTLD> TrackerTLD::createTracker(const trackerTLD::Params ¶meters=trackerTLD::Params())
|
||||
|
||||
:param parameters: TLD parameters :ocv:struct:`TrackerTLD::Params`
|
||||
|
@@ -1017,7 +1017,8 @@ class CV_EXPORTS_W TrackerMedianFlow : public Tracker
|
||||
struct CV_EXPORTS Params
|
||||
{
|
||||
Params();
|
||||
int pointsInGrid;
|
||||
int pointsInGrid; //square root of number of keypoints used; increase it to trade
|
||||
//accurateness for speed; default value is sensible and recommended
|
||||
void read( const FileNode& /*fn*/ );
|
||||
void write( FileStorage& /*fs*/ ) const;
|
||||
};
|
||||
|
Reference in New Issue
Block a user