45 #include <visp3/visual_features/vpFeatureBuilder.h>
46 #include <visp3/core/vpMath.h>
69 double alpha = t.
cP[0] ;
70 double beta = t.
cP[1] ;
71 double gamma = t.
cP[2] ;
78 double d = alpha*X0 + beta*Y0 + gamma*Z0 ;
80 double A = alpha / d ;
82 double C = gamma / d ;
120 double X0 = t.
cP[0] ;
121 double Y0 = t.
cP[1] ;
122 double Z0 = t.
cP[2] ;
148 #ifdef VISP_HAVE_MODULE_BLOB
172 unsigned int order = 3 ;
185 double m00 = m[0][0] ;
186 double m01 = m[0][1] ;
187 double m10 = m[1][0] ;
188 double m02 = m[0][2] ;
189 double m11 = m[1][1] ;
190 double m20 = m[2][0] ;
192 double xc = m10/m00 ;
193 double yc = m01/m00 ;
195 double mu20 = 4*(m20 - m00*
vpMath::sqr(xc))/(m00) ;
196 double mu02 = 4*(m02 - m00*
vpMath::sqr(yc))/(m00) ;
197 double mu11 = 4*(m11 - m00*xc*yc)/(m00) ;
231 unsigned int order = 3 ;
244 double m00 = m[0][0] ;
245 double m01 = m[0][1] ;
246 double m10 = m[1][0] ;
247 double m02 = m[0][2] ;
248 double m11 = m[1][1] ;
249 double m20 = m[2][0] ;
251 double xc = m10/m00 ;
252 double yc = m01/m00 ;
254 double mu20 = 4*(m20 - m00*
vpMath::sqr(xc))/(m00) ;
255 double mu02 = 4*(m02 - m00*
vpMath::sqr(yc))/(m00) ;
256 double mu11 = 4*(m11 - m00*xc*yc)/(m00) ;
266 #endif //#ifdef VISP_HAVE_MODULE_BLOB
268 #ifdef VISP_HAVE_MODULE_ME
292 unsigned int order = 3 ;
308 double m00 = m[0][0] ;
309 double m01 = m[0][1] ;
310 double m10 = m[1][0] ;
311 double m02 = m[0][2] ;
312 double m11 = m[1][1] ;
313 double m20 = m[2][0] ;
315 double xc = m10/m00 ;
316 double yc = m01/m00 ;
318 double mu20 = 4*(m20 - m00*
vpMath::sqr(xc))/(m00) ;
319 double mu02 = 4*(m02 - m00*
vpMath::sqr(yc))/(m00) ;
320 double mu11 = 4*(m11 - m00*xc*yc)/(m00) ;
330 #endif //#ifdef VISP_HAVE_MODULE_ME
Implementation of a matrix and operations on matrices.
Class that tracks an ellipse moving edges.
Class that defines what is a sphere.
This tracker is meant to track a blob (connex pixels with same gray level) on a vpImage.
static double sqr(double x)
Generic class defining intrinsic camera parameters.
void setABC(const double A, const double B, const double C)
static void convertMoment(const vpCameraParameters &cam, unsigned int order, const vpMatrix &moment_pixel, vpMatrix &moment_meter)
This tracker is meant to track a dot (connected pixels with same gray level) on a vpImage...
void buildFrom(const double x, const double y, const double mu20, const double mu11, const double mu02)
Class that defines 2D ellipse visual feature.
static void create(vpFeaturePoint &s, const vpCameraParameters &cam, const vpDot &d)
Class that defines what is a circle.