44 #include <visp3/core/vpColor.h> 45 #include <visp3/core/vpDisplay.h> 46 #include <visp3/me/vpMeTracker.h> 49 #include <visp3/core/vpDebug.h> 50 #include <visp3/core/vpTrackingException.h> 52 #define DEBUG_LEVEL1 0 53 #define DEBUG_LEVEL2 0 64 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
74 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
87 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS 111 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS 122 unsigned int number_signal = 0;
125 number_signal =
static_cast<unsigned int>(std::count_if(
list.begin(),
list.end(), isSuppressZero));
126 return number_signal;
143 return (mask == NULL || mask->
getValue(i, j));
152 return (!((i > half + 2) && (i < rows - (half + 2)) && (j > half + 2) && (j < cols - (half + 2))));
159 return (!((i > half + 2) && (i < rows - (half + 2)) && (j > half + 2) && (j < cols - (half + 2))));
172 vpDERROR_TRACE(2,
"Tracking error: Moving edges not initialized");
185 for (std::list<vpMeSite>::iterator it =
list.begin(); it !=
list.end(); ++it) {
206 a = refp.
i_1 - refp.
i;
207 b = refp.
j_1 - refp.
j;
253 vpDERROR_TRACE(2,
"Tracking error: Moving edges not initialized");
265 std::list<vpMeSite>::iterator it =
list.begin();
266 while (it !=
list.end()) {
290 ip2.set_i(s.
i + a * 5);
291 ip2.set_j(s.
j + b * 5);
330 std::cout <<
"begin vpMeTracker::displayList() " << std::endl;
331 std::cout <<
" There are " <<
list.size() <<
" sites in the list " << std::endl;
334 for (std::list<vpMeSite>::const_iterator it =
list.begin(); it !=
list.end(); ++it) {
348 for (std::list<vpMeSite>::iterator it =
list.begin(); it !=
list.end(); ++it) {
unsigned int getRange() const
void display(const vpImage< unsigned char > &I)
unsigned int numberOfSignal()
unsigned int totalNumberOfSignal()
static const vpColor black
Performs search in a given direction(normal) for a given distance(pixels) for a given 'site'...
error that can be emited by ViSP classes.
static const vpColor green
static int round(const double x)
static bool inMask(const vpImage< bool > *mask, const unsigned int i, const unsigned int j)
const vpImage< bool > * m_mask
Mask used to disable tracking on a part of image.
Class that defines what is a feature generic tracker.
vpMeSiteState getState() const
void set_i(const double ii)
Type getValue(unsigned int i, unsigned int j) const
std::list< vpMeSite > list
Error that can be emited by the vpTracker class and its derivates.
int outOfImage(int i, int j, int half, int row, int cols)
static void displayArrow(const vpImage< unsigned char > &I, const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color=vpColor::white, unsigned int w=4, unsigned int h=2, unsigned int thickness=1)
vpMeTracker & operator=(vpMeTracker &f)
void track(const vpImage< unsigned char > &I)
Track sampled pixels.
Contains abstract elements for a Distance to Feature type feature.
void setState(const vpMeSiteState &flag)
void set_j(const double jj)
Implementation of column vector and the associated operations.
void track(const vpImage< unsigned char > &im, const vpMe *me, const bool test_contraste=true)
vpMe * me
Moving edges initialisation parameters.
void initTracking(const vpImage< unsigned char > &I)
void init()
Default initialization.
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
void setRange(const unsigned int &r)
vpMeSite::vpMeSiteDisplayType selectDisplay
virtual void display(const vpImage< unsigned char > &I, vpColor col)=0
void resize(const unsigned int i, const bool flagNullify=true)