44 #ifndef vpMbEdgeKltTracker_HH
45 #define vpMbEdgeKltTracker_HH
47 #include <visp3/core/vpConfig.h>
49 #if defined(VISP_HAVE_MODULE_KLT) && (defined(VISP_HAVE_OPENCV) && (VISP_HAVE_OPENCV_VERSION >= 0x020100))
51 #include <visp3/core/vpRobust.h>
52 #include <visp3/core/vpSubMatrix.h>
53 #include <visp3/core/vpSubColVector.h>
54 #include <visp3/core/vpExponentialMap.h>
55 #include <visp3/mbt/vpMbTracker.h>
56 #include <visp3/klt/vpKltOpencv.h>
57 #include <visp3/mbt/vpMbEdgeTracker.h>
58 #include <visp3/core/vpPoseVector.h>
59 #include <visp3/mbt/vpMbtEdgeKltXmlParser.h>
60 #include <visp3/mbt/vpMbKltTracker.h>
245 const vpColor& col,
const unsigned int thickness=1,
const bool displayFullModel =
false);
247 const vpColor& col,
const unsigned int thickness=1,
const bool displayFullModel =
false);
274 const bool verbose=
false);
276 const bool verbose=
false);
309 virtual inline void setMaxIter(
const unsigned int max) {maxIter = max;}
327 #ifdef VISP_HAVE_OGRE
328 faces.getOgreContext()->setWindowName(
"MBT Hybrid");
361 const std::string &name=
"");
363 const std::string &name=
"");
369 const unsigned int lvl=0);
370 void postTrackingMbt(
vpColVector &w,
const unsigned int level=0);
379 #endif //VISP_HAVE_OPENCV
double lambda
The gain of the virtual visual servoing stage.
Implementation of a matrix and operations on matrices.
virtual void setScanLineVisibilityTest(const bool &v)
virtual void initFaceFromCorners(vpMbtPolygon &polygon)
virtual void setScanLineVisibilityTest(const bool &v)
virtual void setLambda(const double gain)
unsigned int maxIter
The maximum iteration of the virtual visual servoing stage.
Implementation of an homogeneous matrix and operations on such kind of matrices.
void init(const vpImage< unsigned char > &I)
void track(const vpImage< unsigned char > &I)
double lambda
The gain of the virtual visual servoing stage.
Class to define colors available for display functionnalities.
virtual void setMaxIter(const unsigned int max)
bool postTracking(const vpImage< unsigned char > &I, vpColVector &w)
double thresholdKLT
The threshold used in the robust estimation of KLT.
virtual void setLambda(const double gain)
virtual void setClipping(const unsigned int &flags)
Make the complete tracking of an object by using its CAD model.
virtual void setPose(const vpImage< unsigned char > &I, const vpHomogeneousMatrix &cdMo)
virtual void setCameraParameters(const vpCameraParameters &camera)
void computeVVS(const vpImage< unsigned char > &_I, const unsigned int lvl)
void loadConfigFile(const std::string &configFile)
virtual void setFarClippingDistance(const double &dist)
Class that defines what is a point.
virtual void setNearClippingDistance(const double &dist)
virtual void setOgreVisibilityTest(const bool &v)
virtual void reInitModel(const vpImage< unsigned char > &I, const std::string &cad_name, const vpHomogeneousMatrix &cMo_, const bool verbose=false)
virtual void setScanLineVisibilityTest(const bool &v)
Implementation of a polygon of the model used by the model-based tracker.
virtual void setProjectionErrorComputation(const bool &flag)
Generic class defining intrinsic camera parameters.
unsigned int initMbtTracking(unsigned int &nberrors_lines, unsigned int &nberrors_cylinders, unsigned int &nberrors_circles)
bool compute_interaction
If true, compute the interaction matrix at each iteration of the minimization. Otherwise, compute it only on the first iteration.
virtual double getNearClippingDistance() const
virtual void setFarClippingDistance(const double &dist)
Model based tracker using only KLT.
virtual void initFaceFromLines(vpMbtPolygon &polygon)
Hybrid tracker based on moving-edges and keypoints tracked using KLT tracker.
unsigned int maxIter
The maximum iteration of the virtual visual servoing stage.
virtual void testTracking()
virtual void initCylinder(const vpPoint &p1, const vpPoint &p2, const double radius, const int idFace=0, const std::string &name="")
virtual double getNearClippingDistance() const
virtual void setOgreVisibilityTest(const bool &v)
Implementation of column vector and the associated operations.
virtual void initCircle(const vpPoint &p1, const vpPoint &p2, const vpPoint &p3, const double radius, const int idFace=0, const std::string &name="")
virtual unsigned int getMaxIter() const
void display(const vpImage< unsigned char > &I, const vpHomogeneousMatrix &cMo, const vpCameraParameters &cam, const vpColor &col, const unsigned int thickness=1, const bool displayFullModel=false)
virtual void setClipping(const unsigned int &flags)
virtual double getLambda() const
virtual void setLambda(const double gain)
double thresholdMBT
The threshold used in the robust estimation of MBT.
virtual void setNearClippingDistance(const double &dist)
virtual void setProjectionErrorComputation(const bool &flag)