Papers
Topics
Authors
Recent
Search
2000 character limit reached

MARSCalib: Multi-domain Calibration Methods

Updated 4 July 2026
  • MARSCalib is a multi-domain framework that defines calibration procedures for inertial sensors, LiDAR-camera systems, and stellar radial velocity measurements.
  • It employs optimization techniques—including block-coordinate updates and ensemble analysis—to robustly estimate latent calibration parameters.
  • The approach varies by application, addressing sensor biases, rigid-body transforms, and temporal offset corrections with tailored methodologies.

Searching arXiv for the papers associated with “MARSCalib” and related usages. MARSCalib is a name that has been used for multiple calibration procedures in different research domains. In the literature represented here, it refers to: a 2015 algorithm for the simultaneous calibration of a magnetometer and an accelerometer from sensor readings alone; a 2025 spherical target-based LiDAR-camera extrinsic calibration method for multi-robot operation in field and extraterrestrial environments; and a 2025 MAROON-X pipeline for calibrating run-to-run radial-velocity zero-point offsets through an ensemble analysis of stars (Miranda et al., 2015, Jeong et al., 23 Jul 2025, Basant et al., 20 Feb 2025).

1. Scope of the term

The shared label does not denote a single canonical framework. Instead, it denotes distinct calibration systems whose commonality is procedural rather than domain-specific: each estimates latent calibration quantities from structured observations, but the latent quantities, statistical assumptions, and optimization variables differ substantially.

Usage Calibration problem Principal output
“Magnetometer And accelerometer Simultaneous Calibration” simultaneously calibrate a magnetometer and an accelerometer without any information besides the sensors readings biases, gains, covariances, sensor orientations, and Earth’s fields
“MARSCalib: Multi-robot, Automatic, Robust, Spherical Target-based Extrinsic Calibration in Field and Extraterrestrial Environments” LiDAR-camera extrinsic calibration for outdoor environments with multi-robot systems, considering both target and sensor corruption rigid-body transform TLCSE(3)T_L^C \in SE(3)
MARSCalib pipeline for MAROON-X remove month-to-month and year-to-year zero-point jumps in MAROON-X radial velocities per-run offsets δvk\delta v_k

A common misconception would be to treat these usages as successive versions of one method. The record represented here does not support that interpretation. The three systems address different observables: raw inertial and magnetic sensor vectors, synchronized image-pointcloud data, and differential stellar radial velocities.

2. Simultaneous magnetometer-accelerometer calibration

In “Efficient Simultaneous Calibration of a Magnetometer and an Accelerometer,” MARSCalib denotes a maximum-likelihood procedure built on a linear sensor model with affine distortions and Gaussian noise (Miranda et al., 2015). For each sensor s{a,m}s\in\{a,m\}, the measurement model is

$y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$

where ysR3y_s\in\mathbb{R}^3 is the raw reading, KsR3×3K_s\in\mathbb{R}^{3\times 3} is the full gain matrix, RSO(3)R\in SO(3) is the instantaneous rotation, $v_s^\hat$ is the Earth field in the inertial frame, bsR3b_s\in\mathbb{R}^3 is the additive bias, and Σs0\Sigma_s\succ 0 is the sensor-noise covariance. The inertial-frame reference fields are chosen as gravity δvk\delta v_k0 with δvk\delta v_k1 and magnetic field δvk\delta v_k2 with δvk\delta v_k3.

The formulation exploits repeated “static” measurements. If δvk\delta v_k4 sets of static samples are collected and δvk\delta v_k5 denotes the sample mean for set δvk\delta v_k6, then

δvk\delta v_k7

with δvk\delta v_k8, where δvk\delta v_k9 is the number of samples in the set. This reduces the raw-data likelihood to a weighted cost over set means. The negative log-likelihood is written, up to constants, as

s{a,m}s\in\{a,m\}0

where s{a,m}s\in\{a,m\}1. In practice, the reduced cost

s{a,m}s\in\{a,m\}2

is used, with s{a,m}s\in\{a,m\}3 taken from the sample covariance estimate.

The parameter vector is

s{a,m}s\in\{a,m\}4

After scale fixing, s{a,m}s\in\{a,m\}5 and s{a,m}s\in\{a,m\}6, so only s{a,m}s\in\{a,m\}7 remains free among field norms. This removal of scale ambiguity is central to the method’s identifiability.

3. Initialization, optimization structure, and reported performance

The 2015 MARSCalib procedure is implementation-oriented and begins with preprocessing: sample means

s{a,m}s\in\{a,m\}8

and unbiased sample covariances

s{a,m}s\in\{a,m\}9

are computed (Miranda et al., 2015). The gains and biases are then initialized by an ellipsoid fit adapted from Kok2012. The fit approximately solves

$y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$0

through the linearized construction

