dcsam
Factored inference for discrete-continuous smoothing and mapping
|
This library, built using GTSAM, provides factor type definitions and a new solver to perform approximate inference on discrete-continuous (hybrid) factor graph models typically encountered in robotics applications.
NOTE: As of 1/30/2023 the latest version of DC-SAM on main
depends on GTSAM release 4.2a8. If you are using GTSAM 4.1.1, check out our pre-4.2 release tag. This is the version of DC-SAM you would have used if you cloned the repository prior to 1/30/2023. Many thanks to Parker Lusk for bringing us into the future.
A technical report describing this library and our solver can be found here. If you found this code useful, please cite it as:
4.2a8
To retrieve the appropriate version of GTSAM:
Follow instructions in the GTSAM repository to build and install with your desired configuration.
To build using cmake
:
To run unit tests, first build with testing enabled:
Now you can run the tests as follows:
For example usage, check out the DC-SAM examples repo or take a look through testDCSAM.cpp
.
We're using pre-commit for automatic linting. To install pre-commit
run:
You can verify your installation went through by running pre-commit --version
and you should see something like pre-commit 2.7.1
.
To get started using pre-commit
with this codebase, from the project repo run:
Now, each time you git add
new files and try to git commit
your code will automatically be run through a variety of linters. You won't be able to commit anything until the linters are happy with your code.