38 #ifndef vpMbtDistanceKltCylinder_h
39 #define vpMbtDistanceKltCylinder_h
41 #include <visp3/core/vpConfig.h>
43 #if defined(VISP_HAVE_MODULE_KLT) && (defined(VISP_HAVE_OPENCV) && (VISP_HAVE_OPENCV_VERSION >= 0x020100))
47 #include <visp3/core/vpPolygon3D.h>
48 #include <visp3/klt/vpKltOpencv.h>
49 #include <visp3/core/vpPlane.h>
50 #include <visp3/core/vpDisplay.h>
51 #include <visp3/core/vpGEMM.h>
52 #include <visp3/vision/vpHomography.h>
53 #include <visp3/mbt/vpMbHiddenFaces.h>
54 #include <visp3/core/vpCylinder.h>
55 #include <visp3/core/vpCircle.h>
82 std::map<int, vpImagePoint> initPoints;
84 std::map<int, vpPoint> initPoints3D;
86 std::map<int, vpImagePoint> curPoints;
88 std::map<int, int> curPointsInd;
90 unsigned int nbPointsCur;
92 unsigned int nbPointsInit;
94 unsigned int minNbPoint;
100 bool isTrackedKltCylinder;
111 double computeZ(
const double &x,
const double &y);
112 bool isTrackedFeature(
const int id);
134 void buildFrom(
const vpPoint &p1,
const vpPoint &p2,
const double &r);
136 unsigned int computeNbDetectedCurrent(
const vpKltOpencv& _tracker);
187 inline bool isTracked()
const {
return isTrackedKltCylinder;}
191 void removeOutliers(
const vpColVector& weight,
const double &threshold_outlier);
205 inline void setTracked(
const bool& track) {this->isTrackedKltCylinder = track;}
207 #if (VISP_HAVE_OPENCV_VERSION >= 0x020408)
208 void updateMask(cv::Mat &mask,
unsigned char _nb = 255,
unsigned int _shiftBorder = 0);
210 void updateMask(IplImage* mask,
unsigned char _nb = 255,
unsigned int _shiftBorder = 0);
216 #endif // VISP_HAVE_OPENCV
Implementation of a matrix and operations on matrices.
void setTracked(const bool &track)
Implementation of an homogeneous matrix and operations on such kind of matrices.
std::vector< int > listIndicesCylinderBBox
Pointer to the polygon that define a face.
std::map< int, int > & getCurrentPointsInd()
Class to define colors available for display functionnalities.
vpCylinder getCylinder() const
Class that defines what is a point.
unsigned int getInitialNumberPoint() const
virtual void setCameraParameters(const vpCameraParameters &_cam)
Generic class defining intrinsic camera parameters.
Implementation of a polygon of the model containing points of interest. It is used by the model-based...
bool hasEnoughPoints() const
bool useScanLine
Use scanline rendering.
vpMbHiddenFaces< vpMbtPolygon > * hiddenface
Pointer to the list of faces.
std::map< int, vpImagePoint > & getCurrentPoints()
Class that defines what is a cylinder.
Implementation of column vector and the associated operations.
vpCameraParameters & getCameraParameters()
Wrapper for the KLT (Kanade-Lucas-Tomasi) feature tracker implemented in OpenCV. Thus to enable this ...
unsigned int getCurrentNumberPoints() const
Class that defines what is a circle.