 |
Visual Servoing Platform
version 3.2.0
|
45 #ifndef vpMbEdgeKltTracker_HH
46 #define vpMbEdgeKltTracker_HH
48 #include <visp3/core/vpConfig.h>
50 #if defined(VISP_HAVE_MODULE_KLT) && (defined(VISP_HAVE_OPENCV) && (VISP_HAVE_OPENCV_VERSION >= 0x020100))
52 #include <visp3/core/vpExponentialMap.h>
53 #include <visp3/core/vpPoseVector.h>
54 #include <visp3/core/vpSubColVector.h>
55 #include <visp3/core/vpSubMatrix.h>
56 #include <visp3/klt/vpKltOpencv.h>
57 #include <visp3/mbt/vpMbEdgeTracker.h>
58 #include <visp3/mbt/vpMbKltTracker.h>
59 #include <visp3/mbt/vpMbTracker.h>
60 #include <visp3/mbt/vpMbtEdgeKltXmlParser.h>
242 unsigned int m_maxIterKlt;
257 const vpColor &col,
const unsigned int thickness = 1,
const bool displayFullModel =
false);
259 const vpColor &col,
const unsigned int thickness = 1,
const bool displayFullModel =
false);
314 #ifdef VISP_HAVE_OGRE
315 faces.getOgreContext()->setWindowName(
"MBT Hybrid");
344 const unsigned int lvl = 0);
352 const std::string &name =
"");
354 const std::string &name =
"");
360 const unsigned int lvl = 0);
361 void postTrackingMbt(
vpColVector &w,
const unsigned int level = 0);
365 const unsigned int lvl = 0);
370 #endif // VISP_HAVE_OPENCV
virtual void setClipping(const unsigned int &flags)
virtual void initCircle(const vpPoint &p1, const vpPoint &p2, const vpPoint &p3, const double radius, const int idFace=0, const std::string &name="")
virtual void setCameraParameters(const vpCameraParameters &camera)
virtual void setProjectionErrorComputation(const bool &flag)
void init(const vpImage< unsigned char > &I)
void track(const vpImage< unsigned char > &I)
Make the complete tracking of an object by using its CAD model.
Generic class defining intrinsic camera parameters.
Model based tracker using only KLT.
virtual vpColVector getError() const
void loadConfigFile(const std::string &configFile)
virtual void setNearClippingDistance(const double &dist)
virtual void setOgreVisibilityTest(const bool &v)
unsigned int initMbtTracking(unsigned int &nberrors_lines, unsigned int &nberrors_cylinders, unsigned int &nberrors_circles)
virtual void reInitModel(const vpImage< unsigned char > &I, const std::string &cad_name, const vpHomogeneousMatrix &cMo_, const bool verbose=false, const vpHomogeneousMatrix &T=vpHomogeneousMatrix())
Implementation of column vector and the associated operations.
virtual void initCylinder(const vpPoint &p1, const vpPoint &p2, const double radius, const int idFace=0, const std::string &name="")
void computeVVS(const vpImage< unsigned char > &_I, const unsigned int lvl)
virtual void setFarClippingDistance(const double &dist)
Implementation of a matrix and operations on matrices.
Implementation of a polygon of the model used by the model-based tracker.
bool postTracking(const vpImage< unsigned char > &I, vpColVector &w)
Hybrid tracker based on moving-edges and keypoints tracked using KLT tracker.
virtual void initFaceFromCorners(vpMbtPolygon &polygon)
virtual void initFaceFromLines(vpMbtPolygon &polygon)
virtual vpColVector getRobustWeights() const
virtual void computeVVSInit()
virtual void computeVVSPoseEstimation(const bool isoJoIdentity_, const unsigned int iter, vpMatrix &L, vpMatrix <L, vpColVector &R, const vpColVector &error, vpColVector &error_prev, vpColVector <R, double &mu, vpColVector &v, const vpColVector *const w=NULL, vpColVector *const m_w_prev=NULL)
virtual void setScanLineVisibilityTest(const bool &v)
virtual void setOgreVisibilityTest(const bool &v)
virtual double getNearClippingDistance() const
virtual void computeCovarianceMatrixVVS(const bool isoJoIdentity_, const vpColVector &w_true, const vpHomogeneousMatrix &cMoPrev, const vpMatrix &L_true, const vpMatrix &LVJ_true, const vpColVector &error)
Class that defines what is a point.
Class to define colors available for display functionnalities.
Implementation of an homogeneous matrix and operations on such kind of matrices.
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 computeVVSInteractionMatrixAndResidu()
virtual void setScanLineVisibilityTest(const bool &v)
virtual void setPose(const vpImage< unsigned char > &I, const vpHomogeneousMatrix &cdMo)