50 #include <visp/vpImage.h>
51 #include <visp/vpRect.h>
52 #include <visp/vpTracker.h>
53 #include <visp/vpColor.h>
54 #include <visp/vpImagePoint.h>
138 unsigned int thickness=1)
const;
140 double getArea()
const;
153 this->bbox_u_max - this->bbox_u_min + 1,
154 this->bbox_v_max - this->bbox_v_min + 1);
167 double getDistance(
const vpDot2& distantDot )
const;
177 void getEdges(std::list<vpImagePoint> &edges_list)
const {
178 edges_list = this->ip_edges_list;
190 return(this->ip_edges_list);
200 return allowedBadPointsPercentage_;
203 double getEllipsoidShapePrecision()
const;
204 void getFreemanChain(std::list<unsigned int> &freeman_chain)
const;
206 inline double getGamma()
const {
return this->gamma;};
213 return gray_level_min;
221 return gray_level_max;
223 double getGrayLevelPrecision()
const;
225 double getHeight()
const;
226 double getMaxSizeSearchDistancePrecision()
const;
231 return (this->mean_gray_level);
233 double getSizePrecision()
const;
234 double getWidth()
const;
238 unsigned int size = 0);
240 unsigned int gray_lvl_min,
unsigned int gray_lvl_max,
241 unsigned int size = 0 );
244 friend VISP_EXPORT std::ostream& operator<< (std::ostream& os,
vpDot2& d);
246 void print(std::ostream& os) { os << *
this << std::endl ; }
248 int area_u,
int area_v,
249 unsigned int area_w,
unsigned int area_h, std::list<vpDot2> &niceDots );
253 void setArea(
const double & area );
291 allowedBadPointsPercentage_ = 0.;
292 else if (percentage > 1.)
293 allowedBadPointsPercentage_ = 1.;
295 allowedBadPointsPercentage_ = percentage;
298 void setEllipsoidShapePrecision(
const double & ellipsoidShapePrecision);
333 this->gray_level_min = 255;
335 this->gray_level_min = min;
349 this->gray_level_max = 255;
351 this->gray_level_max = max;
353 void setGrayLevelPrecision(
const double & grayLevelPrecision );
354 void setHeight(
const double & height );
355 void setMaxSizeSearchDistancePrecision(
const double & maxSizeSearchDistancePrecision);
356 void setSizePrecision(
const double & sizePrecision );
357 void setWidth(
const double & width );
363 std::vector<vpImagePoint> &cogs,
vpImagePoint* cogStar = NULL);
365 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
369 vp_deprecated
double getSurface()
const;
370 vp_deprecated
void setSurface(
const double & surface );
443 const unsigned int &u,
444 const unsigned int &v)
const;
446 const unsigned int &u,
447 const unsigned int &v)
const;
449 virtual vpDot2* getInstance();
454 const double &u = -1.0,
455 const double &v = -1.0);
460 const unsigned int &v,
unsigned int &border_u,
461 unsigned int &border_v);
472 unsigned int getFirstBorder_u()
const {
473 return this->firstBorder_u;
483 unsigned int getFirstBorder_v()
const {
484 return this->firstBorder_v;
488 const unsigned int &u,
489 const unsigned int &v,
490 unsigned int &element);
491 void computeFreemanParameters(
const int &u_p,
492 const int &v_p,
unsigned int &element,
493 int &du,
int &dv,
float &dS,
494 float &dMu,
float &dMv,
496 float &dMu2,
float &dMv2);
497 void updateFreemanPosition(
unsigned int& u,
unsigned int& v,
498 const unsigned int &dir );
504 bool isInArea(
const unsigned int &u,
const unsigned int &v)
const;
506 void getGridSize(
unsigned int &gridWidth,
unsigned int &gridHeight );
508 int u,
int v,
unsigned int w,
unsigned int h);
510 void setArea(
const vpRect & a);
519 unsigned int gray_level_min;
523 unsigned int gray_level_max;
526 double mean_gray_level;
527 double grayLevelPrecision ;
529 double sizePrecision ;
530 double ellipsoidShapePrecision;
531 double maxSizeSearchDistancePrecision;
532 double allowedBadPointsPercentage_;
537 std::list<unsigned int> direction_list;
538 std::list<vpImagePoint> ip_edges_list;
541 bool compute_moment ;
544 unsigned int thickness;
547 int bbox_u_min, bbox_u_max, bbox_v_min, bbox_v_max;
550 unsigned int firstBorder_u;
551 unsigned int firstBorder_v;
557 unsigned int thickness=1);
560 unsigned int thickness=1);
vpTracker & operator=(const vpTracker &tracker)
Copy operator.
Definition of the vpMatrix class.
void setGrayLevelMax(const unsigned int &max)
Class to define colors available for display functionnalities.
void setEllipsoidBadPointsPercentage(const double &percentage=0.0)
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)
unsigned int getGrayLevelMin() const
void setComputeMoments(const bool activate)
std::list< vpImagePoint > getEdges() const
void setGrayLevelMin(const unsigned int &min)
void init()
Default initialization.
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 setGraphics(const bool activate)
void getEdges(std::list< vpImagePoint > &edges_list) const
static const vpColor blue