$y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$1

taking $y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$2 as the right singular vector of $y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$3 with smallest singular value. From $y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$4, one recovers

$y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$5

followed by the closed-form scaling

$y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$6

A Cholesky factorization on $y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$7 yields an upper-triangular $y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$8.

A joint estimate of the magnetometer-to-accelerometer frame rotation and the magnetic vertical component is then obtained. Using

$y_s = K_s R v_s^\hat + b_s + \eta_s,\qquad \eta_s\sim\mathcal{N}(0,\Sigma_s),$9

and the analogous ysR3y_s\in\mathbb{R}^30, the method solves

ysR3y_s\in\mathbb{R}^31

The paper describes this as a 4-D search, carried out by multiple random restarts and a small-scale gradient descent. For each static set, an initial ysR3y_s\in\mathbb{R}^32 is then obtained from the smallest-eigenvalue eigenvector of a ysR3y_s\in\mathbb{R}^33 quaternion-cost matrix ysR3y_s\in\mathbb{R}^34.

Refinement proceeds by block-coordinate optimization until convergence according to ysR3y_s\in\mathbb{R}^35. The blocks are: the orientations ysR3y_s\in\mathbb{R}^36; the biases and field components ysR3y_s\in\mathbb{R}^37; the gains ysR3y_s\in\mathbb{R}^38; and the covariances ysR3y_s\in\mathbb{R}^39. Orientation updates use a two-stage strategy: first the eigenvector approximation is accepted as long as it decreases KsR3×3K_s\in\mathbb{R}^{3\times 3}0, and then standard gradient descent on the quaternion manifold is used. Biases and field components are updated by generalized least squares,

KsR3×3K_s\in\mathbb{R}^{3\times 3}1

while the gains are estimated through a GLS solve on KsR3×3K_s\in\mathbb{R}^{3\times 3}2. Covariances are re-estimated at each iteration by the maximum-likelihood expression without Bessel correction,

KsR3×3K_s\in\mathbb{R}^{3\times 3}3

The reported evaluation uses Monte Carlo simulations with KsR3×3K_s\in\mathbb{R}^{3\times 3}4 static orientations, KsR3×3K_s\in\mathbb{R}^{3\times 3}5, and 100 runs. Four algorithmic variants are compared: NCDR, NCAR, FCAR, and DCAR. Accuracy is summarized by the Mahalanobis-normalized RMS error

KsR3×3K_s\in\mathbb{R}^{3\times 3}6

The key findings are that NCAR is fastest, at approximately KsR3×3K_s\in\mathbb{R}^{3\times 3}7–KsR3×3K_s\in\mathbb{R}^{3\times 3}8, and most robust; at least KsR3×3K_s\in\mathbb{R}^{3\times 3}9 of runs achieve RSO(3)R\in SO(3)0 for both sensors, including unseen test sets; error plateaus for RSO(3)R\in SO(3)1; a stop threshold RSO(3)R\in SO(3)2 balances time versus precision; FCAR and DCAR give similar accuracy but are RSO(3)R\in SO(3)3–RSO(3)R\in SO(3)4 slower; and NCDR often stalls in local minima. On real data from a hand-held board inside a building, the paper reports visually tight fits of mean readings despite micro-vibrations and mild magnetic disturbances, with accelerometer residuals much smaller than RSO(3)R\in SO(3)5 and magnetometer offsets below a few percent of full scale.

4. Spherical target-based LiDAR-camera extrinsic calibration

In the 2025 robotics and planetary-field context, MARSCalib denotes “Multi-robot, Automatic, Robust, Spherical Target-based Extrinsic Calibration in Field and Extraterrestrial Environments,” a fully automatic extrinsic calibration pipeline based on a small spherical target of radius RSO(3)R\in SO(3)6 (Jeong et al., 23 Jul 2025). One robot carries the target and remains stationary, while the calibrating robot keeps its LiDAR and camera fixed and sweeps the target through its field of view. Camera frames and LiDAR scans are time-synchronized and collected over several seconds.

The camera pipeline consists of the Segment Anything Model (SAM), a Canny edge detector, ellipse extraction, center compensation for perspective-projection distortion, and output of corrected 2D ellipse centers RSO(3)R\in SO(3)7. Ellipse extraction is divided into Initial Ellipse Detection, Ellipse Evaluation, and Ellipse Rectification. Initial detection randomly samples 5–10 edge points and fits an ellipse by direct least squares on small point sets. Evaluation bins the angular locations of in-ellipse points into a histogram and accepts the ellipse if the histogram is roughly uniform. If the histogram is non-uniform, the procedure identifies concentrated sectors, selects representative points, adds one point from the unused edge set, and re-fits an ellipse; if a large fraction of the original edge set lies outside the candidate ellipse, the candidate is rejected.

