Visual Servoing Platform  version 3.6.1 under development (2024-03-18)
vpTemplateTracker Class Referenceabstract

#include <visp3/tt/vpTemplateTracker.h>

+ Inheritance diagram for vpTemplateTracker:

Public Member Functions

 vpTemplateTracker ()
 
 vpTemplateTracker (vpTemplateTrackerWarp *_warp)
 
virtual ~vpTemplateTracker ()
 
void display (const vpImage< unsigned char > &I, const vpColor &col=vpColor::green, unsigned int thickness=3)
 
void display (const vpImage< vpRGBa > &I, const vpColor &col=vpColor::green, unsigned int thickness=3)
 
bool getDiverge () const
 
vpColVector getdp ()
 
vpColVector getG () const
 
vpMatrix getH () const
 
unsigned int getNbParam () const
 
unsigned int getNbIteration () const
 
vpColVector getp () const
 
double getRatioPixelIn () const
 
vpTemplateTrackerWarpgetWarp () const
 
vpTemplateTrackerZone getZoneRef () const
 
void initClick (const vpImage< unsigned char > &I, bool delaunay=false)
 
void initFromPoints (const vpImage< unsigned char > &I, const std::vector< vpImagePoint > &v_ip, bool delaunay=false)
 
void initFromZone (const vpImage< unsigned char > &I, const vpTemplateTrackerZone &zone)
 
void resetTracker ()
 
void setBlur (bool b)
 
void setCostFunctionVerification (bool b)
 
void setGain (double g)
 
void setGaussianFilterSize (unsigned int new_taill)
 
void setHDes (vpMatrix &tH)
 
void setIterationMax (const unsigned int &n)
 
void setLambda (double l)
 
void setNbIterBrent (const unsigned int &b)
 
void setp (const vpColVector &tp)
 
void setPyramidal (unsigned int nlevels=2, unsigned int level_to_stop=1)
 
void setSampling (int sample_i, int sample_j)
 
void setThresholdGradient (double threshold)
 
void setThresholdResidualDifference (double threshold)
 
void setUseBrent (bool b)
 
void track (const vpImage< unsigned char > &I)
 
void trackRobust (const vpImage< unsigned char > &I)
 

Protected Attributes

unsigned int nbLvlPyr
 
unsigned int l0Pyr
 
bool pyrInitialised
 
double evolRMS
 
std::vector< double > x_pos
 
std::vector< double > y_pos
 
double evolRMS_eps
 
vpTemplateTrackerPointptTemplate
 
vpTemplateTrackerPoint ** ptTemplatePyr
 
bool ptTemplateInit
 
unsigned int templateSize
 
unsigned int * templateSizePyr
 
bool * ptTemplateSelect
 
bool ** ptTemplateSelectPyr
 
bool ptTemplateSelectInit
 
unsigned int templateSelectSize
 
vpTemplateTrackerPointCompoptTemplateCompo
 
vpTemplateTrackerPointCompo ** ptTemplateCompoPyr
 
vpTemplateTrackerZonezoneTracked
 
vpTemplateTrackerZonezoneTrackedPyr
 
vpImage< unsigned char > * pyr_IDes
 
vpMatrix H
 
vpMatrix Hdesire
 
vpMatrixHdesirePyr
 
vpMatrix HLM
 
vpMatrix HLMdesire
 
vpMatrixHLMdesirePyr
 
vpMatrix HLMdesireInverse
 
vpMatrixHLMdesireInversePyr
 
vpColVector G
 
double gain
 
double thresholdGradient
 
bool costFunctionVerification
 
bool blur
 
bool useBrent
 
unsigned int nbIterBrent
 
unsigned int taillef
 
double * fgG
 
double * fgdG
 
double ratioPixelIn
 
int mod_i
 
int mod_j
 
unsigned int nbParam
 
double lambdaDep
 
unsigned int iterationMax
 
unsigned int iterationGlobale
 
bool diverge
 
unsigned int nbIteration
 
bool useCompositionnal
 
bool useInverse
 
vpTemplateTrackerWarpWarp
 
vpColVector p
 
vpColVector dp
 
vpColVector X1
 
vpColVector X2
 
vpMatrix dW
 
vpImage< double > BI
 
vpImage< double > dIx
 
vpImage< double > dIy
 
vpTemplateTrackerZone zoneRef_
 

Deprecated functions

vp_deprecated void setThresholdRMS (double threshold)
 
void computeEvalRMS (const vpColVector &p)
 
void computeOptimalBrentGain (const vpImage< unsigned char > &I, vpColVector &tp, double tMI, vpColVector &direction, double &alpha)
 
