NeuSLAM / README.md
aniketgupta01's picture
NeuSLAMNet weights, ORB vocabulary and reference TensorRT engines
406419a verified
|
Raw History Blame Contribute Delete
1.68 kB
metadata
license: mit
tags:
  - slam
  - visual-odometry
  - optical-flow
  - stereo-matching
  - robotics

NeuSLAMNet weights for NeuSLAM

Weights for NeuSLAMNet, the network inside NeuSLAM, a stereo / RGB-D visual SLAM system for embedded GPUs.

From three images, (left_keyframe, right_keyframe, left_current) at 368x768, NeuSLAMNet predicts in one pass:

  • stereo disparity of the keyframe, with a per-pixel confidence;
  • optical flow keyframe -> current, with a per-pixel confidence;
  • a per-pixel motion logit.

16.4 M parameters.

Files

file contents
neuslamnet.pth PyTorch state dict (torch.load(..., weights_only=True))
ORBvoc.txt ORB vocabulary for DBoW3 loop closure (the ORB-SLAM2 vocabulary)
reference_engines/neuslamnet_fp16.plan the TensorRT fp16 engine (stereo) behind the published results
reference_engines/neuslamnet_flow_fp16.plan its flow-only counterpart (RGB-D)

Use

pip install ./third_party/pydbow3 && pip install -e .   # from the NeuSLAM repository
neuslam download          # fetches these files into ~/.cache/neuslam
neuslam build-engine      # builds the TensorRT engines for your GPU

Build your own engines with neuslam build-engine: TensorRT plans are specific to the GPU and the TensorRT version. The reference engines reproduce the published numbers exactly, but only load with TensorRT 10.15 on a compatible NVIDIA GPU (they were used on an RTX 3090). Two fp16 builds of the same weights can differ slightly in their results, so numbers from a local build will be close to, not identical with, the published ones.