42 #include <visp3/core/vpConfig.h>
43 #include <visp3/core/vpDisplay.h>
44 #include <visp3/core/vpImage.h>
45 #include <visp3/core/vpImagePoint.h>
46 #include <visp3/core/vpPolygon.h>
47 #include <visp3/core/vpRect.h>
48 #include <visp3/core/vpTracker.h>
56 #pragma comment(linker, "/STACK:256000000")
129 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
131 static const unsigned int SPIRAL_SEARCH_SIZE;
196 virtual ~
vpDot() VP_OVERRIDE;
198 void display(const
vpImage<
unsigned char> &I,
vpColor color =
vpColor::red,
unsigned int thickness = 1) const;
212 const unsigned int index_0 = 0;
213 const unsigned int index_1 = 1;
214 const unsigned int index_2 = 2;
215 nij[index_0] = mu20 / m00;
216 nij[index_1] = mu11 / m00;
217 nij[index_2] = mu02 / m00;
238 bbox.
setRect(m_u_min, m_v_min, (m_u_max - m_u_min) + 1, (m_v_max - m_v_min) + 1);
255 inline std::list<vpImagePoint>
getEdges()
const {
return m_ip_edges_list; };
263 inline std::list<vpImagePoint>
getConnexities()
const {
return m_ip_connexities_list; };
265 inline double getGamma()
const {
return m_gamma; };
290 inline unsigned int getWidth()
const {
return ((m_u_max - m_u_min) + 1); };
297 inline unsigned int getHeight()
const {
return ((m_v_max - m_v_min) + 1); };
302 unsigned int gray_level_max);
305 bool operator==(
const vpDot &d)
const;
306 bool operator!=(
const vpDot &d)
const;
307 friend VISP_EXPORT std::ostream &operator<<(std::ostream &os,
vpDot &d);
309 void print(std::ostream &os) { os << *
this << std::endl; }
335 void setMaxDotSize(
double percentage);
336 void setGrayLevelMin(
const unsigned int &level_min) { m_gray_level_min = level_min; };
337 void setGrayLevelMax(
const unsigned int &level_max) { m_gray_level_max = level_max; };
338 void setGrayLevelPrecision(
const double &grayLevelPrecision);
370 unsigned int thickness = 1);
374 #ifndef VISP_BUILD_DEPRECATED_FUNCTIONS
376 static const unsigned int SPIRAL_SEARCH_SIZE;
439 std::list<vpImagePoint> m_ip_connexities_list;
442 std::list<vpImagePoint> m_ip_edges_list;
448 vpConnexityType m_connexityType;
454 unsigned int m_u_min, m_u_max, m_v_min, m_v_max;
459 unsigned int m_thickness;
461 double m_maxDotSizePercentage;
462 unsigned char m_gray_level_out;
464 double m_mean_gray_level;
465 unsigned int m_gray_level_min;
466 unsigned int m_gray_level_max;
467 double m_grayLevelPrecision;
473 bool m_compute_moment;
477 void setGrayLevelOut();
481 vpImagePoint &uv_cog,
unsigned int &npoints, std::vector<bool> &checkTab);
Implementation of column vector and the associated operations.
Class to define RGB colors available for display functionalities.
This tracker is meant to track a dot (connected pixels with same gray level) on a vpImage.
std::list< vpImagePoint > getConnexities() const
unsigned int getWidth() const
void setGraphics(bool activate)
void setConnexity(const vpConnexityType &connexityType)
double getMeanGrayLevel() const
void setCog(const vpImagePoint &cog)
std::list< vpImagePoint > getEdges() const
void setGraphicsThickness(unsigned int thickness)
double getMaxDotSize() const
void print(std::ostream &os)
vpPolygon getPolygon() const
void setGrayLevelMax(const unsigned int &level_max)
void setGrayLevelMin(const unsigned int &level_min)
void setComputeMoments(bool activate)
double getGrayLevelPrecision() const
vpImagePoint getCog() const
unsigned int getHeight() const
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
Definition of the vpImage class member functions.
Defines a generic 2D polygon.
Defines a rectangle in the plane.
void setRect(double l, double t, double w, double h)
Class that defines what is a feature generic tracker.
vpTracker & operator=(const vpTracker &tracker)
Copy operator.
void init()
Default initialization.