virtual double getCost (const vpImage< unsigned char > &I, const vpColVector &tp)=0
 
void getGaussianBluredImage (const vpImage< unsigned char > &I)
 
virtual void initHessienDesired (const vpImage< unsigned char > &I)=0
 
virtual void initHessienDesiredPyr (const vpImage< unsigned char > &I)
 
void initPosEvalRMS (const vpColVector &p)
 
virtual void initPyramidal (unsigned int nbLvl, unsigned int l0)
 
void initTracking (const vpImage< unsigned char > &I, vpTemplateTrackerZone &zone)
 
virtual void initTrackingPyr (const vpImage< unsigned char > &I, vpTemplateTrackerZone &zone)
 
virtual void trackNoPyr (const vpImage< unsigned char > &I)=0
 
virtual void trackPyr (const vpImage< unsigned char > &I)
 

Detailed Description

This class allows to instantiate a template tracker using image registration algorithms [11] [12].

Examples
templateTracker.cpp.

Definition at line 61 of file vpTemplateTracker.h.

Constructor & Destructor Documentation

◆ vpTemplateTracker() [1/2]

vpTemplateTracker::vpTemplateTracker ( )
inline

Default constructor.

Definition at line 147 of file vpTemplateTracker.h.

◆ vpTemplateTracker() [2/2]

◆ ~vpTemplateTracker()

vpTemplateTracker::~vpTemplateTracker ( )
virtual

Definition at line 143 of file vpTemplateTracker.cpp.

References fgdG, fgG, and resetTracker().

Member Function Documentation

◆ computeEvalRMS()

◆ computeOptimalBrentGain()

◆ display() [1/2]

void vpTemplateTracker::display ( const vpImage< unsigned char > &  I,
const vpColor col = vpColor::green,
unsigned int  thickness = 3 
)

Display the warped reference template in an image.

Parameters
IImage in which the warped zone has to be displayed.
colColor used to draw the triangle edges.
thicknessThickness of the lines.

The following code shows how to use display capabilities:

#include <visp3/tt/vpTemplateTrackerSSDInverseCompositional.h>
#include <visp3/tt/vpTemplateTrackerWarpHomography.h>
int main()
{
vpTemplateTrackerZone zoneRef, zoneWarped;
// Display the warped zone
tracker.display(I, vpColor::red);
// Display the reference zone
zoneRef = tracker.getZoneRef();
zoneRef.display(I, vpColor::green);
// Display the warped zone
vpColVector p = tracker.getp();
warp.warpZone(zoneRef, p, zoneWarped);
zoneWarped.display(I, vpColor::blue);
}
Implementation of column vector and the associated operations.
Definition: vpColVector.h:163
static const vpColor red
Definition: vpColor.h:211
static const vpColor blue
Definition: vpColor.h:217
static const vpColor green
Definition: vpColor.h:214
void warpZone(const vpTemplateTrackerZone &in, const vpColVector &p, vpTemplateTrackerZone &out)
void display(const vpImage< unsigned char > &I, const vpColor &col=vpColor::green, unsigned int thickness=3)
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 315 of file vpTemplateTracker.cpp.

References vpImage< Type >::display, vpTemplateTrackerZone::display(), p, Warp, vpTemplateTrackerWarp::warpZone(), and zoneTracked.

◆ display() [2/2]

void vpTemplateTracker::display ( const vpImage< vpRGBa > &  I,
const vpColor col = vpColor::green,
unsigned int  thickness = 3 
)

Display the warped reference template in an image.

Parameters
IImage in which the warped zone has to be displayed.
colColor used to draw the triangle edges.
thicknessThickness of the lines.

The following code shows how to use display capabilities:

#include <visp3/tt/vpTemplateTrackerSSDInverseCompositional.h>
#include <visp3/tt/vpTemplateTrackerWarpHomography.h>
int main()
{
vpTemplateTrackerZone zoneRef, zoneWarped;
// Display the warped zone
tracker.display(I, vpColor::red);
// Display the reference zone
zoneRef = tracker.getZoneRef();
zoneRef.display(I, vpColor::green);
// Display the warped zone
vpColVector p = tracker.getp();
warp.warpZone(zoneRef, p, zoneWarped);
zoneWarped.display(I, vpColor::blue);
}

Definition at line 357 of file vpTemplateTracker.cpp.

References vpImage< Type >::display, vpTemplateTrackerZone::display(), p, Warp, vpTemplateTrackerWarp::warpZone(), and zoneTracked.

◆ getCost()

