24 #ifndef FACTOR2POSES3D_HPP_ 25 #define FACTOR2POSES3D_HPP_ 28 #include "mrob/matrix_base.hpp" 29 #include "mrob/SE3.hpp" 30 #include "mrob/factor.hpp" 76 Factor2Poses3d(
const Mat4 &observation, std::shared_ptr<Node> &nodeOrigin,
77 std::shared_ptr<Node> &nodeTarget,
const Mat6 &obsInf,
bool updateNodeTarget=
false,
80 std::shared_ptr<Node> &nodeTarget,
const Mat6 &obsInf,
bool updateNodeTarget=
false,
93 virtual void print()
const;
95 MatRefConst
get_obs()
const override {
return Tobs_.
T();}
97 MatRefConst get_information_matrix()
const override {
return W_;}
98 MatRefConst get_jacobian([[maybe_unused]]factor_id_t
id = 0)
const override {
return J_;}
111 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
virtual void print() const
Definition: factor2Poses3d.cpp:111
const Eigen::Ref< const Mat4 > T() const
Definition: SE3.cpp:237
robustFactorType
Definition: factor.hpp:87
Definition: factor2Poses3d.hpp:73
void evaluate_residuals() override
Definition: factor2Poses3d.cpp:87
VectRefConst get_residual() const override
Definition: factor2Poses3d.hpp:96
MatRefConst get_obs() const override
Definition: factor2Poses3d.hpp:95
virtual void evaluate_jacobians() override
Definition: factor2Poses3d.cpp:100
Special Euclidean (group) in 3d Is the group representing rotations and translations, that is, rigid body transformations. SE3 = {T = [R t] | R SO3 , t Re^3 } [0 1] Associated to the groups of RBT, there is the Lie algebra se3 representing the same transformation in the tangent space around the identity. Particularly, xi =[w , v] Re^6, where w Re^3 represents the rotation and v the translation. We will preserve this order in this class.
Definition: matrix_base.hpp:36
virtual void evaluate_chi2() override
Definition: factor2Poses3d.cpp:107
Definition: factor.hpp:81