summaryrefslogtreecommitdiff
path: root/src/feature.h
diff options
context:
space:
mode:
authorMartin Miller2017-03-19 14:57:02 -0500
committerMartin Miller2017-03-19 14:57:02 -0500
commit640cece98ba46d5caa993288f60932c2d10bf9fc (patch)
treecd8c26177ca663eb7c3b04dd73037645488a404c /src/feature.h
parent666d4e7b02b97402d2e977864528b743b9e1c184 (diff)
downloadrefslam-640cece98ba46d5caa993288f60932c2d10bf9fc.zip
refslam-640cece98ba46d5caa993288f60932c2d10bf9fc.tar.gz
Add Feature::S() method.
This is a method for computing S for an independent measurement. It can provide a speed improvement over computing a full, correlated S, but may reduce quality if correlated measurements are treated as independent.
Diffstat (limited to 'src/feature.h')
-rw-r--r--src/feature.h12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/feature.h b/src/feature.h
index 971c952..2a492c2 100644
--- a/src/feature.h
+++ b/src/feature.h
@@ -5,6 +5,7 @@
using Eigen::Vector3d;
using Eigen::Matrix;
+using Eigen::MatrixXd;
using Eigen::Quaterniond;
/*
@@ -32,13 +33,10 @@ class Feature
Matrix<double,6,1> h( const Vector3d &x, const Quaterniond &q);
Matrix<double,3,6> L();
- /*
- Matrix<double,9,9> Q(double dt);
- Matrix<double,1,1> R();
- Matrix<double,1,1> S(const Matrix<double,9,9> &P);
- void skewSymmetric(const Vector3d &x, Matrix<double,3,3> &y);
- void unicsv();
- */
+ Matrix<double,3,3> Q(const double dt);
+ Matrix<double,6,6> R();
+ Matrix<double,6,6> S ( const Matrix<double,9,9> &Pxx, const Matrix<double,9,3> &Pxy,
+ const Matrix<double,3,3> &Pyy, const Vector3d &pos, const Quaterniond &q);
protected:
/* ==================== METHODS ======================================= */