virtual double vpTemplateTracker::getCost ( const vpImage< unsigned char > &  I,
const vpColVector tp 
)
protectedpure virtual

◆ getDiverge()

bool vpTemplateTracker::getDiverge ( ) const
inline

Definition at line 166 of file vpTemplateTracker.h.

◆ getdp()

vpColVector vpTemplateTracker::getdp ( )
inline

Definition at line 167 of file vpTemplateTracker.h.

◆ getG()

vpColVector vpTemplateTracker::getG ( ) const
inline

Definition at line 168 of file vpTemplateTracker.h.

◆ getGaussianBluredImage()

void vpTemplateTracker::getGaussianBluredImage ( const vpImage< unsigned char > &  I)
inlineprotected

Definition at line 290 of file vpTemplateTracker.h.

References vpImageFilter::filter().

Referenced by trackRobust().

◆ getH()

vpMatrix vpTemplateTracker::getH ( ) const
inline

Definition at line 169 of file vpTemplateTracker.h.

◆ getNbIteration()

unsigned int vpTemplateTracker::getNbIteration ( ) const
inline
Examples
templateTracker.cpp.

Definition at line 171 of file vpTemplateTracker.h.

◆ getNbParam()

unsigned int vpTemplateTracker::getNbParam ( ) const
inline

Definition at line 170 of file vpTemplateTracker.h.

◆ getp()

vpColVector vpTemplateTracker::getp ( ) const
inline
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 172 of file vpTemplateTracker.h.

◆ getRatioPixelIn()

double vpTemplateTracker::getRatioPixelIn ( ) const
inline

Definition at line 173 of file vpTemplateTracker.h.

◆ getWarp()

vpTemplateTrackerWarp* vpTemplateTracker::getWarp ( ) const
inline
Returns
The pointer to the warper.
Examples
templateTracker.cpp.

Definition at line 179 of file vpTemplateTracker.h.

◆ getZoneRef()

vpTemplateTrackerZone vpTemplateTracker::getZoneRef ( ) const
inline

Return the reference template zone.

Examples
templateTracker.cpp.

Definition at line 184 of file vpTemplateTracker.h.

◆ initClick()

void vpTemplateTracker::initClick ( const vpImage< unsigned char > &  I,
bool  delaunay = false 
)

Select the reference template in image I using mouse click.

Parameters
IImage containing the reference template.
delaunayFlag used to enable Delaunay triangulation.
  • If true, from the image points selected by the user, a Delaunay triangulation is performed to initialize the reference template.
    • A left click select a image point;
    • A right click select the last image point and ends the initialisation stage.
  • If false, the user select directly points as successive triangle corners. The size of v_ip vector should be a multiple of 3. It is not mandatory that triangles have one edge in common; they can define a discontinued area.
    • A left click select a triangle corner;
    • A right click select the last triangle corner and ends the initialisation stage. For example, to select the reference template as two triangles, the user has to left click five times and finish the selection on the sixth corner with a right click.
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 581 of file vpTemplateTracker.cpp.

References vpTemplateTrackerZone::initClick(), initHessienDesired(), initHessienDesiredPyr(), initPyramidal(), initTracking(), initTrackingPyr(), l0Pyr, nbLvlPyr, and zoneRef_.

◆ initFromPoints()

void vpTemplateTracker::initFromPoints ( const vpImage< unsigned char > &  I,
const std::vector< vpImagePoint > &  v_ip,
bool  delaunay = false 
)

Initialize the reference template from a vector of points.

Parameters
IImage containing the reference template.
v_ipVector of image points defining the reference template.
delaunay
  • If true, from the image points defining the reference template enable Delaunay triangulation.
  • If false, the vector of image points define the reference template as a list of triangles. The size of v_ip vector should be a multiple of 3.
Examples
templateTracker.cpp.

Definition at line 606 of file vpTemplateTracker.cpp.

References vpTemplateTrackerZone::initFromPoints(), initHessienDesired(), initHessienDesiredPyr(), initPyramidal(), initTracking(), initTrackingPyr(), l0Pyr, nbLvlPyr, and zoneRef_.

◆ initFromZone()

void vpTemplateTracker::initFromZone ( const vpImage< unsigned char > &  I,
const vpTemplateTrackerZone zone 
)

Initialize the reference template from a vector of points.

Parameters
IImage containing the reference template.
zoneThe zone that describes the reference template.

Definition at line 627 of file vpTemplateTracker.cpp.

References initHessienDesired(), initHessienDesiredPyr(), initPyramidal(), initTracking(), initTrackingPyr(), l0Pyr, nbLvlPyr, and zoneRef_.

