Wrist IMU benchmark

IMU-Bench

Benchmarking wrist IMU representations across kinematic, semantic and clinical tasks.

  • BenchmarkTen tasks from eight datasets in six families: pose, odometry, microgesture, IMU–text retrieval, Parkinson's disease and activity recognition, all from one wrist. With the ten pretraining sources, 3,855 hours of released wrist IMU data.
  • ModelInrtlWrist, a masked autoencoder pretrained at scale on unlabeled recorded and simulated wrist motion, is best or joint-best under frozen probing on nine of ten tasks.
  • Transfer42 source–target pairs and joint-training experiments show which supervision helps another task and which costs it.
Sunburst of the ten IMU-Bench evaluations: kinematics (Nymeria arm pose, body pose and odometry), recognition and retrieval (OpenWatch gestures, HumanML3D IMU–text retrieval, PADS clinical classes, and HHAR, MHEALTH, PRISM and TransfHAR activity sets).
Ten evaluations · 8 datasets · 6 families
3,855 hours of wrist IMU data across the 18 pretraining and evaluation datasets
PoseNymeria · cm / mmFive right-arm joints and 23 SMPL body joints from the real right-wrist IMU.
OdometryNymeria · ATE mPelvis velocity in the wrist frame, integrated into a trajectory.
MicrogestureOpenWatch · clip F1Five hand gestures plus background from 1 s windows.
IMU–textHumanML3D · R@1Retrieve the caption from simulated wrist motion, and the reverse.
Parkinson'sPADS · participant F1Healthy, Parkinson's disease or differential diagnosis for 469 participants.
Activity4 datasets · macro-F1HHAR, MHEALTH, PRISM and TransfHAR, 6 to 60 classes.
NymeriaOpenWatchHumanML3DPADSHHARMHEALTHPRISMTransfHAR frozen probefine-tunefrom scratch arm pose · cmMPJPE · mmATE · mclip macro-F1Recall@1participant macro-F1 InrtlWristLIMU-BERTSimMTMFOCALRelConSSL-Wearables accelerometergyroscope6 channels0.32 s patches10.24 s windows197,094 windows21 M parameters NymeriaOpenWatchHumanML3DPADSHHARMHEALTHPRISMTransfHAR frozen probefine-tunefrom scratch arm pose · cmMPJPE · mmATE · mclip macro-F1Recall@1participant macro-F1 InrtlWristLIMU-BERTSimMTMFOCALRelConSSL-Wearables accelerometergyroscope6 channels0.32 s patches10.24 s windows197,094 windows21 M parameters
How it works

One harness, from task card to transfer map

Every number comes from one registry-driven harness: a task card per task and an encoder card per model.

Sunburst of the ten evaluations grouped into kinematics, recognition and retrieval.
01 · Benchmark
Build the evaluation suite

Ten tasks, eight datasets, six families. One task card per task fixes the inputs, decoder, split rule, metric and training budget, and every pretraining corpus is audited against every evaluation set.

Label-less wrist and simulated signals entering an encoder–decoder; the encoder is probed frozen or fine-tuned.
02 · Pretrain, probe, fine-tune
Compare objectives on equal footing

Six self-supervised objectives on one 12-layer, 21 M-parameter ViT and one corpus of 197,094 unlabeled wrist windows. Each encoder is scored under frozen probing, fine-tuning and training from scratch with the same decoder.

A shared representation manifold fanning out to odometry, activity, pose, gesture, text alignment and clinical tasks.
03 · Transfer
Measure what transfers

Seven supervised source tasks evaluated on six targets each, plus joint-training pairs, separate broadly useful pretraining from complementary task supervision.

The question

Does one wrist representation serve every motion task?

Joint rotations, metric velocity, a gesture label, a sentence, a diagnosis. Each task sees a different shadow of the same movement. IMU-Bench asks whether those views share a representation.

01Many views of one motion

A smartwatch accelerometer and gyroscope capture locomotion, articulated limb motion, fine hand gestures and clinically relevant motor signs. Activity recognition, pose estimation, odometry, retrieval and clinical assessment each read a different part of that signal, and each offers only a partial view.

02Existing benchmarks stop at classification

