ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
pose.cc File Reference
#include "base/pose.h"
#include <Eigen/Eigenvalues>
#include "base/projection.h"
#include "base/triangulation.h"
Include dependency graph for pose.cc:

Go to the source code of this file.

Namespaces

 colmap
 

Functions

Eigen::Matrix3d colmap::CrossProductMatrix (const Eigen::Vector3d &vector)
 
void colmap::RotationMatrixToEulerAngles (const Eigen::Matrix3d &R, double *rx, double *ry, double *rz)
 
Eigen::Matrix3d colmap::EulerAnglesToRotationMatrix (const double rx, const double ry, const double rz)
 
Eigen::Vector4d colmap::RotationMatrixToQuaternion (const Eigen::Matrix3d &rot_mat)
 
Eigen::Matrix3d colmap::QuaternionToRotationMatrix (const Eigen::Vector4d &qvec)
 
Eigen::Vector4d colmap::NormalizeQuaternion (const Eigen::Vector4d &qvec)
 
Eigen::Vector4d colmap::InvertQuaternion (const Eigen::Vector4d &qvec)
 
Eigen::Vector4d colmap::ConcatenateQuaternions (const Eigen::Vector4d &qvec1, const Eigen::Vector4d &qvec2)
 
Eigen::Vector3d colmap::QuaternionRotatePoint (const Eigen::Vector4d &qvec, const Eigen::Vector3d &point)
 
Eigen::Vector4d colmap::AverageQuaternions (const std::vector< Eigen::Vector4d > &qvecs, const std::vector< double > &weights)
 
Eigen::Matrix3d colmap::RotationFromUnitVectors (const Eigen::Vector3d &vector1, const Eigen::Vector3d &vector2)
 
Eigen::Vector3d colmap::ProjectionCenterFromMatrix (const Eigen::Matrix3x4d &proj_matrix)
 
Eigen::Vector3d colmap::ProjectionCenterFromPose (const Eigen::Vector4d &qvec, const Eigen::Vector3d &tvec)
 
void colmap::ComputeRelativePose (const Eigen::Vector4d &qvec1, const Eigen::Vector3d &tvec1, const Eigen::Vector4d &qvec2, const Eigen::Vector3d &tvec2, Eigen::Vector4d *qvec12, Eigen::Vector3d *tvec12)
 
void colmap::ConcatenatePoses (const Eigen::Vector4d &qvec1, const Eigen::Vector3d &tvec1, const Eigen::Vector4d &qvec2, const Eigen::Vector3d &tvec2, Eigen::Vector4d *qvec12, Eigen::Vector3d *tvec12)
 
void colmap::InvertPose (const Eigen::Vector4d &qvec, const Eigen::Vector3d &tvec, Eigen::Vector4d *inv_qvec, Eigen::Vector3d *inv_tvec)
 
void colmap::InterpolatePose (const Eigen::Vector4d &qvec1, const Eigen::Vector3d &tvec1, const Eigen::Vector4d &qvec2, const Eigen::Vector3d &tvec2, const double t, Eigen::Vector4d *qveci, Eigen::Vector3d *tveci)
 
Eigen::Vector3d colmap::CalculateBaseline (const Eigen::Vector4d &qvec1, const Eigen::Vector3d &tvec1, const Eigen::Vector4d &qvec2, const Eigen::Vector3d &tvec2)
 
bool colmap::CheckCheirality (const Eigen::Matrix3d &R, const Eigen::Vector3d &t, const std::vector< Eigen::Vector2d > &points1, const std::vector< Eigen::Vector2d > &points2, std::vector< Eigen::Vector3d > *points3D)