symforce icon indicating copy to clipboard operation
symforce copied to clipboard

IMU Preintegration

Open hayk-skydio opened this issue 3 years ago • 2 comments

Add a symforce.slam.imu_preintegration module that provides a symbolic implementation of tangent preintegration, and generates Python and C++ runtime functions for the main update function. Also adds a lightweight Python wrapper class to maintain state and tests against GTSAM.

hayk-skydio avatar Jun 05 '22 12:06 hayk-skydio

Another thing to discuss @aaron-skydio is that this puts the python generated code into sym.factors. This makes sense to me and matches C++, but I doubt we want it in the symforce-sym package, and also it makes it perhaps so you have to pip install -e . before you can import it (ie the build is required to iterate)

hayk-skydio avatar Jun 05 '22 12:06 hayk-skydio

I think it seems reasonable to put the generated python factors into symforce-sym, since we'll presumably do the same for C++ generated factor headers. Rerunning pip install -e . to update symforce-sym is something we should additionally fix though

aaron-skydio avatar Jun 06 '22 21:06 aaron-skydio

This was moved to #279, which is now merged - further work on this should be new PR(s)

aaron-skydio avatar Mar 10 '23 23:03 aaron-skydio