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
212 bbox.
setRect(this->u_min, this->v_min, this->u_max - this->u_min + 1, this->v_max - this->v_min + 1);
229 inline std::list<vpImagePoint>
getEdges()
const {
return this->ip_edges_list; };
239 inline std::list<vpImagePoint>
getConnexities()
const {
return this->ip_connexities_list; };
241 inline double getGamma()
const {
return this->gamma; };
268 inline unsigned int getWidth()
const {
return (this->u_max - this->u_min + 1); };
277 inline unsigned int getHeight()
const {
return (this->v_max - this->v_min + 1); };
282 unsigned int gray_level_max);
285 bool operator==(
const vpDot &d)
const;
286 bool operator!=(
const vpDot &d)
const;
287 friend VISP_EXPORT std::ostream &operator<<(std::ostream &os,
vpDot &d);
289 void print(std::ostream &os) { os << *
this << std::endl; }
316 void setMaxDotSize(
double percentage);
317 void setGrayLevelMin(
const unsigned int &level_min) { this->gray_level_min = level_min; };
318 void setGrayLevelMax(
const unsigned int &level_max) { this->gray_level_max = level_max; };
319 void setGrayLevelPrecision(
const double &grayLevelPrecision);
348 std::list<vpImagePoint> ip_connexities_list;
351 std::list<vpImagePoint> ip_edges_list;
357 vpConnexityType connexityType;
363 unsigned int u_min, u_max, v_min, v_max;
368 unsigned int thickness;
370 double maxDotSizePercentage;
371 unsigned char gray_level_out;
373 double mean_gray_level;
374 unsigned int gray_level_min;
375 unsigned int gray_level_max;
376 double grayLevelPrecision;
386 void setGrayLevelOut();
387 bool connexe(
const vpImage<unsigned char> &I,
unsigned int u,
unsigned int v,
double &mean_value,
double &u_cog,
388 double &v_cog,
double &n);
389 bool connexe(
const vpImage<unsigned char> &I,
unsigned int u,
unsigned int v,
double &mean_value,
double &u_cog,
390 double &v_cog,
double &n, std::vector<bool> &checkTab);
397 unsigned int thickness = 1);