◆ initHessienDesired()

◆ initHessienDesiredPyr()

◆ initPosEvalRMS()

◆ initPyramidal()

void vpTemplateTracker::initPyramidal ( unsigned int  nbLvl,
unsigned int  l0 
)
protectedvirtual
Parameters
nbLvl: Number of levels in the pyramid.
l0: Pyramid level where the tracking is stopped. The level with the highest resolution is 0.

Definition at line 510 of file vpTemplateTracker.cpp.

References HdesirePyr, HLMdesireInversePyr, HLMdesirePyr, l0Pyr, nbLvlPyr, ptTemplateCompoPyr, ptTemplatePyr, ptTemplateSelectPyr, pyr_IDes, pyrInitialised, templateSizePyr, and zoneTrackedPyr.

Referenced by initClick(), initFromPoints(), and initFromZone().

◆ initTracking()

◆ initTrackingPyr()

◆ resetTracker()

◆ setBlur()

void vpTemplateTracker::setBlur ( bool  b)
inline

Definition at line 192 of file vpTemplateTracker.h.

◆ setCostFunctionVerification()

void vpTemplateTracker::setCostFunctionVerification ( bool  b)
inline

Definition at line 193 of file vpTemplateTracker.h.

◆ setGain()

void vpTemplateTracker::setGain ( double  g)
inline

Definition at line 194 of file vpTemplateTracker.h.

◆ setGaussianFilterSize()

void vpTemplateTracker::setGaussianFilterSize ( unsigned int  new_taill)

◆ setHDes()

void vpTemplateTracker::setHDes ( vpMatrix tH)
inline

Definition at line 196 of file vpTemplateTracker.h.

References vpMatrix::computeHLM(), and vpMatrix::inverseByLU().

◆ setIterationMax()

void vpTemplateTracker::setIterationMax ( const unsigned int &  n)
inline

Set the maximum number of iteration of the estimation scheme.

Parameters
n: Maximum number of iterations to stop the estimation scheme. A typical value is around 100.
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 207 of file vpTemplateTracker.h.

◆ setLambda()

void vpTemplateTracker::setLambda ( double  l)
inline

Set the convergence gain used in the estimation scheme.

Parameters
l: Gain. A typical value is 0.001.
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 212 of file vpTemplateTracker.h.

◆ setNbIterBrent()

void vpTemplateTracker::setNbIterBrent ( const unsigned int &  b)
inline

Definition at line 213 of file vpTemplateTracker.h.

◆ setp()

void vpTemplateTracker::setp ( const vpColVector tp)
inline

Definition at line 214 of file vpTemplateTracker.h.

◆ setPyramidal()

void vpTemplateTracker::setPyramidal ( unsigned int  nlevels = 2,
unsigned int  level_to_stop = 1 
)
inline

Set the number of pyramid levels used in the multi-resolution scheme. If nlevels > 1, the tracker uses a pyramidal approach.

Parameters
nlevels: Number of pyramid levels. Algorithm starts at level nlevels-1.
level_to_stop: Last level of the pyramid that will be considered. Lowest level is zero.
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 229 of file vpTemplateTracker.h.

◆ setSampling()

void vpTemplateTracker::setSampling ( int  sample_i,
int  sample_j 
)
inline

Set the pixel sampling parameters along the rows and the columns.

Parameters
sample_i: Sampling factor along the rows. If 1 all the lines are considered. If 2, consider one line over two.
sample_j: Sampling factor along the columns. If 1 all the columns are considered. If 2, consider one column over two.
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 248 of file vpTemplateTracker.h.

◆ setThresholdGradient()

void vpTemplateTracker::setThresholdGradient ( double  threshold)
inline
Examples
templateTracker.cpp.

Definition at line 253 of file vpTemplateTracker.h.

◆ setThresholdResidualDifference()

void vpTemplateTracker::setThresholdResidualDifference ( double  threshold)
inline

Set the threshold used to stop optimization loop. When the residual difference between two successive iterations becomes lower than the threshold we stop optimization loop.

Note
Increasing the default value allows to speed up the tracking.
Parameters
threshold: Threshold used to stop optimization. Default value is set to 1e-4.
Examples
templateTracker.cpp.

Definition at line 263 of file vpTemplateTracker.h.

◆ setThresholdRMS()

vp_deprecated void vpTemplateTracker::setThresholdRMS ( double  threshold)
inline
Deprecated:
This function is deprecated and the value set is no more used. Use rather setThresholdResidualDerivative()
Parameters
threshold: Unused value.

Definition at line 281 of file vpTemplateTracker.h.

