Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Namespaces | Functions
lineTools.hpp File Reference

Toolbox for operations related to lines in SLAM (Plucker, homogeneous, rho-theta, and others) More...


Detailed Description

Toolbox for operations related to lines in SLAM (Plucker, homogeneous, rho-theta, and others)

Definition in file lineTools.hpp.

Go to the source code of this file.

Namespaces

namespace  jafar
 

Transport info from GDAL Datasets to Bands' internal data.


namespace  jafar::slam::lineTools
 

Functions for operations related to lines in SLAM (Plucker, homogeneous, rho-theta, and others)


Functions

template<class Mat >
void jafar::slam::lineTools::pluckerIntrinsicMatrix (double u0, double v0, double au, double av, Mat &K)
 Build Plucker matrix from calibration parameters.
template<class Vec , class Mat >
void jafar::slam::lineTools::pluckerIntrinsicMatrix (Vec const &k, Mat &K)
 Build Plucker matrix from calibration vector.
void jafar::slam::lineTools::pluckerInverseIntrinsicMatrix (double u0, double v0, double au, double av, jblas::mat &iK)
 Build inverse Plucker camera matrix from calibration parameters.
void jafar::slam::lineTools::pluckerInverseIntrinsicMatrix (jblas::vec4 const &k, jblas::mat &iK)
 Build inverse Plucker camera matrix from calibration vector.
jblas::vec2 jafar::slam::lineTools::homogeneousToRhoTheta (jblas::vec3 const &l)
 Homogeneous 2D line to rho-theta representation.
void jafar::slam::lineTools::homogeneousToRhoTheta (jblas::vec3 const &l, jblas::vec2 &rt, jblas::mat &RT_l)
 homogeneous 2D line to rho-theta, with Jacobian
jblas::vec3 jafar::slam::lineTools::rhoThetaToHomogeneous (jblas::vec2 const &rt)
 Rho-theta to homogeneous 2D line transform.
void jafar::slam::lineTools::rhoThetaToHomogeneous (jblas::vec2 const &rt, jblas::vec3 &l, jblas::mat &L_rt)
 Rho-theta to homogeneous 2D line transform -- Jacobian.
jblas::vec3 jafar::slam::lineTools::projectPlucker (jblas::mat33 const &K, jblas::vec6 const &L)
 Project Plucker 3D line into homogeneous 2D line.
void jafar::slam::lineTools::projectPlucker (jblas::mat33 const &K, jblas::vec6 const &L, jblas::vec3 &l, jblas::mat &L_l)
 Project Plucker 3D line into homogeneous 2D line, with Jacobians.
jblas::vec3 jafar::slam::lineTools::retroProjectPluckerPlaneNormal (jblas::mat33 const &iK, jblas::vec3 const &l)
 Retro project homogeneous 2D line to representation plane normal vector.
void jafar::slam::lineTools::retroProjectPluckerPlaneNormal (jblas::mat33 const &iK, jblas::vec3 const &l, jblas::vec3 &n, jblas::mat33 &N_l)
 Retro project homogeneous 2D line to representation plane normal vector, with Jacobians.
jblas::vec6 jafar::slam::lineTools::retroProjectPlucker (jblas::mat33 const &iK, jblas::vec3 const &l, jblas::vec3 const &v)
 Retro project homogeneous 2D line to Plucker 3D line.
void jafar::slam::lineTools::retroProjectPlucker (jblas::mat33 const &iK, jblas::vec3 const &l, jblas::vec3 const &v, jblas::vec6 &L, jblas::mat &L_l, jblas::mat &L_v)
 Retro project homogeneous 2D line to Plucker 3D line, with Jacobians.
jblas::vec6 jafar::slam::lineTools::retroProjectPluckerFromBase (jblas::mat33 const &iK, jblas::vec3 const &l, jblas::vec2 const &beta)
 Retro project homogeneous 2D line to Plucker 3D line providing base vector.
void jafar::slam::lineTools::retroProjectPluckerFromBase (jblas::mat33 const &iK, jblas::vec3 const &l, jblas::vec2 const &beta, jblas::vec6 &L, jblas::mat &L_l, jblas::mat &L_beta)
 Retro project homogeneous 2D line to Plucker 3D line providing base vector, with Jacobians.
jblas::mat jafar::slam::lineTools::planeVecToBaseMatrix (jblas::vec3 const &n)
 Plane sub-vector to plane base matrix.
