The Outdoor-to-Indoor Transition Handoff

The transition handoff (transition_1..3) is the dataset’s hardest truth structure. There is no single stitched full-run truth lane. Three regimes:

  1. Outdoor: ground_truth_8hz/80hz.csv (PX4-IMU, ENU) — covers the early outdoor segment; on transition_3 the 80hz lane numerically continues through the gap but is unreliable there (below).
  2. Building-approach: marker-based pose, surviving only inside the derived transition_gt_in_{gps,moap}.csv helpers.
  3. Indoor: mocap_vehicle_data.csv (rigid-body, mocap world) — covers the late segment only.

Coverage differs structurally between runs:

All three transition runs nevertheless have real raw dual-RTK overlap with mocap_vehicle even though none has co-temporal overlap between ground_truth_8hz and mocap_vehicle.

To evaluate across a full transition trajectory you must stitch the three lanes yourself, accounting for their different frames (ENU vs mocap-world), the PX4-IMU-vs-rigid-body reference-point difference, and the gaps. The _in_gps and _in_moap helpers are two different aligned frames (tens of metres apart) and are not primary scoring truth.

Gap and detection-window geometry (windows in seconds rel. IMU start; the truth gap is outdoor-GT8-end → mocap-start):

Run Outdoor GT8 mocap_vehicle Truth gap nav-cam >=4 tags, raw full-run scan nav-cam >=4 tags, undistorted full-run scan
transition_1 [0.8, 168.2] [173.2, 212.2] 4.97 s [150.5, 196.6] [151.2, 182.3]
transition_2 [0.6, 174.9] [180.4, 221.0] 5.50 s [156.1, 202.9] [156.9, 185.1]
transition_3 [0.3, 113.8] ∪ [191.5, 194.9] [124.9, 167.7] 11.1 s [93.7, 170.6] [97.5, 170.6]

The nav-cam >=4-tag window overhangs the gap on both sides on every run under both the raw full-run scan and the undistorted full-run scan, so the fiducial field bridges outdoor and indoor in time. The dir-6 gate and the dir-7 fiducial front-end use the undistorted detector path. (transition_3’s 11.1 s truth gap is the leading slice of the 77.75 s GT8 hole, before mocap begins.)

In-gap witness coverage (counts are samples strictly inside the truth gap, per run t1/t2/t3) — the gap is narrow and several non-GT sensors cover it continuously, so it is reconstructable: