vendor: OpenCV 5.0.0 snapshot at 755e50675d97db9b7d449d8bd6b09888646f6c6e
This commit is contained in:
@@ -0,0 +1,135 @@
|
||||
|
||||
/*---------------STEP 1---------------------*/
|
||||
/* modify this file
|
||||
* opencv2/tracking/tracker.hpp
|
||||
* and put several lines of snippet similar to
|
||||
* the following:
|
||||
*/
|
||||
/*------------------------------------------*/
|
||||
|
||||
class CV_EXPORTS_W TrackerKCF : public Tracker
|
||||
{
|
||||
public:
|
||||
struct CV_EXPORTS Params
|
||||
{
|
||||
Params();
|
||||
void read( const FileNode& /*fn*/ );
|
||||
void write( FileStorage& /*fs*/ ) const;
|
||||
};
|
||||
|
||||
/** @brief Constructor
|
||||
@param parameters KCF parameters TrackerKCF::Params
|
||||
*/
|
||||
BOILERPLATE_CODE("KCF",TrackerKCF);
|
||||
};
|
||||
|
||||
|
||||
/*---------------STEP 2---------------------*/
|
||||
/* modify this file
|
||||
* src/tracker.cpp
|
||||
* add one line in function
|
||||
* Ptr<Tracker> Tracker::create( const String& trackerType )
|
||||
*/
|
||||
/*------------------------------------------*/
|
||||
|
||||
Ptr<Tracker> Tracker::create( const String& trackerType )
|
||||
{
|
||||
BOILERPLATE_CODE("MIL",TrackerMIL);
|
||||
BOILERPLATE_CODE("BOOSTING",TrackerBoosting);
|
||||
BOILERPLATE_CODE("MEDIANFLOW",TrackerMedianFlow);
|
||||
BOILERPLATE_CODE("TLD",TrackerTLD);
|
||||
BOILERPLATE_CODE("KCF",TrackerKCF); // add this line!
|
||||
return Ptr<Tracker>();
|
||||
}
|
||||
|
||||
|
||||
/*---------------STEP 3---------------------*/
|
||||
/* make a new file and paste the snippet below
|
||||
* and modify it according to your needs.
|
||||
* also make sure to put the LICENSE part.
|
||||
* src/trackerKCF.cpp
|
||||
*/
|
||||
/*------------------------------------------*/
|
||||
|
||||
/*---------------------------
|
||||
| TrackerKCFModel
|
||||
|---------------------------*/
|
||||
namespace cv{
|
||||
/**
|
||||
* \brief Implementation of TrackerModel for MIL algorithm
|
||||
*/
|
||||
class TrackerKCFModel : public TrackerModel{
|
||||
public:
|
||||
TrackerKCFModel(TrackerKCF::Params /*params*/){}
|
||||
~TrackerKCFModel(){}
|
||||
protected:
|
||||
void modelEstimationImpl( const std::vector<Mat>& responses ){}
|
||||
void modelUpdateImpl(){}
|
||||
};
|
||||
} /* namespace cv */
|
||||
|
||||
|
||||
/*---------------------------
|
||||
| TrackerKCF
|
||||
|---------------------------*/
|
||||
namespace cv{
|
||||
|
||||
/*
|
||||
* Prototype
|
||||
*/
|
||||
class TrackerKCFImpl : public TrackerKCF{
|
||||
public:
|
||||
TrackerKCFImpl( const TrackerKCF::Params ¶meters = TrackerKCF::Params() );
|
||||
void read( const FileNode& fn );
|
||||
void write( FileStorage& fs ) const;
|
||||
|
||||
protected:
|
||||
bool initImpl( const Mat& image, const Rect2d& boundingBox );
|
||||
bool updateImpl( const Mat& image, Rect2d& boundingBox );
|
||||
|
||||
TrackerKCF::Params params;
|
||||
};
|
||||
|
||||
/*
|
||||
* Constructor
|
||||
*/
|
||||
Ptr<TrackerKCF> TrackerKCF::createTracker(const TrackerKCF::Params ¶meters){
|
||||
return Ptr<TrackerKCFImpl>(new TrackerKCFImpl(parameters));
|
||||
}
|
||||
TrackerKCFImpl::TrackerKCFImpl( const TrackerKCF::Params ¶meters ) :
|
||||
params( parameters )
|
||||
{
|
||||
isInit = false;
|
||||
}
|
||||
|
||||
void TrackerKCFImpl::read( const cv::FileNode& fn ){
|
||||
params.read( fn );
|
||||
}
|
||||
|
||||
void TrackerKCFImpl::write( cv::FileStorage& fs ) const{
|
||||
params.write( fs );
|
||||
}
|
||||
|
||||
|
||||
bool TrackerKCFImpl::initImpl( const Mat& image, const Rect2d& boundingBox ){
|
||||
model=Ptr<TrackerKCFModel>(new TrackerKCFModel(params));
|
||||
return true;
|
||||
}
|
||||
bool TrackerKCFImpl::updateImpl( const Mat& image, Rect2d& boundingBox ){return true;}
|
||||
|
||||
/*
|
||||
* Parameters
|
||||
*/
|
||||
TrackerKCF::Params::Params(){
|
||||
|
||||
}
|
||||
|
||||
void TrackerKCF::Params::read( const cv::FileNode& fn ){
|
||||
|
||||
}
|
||||
|
||||
void TrackerKCF::Params::write( cv::FileStorage& fs ) const{
|
||||
|
||||
}
|
||||
|
||||
} /* namespace cv */
|
||||
@@ -0,0 +1,118 @@
|
||||
@inproceedings{OLB,
|
||||
title={Real-Time Tracking via On-line Boosting.},
|
||||
author={Grabner, Helmut and Grabner, Michael and Bischof, Horst},
|
||||
booktitle={BMVC},
|
||||
volume={1},
|
||||
number={5},
|
||||
pages={6},
|
||||
year={2006}
|
||||
}
|
||||
|
||||
@inproceedings{MedianFlow,
|
||||
title={Forward-backward error: Automatic detection of tracking failures},
|
||||
author={Kalal, Zdenek and Mikolajczyk, Krystian and Matas, Jiri},
|
||||
booktitle={Pattern Recognition (ICPR), 2010 20th International Conference on},
|
||||
pages={2756--2759},
|
||||
year={2010},
|
||||
organization={IEEE}
|
||||
}
|
||||
|
||||
@article{TLD,
|
||||
title={Tracking-learning-detection},
|
||||
author={Kalal, Zdenek and Mikolajczyk, Krystian and Matas, Jiri},
|
||||
journal={Pattern Analysis and Machine Intelligence, IEEE Transactions on},
|
||||
volume={34},
|
||||
number={7},
|
||||
pages={1409--1422},
|
||||
year={2012},
|
||||
publisher={IEEE}
|
||||
}
|
||||
|
||||
@inproceedings{OOT,
|
||||
title={Online object tracking: A benchmark},
|
||||
author={Wu, Yi and Lim, Jongwoo and Yang, Ming-Hsuan},
|
||||
booktitle={Computer Vision and Pattern Recognition (CVPR), 2013 IEEE Conference on},
|
||||
pages={2411--2418},
|
||||
year={2013},
|
||||
organization={IEEE}
|
||||
}
|
||||
|
||||
@article{KCF,
|
||||
title = {High-Speed Tracking with Kernelized Correlation Filters},
|
||||
journal = {Pattern Analysis and Machine Intelligence, IEEE Transactions on},
|
||||
author = {Henriques, J. F. and Caseiro, R. and Martins, P. and Batista, J.},
|
||||
year = {2015},
|
||||
doi = {10.1109/TPAMI.2014.2345390},
|
||||
}
|
||||
|
||||
@inproceedings{KCF_ECCV,
|
||||
title = {Exploiting the Circulant Structure of Tracking-by-detection with Kernels},
|
||||
author = {Henriques, J. F. and Caseiro, R. and Martins, P. and Batista, J.},
|
||||
booktitle = {proceedings of the European Conference on Computer Vision},
|
||||
year = {2012},
|
||||
}
|
||||
|
||||
@INPROCEEDINGS{KCF_CN,
|
||||
author={Danelljan, M. and Khan, F.S. and Felsberg, M. and van de Weijer, J.},
|
||||
booktitle={Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on},
|
||||
title={Adaptive Color Attributes for Real-Time Visual Tracking},
|
||||
year={2014},
|
||||
month={June},
|
||||
pages={1090-1097},
|
||||
keywords={computer vision;feature extraction;image colour analysis;image representation;image sequences;adaptive color attributes;benchmark color sequences;color features;color representations;computer vision;image description;real-time visual tracking;tracking-by-detection framework;Color;Computational modeling;Covariance matrices;Image color analysis;Kernel;Target tracking;Visualization;Adaptive Dimensionality Reduction;Appearance Model;Color Features;Visual Tracking},
|
||||
doi={10.1109/CVPR.2014.143},
|
||||
}
|
||||
|
||||
@inproceedings{MOSSE,
|
||||
title={Visual Object Tracking using Adaptive Correlation Filters},
|
||||
author={Bolme, David S. and Beveridge, J. Ross and Draper, Bruce A. and Lui Yui, Man},
|
||||
booktitle = {Conference on Computer Vision and Pattern Recognition (CVPR)},
|
||||
year = {2010}
|
||||
}
|
||||
|
||||
@Article{Lukezic_IJCV2018,
|
||||
author={Luke{\v{z}}i{\v{c}}, Alan and Voj{'i}{\v{r}}, Tom{'a}{\v{s}} and {\v{C}}ehovin Zajc, Luka and Matas, Ji{\v{r}}{'i} and Kristan, Matej},
|
||||
title={Discriminative Correlation Filter Tracker with Channel and Spatial Reliability},
|
||||
journal={International Journal of Computer Vision},
|
||||
year={2018},
|
||||
}
|
||||
|
||||
@article{chaumette:inria-00350283,
|
||||
title={{Visual servo control, Part I: Basic approaches}},
|
||||
author={Chaumette, Fran{\c c}ois and Hutchinson, S.},
|
||||
url={https://inria.hal.science/inria-00350283},
|
||||
journal={{IEEE Robotics and Automation Magazine}},
|
||||
publisher={{Institute of Electrical and Electronics Engineers}},
|
||||
volume={13},
|
||||
number={4},
|
||||
pages={82-90},
|
||||
year={2006},
|
||||
pdf={https://inria.hal.science/inria-00350283/file/2006_ieee_ram_chaumette.pdf},
|
||||
hal_id={inria-00350283},
|
||||
hal_version={v1},
|
||||
}
|
||||
|
||||
@article{chaumette:inria-00350638,
|
||||
title={{Visual servo control, Part II: Advanced approaches}},
|
||||
author={Chaumette, Fran{\c c}ois and Hutchinson, S.},
|
||||
url={https://inria.hal.science/inria-00350638},
|
||||
journal={{IEEE Robotics and Automation Magazine}},
|
||||
publisher={{Institute of Electrical and Electronics Engineers}},
|
||||
volume={14},
|
||||
number={1},
|
||||
pages={109-118},
|
||||
year={2007},
|
||||
pdf={https://inria.hal.science/inria-00350638/file/2007_ieee_ram_chaumette.pdf},
|
||||
hal_id={inria-00350638},
|
||||
hal_version={v1},
|
||||
}
|
||||
|
||||
@article{Hutchinson1996ATO,
|
||||
title={A tutorial on visual servo control},
|
||||
author={Seth A. Hutchinson and Gregory Hager and Peter Corke},
|
||||
journal={IEEE Trans. Robotics Autom.},
|
||||
year={1996},
|
||||
volume={12},
|
||||
pages={651-670},
|
||||
url={https://api.semanticscholar.org/CorpusID:1814423}
|
||||
}
|
||||
Reference in New Issue
Block a user