jblas::vec3 jafar::slam::lineTools::planeBaseToDirVector (jblas::vec3 const &n, jblas::vec2 const &beta)
 Plane sub-vector 'n' and plane base to direction vector.
void jafar::slam::lineTools::planeBaseToDirVector (jblas::vec3 const &n, jblas::vec2 const &beta, jblas::vec3 &v, jblas::mat33 &V_n, jblas::mat &V_beta)
 Plane sub-vector 'n' and plane base to direction vector, with Jacobians.
void jafar::slam::lineTools::planeBaseToDirVector (jblas::vec_range const &n, jblas::vec2 const &beta, jblas::vec_range &v, jblas::mat33 &V_n, jblas::mat &V_beta)
 Plane sub-vector 'n' and plane base to direction vector, with Jacobians.
jblas::vec3 jafar::slam::lineTools::normVec3 (jblas::vec3 const &v)
 Normalize 3-vector.
void jafar::slam::lineTools::normVec3 (jblas::vec3 const &v, jblas::vec3 &vn, jblas::mat33 &VN_v)
 Normalize 3-vector, with Jacobians.
void jafar::slam::lineTools::normVec3 (jblas::vec3 const &v, jblas::vec_range &vn, jblas::mat33 &VN_v)
 Normalize 3-vector, with Jacobians.
jblas::vec3 jafar::slam::lineTools::adjustVec3 (jblas::vec3 const &v, jblas::vec3 const &n)
 Bring a vector to the norm of another one.
void jafar::slam::lineTools::adjustVec3 (jblas::vec3 const &v, jblas::vec3 const &n, jblas::vec3 &w, jblas::mat33 &W_v)
 Bring a vector to the norm of another one - with Jacobian.
jblas::vec3 jafar::slam::lineTools::pluckerOrigin (jblas::vec6 const &L)
 Plucker line's origin, the closest point to the coordinates origin.
void jafar::slam::lineTools::pluckerOrigin (jblas::vec6 const &L, jblas::vec3 &p0, jblas::mat &P0_l)
 Plucker line's origin, with Jacobian.
jblas::mat33 jafar::slam::lineTools::skewSymmMat33 (jblas::vec3 const &v)
 3-by-3 skew-symmetric matrix.
jblas::vec3 jafar::slam::lineTools::pluckerEndpoint (jblas::vec6 const &L, double const s)
 Compute Plucker line endpoint.
void jafar::slam::lineTools::pluckerEndpoint (jblas::vec6 const &L, double const s, jblas::vec3 &e, jblas::mat &E_l, jblas::mat &E_s)
 Compute Plucker line endpoint, with Jacobians.
jblas::vec6 jafar::slam::lineTools::pluckerRay (jblas::mat33 const &K, jblas::vec2 const &p)
 Ray from pixel, as a Plucker line.
void jafar::slam::lineTools::pluckerRay (jblas::mat33 const &K, jblas::vec2 const &p, jblas::vec6 r, jblas::mat R_p)
 Ray as a Plucker line from pixel, with Jacobians.
boost::tuple< double, double,
double > 
jafar::slam::lineTools::pluckerSoftIntersectionAbscissa (jblas::vec6 const &line1, jblas::vec6 const &line2)
 Abscissas of the imperfect intersection of 2 Plucker lines.
jblas::vec6 jafar::slam::lineTools::pluckerToEuclideanPlucker (jblas::vec6 const &L)
 Normalize Plucker line to convert it to Euclidean Plucker line.
void jafar::slam::lineTools::pluckerToEuclideanPlucker (jblas::vec6 const &L, jblas::vec6 &eL, jblas::mat66 &EL_l)
 Normalize Plucker line to convert it to Euclidean Plucker line, with Jacobian.
jblas::vec3 jafar::slam::lineTools::extToHomogeneous (jblas::vec2 const &p, jblas::vec2 const &q)
 Two endpoints to homogeneous 2D line.
void jafar::slam::lineTools::extToHomogeneous (jblas::vec2 const &p, jblas::vec2 const &q, jblas::vec3 &hm, jblas::mat &HM_p, jblas::mat &HM_q)
 Two endpoints to homogeneous 2D line - with Jacobians.