◆ setUseBrent()

void vpTemplateTracker::setUseBrent ( bool  b)
inline

By default Brent usage is disabled.

Definition at line 266 of file vpTemplateTracker.h.

◆ track()

void vpTemplateTracker::track ( const vpImage< unsigned char > &  I)

Track the template on image I.

Parameters
IImage to process.
Examples
templateTracker.cpp, and tutorial-template-tracker.cpp.

Definition at line 694 of file vpTemplateTracker.cpp.

References nbLvlPyr, trackNoPyr(), and trackPyr().

◆ trackNoPyr()

◆ trackPyr()

◆ trackRobust()

void vpTemplateTracker::trackRobust ( const vpImage< unsigned char > &  I)

Definition at line 746 of file vpTemplateTracker.cpp.

References costFunctionVerification, getCost(), getGaussianBluredImage(), p, and trackNoPyr().

Referenced by trackPyr().

Member Data Documentation

◆ BI

◆ blur

◆ costFunctionVerification

bool vpTemplateTracker::costFunctionVerification
protected

Definition at line 108 of file vpTemplateTracker.h.

Referenced by trackRobust().

◆ diverge

◆ dIx

◆ dIy

◆ dp

◆ dW

◆ evolRMS

◆ evolRMS_eps

◆ fgdG

◆ fgG

◆ G

◆ gain

◆ H

◆ Hdesire

◆ HdesirePyr

vpMatrix* vpTemplateTracker::HdesirePyr
protected

Definition at line 98 of file vpTemplateTracker.h.

Referenced by initHessienDesiredPyr(), initPyramidal(), resetTracker(), and trackPyr().

◆ HLM

◆ HLMdesire

◆ HLMdesireInverse

◆ HLMdesireInversePyr

vpMatrix* vpTemplateTracker::HLMdesireInversePyr
protected

Definition at line 103 of file vpTemplateTracker.h.

Referenced by initHessienDesiredPyr(), initPyramidal(), resetTracker(), and trackPyr().

◆ HLMdesirePyr

vpMatrix* vpTemplateTracker::HLMdesirePyr
protected

Definition at line 101 of file vpTemplateTracker.h.

Referenced by initHessienDesiredPyr(), initPyramidal(), resetTracker(), and trackPyr().

◆ iterationGlobale

◆ iterationMax

◆ l0Pyr

unsigned int vpTemplateTracker::l0Pyr
protected

Definition at line 66 of file vpTemplateTracker.h.

Referenced by initClick(), initFromPoints(), initFromZone(), initPyramidal(), and trackPyr().

◆ lambdaDep

◆ mod_i

int vpTemplateTracker::mod_i
protected

Definition at line 116 of file vpTemplateTracker.h.

Referenced by initTracking().

◆ mod_j

int vpTemplateTracker::mod_j
protected

Definition at line 117 of file vpTemplateTracker.h.

Referenced by initTracking().

◆ nbIteration

◆ nbIterBrent

unsigned int vpTemplateTracker::nbIterBrent
protected

Definition at line 111 of file vpTemplateTracker.h.

Referenced by computeOptimalBrentGain().

◆ nbLvlPyr

unsigned int vpTemplateTracker::nbLvlPyr
protected

◆ nbParam

unsigned int vpTemplateTracker::nbParam
protected

Definition at line 118 of file vpTemplateTracker.h.

