CoolFace
Datasetpublic

ntnu-arl/unified_autonomy_stack_datasets

Unified Autonomy Stack Datasets This repository contains data released in relation with the Unified Autonomy Stack. Details can be found here Paper: https://arxiv.org/abs/2605.12735 Code: https://ntnu-arl.github.io/unified_autonomy_stack/ The data was collected using the following platforms in both manually piloted and autonomously operated modes: AR-1 (Hornbill): A variant of the RMF-Owl collision-tolerant aerial robot. AR-2 (Magpie): A collision-tolerant aerial robot… See the full description on the dataset page: https://huggingface.co/datasets/ntnu-arl/unified_autonomy_stack_datasets.

sourceHugging Facebsd-3-clauseupdated 2mo agoView on Hugging Face
3likes319downloads
Dataset Card

Unified Autonomy Stack Datasets

This repository contains data released in relation with the Unified Autonomy Stack. Details can be found here

  • —Paper: <https://arxiv.org/abs/2605.12735>
  • —Code: <https://ntnu-arl.github.io/unifiedautonomystack/>

The data was collected using the following platforms in both manually piloted and autonomously operated modes:

  • —AR-1 (Hornbill): A variant of the RMF-Owl collision-tolerant aerial robot.
  • —AR-2 (Magpie): A collision-tolerant aerial robot designed to carry the UniPilot module.
  • —GR-1 (Anymal): An ANYmal D quadruped robot from ANYbotics carrying the UniPilot module.
  • —UniPilot: A compact hardware-software autonomy payload that can be integrated across diverse robot embodiments to enable autonomous operation in GPS-denied environments. In addition to being carried by AR-2 and GR-1, a handheld (helmet-mounted) variant was used for the campus_fog sequence.

[image]

The following table summarizes the platforms used for each dataset:

NameLocation (Norway)Platform(s)Notes
basement/nmpcNTNU Elektro Building basementAR-2 (Magpie)Autonomous Full Stack (Navigation mode: NMPC)
basement/rlNTNU Elektro Building basementAR-2 (Magpie)Autonomous Full Stack (Navigation mode: RL)
elektro_hallNTNU Elektro BuildingGR-1 (UniPilot-Anymal)Autonomous Full Stack
løkken_mineLøkken mineAR-2 (Magpie)Autonomous Full Stack
runehamar_tunnel/magpieRunehamar tunnelAR-2 (Magpie)Autonomous Full Stack
runehamar_tunnel/hornbillRunehamar tunnelAR-1 (Hornbill)Manually Piloted, SLAM Evaluation
frozen_lakeJonsvatnet LakeAR-1 (Hornbill)Manually Piloted, SLAM Evaluation
fyllingsdalen_tunnelFyllingsdalen tunnelAR-1 (Hornbill)Manually Piloted, SLAM Evaluation
campus_fogNTNU campusUniPilotHelmet-mounted walking, SLAM Evaluation

Sensor Setup

Data Description

Each sequence is released as a ROS 1 bag named sensors_only.bag containing the raw sensor data collected during the run. The ground truth is provided as a .tum file for the sequences where it is available.

Due to resource constraints on the platforms, the LiDAR is recorded as raw packets instead of the deserialized point clouds. To obtain bags with the point clouds, please view the lidar_packets_to_pointclouds.md.

Topics

