Source of Truth and Ground-Truth Quality
Truth confidence hierarchy:
- Indoor mocap — strongest (mm, sub-degree), but carries occlusion dropouts (Motion Capture) and is in the rigid-body frame, not the PX4-IMU/ENU frame.
- Outdoor/Mars dual-RTK-fixed + magnetometer:
- position is cm (1σ) when both RTK lanes are fixed (the shipped
ground_truth_*position reproduces from the raw CSVs bit-for-bit; Ground-Truth Verification). - Attitude is the weak component and is not sub-degree. The pose is solved by Wahba’s problem via SVD with GNSS:mag weight 50:1, no recursive filter. The solve aligns only two measured directions — the dual-RTK antenna baseline (≈horizontal) and the magnetometer vector — plus their cross product (
mag_gps_wahba.m:a = 50·g_w·g_iᵀ + m_w·m_iᵀ + c_w·c_iᵀ, so the literal weighting is 50:1:1, the cross-product completion vector unweighted; the paper advertises only the 50:1 GNSS:mag ratio). - There is no accelerometer/gravity term in the solve, so the attitude is never leveled to “down” — and the non-zero static-epoch gravity tilt below is itself the proof that gravity was not used (had it been, the static-epoch tilt would be ~0 by construction).
- Re-enabling the mag intrinsic changes the attitude but does not make it gravity-consistent — re-running the verbatim solve with the published px4 intrinsic leaves the dual-RTK-fixed tilt unchanged on average (per-mission mean 8.0°→8.5°; 9 of 19 Mars missions improve, 10 worsen) and degrades the maintainers’ near-correct missions (
mars_5/6/70.9–1.4°→4.0–5.7°), so the inconsistency is structural (no leveling term), not a mag-calibration bug. A genuinely gravity-consistent attitude needs the IMU/gravity in the loop (a smoothed/VI re-solve, or a mocap anchor). Verified by the magnetometer-intrinsic attitude test. - The Wahba ingests the raw
px4_mag: the soft/hard-iron intrinsic is not applied in GT generation (gps_mag_orientation.m:215, the intrinsic correction is left commented). This was confirmed empirically: re-running the verbatim pipeline with raw mag reproduces the shipped GT bit-for-bit on 18/19 Mars missions (pos ~1e-15 m, quat ~1e-6°), and the intrinsic-corrected mag differs from raw by 21–34° (Mars) / ~3° (KLU), so it cannot also match — i.e. raw mag is what shipped. - A model-free physical check (rotate the measured IMU specific force by the shipped GT quaternion at static epochs; it should point world-up) shows the shipped attitude is gravity-inconsistent by a mission-dependent 0.9–55° median (up to ~77° at the p90, e.g.
mars_4) — measured on every Mars mission and all four KLU-site runs, robust across static gates and reproduced by two independent code paths (mars_4is the worst and is bimodal: near-correct over part of the flight, tens-of-degrees wrong over another). - Orientation confidence is anisotropic in principle (dual-RTK baseline fixes 2 DoF; mag the third, downweighted 50:1), but in practice the whole attitude can be off by tens of degrees on some missions.
- The tilt decomposes into two demonstrated sources:
- (i) RTK fix quality — when either receiver drops to float the relative baseline is biased (on
mars_4its length collapses 1.21 m→0.91 m and its elevation swings to ~56°), and since the baseline carries 50× the weight with no gravity fallback the roll/pitch follows it (mars_42.3° at dual-fix vs 58.9° at float,corr(tilt, baseline-elevation)=+0.93); the near-correct missions are simply the ones that hold dual-fix throughout (mars_50.9°). - (ii) A per-mission residual present even at dual-fix (
mars_2is fully fixed with a correct 1.20 m baseline yet 17.2°), which the mag-intrinsic test above shows is structural — the unleveled about-baseline DoF — not a mag defect.
- (i) RTK fix quality — when either receiver drops to float the relative baseline is biased (on
- The Klagenfurt-site GT (
outdoor_1,transition_1..3) additionally does not reproduce from the standard pipeline (differs by ~10–15° — a different/earlier attitude solution) and is ~15–17° gravity-inconsistent on the shipped files (outdoor_116.9°,transition_1/215.2°/15.3°,transition_316.0°; tight ~1° p10–p90 band, robust across static gates). - The defect is in the shipped attitude solution, not the IMU —
mars_5is 0.9° on the same IMU family — so an improved re-solve can be gravity-consistent. RTK-float segments are weaker than RTK-fixed; fix quality varies per run and per receiver (RTK GPS). Verified by the ground-truth reproduction study and the ground-truth-attitude gravity-consistency study.
- position is cm (1σ) when both RTK lanes are fixed (the shipped
- The maintainers’ multi-GNSS INSANE paper independently describes the outdoor orientation reference as a geometric construction from raw sensor measurements, vehicle geometry, and sensor calibration, and it flags reduced-confidence outdoor orientation on
mars_4,mars_8,mars_9,mars_14,mars_16,mars_17,mars_18,mars_19, andoutdoor_1when RTK quality degrades.
In This Section
- Ground-Truth Products and Schemas — the published
ground_truth_8hz/80hzlanes, the helper poses, and the Mars state exports. - The Outdoor-to-Indoor Transition Handoff — the three-regime handoff, the gaps, and the in-gap witness coverage.
The runnable verification behind the gravity-inconsistency conclusion above is on Ground-Truth Attitude: Gravity Inconsistency; the bit-for-bit position reproduction is on Reproducing the Shipped Ground Truth.