IMUCoCo: Continuous-Coordinate IMU Framework
- IMUCoCo is a framework for IMU-based human motion sensing that treats sensor placement as a continuous spatial variable and maps signals into a fixed 24-joint feature space.
- It employs a coordinate-conditioned architecture using sinusoidal encoding, region embeddings, and FiLM-modulated LSTM layers to handle arbitrary sensor layouts.
- Empirical tests show that IMUCoCo improves pose estimation and activity recognition accuracy across different sensor placements compared to fixed-layout systems.
Searching arXiv for the named papers to ground the article and citations. IMU over Continuous Coordinates (IMUCoCo) is a framework for IMU-based human motion sensing that removes the usual assumption that sensors must be worn at a small set of predefined body locations. It treats IMU signals as potentially coming from any point on the human body surface, conditions the representation on the sensor’s spatial coordinate, and maps signals from a variable number of IMUs into a unified 24-joint feature space that can be consumed by downstream models for human pose estimation and activity recognition (Zhou et al., 3 Aug 2025).
1. Definition and conceptual scope
IMUCoCo addresses a deployment constraint that is common in conventional IMU-based pose estimation and activity recognition: models are typically trained for a fixed sensor layout and do not transfer well when a device is moved from one body location to another. The framework is motivated by the observation that modern consumer devices with IMUs are abundant and mobile, so signals may be obtained from wrist-worn, ear-worn, pocketed, chest-mounted, armband, necklace, or other on-body devices, and these locations may change over the course of the day (Zhou et al., 3 Aug 2025).
The central conceptual move is to treat body-surface placement as a continuous variable rather than as a small categorical set such as wrist, ankle, or chest. A sensor location is represented by a 3D coordinate
measured relative to the human body root in a standard T-pose. The representation therefore depends on both the motion signal and the placement coordinate. This differs from prior fixed-layout systems, discrete placement-selection systems, or architectures that hardwire separate branches for a finite set of supported locations (Zhou et al., 3 Aug 2025).
The framework is organized around a fixed articulated target representation of 24 joint nodes. This choice avoids an architecture whose size would scale with the number of possible placements, which is effectively unbounded on a continuous body surface. Each available IMU is encoded together with its placement, and the model learns a coordinate-conditioned transfer into the 24-joint latent space. The resulting representation is placement-adaptive, sensor-count-agnostic, and compatible with downstream task models (Zhou et al., 3 Aug 2025).
A common misconception is to equate the phrase “continuous coordinates” in IMUCoCo with continuous-time trajectory estimation. In IMUCoCo, continuity refers to spatial coordinates over the body surface. The framework does not parameterize motion as a continuous-time spline or Gaussian process over time; instead, it parameterizes sensor placement continuously over the body and uses that coordinate to modulate representation transfer (Zhou et al., 3 Aug 2025).
2. Placement-adaptive representation and model architecture
At inference time, IMUCoCo takes raw IMU signals from one or more sensors together with each sensor’s body coordinate and transforms them into a shared feature space aligned with 24 joint nodes. The pipeline consists of a Motion Feature Encoder (MFE), a Sensor Coordinate Encoder (SCE), a Joint Node Modulator (JNM), and a Matchmaker. During training only, the framework also uses Kinematics Regressors (KRs) and a Pose Regressor (PR) for auxiliary supervision (Zhou et al., 3 Aug 2025).
The MFE maps a single IMU’s 9-channel stream into an intermediate motion feature: Architecturally, the 9-channel input is first projected to a higher-dimensional space using a linear layer with ReLU, then processed with a single-directional LSTM. The paper explicitly chooses a unidirectional LSTM rather than a bidirectional one in order to preserve historical information without fixed-window constraints (Zhou et al., 3 Aug 2025).
The SCE encodes placement with both a continuous coordinate and a coarse semantic region label. The body surface is partitioned into 24 regions according to joint-based segmentation, and each sensor is assigned a region category . Relative to target joint , the coordinate is standardized as
then passed through a sinusoidal positional encoding
with
A learnable embedding for the region label is concatenated with the positional encoding: An MLP with fully connected layers then produces a hierarchy of modulation codes
0
yielding the final output
1
The use of periodic coordinate encoding is explicitly compared to implicit neural representations such as NeRF (Zhou et al., 3 Aug 2025).
The JNM is the core transfer module. It receives the motion feature 2 and the placement codes 3, initializes
4
and then applies LSTM layers modulated by FiLM: 5 The final output 6 is a feature for a target joint node. In effect, the coordinate encoder produces scale and bias terms that condition how an IMU signal collected at a specific body coordinate should be transferred into articulated joint-space features (Zhou et al., 3 Aug 2025).
An important implementation consequence appears in pose estimation. Many fixed-layout systems normalize leaf IMUs relative to a pelvis IMU. IMUCoCo cannot assume a pelvis IMU is present, so it uses global-frame IMU measurements. This design choice is directly tied to the framework’s requirement to operate under arbitrary and variable sensor placement (Zhou et al., 3 Aug 2025).
3. Synthetic supervision, virtual IMUs, and training procedure
A central technical issue for IMUCoCo is the absence of real datasets with dense IMU coverage over the full body surface. The framework addresses this by synthesizing virtual IMUs over the body mesh from motion-capture corpora. The training sources are AMASS, DIP-IMU, and additional XSens-based datasets: Emokine, Geissinger et al., UniPD-BPE, Maurice et al., and Palermo et al. Using SMPL forward kinematics, the method derives joint and mesh positions, computes acceleration from second derivatives of position, and synthesizes orientation for mesh IMUs from mesh geometry rather than only from bone orientation (Zhou et al., 3 Aug 2025).
The appendix-level synthesis details are structurally important. For a mesh IMU, the 7-axis is the average normal of faces adjacent to a vertex, the 8-axis is orthogonal to the plane formed by bone direction and face normal, and the 9-axis is orthogonal to both 0 and 1. Virtual IMUs are calibrated using a T-pose, and sensor coordinates are measured in a root-centered body frame defined in a standard T-pose. The framework also synthesizes joint virtual IMUs as references, but it does not simply reuse raw joint positions for all quantities because that would produce a distribution different from a surface-mounted IMU (Zhou et al., 3 Aug 2025).
Training uses auxiliary supervision to force the latent representation to encode kinematics rather than leaving the burden to a powerful downstream regressor. For each joint node, five Kinematics Regressors predict joint velocity, joint position, local orientation, global orientation, and body root velocity. A body-level Pose Regressor takes features from all 24 joints and predicts full-body pose. Both KRs and PR are intentionally simple, using two linear layers with ReLU (Zhou et al., 3 Aug 2025).
The per-joint training objective is
2
Velocity, position, global orientation, and local orientation use MSE; root velocity uses multi-frame losses at 1, 3, 9, and 27 frames; full-body pose uses MSE in global frame; and the alignment term is cosine-similarity-based, encouraging mesh-IMU features to match the corresponding joint-IMU features. The paper does not provide numerical values for 3 in the provided text (Zhou et al., 3 Aug 2025).
Training proceeds in two phases. Phase 1 is a warm-up on the 24 joint virtual IMUs using kinematic and pose losses until convergence. Phase 2 performs end-to-end training with mesh virtual IMUs sampled densely over the body surface. In Phase 2, the KRs are frozen. The sampling strategy is weighted and stratified, with higher probability for points physically closer in hop distance to a target joint and adjusted for mesh vertex density. For each motion sequence, the framework first forwards the 24 joint virtual IMUs and stores the features in a buffer; then, for each joint node, it samples 384 mesh points per motion sequence and replaces one corresponding feature in the buffer at a time so that pose loss can be computed without storing full gradients for all 24 branches simultaneously. This buffered strategy is introduced specifically to fit training into available GPU memory (Zhou et al., 3 Aug 2025).
The implementation scale is substantial: training uses one NVIDIA L40S GPU with 48 GB VRAM, the model has 23M parameters, and total training time is about 200 hours, split into 90 hours for Phase 1 and 110 hours for Phase 2 (Zhou et al., 3 Aug 2025).
4. Variable sensor count, Matchmaker, and downstream task integration
IMUCoCo is designed for a variable number of sensors. The mechanism that converts an arbitrary sensor set into a fixed articulated representation is the Matchmaker. After training, for each joint node 4, the model evaluates virtual IMUs over all mesh vertices and builds a loss table
5
where 6 is the number of mesh vertices and 7 is the loss for transferring information from a virtual IMU at vertex 8 to joint node 9. Given a real device set 0, with device 1 located at coordinate 2, the assigned IMU for node 3 is
4
where 5 is the nearest vertex to the sensor coordinate. Each joint therefore selects the available device predicted to transfer most accurately (Zhou et al., 3 Aug 2025).
This assignment mechanism is central to the framework’s scalability. The representation space remains fixed at 24 joint nodes regardless of how many real sensors are present, and the burden of handling missing, moved, or atypically placed sensors is shifted from architecture redesign to coordinate-conditioned transfer and assignment. The framework can therefore support both sparse consumer-device configurations and denser ad hoc placements without retraining the task model for each layout (Zhou et al., 3 Aug 2025).
After IMUCoCo pretraining, the backbone is frozen and used as a feature extractor. For pose estimation, the downstream model is DynaIP plus the translation module from TransPose, referred to as DTP. For activity recognition, the downstream model is ST-GCN. In the pose-estimation setting, training of the downstream model uses the conventional six IMUs on pelvis, head, left lower arm, right lower arm, left lower leg, and right lower leg, following DynaIP settings and using AMASS, DIP-IMU, and XSens-based data. For activity recognition, ST-GCN is trained on a custom dataset with three IMUs at wrist, pocket, and ear. The paper explicitly states that ablations verified the gains come from IMUCoCo rather than merely from the downstream architecture (Zhou et al., 3 Aug 2025).
This downstream strategy also clarifies the framework’s intended role. IMUCoCo is not itself a pose estimator or activity recognizer in isolation; it is a placement-adaptive representation layer that maps arbitrary on-body IMU measurements into a fixed joint-structured latent space. The representation is then reused by task-specific decoders such as DTP or ST-GCN (Zhou et al., 3 Aug 2025).
5. Empirical performance, placement flexibility, and observed operating regime
The empirical evaluation includes both a custom dense-placement dataset and standard benchmark testing. The custom dataset was collected because no dense-placement dataset existed. It contains 12 participants, 8 Apple Watches (Series 7 or newer), IMU data at 50 Hz, OptiTrack motion capture for ground-truth body pose, and about 3 hours total body-motion data. The placements include three standard consumer-device-inspired locations—ear, wrist, and thigh pocket—plus a dense cluster of five more devices placed on one of three body sections: Arm, Leg, or Torso. Activities are walking, running, vacuuming, watching television, drinking water, table cleaning, golf swing, shot put, and squats, each for 30 seconds and preceded by a T-pose calibration (Zhou et al., 3 Aug 2025).
On the custom dataset, for pose estimation using the standard three consumer-style placements of wrist, pocket, and ear, IMUCoCo achieved Global Angular Error (GAE) 6, compared with MobilePoser at 7, with 8. The method remained stable as sensors were moved along the arm, leg, and torso. The paper reports only slight variation across arm positions and identifies somewhat worse performance when moving an ear-like sensor to lower chest, attributing errors to clothing flexibility and sensor motion artifacts. For lower-body translation, IMUCoCo also remained robust as the leg sensor moved from thigh pocket to other leg locations, outperforming MobilePoser across time in cumulative translation error plots (Zhou et al., 3 Aug 2025).
The same dataset is used to study placement recommendation. Choosing the best placement per activity improved pose accuracy from 9 GAE for the standard placement to 0 GAE for the optimal placement, again with 1. The paper gives concrete examples: for golf, moving the wrist IMU to below the elbow or forearm improves tracking; for computer work, moving a pocket IMU to the ankle reduces error from 2 at thigh pocket to 3 at ankle. The interpretation given is that the ankle or lower leg provides more stable rigid-body measurements than a phone in flexible clothing around the upper thigh while sitting (Zhou et al., 3 Aug 2025).
For activity recognition on the custom dataset, IMUCoCo achieved macro F1 4 for 10-activity recognition under the standard placement. When the arm IMU was moved, placing it at the hand or lower arm had minimal impact, whereas moving it to the upper arm reduced performance. The paper attributes this to the fact that fine hand or lower-arm motion is less directly observable from the upper arm and must be inferred (Zhou et al., 3 Aug 2025).
On the standard six-IMU TotalCapture benchmark, IMUCoCo reports 5, compared with TransPose at 6, PIP at 7, PNP at 8, and DiffusionPoser at 9. The framework is therefore competitive with state-of-the-art methods designed for fixed six-IMU tracking, although it does not surpass PNP. The paper notes that six-IMU systems benefit from pelvis-relative normalization, which IMUCoCo cannot assume because it must also support cases without a pelvis IMU (Zhou et al., 3 Aug 2025).
The flexible-subset evaluation on TotalCapture is more diagnostic for the framework’s intended use. IMUCoCo outperformed DiffusionPoser on all listed subsets, including All 6 IMUs (0 vs 1), P+H+RLA+LLA+RLL (2 vs 3), P+H+RLL+LLL (4 vs 5), P+RLL+LLL (6 vs 7), RLL+LLL (8 vs 9), and H only (0 vs 1). This matters because DiffusionPoser is described as the most flexible prior IMU pose method cited in the paper, yet it remains limited to selecting from 13 predefined locations, whereas IMUCoCo supports placements “anywhere on body” (Zhou et al., 3 Aug 2025).
The ablations isolate two design factors: the pretrained placement-adaptive transfer itself and the sensor-coordinate input. On TotalCapture with all 6 IMUs, IMUCoCo scores 2, while a version without IMUCoCo scores 3, and a version without sensor coordinates (“w/o SC”) scores 4. On the custom dataset with wrist, pocket, and ear, the values are 5, 6, and 7, respectively. These ablations support two conclusions stated in the paper: the pretrained IMUCoCo representation helps even on standard layouts, and the coordinate input is essential to the transfer mechanism (Zhou et al., 3 Aug 2025).
6. Relation to adjacent research, misconceptions, and limitations
IMUCoCo belongs to a broader family of work in which coordinate choice governs what information remains accessible to estimation or learning, but it should be distinguished carefully from continuous-time inertial estimation. In AirIO, for example, preserving body-frame IMU coordinates and retaining gravity improve feature observability for UAV inertial odometry, while explicit attitude encoding further improves performance; the paper’s central claim is that the coordinate system in which IMU signals are represented fundamentally changes what kinematic information remains observable to a learned model (Qiu et al., 26 Jan 2025). IMUCoCo shares the premise that coordinate representation is not a cosmetic preprocessing choice, but it applies that premise to spatial coordinates over the human body rather than to world-frame versus body-frame inertial dynamics (Zhou et al., 3 Aug 2025).
A second nearby line of work uses continuous-time inertial physics to form compact or analytically integrated motion coordinates. “Deep Inertial Odometry with Accurate IMU Preintegration” uses preintegrated motion descriptors derived from continuous IMU dynamics, but the result is a discrete segment encoding rather than a true continuous-coordinate model (Khorrambakht et al., 2021). That distinction is important here as well. IMUCoCo does not learn a continuous trajectory function over time; it learns a coordinate-conditioned mapping from on-body sensor location to a joint-structured latent space (Zhou et al., 3 Aug 2025).
A more common source of confusion arises from the phrase “continuous coordinates” itself. In robotics and multi-sensor calibration, continuous-coordinate methods usually mean continuous-time trajectories over time, often represented with B-splines or Gaussian processes. Examples in the provided literature include LI-Calib’s continuous-time batch estimation for LiDAR–IMU calibration, Traj-LIO’s sparse Gaussian-process trajectory for multi-LiDAR multi-IMU estimation, CT-UIO’s non-uniform B-spline for UWB–inertial–odometer localization, LIO-MARS’s non-uniform continuous-time trajectory for LiDAR–inertial odometry, and radar–inertial online spatio-temporal calibration via continuous-time IMU modeling (Lv et al., 2020, Zheng et al., 2024, Sun et al., 10 Feb 2025, Quenzel et al., 17 Nov 2025, Štironja et al., 20 Mar 2026). IMUCoCo is orthogonal to that tradition: its continuity is over body-surface placement coordinates, not over time (Zhou et al., 3 Aug 2025).
The paper also discusses clear limitations. First, the synthetic training data assume a rigid body, whereas real sensors are often attached to clothing; torso placements such as lower chest can therefore exhibit motion artifacts not modeled by synthesis. Second, full-body estimation from sparse sensors at arbitrary locations remains difficult, and poor placements can produce higher-error outputs or hallucinations, meaning inferred motion based on learned correlations rather than direct observation. Third, the system assumes that sensor location is known; practical specification mechanisms are suggested, but automated localization is left for future work. Finally, the paper notes that optimal placement must be considered jointly with comfort, form factor, and attachment stability, not just predictive accuracy (Zhou et al., 3 Aug 2025).
In summary, IMUCoCo is best understood as a placement-adaptive IMU representation framework for human motion sensing. Its main novelty is the continuous-coordinate view of on-body placement: an IMU is modeled not as occupying a fixed semantic slot, but as producing a motion signal at a coordinate on the body surface. The signal is encoded temporally, the coordinate is encoded with sinusoidal features and region embeddings, and FiLM-conditioned temporal modulation transfers the result into a fixed 24-joint latent space. This representation supports arbitrary and atypical placements, variable sensor counts, placement changes over time, and downstream reuse for both pose estimation and activity recognition, while remaining conceptually distinct from continuous-time inertial state estimation in robotics (Zhou et al., 3 Aug 2025).