aboutsummaryrefslogtreecommitdiff
path: root/include/libsurvive
diff options
context:
space:
mode:
authorJustin Berger <j.david.berger@gmail.com>2018-04-04 21:07:02 -0600
committerJustin Berger <j.david.berger@gmail.com>2018-04-04 21:15:54 -0600
commit48f791f98d9eda5948de4ef6930d0530b7ca633e (patch)
tree12f41f08ca4383140a2d84955ae9849584955c1c /include/libsurvive
parenta2514e88dc6945a1cc817c09d251378bd924488e (diff)
downloadlibsurvive-48f791f98d9eda5948de4ef6930d0530b7ca633e.tar.gz
libsurvive-48f791f98d9eda5948de4ef6930d0530b7ca633e.tar.bz2
Added kalman to imu
Diffstat (limited to 'include/libsurvive')
-rw-r--r--include/libsurvive/survive_imu.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/libsurvive/survive_imu.h b/include/libsurvive/survive_imu.h
index 124ad7e..8a86425 100644
--- a/include/libsurvive/survive_imu.h
+++ b/include/libsurvive/survive_imu.h
@@ -22,12 +22,17 @@ typedef struct {
SurvivePose lastGT;
uint32_t lastGTTime;
+ FLT P[7]; // estimate variance
+
float integralFBx, integralFBy, integralFBz; // integral error terms scaled by Ki
} SurviveIMUTracker;
void survive_imu_tracker_set_pose(SurviveIMUTracker *tracker, uint32_t timecode, SurvivePose *pose);
+
void survive_imu_tracker_integrate(SurviveObject *so, SurviveIMUTracker *tracker, PoserDataIMU *data);
+void survive_imu_tracker_integrate_observation(SurviveObject *so, uint32_t timecode, SurviveIMUTracker *tracker,
+ SurvivePose *pose, const FLT *variance);
#ifdef __cplusplus
};