gradslam is a fully differentiable dense SLAM framework. It provides a repository of differentiable building blocks for a dense SLAM system, such as differentiable nonlinear least squares solvers, differentiable ICP (iterative closest point) techniques, differentiable raycasting modules, and differentiable mapping/fusion blocks. One can use these blocks to construct SLAM systems that allow gradients to flow all the way from the outputs of the system (map, trajectory) to the inputs (raw color/depth images, parameters, calibration, etc.).
rgbdimages = RGBDImages(colors, depths, intrinsics)
slam = PointFusion()
pointclouds, recovered_poses = slam(rgbdimages)
pointclouds.plotly(0).show()
pytorch>=1.6.0
(for other pytorch versions see here)
pip install gradslam
pip install 'git+https://github.com/gradslam/gradslam.git'
git clone https://github.com/krrish94/chamferdist.git
cd chamferdist
pip install .
cd ..
git clone https://github.com/gradslam/gradslam.git
cd gradslam
pip install -e .[dev]
To verify if gradslam
has successfully been built, fire up the python interpreter, and import!
import gradslam as gs
print(gs.__version__)
You should see the version number displayed.
If you find gradslam
useful in your work, and are writing up a report/paper about us, we'd appreciate if you cited us. Please use the following bibtex entry.
@inproceedings{gradslam,
title={gradSLAM: Dense SLAM meets automatic differentiation},
author={{Krishna Murthy}, Jatavallabhula and Saryazdi, Soroush and Iyer, Ganesh and Paull, Liam},
booktitle={arXiv},
year={2020},
}
- Soroush Saryazdi
- Krishna Murthy Jatavallabhula
- Ganesh Iyer