Self-supervised wearable models are usually tested on activity recognition or health classification under their own splits, decoders and pretraining corpora. That leaves open whether the same features support articulated joint rotations, metric velocity and motion–language correspondence, and whether supervision for one target helps or harms another.

03Two questions under one protocol

How broadly do pretrained wrist features transfer, and is supervision for one task complementary to another? The benchmark fixes the backbone, one light decoder per task, the splits, the training budget and the model-selection rule, so differences come from the representation rather than the protocol.

Leaderboard

Two tracks: a controlled comparison and an open board

The controlled track fixes the corpus and the 21 M-parameter backbone, so a row differs from another only in its pretraining objective. The open track takes any encoder, trained on any data at any scale, including released models from other groups. Both run the same ten task cards. Bold marks the best value in a column within the track, ties included; reference rows do not compete.

With the corpus and the model held fixed, which pretraining objective gives the most useful wrist-IMU representation? Pretrain only on the released IMU-Bench corpus (197,094 unlabeled wrist windows; built with scripts/build_multidata_cache.py from the sources listed in DATASETS.md). Use the shared backbone, a 12-layer, width-384 ViT over 0.32 s patches (21 M parameters, imu_lm/models/ViT1D), and the shared pretraining trainer (scripts/run_pretrain.py). At most 160,000 pretraining updates, checkpoint selected on the corpus validation split. Only the objective (loss, views, masking, heads discarded after pretraining) is free.

EncoderArm posecm ↓Full-body poseMPJPE mm ↓OdometryATE m ↓Gestureclip F1 ↑IMU–textR@1 ↑Parkinson'sparticipant F1 ↑Activitymean F1 ↑Mean rank↓
InrtlWrist (benchmark authors)8.1497.90.20064.727.955.257.81.21
LIMU-BERT8.1498.50.20861.724.950.556.22.07
SSL-Wearables8.42101.70.22054.724.857.455.13.00
SimMTM8.47103.60.22455.917.248.753.14.00
RelCon8.50104.30.21538.513.240.535.45.14
FOCAL8.71108.40.24048.18.640.744.25.57
Never-trained encoder, frozen (decoder alone)8.46105.00.23336.49.551.726.2
Raw input, 0 layers (decoder alone)8.51106.40.25611.40.512.65.6
Same backbone, trained from scratch8.2192.70.16260.823.229.953.3

Being evaluated: DINO (10 of 20 cells); I-JEPA (4 of 20 cells).

Activity is the mean macro-F1 over HHAR, MHEALTH, PRISM and TransfHAR. Gesture and Parkinson's are the OpenWatch test split and the PADS participant metric. Mean rank is taken over the seven columns within a track and protocol. Secondary metrics for every cell are in the released result files.

Per-task Leaderboard

Every metric of every encoder on each task, as in the paper appendix. One training seed per cell. Task-specific systems are listed for orientation and are not ranked.

Encoderpos err (cm) ↓ang err (°) ↓
Frozen probe
InrtlWrist (Ours)8.149.89
LIMU-BERT8.149.86
SimMTM8.4710.27
FOCAL8.7110.70
RelCon8.5010.41
SSL-Wearables8.4210.14
InrtlWrist, plain attention8.3610.17
InrtlWrist, accelerometer only8.7610.61
Random frozen encoder8.4610.35
Raw input, 0 layers8.5110.30
Fine-tune
InrtlWrist (Ours)8.019.86
LIMU-BERT8.189.97
SimMTM8.4410.29
FOCAL8.6610.69
RelCon8.5510.53
SSL-Wearables8.5710.58
InrtlWrist, plain attention8.1910.06
InrtlWrist, accelerometer only8.8810.80
Scratch8.219.89
Task-specific systems (not ranked)
MobilePoser (Xu et al.)9.7424.28
IMUPoser (Mollyn et al.)10.1523.82

Arm pose: Nymeria real right-wrist IMU → 5-joint right-arm chain rotations. One training seed per cell. Task-specific systems are listed for orientation and are not ranked (see the paper appendix). MobilePoser and IMUPoser also read wrist orientation, and must predict the ancestor joints that our arm-pose metric supplies.

What we found

Broad usefulness and compatible supervision are different things