The radar, IMU, and static transforms are common to all platforms; only the LiDAR and camera topics differ. Bags may additionally contain: flight-controller telemetry under /mavros/* (including GNSS as sensor_msgs/NavSatFix and mavros_msgs/GPSRAW where a fix was available), hardware time-synchronization triggers and status under /sensor_sync_node/*, further VN-100 streams (temperature, filtered IMU), and per-sensor host-receive timestamps under /<sensor>/ros_time_now.

Common to all platforms
SensorTopicDatatypeRate
Radar/radar/cloudsensor_msgs/PointCloud210 Hz
IMU/vectornav_driver_node/imu/datasensor_msgs/Imu200 Hz
Magnetometer/vectornav_driver_node/imu/magsensor_msgs/MagneticField200 Hz
Barometer/vectornav_driver_node/pressuresensor_msgs/FluidPressure200 Hz
Extrinsics (static transforms)/tf_statictf2_msgs/TFMessage—
LiDAR

Recorded as raw packets corresponding to a 10 Hz point cloud (one LiDAR per platform):

Platform (LiDAR)PacketsLiDAR IMUOther
AR-1 (Ouster OS0-128)/ouster/lidar_packets (ouster_ros/PacketMsg)/ouster/imu_packets (ouster_ros/PacketMsg, 100 Hz)/ouster/metadata (std_msgs/String)
UniPilot AR-2 / GR-1 (RoboSense Airy)/rslidar_packets (rslidar_msg/RslidarPacket)/rslidar_imu_data (sensor_msgs/Imu, 200 Hz)—
UniPilot handheld (Hesai JT-128)/lidar_packets (hesai_ros_driver/UdpFrame)/lidar_imu (sensor_msgs/Imu)/lidar_packets_loss (hesai_ros_driver/LossPacket)
Cameras

sensor_msgs/CompressedImage at 20 Hz:

PlatformTopic(s)
AR-1 (Hornbill)/cam0/cam0/compressed (intrinsics on /cam0/camera_info)
UniPilot (AR-2 / GR-1 / handheld)/cam_front/image_raw/compressed, /cam_left/image_raw/compressed, /cam_right/image_raw/compressed
On fyllingsdalen_tunnel, the AR-1 camera and radar were recorded at 25 Hz (the radar chirp configuration was changed for high-speed flight).

Calibration

Intrinsics

Camera intrinsics are provided in the calibration folder, with the same intrinsics for all sequences recorded on a given platform.

Extrinsics

The transforms between sensors are provided below. The transform $T{AB}$ transforms a point from frame $B$ to frame $A$ as $pA = T{AB} * pB$, where the point is represented in homogeneous coordinates. All transforms are provided in the format: x, y, z, qx, qy, qz, qw.

AR-1 (Hornbill):
  T_imu_lidar: [0.0166, 0.02158, 0.03375, 0, 0, 0, 1] 
  T_imu_radar: [0.077, 0.016, -0.063, 0.963, -0.021, -0.265, 0.021]
  T_imu_cam: [0.0725765278611583, 0.018936068067624674, -0.03560091123164558, 0.5543417213240229, -0.5433799916950063, 0.44199772312966146, 0.4495347076402992]

AR-2 / GR-1 (UniPilot):
  T_imu_lidar: [-0.06605, -0.01878, 0.034, 0.707, 0.00, -0.707, 0.00]
  T_imu_radar: [0.07717380907196035, -0.0479741168664902, 0.006770362043579366, 0.01761050968654745, 0.25032180256367187, -0.017699746191127304, 0.9679631109162291]

UniPilot handheld:
  T_imu_lidar: [-0.11484, -0.01878, 0.035, 0.3799282, -0.5963678, -0.3799282, 0.5963678]
  T_imu_radar: [0.08373, 0.0213, 0.02691, 0.6830127, 0.1830128, -0.1830128, 0.6830127]
  T_imu_cam_front: [0.083743715, 0.000235985, 0.005836153, -0.608415182, 0.616574414, -0.353450887, 0.353184694]
  T_imu_cam_left: [-0.021764534, 0.045545798, 0.023474280, -0.706455147, 0.000556152, -0.002366216, 0.707753642]
  T_imu_cam_right: [-0.025516567, -0.089169163, 0.024118153, 0.008477527, 0.715010265, -0.699047196, -0.004633580]

Ground Truth

Where available, ground truth is provided as a TUM-format trajectory file (timestamp tx ty tz qx qy qz qw) alongside the bag.

  • —Tunnels (`fyllingsdalen_tunnel`, `runehamar_tunnel/hornbill`): generated by fusing the tracking of a Leica GRZ101 mini-prism (mounted on AR-1) by a Leica MS60 MultiStation with the onboard IMU, in an offline Levenberg-Marquardt optimization.
  • —`campus_fog` and `frozen_lake`: GNSS was available, so ground truth is created using a GNSS-augmented visual bundle adjustment optimization with Pix4DMatic.

Citation

If you use this data in your research, please cite the following publication:

@misc{dharmadhikari2026unifiedautonomystackblueprint,
      title={The Unified Autonomy Stack: Toward a Blueprint for Generalizable Robot Autonomy}, 
      author={Mihir Dharmadhikari and Nikhil Khedekar and Mihir Kulkarni and Morten Nissov and Martin Jacquet and Angelos Zacharia and Marvin Harms and Albert Gassol Puigjaner and Philipp Weiss and Kostas Alexis},
      year={2026},
      eprint={2605.12735},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2605.12735}, 
}