Physically Meaningful Measurement of Axial Rotation

Summary

For long bones, axial rotation is defined as a rotation around the axis running through the shaft of the bone. Sufficient axial rotation range of motion is critical for performing such simple tasks as reaching into your back pocket (internal axial rotation), or combing your hair (external axial rotation). Restoration of axial rotation range of motion is a critical consideration in shoulder replacement surgery and upper extremity prosthetic implant design. Yet, there is no consensus in the biomechanics community on how to measure axial rotation in a physically meaningful manner. This project 1) measures axial rotation in a physically meaningful manner for a cohort of 20 subjects performing arm elevation and rotation, 2) describes why commonly utilized techniques incorrectly measure axial rotation, 3) provides a JavaScript webapp for visualizing and quantifying physiologic arm motion (shoulder kinematics).

Code and Demos

Kinematics Visualization App Demo JavaScript
The code in this repository creates an interactive 3D JavaScript application - based on three.js - for quantifying and visualizing shoulder kinematics. Feel free to try out the live demo of the code (please be patient, the 3D bone models may take 5-20 seconds to download).
Axial Rotation Results Repository Python
This repository contains code for reproducing the results of the publication associated with this project: Beyond Euler/Cardan analysis: true glenohumeral axial rotation during arm elevation and rotation.

Current Status

Background

This project began from my desire to understand Euler angles more in-depth. I had a decent amount of experience utilizing rotation matrices, quaternions, and the rotation vector formalisms for expressing 3D rotations. However, because Euler angles are unsuitable for computation, I had largely ignored them throughout my Ph.D. But, Euler angles are useful in understanding and explaining the orientation of an object using physically motivated terminology. However, for a given orientation, there are 12 possible Euler angle sequences (including Tait-Bryan or Cardan angles), with each sequences being expressed in terms of 3 angles. Furthermore, each sequence can be interpreted intrinsically or extrinsically, and there is the option of utilizing a non-orthogonal moving frame of reference. Even though, in principle, Euler angles should be simple to understand - in practice this is not the case.

As I studied Euler angles and read existing biomechanics literature on the topic, it became apparent to me that there was a need for visualizing Euler angle sequences. Many authors have attempted to visualize Euler angles - primarily by utilizing a globe. Although these papers were informative, I wanted the ability to interact with the presented visualizations. Since I was utilizing the JavaScript 3D library three.js for creating interactive animations of soft tissue artefact, I decided that it would be worthwhile to create an application for visualizing Euler angles. This application would provide an improvement on prior attempts at visualizing Euler angles in three key aspects 1) ease of access, 2) interactivity, 3) open source code.

  1. JavaScript is ubiquitous, it runs on all web browsers. The application could be straightforwardly accessed on a computer or smartphone from anywhere in the world.
  2. The interactive 3D nature of the application would allow a researcher or student to be able to visualize Euler angles from any perspective of their choosing.
  3. Working as a software and automation engineer prior to starting graduate school allowed me to appreciate the power of open source code. I thought that academia would be a bastion for open source code, but unfortunately, that is not the case (at least not in biomechanics). Although it is possible to contact authors for the code and data associated with a manuscript, it is not currently common practice to distribute the code and data alongside the publication. When I started my project on robotically replicating human motion, I decided to distribute code and data repositories with all manuscripts that I publish during my Ph.D.

As I delved deeper into existing literature about utilizing Euler angles to interpret the orientation of the humerus, I noticed that there was no consensus on how to measure axial rotation in a physically meaningful way. Axial rotation describes the rotation about the humerus' longitudinal axis as the humerus moves from one orientation to another. For example, axial rotation describes how much rotation there is about the humerus' long axis as one reaches for a glass of water. The knowledge that I gained from my prior project in robotics allowed me to recognize that much of the ambiguity surrounding axial rotation can be attributed to the fact that 3D rotations do not form a vector space, but belong to a mathematical abstraction called a group. Specifically, 3D rotations form a mathematical group named SO(3). This means that 3D rotations (and orientations) cannot be added, subtracted, and they do not commute. Although seemingly innocuous, together these facts can lead to some surprising and unintuitive results.

For example, Codman's paradox is a phenomenon that has perplexed shoulder clinicians and researchers for decades, but it is a direct consequence of the mathematical laws that dictate how sequential 3D rotations are combined. 3D rotations cannot be added but they can be combined (composed is the formal mathematical term). It is simple to observe Codman's paradox. Simply follow the instructions and picture below.

  1. With your arm by your side and forearm pointing forward
  2. Raise your arm in front of you 90° so your forearm now points up
  3. Now rotate 90° about the vertical axis so your elbow points to the right
  4. Finally, lower your arm along your side

Notice that in each step you never rotated around the longitudinal (or long) axis of your arm, yet you ended up with your arm externally axially oriented (pane 4) with respect to its starting orientation (pane 1).

Codman's paradox demonstrates why there is such ambiguity in quantifying axial rotation correctly. My Gait & Posture publication titled "Beyond Euler/Cardan analysis: True glenohumeral axial rotation during arm elevation and rotation" 1) explains how axial rotation can be correctly measured, 2) details why common techniques fail to measure axial rotation correctly, and 3) quantifies axial rotation in a cohort of 20 subjects during arm elevation and rotation. You may read the accepted manuscript below.

Accepted Manuscript