A distinctive feature is the perspective-projection compensation. Even for a perfect sphere, the fitted ellipse center RSO(3)R\in SO(3)8 is offset from the true image-plane projection RSO(3)R\in SO(3)9 of the 3D sphere center. With $v_s^\hat$0 denoting the image center, $v_s^\hat$1 the distance from $v_s^\hat$2 to the foot of the perpendicular to the major axis, and $v_s^\hat$3 half the major-axis length, the shift $v_s^\hat$4 is defined by two cases:

$v_s^\hat$5

with

$v_s^\hat$6

The algorithm then shifts $v_s^\hat$7 toward $v_s^\hat$8 by $v_s^\hat$9 along the line bsR3b_s\in\mathbb{R}^30.

The LiDAR pipeline begins with Statistical Outlier Removal (SOR) and ground-plane segmentation. The remaining points are projected into image space, and a Hough circle detector crops the approximate spherical region. For spinning and solid-state LiDAR, points returning from nominally the same surface location are clustered along each laser ray; clusters longer than bsR3b_s\in\mathbb{R}^31 are removed. Each remaining cluster is subdivided into bsR3b_s\in\mathbb{R}^32 equal cells, and the representative point is

bsR3b_s\in\mathbb{R}^33

where bsR3b_s\in\mathbb{R}^34 is the number of points in cell bsR3b_s\in\mathbb{R}^35 and bsR3b_s\in\mathbb{R}^36 its centroid. For non-repetitive LiDAR, the accumulated cloud is voxel-downsampled and voxel centroids are used as representative points.

Sphere fitting enumerates quadruplets of representative points. Each quadruplet defines a candidate sphere through

bsR3b_s\in\mathbb{R}^37

estimated by linear least squares,

bsR3b_s\in\mathbb{R}^38

The candidate center is bsR3b_s\in\mathbb{R}^39 and the radius is

Σs0\Sigma_s\succ 00

Only candidates with Σs0\Sigma_s\succ 01 are retained, and the final 3D center is a normalized frequency-weighted sum of surviving centers. Extrinsic estimation then solves

Σs0\Sigma_s\succ 02

with Levenberg-Marquardt and a robust kernel, followed by post-outlier removal and a repeated solve if necessary.

The reported experiments compare the spherical target with AprilTag and CopperTag under three contamination levels and rotations from Σs0\Sigma_s\succ 03 to Σs0\Sigma_s\succ 04. AprilTag detection frequently failed, with Σs0\Sigma_s\succ 05–Σs0\Sigma_s\succ 06 successes; CopperTag achieved Σs0\Sigma_s\succ 07–Σs0\Sigma_s\succ 08 under blur and performed poorly under mud; the sphere achieved Σs0\Sigma_s\succ 09 in all cases. On a construction field, across three LiDAR types and three camera mounts, the reported average errors over 10 scenes per configuration were approximately δvk\delta v_k00–δvk\delta v_k01 translation, δvk\delta v_k02–δvk\delta v_k03 rotation, and δvk\delta v_k04–δvk\delta v_k05 reprojection for Ouster OS1-32; δvk\delta v_k06–δvk\delta v_k07 translation, δvk\delta v_k08–δvk\delta v_k09 rotation, and δvk\delta v_k10–δvk\delta v_k11 reprojection for SOSLAB ML-X 120; and δvk\delta v_k12–δvk\delta v_k13 translation, δvk\delta v_k14–δvk\delta v_k15 rotation, and δvk\delta v_k16–δvk\delta v_k17 reprojection for Livox MID-360. Under physical damage to the sphere—extreme soil contamination, δvk\delta v_k18 truncation, and scratching—the average errors over 8 scenes with three LiDARs and two cameras were reported as δvk\delta v_k19 translation and δvk\delta v_k20 rotation.

5. MAROON-X ensemble calibration of run offsets

In the MAROON-X precision radial-velocity context, the MARSCalib pipeline is designed to remove month-to-month and year-to-year zero-point jumps by solving for a self-consistent set of per-run offsets δvk\delta v_k21 using an ensemble of well-behaved stars (Basant et al., 20 Feb 2025). MAROON-X uses a temperature- and pressure-stabilized Fabry-Pérot etalon illuminated by a supercontinuum laser, which corrects night-to-night shifts at the few δvk\delta v_k22 level, but the etalon itself drifts linearly by approximately δvk\delta v_k23, measured as δvk\delta v_k24 in the Red channel and δvk\delta v_k25 in the Blue. Prior to July 2023, MAROON-X operated in discrete campaign runs of 1–6 weeks, separated by days to months, and each run had its own instrument baseline because opto-mechanical perturbations changed the instrumental profile. The resulting run-to-run RV shifts can reach a few δvk\delta v_k26 in serval template-matching RVs.

