fomo
FoMo (https://fomo.norlab.ulaval.ca): a year of repeated drives of one off-road vehicle in a boreal forest, with six routes and twelve deployments that span bare ground, over a meter of snow, summer vegetation and night.
The dataset ships no ROS bags, only one file per scan and CSV IMUs. Convert a trajectory to rosbag2 first, with these topics and frames: PointCloud2 /robosense/points (frame robosense, float64 per-point time “t” in seconds relative to the scan start), Imu /vectornav/imu and /xsens/imu, and the robosense -> IMU transforms in /tf_static. This profile takes the resulting rosbag2 directory.
The bag carries the 128-channel RoboSense lidar (/robosense/points, true per-point timestamps, not motion compensated) and the VectorNav IMU (/vectornav/imu, 200 Hz). The Xsens IMU is also recorded, as /xsens/imu. The static transforms from the lidar to both IMUs are in /tf_static.
base_link is the lidar. De-skew uses the IMU by default. The reference trajectory is a GNSS position only, fused from three receivers, so scoring needs the xyz-only metrics.
Running it
Online replay with the 3D GUI:
mola-lo-gui-fomo /path/to/<trajectory>/rosbag2[/file.mcap] [additional flags]
Offline batch run, writing a trajectory file:
mola-lo-cli-fomo /path/to/<trajectory>/rosbag2[/file.mcap] [additional flags]
What this profile sets, and why
These are defaults, not overrides: exporting any of these variables before running the wrapper takes precedence.
MOLA_LIDAR_TOPIC
Default: /robosense/points
MOLA_IMU_TOPIC
Default: /vectornav/imu
MOLA_TF_BASE_LINK
Default: robosense
MOLA_DESKEW_METHOD
Default: MotionCompensationMethod::IMU
The lidar has true per-point times, so de-skew from the IMU. On the shortest route in all twelve deployments this matches the linear default (mean APE 0.119 m against 0.124 m), within the noise of the GNSS reference.
MOLA_CAMERA_TOPIC
Default: /zedx_left/image/compressed
MOLA_CAMERA_PREVIEW
Default: true
Under the hood
Online launch file |
|
Offline CLI input |
|
Profile source |