48 #include <visp3/core/vpConfig.h> 49 #include <visp3/core/vpDisplay.h> 50 #include <visp3/core/vpImage.h> 51 #include <visp3/core/vpImagePoint.h> 52 #include <visp3/core/vpPolygon.h> 53 #include <visp3/core/vpRect.h> 54 #include <visp3/core/vpTracker.h> 62 #pragma comment(linker, "/STACK:256000000") // Increase max recursion depth 128 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS 238 bbox.
setRect(this->u_min, this->v_min, this->u_max - this->u_min + 1, this->v_max - this->v_min + 1);
255 inline std::list<vpImagePoint>
getEdges()
const {
return this->ip_edges_list; };
265 inline std::list<vpImagePoint>
getConnexities()
const {
return this->ip_connexities_list; };
267 inline double getGamma()
const {
return this->gamma; };
294 inline unsigned int getWidth()
const {
return (this->u_max - this->u_min + 1); };
303 inline unsigned int getHeight()
const {
return (this->v_max - this->v_min + 1); };
308 unsigned int gray_level_max);
311 bool operator==(
const vpDot &d)
const;
312 bool operator!=(
const vpDot &d)
const;
313 friend VISP_EXPORT std::ostream &operator<<(std::ostream &os,
vpDot &d);
315 void print(std::ostream &os) { os << *
this << std::endl; }
342 void setConnexity(vpConnexityType type) { this->connexityType = type; };
343 void setMaxDotSize(
double percentage);
344 void setGrayLevelMin(
const unsigned int &level_min) { this->gray_level_min = level_min; };
345 void setGrayLevelMax(
const unsigned int &level_max) { this->gray_level_max = level_max; };
346 void setGrayLevelPrecision(
const double &grayLevelPrecision);
375 std::list<vpImagePoint> ip_connexities_list;
378 std::list<vpImagePoint> ip_edges_list;
384 vpConnexityType connexityType;
390 unsigned int u_min, u_max, v_min, v_max;
395 unsigned int thickness;
397 double maxDotSizePercentage;
398 unsigned char gray_level_out;
400 double mean_gray_level;
401 unsigned int gray_level_min;
402 unsigned int gray_level_max;
403 double grayLevelPrecision;
413 void setGrayLevelOut();
414 bool connexe(
const vpImage<unsigned char> &I,
unsigned int u,
unsigned int v,
double &mean_value,
double &u_cog,
415 double &v_cog,
double &n);
416 bool connexe(
const vpImage<unsigned char> &I,
unsigned int u,
unsigned int v,
double &mean_value,
double &u_cog,
417 double &v_cog,
double &n, std::vector<bool> &checkTab);
424 unsigned int thickness = 1);
vpTracker & operator=(const vpTracker &tracker)
Copy operator.
void setConnexity(vpConnexityType type)
unsigned int getHeight() const
Class to define RGB colors available for display functionnalities.
void setComputeMoments(bool activate)
std::list< vpImagePoint > getConnexities() const
void print(std::ostream &os)
void setGrayLevelMin(const unsigned int &level_min)
static const unsigned int SPIRAL_SEARCH_SIZE
Class that defines what is a feature generic tracker.
std::list< vpImagePoint > getEdges() const
vpImagePoint getCog() const
Defines a generic 2D polygon.
double getGrayLevelPrecision() const
unsigned int getWidth() const
void setGraphicsThickness(unsigned int t)
vpPolygon getPolygon() const
double getMaxDotSize() const
double getMeanGrayLevel() const
Implementation of column vector and the associated operations.
void setGrayLevelMax(const unsigned int &level_max)
void init()
Default initialization.
This tracker is meant to track a dot (connected pixels with same gray level) on a vpImage...
Defines a rectangle in the plane.
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
void setGraphics(bool activate)
void setRect(double l, double t, double w, double h)
vpColVector get_nij() const
void setCog(const vpImagePoint &ip)