GithubHelp home page GithubHelp logo

blam's Introduction

B(erkeley) L(ocalization) A(nd) M(apping)!

alt text

BLAM! is an open-source software package for LiDAR-based real-time 3D localization and mapping. BLAM! is developed by Erik Nelson from the Berkeley AI Research Laboratory (BAIR). See https://youtu.be/08GTGfNneCI for a video example.

Build Instructions

This repository contains two ROS workspaces (one internal, one external). The build process is proctored by the update script. To build, first make sure that you do not have any other ROS workspaces in your ROS_PACKAGE_PATH, then clone the repository and from the top directory execute

./update

Run Instructions

BLAM! is written in C++ with some Python interface elements, wrapped by Robot Operating System (ROS). Input LiDAR data should be provided to the /velodyne_points topic using message type sensor_msgs::PointCloud2.

To run in online mode (e.g. by replaying a bag file from another terminal or using a real-time sensor stream), use

roslaunch blam_example test_online.launch

To run in offline mode, i.e. by loading a bagfile and processing its data as fast as possible, set the bagfile name and scan topic in blam_example/launch/test_offline.launch, and use

roslaunch blam_example test_offline.launch

An example .rviz configuration file is provided under blam_example/rviz/lidar_slam.rviz.

Dependencies

BLAM! relies on system installations of the following packages:

GTSAM in particular should be installed from source using the latest version of the develop branch from https://bitbucket.org/gtborg/gtsam. GTSAM relies on Boost, an incorrect version of which will interfere with some of ROS' packages if ROS is not upgraded to at least Indigo. ROS Indigo, in turn, relies on Ubuntu 14.04.

blam's People

Contributors

erik-nelson avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.