51 #ifndef vpHomography_hh
52 #define vpHomography_hh
54 #include <visp/vpHomogeneousMatrix.h>
55 #include <visp/vpPlane.h>
56 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
57 # include <visp/vpList.h>
178 static const double sing_threshold;
179 static const double threshold_rotation;
180 static const double threshold_displacement;
199 static void HartleyNormalization(
unsigned int n,
200 double *x,
double *y,
201 double *xn,
double *yn,
202 double &xg,
double &yg,
206 double xg1,
double yg1,
double coef1,
207 double xg2,
double yg2,
double coef2 ) ;
209 static void initRansac(
unsigned int n,
210 double *xb,
double *yb,
211 double *xa,
double *ya,
265 void load(std::ifstream &f) ;
269 void save(std::ofstream &f)
const ;
290 static void DLT(
unsigned int n,
291 double *xb,
double *yb ,
292 double *xa,
double *ya,
295 static void HartleyDLT(
unsigned int n,
296 double *xb,
double *yb ,
297 double *xa,
double *ya,
299 static void HLM(
unsigned int n,
300 double *xb,
double *yb,
301 double *xa,
double *ya ,
305 static void computeDisplacement(
const vpHomography &aHb,
311 static void computeDisplacement (
const vpHomography &aHb,
316 static void computeDisplacement(
const vpMatrix &H,
319 std::list<vpRotationMatrix> & vR,
320 std::list<vpTranslationVector> & vT,
321 std::list<vpColVector> & vN) ;
322 static double computeDisplacement(
unsigned int nbpoint,
330 static double computeDisplacement(
unsigned int nbpoint,
340 static double computeRotation(
unsigned int nbpoint,
348 static bool degenerateConfiguration(
vpColVector &x,
unsigned int *ind) ;
349 static bool degenerateConfiguration(
vpColVector &x,
unsigned int *ind,
double threshold_area);
351 static bool ransac(
unsigned int n,
352 double *xb,
double *yb,
353 double *xa,
double *ya ,
355 int consensus = 1000,
356 double threshold = 1e-6
359 static bool ransac(
unsigned int n,
360 double *xb,
double *yb,
361 double *xa,
double *ya ,
365 int consensus = 1000,
366 double epsilon = 1e-6,
367 double areaThreshold = 0.0);
369 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
373 vp_deprecated
static void computeDisplacement(
const vpMatrix H,
380 #endif // VISP_BUILD_DEPRECATED_FUNCTIONS
Definition of the vpMatrix class.
void init()
Initialization of the object matrix.
The class provides a data structure for the homogeneous matrices as well as a set of operations on th...
Provide simple list management.
int print(std::ostream &s, unsigned int length, char const *intro=0)
Class that defines what is a point.
The vpRotationMatrix considers the particular case of a rotation matrix.
This class aims to compute the homography wrt.two images.
void insert(const vpMatrix &A, const unsigned int r, const unsigned int c)
Class that provides a data structure for the column vectors as well as a set of operations on these v...
The pose is a complete representation of every rigid motion in the euclidian space.
vpMatrix operator/(const double x) const
Cij = Aij / x (A is unchanged)
vpMatrix operator*(const vpMatrix &B) const
This class defines the container for a plane geometrical structure.
Class that consider the case of a translation vector.
Class that consider the case of the parameterization for the rotation.