Skip to content

v1.3.0

Compare
Choose a tag to compare
@github-actions github-actions released this 17 Aug 15:21
· 510 commits to main since this release
376e0c1

Summary

This release introduces a fully redesigned wavemap Rviz plugin, which is easier to use and much faster.

New features

  • Communication
    • Incremental transmission of the map (avoids exceeding ROS message size limits for very large maps)
    • Rewritten map<->ROS msg conversions, matching the new map<->byte stream implementation
  • Rviz plugin UI
    • Support different render modes (slice; grid) in a single WavemapDisplay instance
      • Each render mode can be configured through its own foldout menu
      • The map is only stored once per plugin instance and shared among the render mode handlers
    • Grid render mode
      • Expose grid color options in the UI
      • Add option to set maximum grid drawing resolution
        • E.g. to improve frame rate when displaying large maps on computers with no GPU
    • Improve default settings s.t. it can be used with minimal tuning in most scenarios
  • Rviz plugin performance improvements
    • Only redraw map blocks that changed
    • Render grid blocks with Level of Detail based on their distance to the camera
    • Use a work queue and limit the update time per frame, to avoid stalling Rviz when large map changes occur
    • Interface directly with Ogre, instead of using rviz::Pointcloud as an intermediary for rendering

Removed features:

  • Remove the option to render map meshes
    • This render mode does not yet produce good iso-surfaces and is currently very slow. It will be reintroduced once its more mature.

Detailed package changelogs

Upgrade notes

Upgrading should only be a matter of rebuilding. If you're using

  • Catkin: cd ~/catkin_ws/ && catkin build wavemap_all
  • Docker: docker build --tag=wavemap --build-arg="VERSION=v1.3.0" - <<< $(curl -s https://raw.githubusercontent.com/ethz-asl/wavemap/main/tooling/docker/incremental.Dockerfile)

For more info, see the installation page in the docs.