47 #include <visp3/core/vpColor.h> 48 #include <visp3/core/vpImage.h> 49 #include <visp3/core/vpImagePoint.h> 50 #include <visp3/core/vpPolygon.h> 51 #include <visp3/core/vpRect.h> 52 #include <visp3/core/vpTracker.h> 158 double getArea()
const;
170 bbox.
setRect(this->bbox_u_min, this->bbox_v_min, this->bbox_u_max - this->bbox_u_min + 1,
171 this->bbox_v_max - this->bbox_v_min + 1);
182 double getDistance(
const vpDot2 &distantDot)
const;
192 void getEdges(std::list<vpImagePoint> &edges_list)
const { edges_list = this->ip_edges_list; };
202 std::list<vpImagePoint>
getEdges()
const {
return (this->ip_edges_list); };
211 double getEllipsoidShapePrecision()
const;
212 void getFreemanChain(std::list<unsigned int> &freeman_chain)
const;
214 inline double getGamma()
const {
return this->gamma; };
227 double getGrayLevelPrecision()
const;
229 double getHeight()
const;
230 double getMaxSizeSearchDistancePrecision()
const;
239 double getSizePrecision()
const;
240 double getWidth()
const;
245 unsigned int gray_lvl_max,
unsigned int size = 0);
248 friend VISP_EXPORT std::ostream &operator<<(std::ostream &os,
vpDot2 &d);
250 void print(std::ostream &os) { os << *
this << std::endl; }
252 unsigned int area_h, std::list<vpDot2> &niceDots);
256 void setArea(
const double &area);
293 allowedBadPointsPercentage_ = 0.;
294 else if (percentage > 1.)
295 allowedBadPointsPercentage_ = 1.;
297 allowedBadPointsPercentage_ = percentage;
300 void setEllipsoidShapePrecision(
const double &ellipsoidShapePrecision);
337 this->gray_level_min = 255;
339 this->gray_level_min = min;
354 this->gray_level_max = 255;
356 this->gray_level_max = max;
358 void setGrayLevelPrecision(
const double &grayLevelPrecision);
359 void setHeight(
const double &height);
360 void setMaxSizeSearchDistancePrecision(
const double &maxSizeSearchDistancePrecision);
361 void setSizePrecision(
const double &sizePrecision);
362 void setWidth(
const double &width);
368 std::vector<vpImagePoint> &cogs,
vpImagePoint *cogStar = NULL);
370 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS 443 virtual bool hasGoodLevel(
const vpImage<unsigned char> &I,
const unsigned int &u,
const unsigned int &v)
const;
444 virtual bool hasReverseLevel(
const vpImage<unsigned char> &I,
const unsigned int &u,
const unsigned int &v)
const;
446 virtual vpDot2 *getInstance();
453 unsigned int &border_u,
unsigned int &border_v);
464 unsigned int getFirstBorder_u()
const {
return this->firstBorder_u; }
473 unsigned int getFirstBorder_v()
const {
return this->firstBorder_v; }
475 bool computeFreemanChainElement(
const vpImage<unsigned char> &I,
const unsigned int &u,
const unsigned int &v,
476 unsigned int &element);
477 void computeFreemanParameters(
const int &u_p,
const int &v_p,
unsigned int &element,
int &du,
int &dv,
float &dS,
478 float &dMu,
float &dMv,
float &dMuv,
float &dMu2,
float &dMv2);
479 void updateFreemanPosition(
unsigned int &u,
unsigned int &v,
const unsigned int &dir);
484 bool isInArea(
const unsigned int &u,
const unsigned int &v)
const;
486 void getGridSize(
unsigned int &gridWidth,
unsigned int &gridHeight);
489 void setArea(
const vpRect &a);
498 unsigned int gray_level_min;
502 unsigned int gray_level_max;
505 double mean_gray_level;
506 double grayLevelPrecision;
508 double sizePrecision;
509 double ellipsoidShapePrecision;
510 double maxSizeSearchDistancePrecision;
511 double allowedBadPointsPercentage_;
516 std::list<unsigned int> direction_list;
517 std::list<vpImagePoint> ip_edges_list;
523 unsigned int thickness;
526 int bbox_u_min, bbox_u_max, bbox_v_min, bbox_v_max;
529 unsigned int firstBorder_u;
530 unsigned int firstBorder_v;
536 unsigned int thickness = 1);
vpTracker & operator=(const vpTracker &tracker)
Copy operator.
Implementation of a matrix and operations on matrices.
void setGrayLevelMax(const unsigned int &max)
Class to define RGB colors available for display functionnalities.
void setEllipsoidBadPointsPercentage(const double &percentage=0.0)
void setGraphics(bool activate)
void setCog(const vpImagePoint &ip)
void print(std::ostream &os)
This tracker is meant to track a blob (connex pixels with same gray level) on a vpImage.
Class that defines what is a feature generic tracker.
vpImagePoint getCog() const
void setGraphicsThickness(unsigned int t)
Defines a generic 2D polygon.
vpColVector get_nij() const
unsigned int getGrayLevelMin() const
std::list< vpImagePoint > getEdges() const
vpPolygon getPolygon() const
void setGrayLevelMin(const unsigned int &min)
Implementation of column vector and the associated operations.
void init()
Default initialization.
void setComputeMoments(bool activate)
Defines a rectangle in the plane.
double getMeanGrayLevel() const
double getEllipsoidBadPointsPercentage() const
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
unsigned int getGrayLevelMax() const
void setRect(double l, double t, double w, double h)
void getEdges(std::list< vpImagePoint > &edges_list) const
static const vpColor blue