^{1}

^{*}

^{1}

^{2}

^{1}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (

This contribution is concerned with joint angle calculation based on inertial measurement data in the context of human motion analysis. Unlike most robotic devices, the human body lacks even surfaces and right angles. Therefore, we focus on methods that avoid assuming certain orientations in which the sensors are mounted with respect to the body segments. After a review of available methods that may cope with this challenge, we present a set of new methods for: (1) joint axis and position identification; and (2) flexion/extension joint angle measurement. In particular, we propose methods that use only gyroscopes and accelerometers and, therefore, do not rely on a homogeneous magnetic field. We provide results from gait trials of a transfemoral amputee in which we compare the inertial measurement unit (IMU)-based methods to an optical 3D motion capture system. Unlike most authors, we place the optical markers on anatomical landmarks instead of attaching them to the IMUs. Root mean square errors of the knee flexion/extension angles are found to be less than 1° on the prosthesis and about 3° on the human leg. For the plantar/dorsiflexion of the ankle, both deviations are about 1°.

Inertial sensors, also known as inertial measurement units (IMUs), measure acceleration, angular rate and the magnetic field vector in their own three-dimensional local coordinate system. With proper calibration, the axes of this local coordinate system represent an orthonormal base that is typically well aligned with the outer casing of the sensor. In addition to the mentioned inertial measurement signals, some commercially available devices incorporate algorithms that provide estimates of the sensor's orientation with respect to a global fixed coordinate system (see, e.g., [

Since this contribution is concerned with IMU-based human gait analysis, we briefly highlight one of the major challenges of this task. Although many of the following statements are true in more general cases, we will focus our arguments on hinge joints (or pin joints, or knuckle joints),

Similarly, inertial measurement units can be used to calculate hinge joint angles on the human body, for example on the knee joint (we will discuss the fact that the human knee is not a perfect hinge joint in Sections 2 and 3.3). However, there is a very important difference between the human leg and most robotic setups: It is very difficult to attach IMUs to the leg in such a way that one of the local coordinate axes coincides exactly with the knee joint axis. There have been some attempts (see, e.g., [

A fundamental problem in IMU-based human motion analysis is that the IMUs' local coordinate axes are not aligned with any physiologically meaningful axis; see

As illustrated in

Besides the need of knowing the joint axis, some joint angle algorithms require additional knowledge of the joint position in local sensor coordinates; see, e.g., [

Many algorithms and techniques have been suggested for IMU-based knee angle estimation. Despite the variety of approaches, the vast majority of authors defines the flexion/extension angle of the knee joint as the angle between the upper and lower leg along the main axis of relative motion,

As mentioned before, the simplest approaches in the literature assume that the IMUs are attached such that one of the local coordinate axes is aligned with the joint axis. Integrating the difference of the upper and lower sensor's angular rates around that axis will yield a drifting flexion/extension angle. In [

A fundamentally different approach is found in [

It is important to note that almost all the mentioned RMS errors were obtained with the reference system markers being rigidly attached (usually in clusters on rectangular or L-shaped cardboard or plastic tiles) to the inertial sensors in order to eliminate the effect of soft tissue and skin motion artifacts on the measured joint angle difference [

Which of the reviewed methods is most suitable for a specific application depends also on the available sensor information. In many of the mentioned publications, the orientations of the thigh and shank are used to calculate the flexion/extension angle [

As explained in Section 1, handling arbitrary sensor-to-segment mounting is a major challenge in gait analysis with inertial sensors. Manual measurements, as well as calibration poses and movements, are commonly suggested solutions. Furthermore, we pointed out that the use of magnetometers is typically limited by the assumption of a homogeneous magnetic field. In this section, we describe a set of methods for IMU-based joint angle estimation that allow us to face these two challenges in a new way. We will combine elements of the methods reviewed above, but unlike most previous attempts, we will:

avoid sensor-to-segment mounting assumptions;

require no manual measurements of any distances,

not rely on the accuracy with which the subject performs predefined postures or movements;

and avoid the use of magnetometers.

Instead of employing any of these commonly used assumptions and restrictions, we make use of the fact that the knee joint behaves approximately like a mechanical hinge joint. The kinematic constraints that result from this fact are exploited to obtain the position vector and the direction vector of the knee flexion/extension axis in the local coordinates of both sensors. As outlined above, this information is crucial to precise joint angle calculation. We will use it to fill the gap between the sensor coordinate systems and the joint-related coordinate systems in which the angles are denned. Subsequently, this will allow us to calculate flexion/extension joint angles on joints with a major axis of motion, for example the knee and the ankle during walking. All of the methods that we will introduce use only angular rates and accelerations, while the use of magnetometer readings is completely avoided.

Before we describe the respective algorithms, let us define the available measurement signals. Assume that two inertial sensors, one attached to the upper leg and the other attached to the lower leg, measure the accelerations, _{1}(_{2}(^{3}, and angular rates, _{1}(_{2}(^{3}, at some sample period, Δ_{1}(_{2}(^{3} of the angular rates via the third order approximation:

Both the location of the sensors on the segments and their orientation with respect to the segments are assumed to be completely unknown. In particular, we do not assume that any of the local sensor axes coincides with the knee joint axis or the longitudinal axis of the segment or bone. Therefore, neither the direction nor position of the knee flexion/extension axis are known. However, these coordinates can be identified from the measurement data of arbitrary motions by exploiting kinematic constraints, as explained in [_{i}_{+1} — _{i}

The datasets, _{1}, _{2} ϵ ℝ^{3}, of the knee flexion/extension axis in the local coordinates of both sensors. It is important to note that _{1} and _{2} are constants and depend only on the orientation in which the sensor is mounted with respect to the joint. As explained in [_{1}(_{2}(_{2} denotes the Euclidean norm. This constraint holds regardless of where and in which orientation the sensors are mounted on the segments. In particular, every dataset, _{1} and _{2} by minimizing the left-hand side of _{1} and _{2} in spherical coordinates:

_{1} and _{2}, this cost function has four minima, which correspond to the four possible combinations of signs, (_{1}, _{2}), (-_{1}, _{2}), (_{1}, -_{2}) and (-_{1,}, _{2}). By minimizing ψ(_{1}, _{2}, _{1}, _{2}) over its arguments, we identify these true joint axis coordinates. This optimization might be implemented using a Gauss-Newton algorithm, as further described in [

In Section 3.2, we will use _{1} and _{2} to approximate the gyroscope-based joint angle velocity by _{1}(_{1}- _{2}(_{2}. Therefore, it is important to ensure that the signs of _{1} and _{2} match, _{1} and the _{2} should have opposite signs. In case the mounting of the sensors cannot be observed, the correct pairing of the signs can also be determined from the inertial data itself. As a first step, we choose a period from the identification data during which the angular velocities around the joint axis were negligible, _{1}(_{1} ≈ 0, _{2}_{2} ≈ 0. Then, as demonstrated in

For a number of methods in the literature and for one of the methods that will be introduced in Section 3.2, it is useful to determine the position of the sensors with respect to the joint, _{1}, _{2} ϵ ℝ^{3}, from the joint center to the origin of the first and the second sensor frame are constants that do not change during motion and only depend on the mounting position and orientation.

A method is introduced in [_{gi}_{(}_{t}_{)}(_{i}_{gi}_{(}_{t}_{)}(_{i}_{i}_{i}

In [_{1}, _{2}, that describes a point on the joint axis fulfills that constraint for any given motion that the joint might perform. Therefore, we use the same arbitrary motion data,

We minimize ψ̃ (_{1},_{2}) over its arguments via a Gauss-Newton algorithm, the implementation of which is described in [_{1}, _{2}, refers to an arbitrary point along the joint axis, we shift it as close as possible to the sensors by applying:

We assume that the local joint axis coordinates, _{1}, _{2}, and the local joint position coordinates, —_{1},—_{2}, have been successfully identified using the methods described above. As explained in Section 1.3, this is crucial for IMU-based joint angle measurement. The identified values of _{1}, _{2} and _{1}, _{2} are now used to calculate the flexion/extension angle of an anatomical joint with one major degree of freedom. While we consider a knee joint to explain the methods, we extend them to the more general case of saddle and spheroidal joints in Section 3.3.

As mentioned previously, some inertial sensors include on-board orientation estimation, which is usually based on a sensor fusion of the acceleration, angular rate and magnetic field vector measurements. These estimates describe the orientation of the sensors with respect to a fixed reference coordinate system, either in quaternions, rotation matrices or Euler angles. As mentioned in Section 2, it is an established method to use sensor orientation estimates for the calculation of joint angles; see, e.g., [_{1}(_{2}(_{1}(_{1} = _{2}(_{2}∀_{acc+gyr+mag}(_{3}_{d}^{3} and ^{3} can be any vector that makes none of the vector products zero (e.g., ^{T}_{1} or _{2} happens to be exactly [±1,0, 0]^{T}

In the following, we will compute the flexion/extension angle only from accelerations and angular rates. A gyroscope-based flexion/extension angle can be calculated by integrating the difference of the angular rates around the joint axis,

Furthermore, the knowledge of the joint axis coordinates allows us to employ many of the restrictive methods from the literature reviewed above, which require the sensor axes to coincide with joint axes or segment axes. In particular, we can extend the approach used in [_{g}_{1/2}(_{1/2}) defined in _{1}(_{2}(_{1}(_{2}(_{1/2}, _{1/2} ϵ ℝ^{3} for each local frame:
_{2}_{d}^{2}. The resulting angle, _{acc}_{1/2}(_{1/2}. However, in almost every practical situation, the gravitational acceleration dominates the acceleration signals _{1}(_{2}(_{1}(_{2}(_{g1/2}(_{1/2}) in _{1}, _{2} is low.

_{gyr}(_{acc}_{acc+gyr}(

_{acc+gyr}(

The method that was introduced in the previous subsection assumes that two segments are connected by a joint with one rotational degree of freedom. As mentioned before, the human knee is not exactly such a hinge joint, since it admits some rotation in the frontal and the transversal plane of up to about 8° [

The calculation of joint angles, as described above, is limited to rotations around the identified joint axis in both methods. While both methods might also be adapted and employed for abduction/adduction and inversion/eversion angle measurements, we focus only on flexion/extension. As mentioned above, this is in accordance with numerous authors [

The two methods that were introduced in Section 3 are now evaluated in repeated gait experiments with a transfemoral amputee (age 40, height 182 cm, weight 83 kg, K-Level 4,

The resulting ankle and knee angle traces of two different trials are provided in

It is important to note that the errors on the human leg are about four times larger than on the prosthesis. One might suppose that this is because of the human knee being less close to a perfect hinge joint. However, we just explained in Section 3.3 that the IMU-based algorithms ignore abduction/adduction and internal/external rotations, just as the optical analysis does. Therefore, a more reasonable explanation is found in the following remarkable difference between the two sides: on the prosthesis, the IMUs and the optical markers are rigidly connected by the artificial thigh and shank. However, on the human leg, the inertial sensors and the markers move relative to each other as a result of muscle and skin motions. This argument is supported by the fact that deviations between optical and IMU-based angles are largest during push-off and heel strike,

In the previous sections, we discussed methods for IMU-based joint angle measurement on the human body. Special attention was dedicated to the challenge of arbitrary mounting orientation and position. We proposed a set of methods that allow us to determine the local joint axis and position coordinates from arbitrary motions by exploitation of the kinematic constraints of the joint. We believe that these methods are more practical and more robust than previously suggested methods that require the subject to perform a precise calibration movement or pose than methods that require one to attach the sensors in specific positions or orientations

In addition, we described two methods for the calculation of precise flexion/extension angles on hinge, saddle and spheroidal joints. The first method is known from the literature and requires precise estimates of the sensors' orientations with respect to a common fixed reference frame. The second and novel method employs only accelerometer and gyroscope readings. Since the use of magnetometers is avoided, it can be used indoors and in the proximity of magnetic disturbances. Both methods were evaluated against an optical gait analysis system on the gait of a transfemoral amputee. We obtained highly precise results with RMSE of about 1° on the ankle joints, as well as on the prosthetic knee, and discussed the effect of skin and muscle motions on the contralateral knee, which led to slightly larger deviations of about 3°. Future research will be dedicated to the question of how these effects can be compensated for or minimized.

Furthermore, the proposed algorithms are such that it is straight forward to implement them for online use. Therefore, and since they supersede manual measurements and precise calibration movements, these new methods open the door to a plug-and-play gait analysis, in which one simply attaches the IMUs, moves the legs for a few seconds and then receives joint angle measurements in real time. This will be the subject of our future research, including extensions for 2D and 3D angle measurements on ankle and hip joints.

The authors are indebted to Timo von Marcard, Bettina Westebbe and Julius Thiele, as well as to Thomas Schmalz and his team for their excellence and cooperation before, during and after the gait experiments. Furthermore, we gratefully acknowledge Steffen Schaperkotter's skillful support in programming and data evaluation. We sincerely thank the subject of the gait trials for letting us record inertial data during his examination in the optical gait lab. Finally, we thank Celine Sin for her valuable advice on language and style. As part of the research project, mebGO, this work was supported by the German Federal Ministry of Education and Research (FKZ 01EZ1112).

The authors declare no conflict of interest.

The placement of inertial sensors on the human body, the definition of joint angle and a model of a hinge joint. (

Examples for calibration motions that are used in the literature [

Sum of squares ψ(_{1}, _{2}) of the error in the kinematic constraint (3). The two minima represent the true local coordinates, _{1} and — _{1}, of the joint axis direction vector.

Projection of the measured angular rates of both sensors into the joint plane (defined by the coordinates in

Two algorithms for IMU-based knee angle calculation are considered.

Sensor fusion of the gyroscope-based and the accelerometer-based knee angle of a leg prosthesis. The noisy, but driftless, angle, _{acc}(_{gyr}(_{acc+gyr}(

Placement of inertial measurement units and optical markers on the legs of a transfemoral amputee. The optical markers are placed at the typical physiological landmarks. The IMUs are attached using body straps without restricting their position or orientation.

Comparison of the two IMU-based knee flexion/extension angle measurements (_{acc+gyr+mag}(_{acc+gyr}(_{opt}(_{pr} < 0.6°). However, on the contralateral side, skin and muscle motion effects, which are strongest during push-off and heel-strike, lead to RMS errors _{cl} of almost 4°.

Comparison of the two IMU-based ankle plantar/dorsiflexion angle measurements (_{acc+gyr+mag}(_{acc+gyr}(_{opt}(

Deviations between the knee flexion/extension and ankle plantar/dorsiflexion angle measurements of the optical and the inertial system for six gait trials of a transfemoral amputee. Results are given for _{acc+gyr} only, since both methods yield very similar results. The deviations vary little (

1 | 2 | 3 | 4 | 5 | 6 | ||||
---|---|---|---|---|---|---|---|---|---|

prosthesis | 0.46° | 0.89° | 0.59° | 0.95° | 0.57° | 0.77° | 0.19° | ||

contralateral | 3.25° | 2.76° | 3.10° | 3.16° | 0.40° | 3.83° | 1.20° | ||

prosthesis | 0.92° | 1.03° | 0.91° | 0.65° | 0.67° | 0.69° | 0.16° | ||

contralateral | 0.95° | 1.50° | 1.25° | 1.53° | 1.85° | 2.61° | 0.57° |