1 #ifndef __EKF_POSITIONYAWBIAS_HPP__ 2 #define __EKF_POSITIONYAWBIAS_HPP__ 5 #include <Eigen/Geometry> 20 Eigen::Block<vector_t, 3, 1>
_xi;
21 Eigen::Block<vector_t, 1, 1>
_yaw;
24 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
26 _x(vector_t::Zero()), _xi( _x.segment<3>(0) ),_yaw(_x.segment<1>(3)) {};
29 Eigen::Block<vector_t, 3, 1>&
xi() {
return _xi;}
30 Eigen::Block<vector_t, 1, 1>&
yaw() {
return _yaw;}
37 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
50 Eigen::Matrix<double, StatePosYawBias::SIZE, StatePosYawBias::SIZE> Q;
62 void predict(
const Eigen::Vector3d &translation_world,
const Eigen::Matrix<double, StatePosYawBias::SIZE, StatePosYawBias::SIZE> &Q);
65 void init(
const Eigen::Matrix<double, StatePosYawBias::SIZE, StatePosYawBias::SIZE> &P,
const Eigen::Matrix<double,StatePosYawBias::SIZE,1> &x);
68 Eigen::Quaterniond getOrientationCorrection();
69 Eigen::Matrix3d getCovariancePosition();
70 Eigen::Vector3d getPosition();
71 double getOrientationCorrectionCovariance();
74 void setInitialPosition(
const Eigen::Vector3d &position,
const Eigen::Matrix3d &covariance );
77 bool correctPosition(
const Eigen::Vector3d &position,
const Eigen::Matrix3d &covariance,
float reject_threshold );
80 bool correctPositionOrientation(
const Eigen::Vector4d &positionOrientation,
const Eigen::Matrix4d &covariance,
float reject_threshold );
85 Eigen::Matrix<double, StatePosYawBias::SIZE, StatePosYawBias::SIZE> jacobianF(
const Eigen::Vector3d &translation_world );
EIGEN_MAKE_ALIGNED_OPERATOR_NEW StatePosYawBias()
Definition: EKFPosYawBiasT.hpp:25
Definition: ExtendedKalmanFilter.hpp:11
Definition: EKFPosYawBiasT.hpp:11
static const int SIZE
Definition: EKFPosYawBiasT.hpp:15
vector_t _x
Definition: EKFPosYawBiasT.hpp:19
Eigen::Block< vector_t, 1, 1 > & yaw()
Definition: EKFPosYawBiasT.hpp:30
Definition: EKFPosYawBiasT.hpp:12
Eigen::Block< vector_t, 3, 1 > & xi()
Definition: EKFPosYawBiasT.hpp:29
Eigen::Matrix< double, SIZE, 1 > vector_t
Definition: EKFPosYawBiasT.hpp:16
EIGEN_MAKE_ALIGNED_OPERATOR_NEW StatePosYawBias x
Definition: EKFPosYawBiasT.hpp:40
Eigen::Block< vector_t, 1, 1 > _yaw
Definition: EKFPosYawBiasT.hpp:21
Eigen::Block< vector_t, 3, 1 > _xi
Definition: EKFPosYawBiasT.hpp:20
vector_t & vector()
Definition: EKFPosYawBiasT.hpp:28
Definition: EKFPosYawBiasT.hpp:33