Jafar
|
Toolbox for operations related to lines in SLAM (Plucker, homogeneous, rho-theta, and others) More...
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. |
Generated on Wed Oct 15 2014 00:37:30 for Jafar by doxygen 1.7.6.1 |
![]() |