void jafar::slam::lineTools::points3plane (jblas::vec3 const &a, jblas::vec3 const &b, jblas::vec3 const &c, jblas::vec6 &plane)
 Extract a plane from 3 euclidean points.
jblas::vec6 jafar::slam::lineTools::hmPointsToPlucker (jblas::vec4 &A, jblas::vec4 &B)
 Homogeneous Points to Plucker.
void jafar::slam::lineTools::hmPointsToPlucker (jblas::vec4 &A, jblas::vec4 &B, jblas::vec6 &L, jblas::mat &L_a, jblas::mat &L_b)
 Homogeneous Point to Plucker Jacobians.
jblas::vec4 jafar::slam::lineTools::uvdToHmPoint (jblas::vec3 const &uvd, jblas::vec4 &k, double const alpha)
 stereo pixel to homogeneous Point
void jafar::slam::lineTools::uvdToHmPoint (jblas::vec3 const &uvd, jblas::vec4 &k, double const alpha, jblas::vec4 &hmP, jblas::mat &HmPu)
 stereo pixel to homogeneous Point Jacobian
jblas::vec6 jafar::slam::lineTools::projectPluckerToStereo (jblas::vec4 const &k, double alpha, jblas::vec6 const &L)
 Plucker line to two stereo homogeneous lines.
void jafar::slam::lineTools::projectPluckerToStereo (jblas::vec4 const &k, double alpha, jblas::vec6 const &L, jblas::vec6 &stLine, jblas::mat66 &StLine_l)
 Plucker line to two stereo homogeneous lines - with Jacobians.
jblas::vec2 jafar::slam::lineTools::extToRhoTheta (const jblas::vec2 &ext1, const jblas::vec2 &ext2)
 Segment extremities to rho theta line conversion.
void jafar::slam::lineTools::extToRhoTheta (const jblas::vec2 &ext1, const jblas::vec2 &ext2, jblas::vec2 &rt, jblas::mat &RT_ee)
 Segment extremities to rho theta line conversion - Jacobians.
jblas::vec4 jafar::slam::lineTools::uvdsToStereoRhoTheta (jblas::vec6 const &uvduvd)
 Convert stereo segment to rho-theta stereo line.
void jafar::slam::lineTools::uvdsToStereoRhoTheta (jblas::vec6 const &uvduvd, jblas::vec4 &rtrt, jblas::mat &RR_uu)
 Convert stereo segment to rho-theta stereo line - Jacobians.
void jafar::slam::lineTools::uvdsToStereoRhoTheta (jblas::vec6 const &uvduvd, jblas::mat &RR_uu)
 Convert stereo segment to rho-theta stereo line - only Jacobians.
void jafar::slam::lineTools::homogenousToExtDistances (const jblas::vec3 &_hm, const jblas::vec2 &ext1, const jblas::vec2 &ext2, jblas::vec2 &dd, jblas::mat &DD_hm, jblas::mat &DD_ext1, jblas::mat &DD_ext2)
void jafar::slam::lineTools::homogenousToPointDistance (const jblas::vec3 &_hm, const jblas::vec2 &_ext, double &d, jblas::mat_range &D_hm, jblas::mat_range &D_ext)
void jafar::slam::lineTools::homogenousToExtDistances (const jblas::vec3 &_hm, const jblas::vec2 &ext1, const jblas::vec2 &ext2, jblas::vec2 &dd, jblas::mat &DD_hm)
void jafar::slam::lineTools::homogenousToPointDistance (const jblas::vec3 &_hm, const jblas::vec2 &_ext, double &d, jblas::mat_range &D_hm)
jblas::vec6 jafar::slam::lineTools::points3DToPointVecLine (const jblas::vec3 &p, const jblas::vec3 &q)
 Points line to point-vector line transform.
void jafar::slam::lineTools::points3DToPointVecLine (const jblas::vec3 &p, const jblas::vec3 &q, jblas::vec6 &m, jblas::mat66 &M_l)
 Points line to point-vector line transform with Jacobians.
jblas::vec2 jafar::slam::lineTools::intersectPointVecLines (const jblas::vec6 &l1, const jblas::vec6 &l2)
 Intersection two point vector lines.
double jafar::slam::lineTools::cosVecsAngle (const jblas::vec3 &v1, const jblas::vec3 &v2)
 Cosinus of the angle between two vectors.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:30 for Jafar by doxygen 1.7.6.1
LAAS-CNRS