The drift model is

δvk\delta v_k27

with δvk\delta v_k28. The joint Gaussian log-likelihood for each star is

δvk\delta v_k29

and the total log-likelihood is δvk\delta v_k30. In practice, fitting proceeds in two steps. First, each star is modeled individually with δvk\delta v_k31. Second, the per-run residual offsets

δvk\delta v_k32

are combined into a single δvk\delta v_k33 for each run.

The ensemble-analysis algorithm begins with 11 stars selected because they are quiet, host known planetary systems with well-determined Keplerian signals, or exhibit stellar-activity signals that can be robustly modeled with Gaussian Processes or sinusoids. Cleaning and outlier rejection subtract the median RV of each run, clip points more than δvk\delta v_k34 from each run’s median, remove points with δvk\delta v_k35 the median uncertainty, and exclude epochs whose activity indicators deviate by more than δvk\delta v_k36 from their median. Per-star RV modeling uses juliet with RadVel and dynesty. Keplerians are parameterized with δvk\delta v_k37 and δvk\delta v_k38 under uniform priors on δvk\delta v_k39, or with δvk\delta v_k40 for very low-mass planet modeling. Optional Quasi-Periodic, SHO, or Double-SHO kernels are implemented via celerite2 with physically motivated priors on δvk\delta v_k41. No jitter term is used initially so that unmodeled noise and run-to-run drifts are absorbed into the δvk\delta v_k42; only if planetary parameters deviate strongly from the literature or the GP overfits is an independent per-channel jitter added.

To combine per-star offsets, Barnard’s star is chosen as a reference because it spans the most runs. The remaining stars are ordered by the number of runs they share with Barnard’s star. For each star, the average offset difference over common runs is computed, the star’s offsets are shifted by the negative of that average, and the reference offsets are updated as the mean of all stars included so far. After all 11 stars are folded in, the final reference offsets are adopted as the MAROON-X run offsets. Their uncertainties are estimated as

δvk\delta v_k43

where δvk\delta v_k44 is the number of stars observed in run δvk\delta v_k45, and a floor of δvk\delta v_k46 is imposed; typical reported errors are δvk\delta v_k47–δvk\delta v_k48.

Applied to HD 3651, described as a quiet G8V star with a δvk\delta v_k49 Saturn-mass planet, 134 MAROON-X spectra over 29 months yield residuals of δvk\delta v_k50 and δvk\delta v_k51 after calibrated offsets are used. Injection-recovery tests include a two-signal experiment in which a δvk\delta v_k52, δvk\delta v_k53 Keplerian is injected at δvk\delta v_k54 and separately at δvk\delta v_k55, and a Monte Carlo completeness study with 10,000 injected planets over δvk\delta v_k56 and δvk\delta v_k57. At δvk\delta v_k58 and δvk\delta v_k59, recovery rates are δvk\delta v_k60 for Blue, δvk\delta v_k61 for Red, and δvk\delta v_k62 for combined data; at δvk\delta v_k63 and δvk\delta v_k64, they are δvk\delta v_k65, δvk\delta v_k66, and δvk\delta v_k67, respectively. The paper summarizes the result as sub-δvk\delta v_k68 per-run zero-point stability over more than 1,000 days.

6. Distinctions, recurrent structure, and interpretive issues

Taken together, these three usages show that MARSCalib is not tied to one sensing modality, one statistical family, or one calibration target (Miranda et al., 2015, Jeong et al., 23 Jul 2025, Basant et al., 20 Feb 2025). The 2015 method is an intrinsic calibration problem for two three-axis sensors under an affine-Gaussian model and static-pose grouping. The 2025 robotics method is an extrinsic calibration problem in which 2D ellipse centers and 3D sphere centers are paired and the transform is estimated in δvk\delta v_k69. The MAROON-X pipeline is a temporal zero-point calibration problem in which per-run offsets are inferred from residual structure across an ensemble of stars.

The differences in observables entail different optimization architectures. The magnetometer-accelerometer method uses block-coordinate maximum-likelihood refinement with generalized least squares, quaternion updates, and covariance re-estimation. The LiDAR-camera method decomposes the problem into image segmentation, geometric fitting, perspective compensation, accumulated-pointcloud processing, and a robust-kernel Levenberg-Marquardt solve. The MAROON-X pipeline separates astrophysical model fitting from inter-run alignment and combines per-star residual offsets by an iterative reference-updating procedure.

A plausible implication is that bibliographic searches for “MARSCalib” require domain qualification. Without that qualification, the acronym conflates at least three unrelated calibration problems: inertial-magnetic intrinsic calibration, LiDAR-camera extrinsic calibration, and radial-velocity run-offset calibration. The term therefore functions more as a local project name than as a stable cross-domain method class.

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to MARSCalib.