Six self-supervised objectives, one backbone, one corpus, three protocols. The numbers separate what a pretrained encoder carries from what task supervision adds or takes away.

One pretrained wrist encoder. Best or joint-best on nine of ten tasks.

InrtlWrist, a masked autoencoder with alternating frame and global attention, leads the six matched methods under frozen probing on nine of ten primary metrics, and fine-tuning it beats training from scratch on nine of ten tasks.

  • Frozen probing. Best or joint-best on nine of ten primary metrics among the six matched methods; SSL-Wearables leads on Parkinson's disease.
  • Fine-tuning beats scratch on nine of ten tasks. Full-body MPJPE falls from 97.9 to 88.1 mm (scratch 92.7), odometry ATE from 0.200 to 0.154 m (scratch 0.162) and IMU–text Recall@1 rises from 27.9 to 38.8 (scratch 23.2).
  • Gesture is the exception. Frozen InrtlWrist reaches 64.7 clip F1, ahead of every fine-tuned matched method; fine-tuning it drops the score to 54.2.
  • The readout alone is not enough. A random frozen encoder reaches 26.2 mean activity F1 under the same linear probe; pretraining lifts it to 57.8.
Two radar charts, frozen probe and fine-tune, over seven task axes (arm, body, odometry, gesture, text, Parkinson's disease, activity). InrtlWrist traces the largest polygon in both; training from scratch is drawn dashed.
Downstream performance across task families. Each axis is normalized to the best score across both panels; larger radii are better. Activity averages macro-F1 over four datasets. Click a figure to enlarge.
Visualizations

What the kinematic predictions look like

Two of the ten tasks ask for metric quantities rather than labels. Both figures use the paper's fine-tuned InrtlWrist checkpoints on Nymeria validation sessions and the benchmark's own scoring code.

Six validation frames, each drawn front and side: the ground-truth 23-joint SMPL skeleton in teal and the skeleton predicted from the wrist IMU in amber, with the per-frame error in millimetres.
Full-body pose from one wrist. Ground truth (teal) against the pose predicted by fine-tuned InrtlWrist (amber) for frames spread across four validation sessions, front and side views; the number above each frame is its mean joint error over the 23 joints. The pelvis orientation is taken from ground truth, as in the benchmark's metric. Click to enlarge.
Four top-down pelvis trajectories over 2.56-second validation windows: ground truth in teal and fine-tuned InrtlWrist in dashed amber, each with its absolute trajectory error.
Inertial odometry. Pelvis trajectory over 2.56 s windows, seen from above: ground truth (teal) and fine-tuned InrtlWrist (dashed amber), each window labelled with its absolute trajectory error. Predicted wrist-frame velocities are rotated into the world frame with the gyroscope-propagated initial orientation and integrated, exactly as the ATE metric does. The four windows are drawn from the lowest-error 15% of the windows with above-median motion in four validation sessions; the benchmark mean over all 73,515 evaluation windows is 0.154 m. Click to enlarge.

Supervision for one task can benefit another, but not every pair is complementary.

Seven supervised source encoders, each trained from scratch on one task, are evaluated on the other six. Kinematic supervision transfers to kinematic targets, and with fine-tuning every source improves IMU–text retrieval and Parkinson's. Under frozen probing, language retrieval stays with the pretrained encoder, and joint training gains on one task at a cost to its partner.

  • Frozen transfer. Supervised sources beat a random frozen encoder on 28 of 42 pairs. Kinematic targets gain most from kinematic sources: full-body supervision cuts odometry ATE from 0.233 to 0.186 m. Five of the six kinematic transfers survive, at about half their size, on disjoint participants.
  • Language stays with the pretrained encoder. Under frozen probing, no supervised source exceeds 11.8 Recall@1 on IMU–text, against 27.9 for InrtlWrist.
  • With fine-tuning, 22 pairs improve over scratch and 20 decline. Every source improves IMU–text and Parkinson's; every source lowers gesture F1; no source improves odometry.
  • Joint training with full-body pose improves odometry (0.154 to 0.149 m) and gesture (54.2 to 65.0 F1) but raises body MPJPE and lowers frozen IMU–text recall.
Heatmap of frozen cross-task transfer: source tasks in columns, targets in rows, colored by relative change against a random frozen encoder. Heatmap of cross-task transfer with fine-tuning: source tasks in columns, targets in rows, colored by relative change against target training from scratch.
Cross-task transfer. Left: frozen transfer, colored against a random frozen encoder. Right: transfer with fine-tuning, colored against training from scratch. Green improves, orange-pink degrades, saturated at ±40%. MAE denotes InrtlWrist. Click a figure to enlarge.
Ablations

Architecture and training ablations

Three controls behind the protocol: how much the readout contributes to a frozen probe, whether more pretraining data helps, and what joint supervision trades away.

Decoder capacity

We compare frozen pretrained and random encoders as decoder capacity increases. Pretraining reduces full-body MPJPE by 9.7 mm with a linear readout and 7.1 mm with the benchmark decoder. Increasing decoder width changes this gap little, whereas adding temporal layers reduces it below 1 mm. A 12-layer odometry decoder similarly lets the random encoder outperform every pretrained encoder. Stronger decoders narrow or reverse the measured advantage of pretraining, which is why the benchmark keeps its readouts light.

Full-body MPJPE of a frozen pretrained InrtlWrist and a frozen random encoder across five decoders: linear, one cross-channel layer at width 192 and 384, one cross-channel plus four temporal layers, and four cross-channel plus eight temporal layers. The gap shrinks from 9.7 mm to under 1 mm once temporal layers are added.
Figure 4. Decoder capacity. Frozen-encoder full-body MPJPE (mm, lower is better); Δ is pretrained minus random. Click to enlarge.

Pretraining data and motion coverage

Holding the architecture, probes and training budget fixed, we vary the amount and coverage of pretraining data: uniform draws from a five-source pool of 1,959,288 windows, or draws restricted to subsets of 1,000 motion clusters obtained by k-means on a separately trained MAE's features. At 50,000 updates, the 0.01% subsets trail the 0.1% subsets at every coverage level, while uniform draws from 0.1% to 100% of the pool perform alike. Increasing motion coverage generally improves performance, most when few clusters are available. These findings are conditional on the training budget and the sampling scheme, since restricting clusters also changes source composition.

Eight-probe mean against pretraining volume for different numbers of allowed motion clusters after 50,000 updates, normalized by the full pool's gain over a random encoder.
Figure 5. Motion coverage. Eight-probe mean after 50,000 updates. Per-probe changes from the full pool are normalized by its gain over random and clipped to ±100%. Click to enlarge.

Joint task supervision

We compare single-task fine-tuning with joint supervision of full-body pose and either odometry or microgesture, starting from the same pretrained encoder with separate decoders. Joint training improves odometry ATE from 0.154 to 0.149 m and gesture F1 from 54.2 to 65.0, above training from scratch. It also raises full-body MPJPE from 88.1 mm alone to 91.5 mm with odometry and 94.4 mm with microgesture, and lowers the joint encoder's frozen IMU–text Recall@1 from 27.9 to 21.0 and 17.2. Gains on the partner task come with losses on the jointly trained pose task and on language retrieval. Pose with odometry alternates 1:1 for 40,000 steps; pose with microgesture 10:1 for 22,000 steps; each target selects its own checkpoint.

TargetScratchInrtlWrist aloneInrtlWrist + full-body pose
Odometry ATE (m) ↓0.1620.1540.149
Microgesture clip F1 ↑60.854.265.0

Joint fine-tuning with full-body pose. Both InrtlWrist conditions start from the same pretrained encoder; scores use per-task checkpoints. Bold: best per row.

Evaluation checks

Five checks for any wrist-IMU evaluation

These hold whichever model leads the board. Each comes from a problem we found while building IMU-Bench. The harness applies the first four to every row, ours included, and the fifth is a property of the split that every row shares. The details are in the paper's data-audit and decoder-capacity appendices.

Also worth knowing

Tasks

Six families, one wrist, six channels

Every task reads the same accelerometer and gyroscope stream from a single wrist. Click a card for the dataset, output and split.

IMU-Bench

A benchmark, a model and a map of what transfers

IMU-Bench separates broad downstream usefulness from complementary task supervision. Code, task cards, splits, the pretrained InrtlWrist encoder and every per-cell result file are public, and the open track takes any model.