Sim Collaboration & Release 6 / by Jeffrey Johnson

Maeve Automation has entered into a strategic alliance with Parallel Domain to explore simulation techniques for the development and testing of mobile navigation systems. The capabilities they have for procedural generation are pretty exciting and we are working on using them to demonstrate some of the capabilities of the Maeve navigation stack. Some preliminary results and a small test data set are included here in Release 6:

The sixth release includes updates to many existing packages, and introduces an ISP field controller designed for use with image segmentations, a data_processing stack for working with segmentation data sets, and a small demonstration data set. Major changes and updates are described below.

Image Segmentation Datasets

Image segmentation datasets include camera image sequences and segmentation image sequences. Each frame in the segmentation sequence defines a per-pixel labeling of the corresponding camera frame.

This release includes a small, low resolution proof-of-concept s01 data set.

s01: low-res short fly-through

Camera still 47 from s01 data set

Camera still 47 from s01 data set

Segmentation still 47 from s01 data set

Segmentation still 47 from s01 data set

  • 90 frame, low resolution fly through of an empty street with some infrastructure and lightly populated environment
  • Ground truth, per-pixel semantic segmentation
  • 768x432 resolution
  • Includes raw data and rosbag versions
  • Courtesy Parallel Domain
  • Released under CC BY 4.0 license

New & Updated Packages

These packages contain new or updated functionality for the Maeve navigation stack.

isp_field (updated):

  • Added factory methods for constructing default initialized ISP fields.

ros_parameter_loading (updated):

  • Added macro for loading parameters into variables with arbitrary names

sequence_to_bag (new):

  • Generates a bag file from an image segmentation dataset

segmentation_taxonomy (new):

  • Provides YAML specification for defining data set taxonomies
  • Implements C++ YAML taxonomy loader to enable programmatic access to semantic labels 

segmentation_isp_field (new):

  • Consumes image segmentations and generates control commands using an ISP field controller
  • Implements preliminary version of controller outlined in Maeve TR-1
  • Includes RViz config and launch file
  • Sample visualization below:
The left column contains the raw camera image (top) and the semantic segmentation (bottom). The right column contains, from top to bottom: - The ISP field visualization where blue indicates attractive potential and red indicates repulsive potential - The reduced control horizon where brighter shades correspond to headings with higher attractive potential - The eroded reduced control horizon where brighter shades correspond to headings with larger clearances to repulsive potentials - The yaw guidance horizon where brighter shades indicate a bias to a particular heading - The guidance throttle horizon where non-black shades correspond to available sets of yaw and throttle controls and their brightness indicates desirability

The left column contains the raw camera image (top) and the semantic segmentation (bottom).
The right column contains, from top to bottom:
- The ISP field visualization where blue indicates attractive potential and red indicates repulsive potential
- The reduced control horizon where brighter shades correspond to headings with higher attractive potential
- The eroded reduced control horizon where brighter shades correspond to headings with larger clearances to repulsive potentials
- The yaw guidance horizon where brighter shades indicate a bias to a particular heading
- The guidance throttle horizon where non-black shades correspond to available sets of yaw and throttle controls and their brightness indicates desirability