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
|
.. [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
|
TrackerBoosting
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
@@ -63,7 +67,7 @@ Constructor
|
|||||||
:param parameters: BOOSTING parameters :ocv:struct:`TrackerBoosting::Params`
|
:param parameters: BOOSTING parameters :ocv:struct:`TrackerBoosting::Params`
|
||||||
|
|
||||||
TrackerMIL
|
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]_.
|
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())
|
.. ocv:function:: Ptr<trackerMIL> TrackerMIL::createTracker(const trackerMIL::Params ¶meters=trackerMIL::Params())
|
||||||
|
|
||||||
:param parameters: MIL parameters :ocv:struct:`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
|
struct CV_EXPORTS Params
|
||||||
{
|
{
|
||||||
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 read( const FileNode& /*fn*/ );
|
||||||
void write( FileStorage& /*fs*/ ) const;
|
void write( FileStorage& /*fs*/ ) const;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user