#include <pnp/dls.h>
Public Member Functions | |
| dls (const cv::Mat &opoints, const cv::Mat &ipoints) | |
| Constructor for DLS class. More... | |
| ~dls () | |
| bool | compute_pose (cv::Mat &R, cv::Mat &t) |
| OpenCV function for computing pose. More... | |
Private Member Functions | |
| template<typename OpointType , typename IpointType > | |
| void | init_points (const cv::Mat &opoints, const cv::Mat &ipoints) |
| Initialization of object points and image points. More... | |
| cv::Mat | LeftMultVec (const cv::Mat &v) |
| Create a matrix from vector. More... | |
| void | run_kernel (const cv::Mat &pp) |
| Main function to run DLS-PnP. More... | |
| void | build_coeff_matrix (const cv::Mat &pp, cv::Mat &Mtilde, cv::Mat &D) |
| Build the Maucaulay matrix co-efficients. More... | |
| void | compute_eigenvec (const cv::Mat &Mtilde, cv::Mat &eigenval_real, cv::Mat &eigenval_imag, cv::Mat &eigenvec_real, cv::Mat &eigenvec_imag) |
| Eigen Value Decomposition. More... | |
| void | fill_coeff (const cv::Mat *D) |
| Fill the hessian functions. More... | |
| cv::Mat | cayley_LS_M (const std::vector< double > &a, const std::vector< double > &b, const std::vector< double > &c, const std::vector< double > &u) |
| Fill the Maucaulay matrix with co-efficients. More... | |
| cv::Mat | Hessian (const double s[]) |
| Compute the Hessian matrix for the polynomial co-efficient vector s. More... | |
| cv::Mat | cayley2rotbar (const cv::Mat &s) |
| Cayley parameters to Rotation Matrix. More... | |
| cv::Mat | skewsymm (const cv::Mat *X1) |
| Create a skwy-symmetric matrix from a vector. More... | |
| cv::Mat | rotx (const double t) |
| Rotation matrix along x-axis by angle t. More... | |
| cv::Mat | roty (const double t) |
| Rotation matrix along y-axis by angle t. More... | |
| cv::Mat | rotz (const double t) |
| Rotation matrix along z-axis by angle t. More... | |
| cv::Mat | mean (const cv::Mat &M) |
| Column-wise mean of matrix M. More... | |
| bool | is_empty (const cv::Mat *v) |
| Check for negative values in vector v. More... | |
| bool | positive_eigenvalues (const cv::Mat *eigenvalues) |
| check for positive eigenvalues More... | |
Private Attributes | |
| cv::Mat | p |
| cv::Mat | z |
| cv::Mat | mn |
| int | N |
| object-image points More... | |
| std::vector< double > | f1coeff |
| number of input points More... | |
| std::vector< double > | f2coeff |
| std::vector< double > | f3coeff |
| std::vector< double > | cost_ |
| std::vector< cv::Mat > | C_est_ |
| coefficient for coefficients matrix More... | |
| std::vector< cv::Mat > | t_est_ |
| cv::Mat | C_est__ |
| optimal candidates More... | |
| cv::Mat | t_est__ |
| double | cost__ |
| optimal found solution More... | |
| mrpt::vision::pnp::dls::dls | ( | const cv::Mat & | opoints, |
| const cv::Mat & | ipoints | ||
| ) |
Constructor for DLS class.
| mrpt::vision::pnp::dls::~dls | ( | ) |
|
private |
Build the Maucaulay matrix co-efficients.
| [in] | pp | |
| [out] | Mtilde | |
| [out] | D |
|
private |
Cayley parameters to Rotation Matrix.
| [in] | s |
|
private |
Fill the Maucaulay matrix with co-efficients.
| [in] | a | |
| [in] | b | |
| [in] | c | |
| [in] | u |
|
private |
| bool mrpt::vision::pnp::dls::compute_pose | ( | cv::Mat & | R, |
| cv::Mat & | t | ||
| ) |
OpenCV function for computing pose.
Referenced by mrpt::vision::pnp::CPnP::dls().
|
private |
Fill the hessian functions.
| [in] | D |
|
private |
Compute the Hessian matrix for the polynomial co-efficient vector s.
| [in] | s |
|
inlineprivate |
|
private |
Check for negative values in vector v.
| [in] | v |
|
private |
Create a matrix from vector.
| [in] | v |
|
private |
Column-wise mean of matrix M.
| [in] | M |
|
private |
check for positive eigenvalues
| [in] | eigenvalues |
|
private |
Rotation matrix along x-axis by angle t.
| [in] | t |
|
private |
Rotation matrix along y-axis by angle t.
| [in] | t |
|
private |
Rotation matrix along z-axis by angle t.
| [in] | t |
|
private |
Main function to run DLS-PnP.
| [in] | pp |
|
private |
Create a skwy-symmetric matrix from a vector.
| [in] | X1 |
|
private |
|
private |
|
private |
|
private |
|
private |
Definition at line 193 of file dls.h.
Referenced by init_points().
|
private |
| Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019 |