#include <pnp/rpnp.h>
Public Member Functions | |
rpnp (Eigen::MatrixXd obj_pts_, Eigen::MatrixXd img_pts_, Eigen::MatrixXd cam_, int n0) | |
Number of 2D/3D correspondences. More... | |
bool | compute_pose (Eigen::Ref< Eigen::Matrix3d > R_, Eigen::Ref< Eigen::Vector3d > t_) |
Function to compute pose. More... | |
Eigen::VectorXd | getp3p (double l1, double l2, double A5, double C1, double C2, double D1, double D2, double D3) |
Function to compute pose using P3P. More... | |
Eigen::VectorXd | getpoly7 (const Eigen::VectorXd &vin) |
Get Polynomial from input vector. More... | |
void | calcampose (Eigen::MatrixXd &XXc, Eigen::MatrixXd &XXw, Eigen::Matrix3d &R2, Eigen::Vector3d &t2) |
Function to calculate final pose. More... | |
Private Attributes | |
Eigen::MatrixXd | obj_pts |
Eigen::MatrixXd | img_pts |
Object Points (n X 3) in Camera Co-ordinate system. More... | |
Eigen::MatrixXd | cam_intrinsic |
Image Points (n X 3) in Camera Co-ordinate system. More... | |
Eigen::MatrixXd | P |
Camera Intrinsic Matrix. More... | |
Eigen::MatrixXd | Q |
Transposed Object Points (3 X n) for computations. More... | |
Eigen::Matrix3d | R |
Transposed Image Points (3 X n) for computations. More... | |
Eigen::Vector3d | t |
Rotation matrix. More... | |
int | n |
Translation vector. More... | |
mrpt::vision::pnp::rpnp::rpnp | ( | Eigen::MatrixXd | obj_pts_, |
Eigen::MatrixXd | img_pts_, | ||
Eigen::MatrixXd | cam_, | ||
int | n0 | ||
) |
void mrpt::vision::pnp::rpnp::calcampose | ( | Eigen::MatrixXd & | XXc, |
Eigen::MatrixXd & | XXw, | ||
Eigen::Matrix3d & | R2, | ||
Eigen::Vector3d & | t2 | ||
) |
Function to calculate final pose.
XXc | Object points |
XXw | Image Points |
R2 | Final Rotation matrix |
t2 | Final Translation vector |
Definition at line 306 of file rpnp.cpp.
References mean(), and mrpt::math::norm().
bool mrpt::vision::pnp::rpnp::compute_pose | ( | Eigen::Ref< Eigen::Matrix3d > | R_, |
Eigen::Ref< Eigen::Vector3d > | t_ | ||
) |
Function to compute pose.
[out] | R_ | Rotaiton matrix |
[out] | t_ | Translation vector |
Definition at line 42 of file rpnp.cpp.
References mrpt::math::norm(), and R.
Eigen::VectorXd mrpt::vision::pnp::rpnp::getp3p | ( | double | l1, |
double | l2, | ||
double | A5, | ||
double | C1, | ||
double | C2, | ||
double | D1, | ||
double | D2, | ||
double | D3 | ||
) |
Function to compute pose using P3P.
[in] | l1 | Internal parameter for P3P computation |
[in] | l2 | Internal parameter for P3P computation |
[in] | A5 | Internal parameter for P3P computation |
[in] | C1 | Internal parameter for P3P computation |
[in] | C2 | Internal parameter for P3P computation |
[in] | D1 | Internal parameter for P3P computation |
[in] | D2 | Internal parameter for P3P computation |
[in] | D3 | Internal parameter for P3P computation |
Definition at line 354 of file rpnp.cpp.
References mrpt::obs::gnss::A1.
Eigen::VectorXd mrpt::vision::pnp::rpnp::getpoly7 | ( | const Eigen::VectorXd & | vin | ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
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 |