[UIST2025] IMUs Placed Anywhere on the Body
At ACM UIST 2025, our paper “IMUCoCo: Enabling Flexible On-Body IMU Placement for Human Pose Estimation and Activity Recognition” was…
[UIST2025] IMUs Placed Anywhere on the Body
At ACM UIST 2025, our paper “IMUCoCo: Enabling Flexible On-Body IMU Placement for Human Pose Estimation and Activity Recognition” was accepted as a full paper. In this article, we’d like to give a brief introduction to its content.
[embed]
1. Background
IMUs (Inertial Measurement Units) are embedded in many everyday devices — smartwatches, smartphones, earbuds — and are widely used to measure human motion. Researchers have explored a broad range of applications, from gait analysis and fall risk estimation to full-body pose estimation.
However, existing IMU-based systems suffer from a major limitation: sensor placement is fixed. For example, IMUPoser [1] only supports three predefined locations (wrist, pocket, ear), and DiffusionPoser [2] handles up to 13 fixed positions. Because the underlying machine learning models are trained on specific placements, they break when a user moves their phone to a jacket pocket or straps it to an armband— unless you retrain the model from scratch.
Meanwhile, IMU-equipped devices keep multiplying. Smartwatches, phones, earbuds, smart innerwear, necklace-type devices — the variety of form factors and where people wear them is growing fast. Yet until now, no IMU model could work regardless of where the sensor is placed on the body.
In this paper, we propose IMUCoCo (IMU over Continuous Coordinates), a framework that solves this problem. IMUCoCo maps IMU signals from any position on the body surface into a unified feature space based on spatial coordinates, enabling downstream tasks like pose estimation and activity recognition. The key insight, as illustrated below, is that during full-body movements, IMU signals at different points on the body are correlated.
2. Proposed Approach
Architecture of IMUCoCo
The core idea behind IMUCoCo is to leverage the kinematic structure of the human body — a skeleton connected by joints — and transform IMU signals from any body-surface location into motion representations anchored to 24 joint nodes.
The framework consists of four modules:
・Motion Feature Encoder (MFE): Takes raw 9-channel IMU data and extracts temporal features using an LSTM.
・Sensor Coordinate Encoder (SCE): Encodes the 3D coordinates of each sensor using periodic positional encoding and a categorical body-region embedding, producing a region category. This code tells the rest of the network “where on the body this IMU is located.”
・Joint Node Modulator (JNM): Modulates the motion features from the MFE using the placement code via FiLM (Feature-wise Linear Modulation) [3], transforming them into motion representations for the corresponding joints.
・Matchmaker: When multiple IMUs are available, this module dynamically assigns each joint node to the most informative IMU.
Training with Synthetic IMU Data
Collecting real IMU data from every possible location on the body is obviously impractical. Instead, we used existing motion capture datasets [4, 5] and the SMPL body model [6] to synthesize virtual IMU data at arbitrary vertices on the body-surface mesh. While prior work synthesized IMUs only at joint locations, we computed IMU orientations using mesh face normals, producing realistic signals even at deformable regions like the abdomen or near joints.
Training proceeds in two stages. In the first stage, the model learns basic motion representations from virtual IMUs at 24 joint locations. In the second stage, it trains on a large number of virtual IMUs sampled across the entire mesh, learning representations that generalize to any placement.
3. Experiments and Results
We conducted two evaluation experiments.
Evaluation 1: Motion Capture at Non-Standard Placements — We collected data from 12 participants using eight Apple Watches and an OptiTrack motion capture system. In addition to the standard three locations (wrist, pocket, ear), we densely placed sensors at five positions along the arm, leg, and torso. Participants performed nine activities including walking, running, golf swings, and squats.
- Standard placements — Global Angular Error (GAE): IMUCoCo 27.6 degrees vs. MobilePoser [7] 31.8 degrees
- Optimized placements reduced GAE to 24.8 degrees
- Performance remained largely consistent even as IMUs were shifted along the arm
One particularly interesting finding was that optimal sensor placement depends on the activity. For golf swings, placing the IMU below the elbow outperformed the wrist. During desk work, an ankle-mounted IMU estimated hip angles more accurately than one in a pocket. This suggests that when the target motion is known, the system could dynamically recommend the optimal placement.
Evaluation 2: Standard Placements on an Existing Benchmark — We also compared IMUCoCo against prior methods on the TotalCapture dataset. We refer readers to the paper for details on this evaluation.
4. Summary
In summary, our contributions are as follows:
- We proposed IMUCoCo, a framework that maps IMU signals from any position on the body surface into a unified feature space based on spatial coordinates.
- We developed a large-scale synthetic IMU generation method that leverages motion capture data and the SMPL body model to simulate sensors at arbitrary mesh vertices.
- Through experiments with 12 participants, we demonstrated that IMUCoCo maintains consistent pose estimation and activity recognition performance even at non-standard placements, outperforming existing methods.
- We showed that the framework enables activity-specific optimal sensor placement recommendations, significantly expanding the flexibility of IMU-based motion sensing.
The key message of this work is a shift in perspective: treat IMU placement not as a fixed constraint, but as a continuous degree of freedom. Users can wear their devices wherever they like, move them throughout the day, and even receive system recommendations for optimal placement. Looking ahead, we plan to explore modeling noise from clothing movement, visualizing model confidence, and developing calibration methods that automatically infer where an IMU is worn.
5. FAQ
Q1. How does the user specify the exact coordinates of their IMU? A1. You don’t need to measure precise coordinates. The simplest approach is to tap the corresponding location on an on-screen avatar or select from predefined landmarks like “neck,” “ankle,” or “elbow.” Our experiments confirmed that moderate positional errors have little impact on performance. In the future, we envision methods that automatically infer sensor placement from the IMU signal itself.
Q2. Isn’t IMUCoCo less accurate than conventional methods that fix six IMUs at specific positions? A2. It’s true that a dedicated model with six IMUs at optimal fixed positions (e.g., PNP [9] at GAE 10.4 degrees) outperforms IMUCoCo (14.0 degrees). But this is a trade-off for flexibility. PNP requires all six IMUs to be at exact predefined locations, whereas IMUCoCo works with any number of IMUs at any position. When compared against DiffusionPoser [2], which also supports flexible placement, IMUCoCo comes out ahead across every IMU configuration. In real-world scenarios where sensors can’t always be at ideal locations, this flexibility is a significant practical advantage.
Q3. What kind of real-world applications do you envision? A3. The paper highlights several concrete scenarios. A runner wearing a smartphone on an armband to track running form. A phone moving from a trouser pocket to a jacket pocket during the day with tracking continuing seamlessly. A soccer player placing an IMU in a thigh pocket to closely monitor leg movements. The system suggesting that a user wear a smartwatch on the ankle to improve squat form. These are all use cases that rigid fixed-placement systems simply cannot support.
References
[1] V. Mollyn, et al. 2023. IMUPoser: Full-Body Pose Estimation using IMUs in Phones, Watches, and Earbuds. Proc. ACM CHI. [2] T. Van Wouwe, et al. 2024. DiffusionPoser: Real-Time Human Motion Reconstruction From Arbitrary Sparse Sensors Using Autoregressive Diffusion. Proc. IEEE/CVF CVPR. [3] E. Perez, et al. 2018. FiLM: Visual Reasoning with a General Conditioning Layer. Proc. AAAI. [4] N. Mahmood, et al. 2019. AMASS: Archive of Motion Capture As Surface Shapes. Proc. IEEE/CVF ICCV. [5] Y. Huang, et al. 2018. Deep Inertial Poser: Learning to Reconstruct Human Pose from Sparse Inertial Measurements in Real Time. ACM Trans. Graph. [6] M. Loper, et al. 2015. SMPL: A Skinned Multi-Person Linear Model. ACM Trans. Graph. [7] V. Xu, et al. 2024. MobilePoser: Real-Time Full-Body Pose Estimation and 3D Human Translation from IMUs in Mobile Consumer Devices. Proc. ACM UIST. [8] X. Yi, et al. 2022. Physical Inertial Poser (PIP): Physics-aware Real-time Human Motion Tracking from Sparse Inertial Sensors. Proc. IEEE/CVF CVPR. [9] X. Yi, et al. 2024. Physical Non-inertial Poser (PNP): Modeling Non-inertial Effects in Sparse-inertial Human Motion Capture. Proc. ACM SIGGRAPH.
메타데이터
- post_id
- b3cafd71a828
- slug
- uist2025-imus-placed-anywhere-on-the-body-b3cafd71a828
- url
- https://medium.com/@hciphds/uist2025-imus-placed-anywhere-on-the-body-b3cafd71a828
- canonical_url
- https://medium.com/@hciphds/uist2025-imus-placed-anywhere-on-the-body-b3cafd71a828
- author_url
- https://medium.com/@hciphds
- status
- ok
- fetched_at
- 2026-06-21 19:25:17