Referenced by vpTemplateTrackerMI::computeGradient(), vpTemplateTrackerMI::computeHessien(), vpTemplateTrackerMI::computeHessienNormalized(), computeOptimalBrentGain(), vpTemplateTrackerMI::computeProba(), vpTemplateTrackerMIESM::initCompInverse(), vpTemplateTrackerSSDESM::initCompInverse(), vpTemplateTrackerSSDInverseCompositional::initCompInverse(), vpTemplateTrackerZNCCInverseCompositional::initCompInverse(), vpTemplateTrackerMIInverseCompositional::initCompInverse(), vpTemplateTrackerMIForwardCompositional::initCompo(), vpTemplateTrackerSSDForwardCompositional::initCompo(), vpTemplateTrackerZNCCForwardAdditional::initHessienDesired(), vpTemplateTrackerZNCCInverseCompositional::initHessienDesired(), vpTemplateTrackerMIESM::initHessienDesired(), vpTemplateTrackerMIForwardAdditional::initHessienDesired(), vpTemplateTrackerMIForwardCompositional::initHessienDesired(), vpTemplateTrackerMIInverseCompositional::initHessienDesired(), vpTemplateTrackerMIInverseCompositional::initTemplateRefBspline(), initTracking(), vpTemplateTrackerMI::setBspline(), vpTemplateTrackerMI::setNc(), vpTemplateTrackerSSDESM::trackNoPyr(), vpTemplateTrackerSSDForwardAdditional::trackNoPyr(), vpTemplateTrackerSSDForwardCompositional::trackNoPyr(), vpTemplateTrackerSSDInverseCompositional::trackNoPyr(), vpTemplateTrackerZNCCForwardAdditional::trackNoPyr(), vpTemplateTrackerZNCCInverseCompositional::trackNoPyr(), vpTemplateTrackerMIESM::trackNoPyr(), vpTemplateTrackerMIForwardAdditional::trackNoPyr(), vpTemplateTrackerMIForwardCompositional::trackNoPyr(), vpTemplateTrackerMIInverseCompositional::trackNoPyr(), trackPyr(), vpTemplateTracker(), vpTemplateTrackerMI::vpTemplateTrackerMI(), vpTemplateTrackerSSD::vpTemplateTrackerSSD(), vpTemplateTrackerSSDESM::vpTemplateTrackerSSDESM(), vpTemplateTrackerSSDInverseCompositional::vpTemplateTrackerSSDInverseCompositional(), vpTemplateTrackerZNCC::vpTemplateTrackerZNCC(), and vpTemplateTrackerMI::zeroProbabilities().

◆ p

◆ ptTemplate

vpTemplateTrackerPoint* vpTemplateTracker::ptTemplate
protected

Definition at line 74 of file vpTemplateTracker.h.

Referenced by vpTemplateTrackerSSD::getCost(), vpTemplateTrackerZNCC::getCost(), vpTemplateTrackerMI::getCost(), vpTemplateTrackerMI::getMI(), vpTemplateTrackerMI::getMI256(), vpTemplateTrackerMI::getNormalizedCost(), vpTemplateTrackerSSD::getSSD(), vpTemplateTrackerMIESM::initCompInverse(), vpTemplateTrackerSSDESM::initCompInverse(), vpTemplateTrackerSSDInverseCompositional::initCompInverse(), vpTemplateTrackerZNCCInverseCompositional::initCompInverse(), vpTemplateTrackerMIInverseCompositional::initCompInverse(), vpTemplateTrackerMIForwardCompositional::initCompo(), vpTemplateTrackerSSDForwardCompositional::initCompo(), vpTemplateTrackerZNCCForwardAdditional::initHessienDesired(), vpTemplateTrackerZNCCInverseCompositional::initHessienDesired(), vpTemplateTrackerMIESM::initHessienDesired(), vpTemplateTrackerMIForwardAdditional::initHessienDesired(), vpTemplateTrackerMIForwardCompositional::initHessienDesired(), vpTemplateTrackerMIInverseCompositional::initHessienDesired(), initHessienDesiredPyr(), vpTemplateTrackerMIInverseCompositional::initTemplateRefBspline(), initTracking(), initTrackingPyr(), resetTracker(), vpTemplateTrackerSSDESM::trackNoPyr(), vpTemplateTrackerSSDForwardAdditional::trackNoPyr(), vpTemplateTrackerSSDForwardCompositional::trackNoPyr(), vpTemplateTrackerSSDInverseCompositional::trackNoPyr(), vpTemplateTrackerZNCCForwardAdditional::trackNoPyr(), vpTemplateTrackerZNCCInverseCompositional::trackNoPyr(), vpTemplateTrackerMIESM::trackNoPyr(), vpTemplateTrackerMIForwardAdditional::trackNoPyr(), vpTemplateTrackerMIForwardCompositional::trackNoPyr(), vpTemplateTrackerMIInverseCompositional::trackNoPyr(), and trackPyr().

◆ ptTemplateCompo

◆ ptTemplateCompoPyr

vpTemplateTrackerPointCompo** vpTemplateTracker::ptTemplateCompoPyr
protected

Definition at line 90 of file vpTemplateTracker.h.

Referenced by initHessienDesiredPyr(), initPyramidal(), resetTracker(), and trackPyr().

◆ ptTemplateInit

bool vpTemplateTracker::ptTemplateInit
protected

Definition at line 76 of file vpTemplateTracker.h.

Referenced by initTracking(), and resetTracker().

◆ ptTemplatePyr

vpTemplateTrackerPoint** vpTemplateTracker::ptTemplatePyr
protected

◆ ptTemplateSelect

◆ ptTemplateSelectInit

bool vpTemplateTracker::ptTemplateSelectInit
protected

