50 #include <visp/vpHomography.h>
51 #include <visp/vpDebug.h>
52 #include <visp/vpMatrix.h>
55 #include <visp/vpException.h>
56 #include <visp/vpMatrixException.h>
59 #include <visp/vpDebug.h>
84 for (i=0 ; i < 3 ; i++)
85 for (j=0 ; j < 3; j++)
196 aMb.
buildFrom(arb[0],arb[1],arb[2],arb[3],arb[4],arb[5]) ;
259 vpHomography::insert(
const vpPlane &_bP)
327 for(
unsigned int i = 0; i < 3; i++) {
328 for(
unsigned int j = 0; j < 3; j++) {
330 for(
unsigned int k = 0; k < 3; k ++) {
331 s += (*this)[i][k] * H[k][j];
357 for (
unsigned int i=0; i < 9; i ++) {
380 double one_over_v = 1. / v;
382 for (
unsigned int i=0; i < 9; i ++) {
383 H.
data[i] = this->
data[i] * one_over_v;
399 for (
unsigned int i=0 ; i < 3 ; i++)
400 for (
unsigned int j=0 ; j < 3 ; j++)
418 std::cout <<*
this << std::endl ;
435 for (i=0 ; i < 3 ; i++)
438 for (j=0 ; j < 3 ; j++) (*
this)[i][j] = aMb[i][j];
443 double d = bP.
getD() ;
444 *
this -= atb*n.
t()/d ;
467 for (i=0 ; i < 3 ; i++)
470 for (j=0 ; j < 3 ; j++) aHb[i][j] = aMb[i][j];
475 double d = bP.
getD() ;
void buildFrom(const vpRotationMatrix &aRb, const vpTranslationVector &atb, const vpPlane &bP)
Construction from Translation and rotation and a plane.
Definition of the vpMatrix class.
void resize(const unsigned int nrows, const unsigned int ncols, const bool nullify=true)
The class provides a data structure for the homogeneous matrices as well as a set of operations on th...
error that can be emited by ViSP classes.
The vpRotationMatrix considers the particular case of a rotation matrix.
double * data
address of the first element of the data array
void insert(const vpRotationMatrix &R)
This class aims to compute the homography wrt.two images.
void print()
Print the matrix.
vpRowVector t() const
transpose of Vector
vpHomography()
initialize an homography as Identity
void load(std::ifstream &f)
Load an homography from a file.
vpColVector getNormal() const
void build()
build the homography from aMb and Rb
void buildFrom(const vpTranslationVector &t, const vpRotationMatrix &R)
Construction from translation vector and rotation matrix.
vpHomography operator/(const double &v) const
void save(std::ofstream &f) const
Save an homography in a file.
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.
vpHomography inverse() const
invert the homography
vpMatrix pseudoInverse(double svThreshold=1e-6) const
Compute the pseudo inverse of the matrix using the SVD.
This class defines the container for a plane geometrical structure.
vpHomography operator*(const vpHomography &H) const
Class that consider the case of a translation vector.
Class that consider the case of the parameterization for the rotation.