External Packages and Nodes#

Terminology#

  • + : interesting topics and hardware abstraction

  • ~ : interesting, but quite a lot of work to do for hardware compatibility or mapping

  • - : bad solution

Overview#

ROS Packages Overview

ROS Packages Overview#

3D Mapping#

SLAM#

Octomap_server : +#

3D occupancy grid mapping, independent from sensor, looks like it does not need odometry

Plus :

  • maintained

  • compatible with melodic

  • documentation available as well as many

  • no odometry

  • independent from hardware (only require the right input topics)

Minus :

Inputs required :

  • sensor_msgs/PointCloud2

Hector slam : +#

Not sure whether we’re interested in hector slam itself, or on the

Plus :

  • maintained

  • not directly compatible with melodic, but easy to build it from source for melodic

  • odometry not needed

Minus :

  • mostly created for 2D mapping and robot navigation

  • not much documentation

Inputs required :

REMODE : ~#

modeling of many 3D objects, like rooms, persons, …

Plus :

  • noise reduction

  • nice rendering

Minus :

  • not much documentation and precisions about hardware/drivers/topics

  • maybe “too much” for our needs ?

  • looks like it is not maintained anymore : latest commit was 4 years ago

Inputs :

LOAM#

RTABMAP : +#

Plus :

  • maintained

  • compatible with melodic

  • real time mapping

  • publishes :

    • 3D point clouds

    • 2D occupancy maps

  • tutorials and documentation available

Minus :

  • oriented towards robot navigation, although “top-down” modeling seems to be possible

Inputs required :

  • odometry (not mandatory in all cases)

  • scan 2D or 3D

Spin Hokuyo : +#

It creates a point cloud with a 2D LiDaR and a servomotor. The interesting node compiles small point clouds to make one big point cloud. Could be very useful to make our digital model.

Plus :

  • has a node that compiles point clouds and publish them on a topic

  • great rendering

Minus :

  • designed for another sensor, but the node that compiles point clouds does not care about that

  • need some odometry work

Inputs required :

  • laser scan

  • odometry

Lego-LOAM : ~#

Plus :

  • good rendering

Minus :

  • designed for robot navigation, not for “top-down mapping”

  • designed for another sensor (velodyne)

Inputs :

Velodyne loam : ~#

Plus :

  • good rendering

  • builds 3D maps

Minus :

  • for velodyne sensor

  • robot navigation

Inputs :

Bad solution -#

Modbus#

Object Tracking#

Multiple objects lidar tracking : ~#

Plus :

  • tracks objects in real time

  • hardware independent

Minus :

  • 2D maps, most likely used for robot navigation

Inputs :

Object Detection#

QR code readers#

ROS