Definition at line 81 of file vpTemplateTracker.h.

Referenced by initTracking(), and resetTracker().

◆ ptTemplateSelectPyr

bool** vpTemplateTracker::ptTemplateSelectPyr
protected

◆ pyr_IDes

vpImage<unsigned char>* vpTemplateTracker::pyr_IDes
protected

Definition at line 94 of file vpTemplateTracker.h.

Referenced by initPyramidal(), initTrackingPyr(), and resetTracker().

◆ pyrInitialised

bool vpTemplateTracker::pyrInitialised
protected

Definition at line 67 of file vpTemplateTracker.h.

Referenced by vpTemplateTrackerSSD::getSSD(), initPyramidal(), and resetTracker().

◆ ratioPixelIn

double vpTemplateTracker::ratioPixelIn
protected

◆ taillef

◆ templateSelectSize

unsigned int vpTemplateTracker::templateSelectSize
protected

Definition at line 82 of file vpTemplateTracker.h.

Referenced by initTracking().

◆ templateSize

unsigned int vpTemplateTracker::templateSize
protected

Definition at line 77 of file vpTemplateTracker.h.

Referenced by vpTemplateTrackerSSD::getCost(), vpTemplateTrackerZNCC::getCost(), vpTemplateTrackerMI::getCost(), vpTemplateTrackerMI::getMI(), vpTemplateTrackerMI::getMI256(), vpTemplateTrackerMI::getNormalizedCost(), vpTemplateTrackerSSD::getSSD(), vpTemplateTrackerMIESM::initCompInverse(), vpTemplateTrackerSSDESM::initCompInverse(), vpTemplateTrackerSSDInverseCompositional::initCompInverse(), vpTemplateTrackerZNCCInverseCompositional::initCompInverse(), vpTemplateTrackerMIInverseCompositional::initCompInverse(), vpTemplateTrackerMIForwardCompositional::initCompo(), vpTemplateTrackerSSDForwardCompositional::initCompo(), vpTemplateTrackerZNCCForwardAdditional::initHessienDesired(), vpTemplateTrackerZNCCInverseCompositional::initHessienDesired(), vpTemplateTrackerMIESM::initHessienDesired(), vpTemplateTrackerMIForwardAdditional::initHessienDesired(), vpTemplateTrackerMIForwardCompositional::initHessienDesired(), vpTemplateTrackerMIInverseCompositional::initHessienDesired(), initHessienDesiredPyr(), initTracking(), initTrackingPyr(), resetTracker(), vpTemplateTrackerSSDESM::trackNoPyr(), vpTemplateTrackerSSDForwardAdditional::trackNoPyr(), vpTemplateTrackerSSDForwardCompositional::trackNoPyr(), vpTemplateTrackerSSDInverseCompositional::trackNoPyr(), vpTemplateTrackerZNCCForwardAdditional::trackNoPyr(), vpTemplateTrackerZNCCInverseCompositional::trackNoPyr(), vpTemplateTrackerMIESM::trackNoPyr(), vpTemplateTrackerMIForwardAdditional::trackNoPyr(), vpTemplateTrackerMIForwardCompositional::trackNoPyr(), vpTemplateTrackerMIInverseCompositional::trackNoPyr(), and trackPyr().

◆ templateSizePyr

unsigned int* vpTemplateTracker::templateSizePyr
protected

◆ thresholdGradient

double vpTemplateTracker::thresholdGradient
protected

Definition at line 107 of file vpTemplateTracker.h.

Referenced by initTracking().

◆ useBrent

◆ useCompositionnal

◆ useInverse

◆ Warp

vpTemplateTrackerWarp* vpTemplateTracker::Warp
protected

Definition at line 129 of file vpTemplateTracker.h.

