Newer College

Newer College Dataset (https://ori-drs.github.io/newer-college-dataset/): a handheld rig walked around New College, Oxford. The most-cited handheld LiDAR benchmark, and one of the few that ships a survey-grade prior map, so it serves trajectory and map-quality scoring from the same recording.

Two collections, two different rigs. This profile is written for the 2020 one and says so:

2020  Ouster OS1-64 + RealSense D435i   /os1_cloud_node/points, /os1_cloud_node/imu
2021  Ouster OS0-128 + Alphasense       different topics entirely

NEWER_COLLEGE_YEAR selects between them. Only 2020 has been exercised against real bags here; the 2021 branch is written from its published topic naming and must be checked against a bag before it is trusted.

THE ONE THING THAT WILL BITE YOU: these 2020 bags carry ROS 1-era frame ids WITH A LEADING SLASH – “/os1_lidar”, “/os1_imu” – while tf2 canonicalizes names on insertion, so the tf tree holds them unslashed and no lookup matched. Every observation was dropped, and until mola_input_rosbag1 08a5754 the warning about that dropped observation segfaulted the process. With that fix in, tf resolves normally and this profile needs no workaround; without it, set the fixed poses below.

The sequences are split across MANY bags (10 for 01_short, 16 for 02_long). mola_lo_bag_slots() caps at 4 because the GUI launch files expose four slots, so the gui wrapper cannot replay a full sequence; the offline CLI takes a comma-separated list of any length and is what the eval uses.

Running it

Online replay with the 3D GUI:

mola-lo-gui-newer-college /path/to/rooster_*.bag [more bags ...] [additional flags]

Offline batch run, writing a trajectory file:

mola-lo-cli-newer-college /path/to/rooster_*.bag [more bags ...] [additional flags]

What this profile sets, and why

These are defaults, not overrides: exporting any of these variables before running the wrapper takes precedence.

NEWER_COLLEGE_YEAR

Default: 2020

MOLA_LIDAR_TOPIC

Default: /os1_cloud_node/points

MOLA_IMU_TOPIC

Default: /os1_cloud_node/imu

MOLA_CAMERA_TOPIC

Default: /camera/infra1/image_rect_raw

MOLA_USE_FIXED_CAMERA_POSE

Default: 1

MOLA_LIDAR_TOPIC

Default: /os_cloud_node/points

NOT yet verified against a bag on this machine – only the 2021 prior maps were downloaded, not its sequences. Check with `–list`-style inspection before trusting these.

MOLA_IMU_TOPIC

Default: /os_cloud_node/imu

NOT yet verified against a bag on this machine – only the 2021 prior maps were downloaded, not its sequences. Check with `–list`-style inspection before trusting these.

MOLA_LO_INITIAL_LOCALIZATION_METHOD

Default: InitLocalization::PitchAndRollFromIMU

Handheld, so the motion is faster and rotates harder than a vehicle’s: lean on the IMU both for deskewing and for the initial pitch/roll, as conslam and hilti2022 do.

MOLA_DESKEW_METHOD

Default: MotionCompensationMethod::IMU

Handheld, so the motion is faster and rotates harder than a vehicle’s: lean on the IMU both for deskewing and for the initial pitch/roll, as conslam and hilti2022 do.

Under the hood

Online launch file

lidar_odometry_from_rosbag1.yaml

Offline CLI input

--input-rosbag1 <MOLA_LO_BAGS_JOINED>

Profile source

scripts/lib/profiles/newer-college.sh