Referenced by computeEvalRMS(), computeOptimalBrentGain(), display(), vpTemplateTrackerSSD::getCost(), vpTemplateTrackerZNCC::getCost(), vpTemplateTrackerMI::getCost(), vpTemplateTrackerMI::getMI(), vpTemplateTrackerMI::getMI256(), vpTemplateTrackerMI::getNormalizedCost(), vpTemplateTrackerSSD::getSSD(), vpTemplateTrackerMIESM::initCompInverse(), vpTemplateTrackerSSDESM::initCompInverse(), vpTemplateTrackerSSDInverseCompositional::initCompInverse(), vpTemplateTrackerZNCCInverseCompositional::initCompInverse(), vpTemplateTrackerMIInverseCompositional::initCompInverse(), vpTemplateTrackerMIForwardCompositional::initCompo(), vpTemplateTrackerSSDForwardCompositional::initCompo(), vpTemplateTrackerZNCCForwardAdditional::initHessienDesired(), vpTemplateTrackerZNCCInverseCompositional::initHessienDesired(), vpTemplateTrackerMIESM::initHessienDesired(), vpTemplateTrackerMIForwardAdditional::initHessienDesired(), vpTemplateTrackerMIForwardCompositional::initHessienDesired(), vpTemplateTrackerMIInverseCompositional::initHessienDesired(), initPosEvalRMS(), vpTemplateTrackerSSDESM::trackNoPyr(), vpTemplateTrackerSSDForwardAdditional::trackNoPyr(), vpTemplateTrackerSSDForwardCompositional::trackNoPyr(), vpTemplateTrackerSSDInverseCompositional::trackNoPyr(), vpTemplateTrackerZNCCForwardAdditional::trackNoPyr(), vpTemplateTrackerZNCCInverseCompositional::trackNoPyr(), vpTemplateTrackerMIESM::trackNoPyr(), vpTemplateTrackerMIForwardAdditional::trackNoPyr(), vpTemplateTrackerMIForwardCompositional::trackNoPyr(), vpTemplateTrackerMIInverseCompositional::trackNoPyr(), trackPyr(), vpTemplateTracker(), vpTemplateTrackerMIESM::vpTemplateTrackerMIESM(), and vpTemplateTrackerSSDESM::vpTemplateTrackerSSDESM().

◆ X1

vpColVector vpTemplateTracker::X1
protected

Definition at line 135 of file vpTemplateTracker.h.

Referenced by computeEvalRMS(), vpTemplateTrackerSSD::getCost(), vpTemplateTrackerZNCC::getCost(), vpTemplateTrackerMI::getCost(), vpTemplateTrackerMI::getMI(), vpTemplateTrackerMI::getMI256(), vpTemplateTrackerMI::getNormalizedCost(), vpTemplateTrackerSSD::getSSD(), vpTemplateTrackerMIESM::initCompInverse(), vpTemplateTrackerMIForwardCompositional::initCompo(), vpTemplateTrackerSSDForwardCompositional::initCompo(), vpTemplateTrackerZNCCForwardAdditional::initHessienDesired(), vpTemplateTrackerZNCCInverseCompositional::initHessienDesired(), vpTemplateTrackerMIESM::initHessienDesired(), vpTemplateTrackerMIForwardAdditional::initHessienDesired(), vpTemplateTrackerMIForwardCompositional::initHessienDesired(), vpTemplateTrackerMIInverseCompositional::initHessienDesired(), initPosEvalRMS(), vpTemplateTrackerSSDESM::trackNoPyr(), vpTemplateTrackerSSDForwardAdditional::trackNoPyr(), vpTemplateTrackerSSDForwardCompositional::trackNoPyr(), vpTemplateTrackerSSDInverseCompositional::trackNoPyr(), vpTemplateTrackerZNCCForwardAdditional::trackNoPyr(), vpTemplateTrackerZNCCInverseCompositional::trackNoPyr(), vpTemplateTrackerMIESM::trackNoPyr(), vpTemplateTrackerMIForwardAdditional::trackNoPyr(), vpTemplateTrackerMIForwardCompositional::trackNoPyr(), vpTemplateTrackerMIInverseCompositional::trackNoPyr(), vpTemplateTrackerMI::vpTemplateTrackerMI(), vpTemplateTrackerSSD::vpTemplateTrackerSSD(), and vpTemplateTrackerZNCC::vpTemplateTrackerZNCC().

◆ X2

◆ x_pos

std::vector<double> vpTemplateTracker::x_pos
protected

Definition at line 70 of file vpTemplateTracker.h.

Referenced by computeEvalRMS(), and initPosEvalRMS().

◆ y_pos

std::vector<double> vpTemplateTracker::y_pos
protected

Definition at line 71 of file vpTemplateTracker.h.

Referenced by computeEvalRMS(), and initPosEvalRMS().

◆ zoneRef_

vpTemplateTrackerZone vpTemplateTracker::zoneRef_
protected

Definition at line 143 of file vpTemplateTracker.h.

Referenced by initClick(), initFromPoints(), and initFromZone().

◆ zoneTracked

vpTemplateTrackerZone* vpTemplateTracker::zoneTracked
protected

◆ zoneTrackedPyr

vpTemplateTrackerZone* vpTemplateTracker::zoneTrackedPyr
protected

Definition at line 92 of file vpTemplateTracker.h.

Referenced by initPyramidal(), initTrackingPyr(), resetTracker(), and trackPyr().