Inverse Kinematics for Upper Limb Compound Movement Estimation in Exoskeleton-Assisted Rehabilitation

Robot-Assisted Rehabilitation (RAR) is relevant for treating patients affected by nervous system injuries (e.g., stroke and spinal cord injury). The accurate estimation of the joint angles of the patient limbs in RAR is critical to assess the patient improvement. The economical prevalent method to estimate the patient posture in Exoskeleton-based RAR is to approximate the limb joint angles with the ones of the Exoskeleton. This approximation is rough since their kinematic structures differ. Motion capture systems (MOCAPs) can improve the estimations, at the expenses of a considerable overload of the therapy setup. Alternatively, the Extended Inverse Kinematics Posture Estimation (EIKPE) computational method models the limb and Exoskeleton as differing parallel kinematic chains. EIKPE has been tested with single DOF movements of the wrist and elbow joints. This paper presents the assessment of EIKPE with elbow-shoulder compound movements (i.e., object prehension). Ground-truth for estimation assessment is obtained from an optical MOCAP (not intended for the treatment stage). The assessment shows EIKPE rendering a good numerical approximation of the actual posture during the compound movement execution, especially for the shoulder joint angles. This work opens the horizon for clinical studies with patient groups, Exoskeleton models, and movements types.


Introduction
Robot-Assisted Rehabilitation (RAR) supplements conventional therapy in the treatment of nervous system injuries (e.g., stroke and spinal cord injury), as robots enable repetitive, task-specific, intensive, and interactive treatment [1][2][3]. In RAR, the accurate estimation of the patient limb posture (i.e., determination of joint angles) is a fundamental prerequisite for the following.
(1) The verification of the compliance of the patient movements with the prescribed exercises: patient movements must follow the medically prescribed ones, without using the healthy joints to compensate for treated joints [4,5].
(2) The long-term assessment of the patient evolution: objective evaluation methods based on the analysis of the patient kinematic data have been recently developed [6][7][8] to overcome the limitations (subjectivity, low sensitivity [9]) of traditional scales (e.g., Barthel Index [10], Functional Independence Measure [11]) to assess the functionality of a patient.
Traditional motion capture systems (MOCAPs), such as optical, electromagnetic, and inertial ones, have been used in many rehabilitation scenarios to accurately estimate the human posture [12][13][14]. However, the use of the currently existing MOCAPs in Exoskeleton-based RAR is impractical because the Exoskeleton body causes optical occlusions and magnetic disturbances in the MOCAP components. Furthermore, in RAR therapies involving functional electrical stimulation (e.g., [15]) and/or electromyography the markers or sensors of the MOCAP interfere with the setup. Even if MOCAP devices can be arranged to coexist with the Exoskeleton, the operation is complex and incompatible with the time and resources available for a typical patient appointment. Therefore, they can be used in specific assessment sessions but not for daily patient attention.
In Exoskeleton-based therapy, the prevalent approach to estimate the limb joint angles is to approximate them directly with the Exoskeleton joint angles (e.g., [8,[16][17][18]). However, the accuracy of this strategy is limited by the differences between the kinematic structure of the patient limb and Exoskeleton [6]. In the case of the upper limb (focus of this research), a direct accurate measurement of the shoulder angles is particularly difficult, since it demands an Exoskeleton with a complex kinematic model that considers the simultaneous motion of the sternoclavicular and acromioclavicular joints.
Computational methods in [19][20][21] for Exoskeleton-based therapy estimate the arm swivel angle, which parametrizes the arm pose [22]. Let be a plane defined by the central points of the Gleno-Humeral (GH), elbow, and wrist joints. Then, the rotation angle of the plane around the axis that goes from the wrist to the GH joint is defined as the swivel angle [19]. In these methods, the Inverse Kinematics (IK) of the arm (which is redundant) is solved by estimating a swivel angle that allows the subject to retract the palm to the head efficiently. Results in [19,20] are improved in [21] by considering the effect of the wrist orientation on the swivel angle estimation. These references do not report how the error in the swivel angle estimation is traced to individual errors in the wrist, elbow, and Gleno-Humeral (GH) joint angles.
The method in [21] requires (a) the position of the GH joint center, (b) the pose of the wrist, (c) the initial position of the elbow, and (d) a point in the head neighborhood that minimizes the swivel angle estimation error. In typical clinical scenarios, the mentioned inputs are unavailable. This circumstance makes the method in [21] difficult to apply. For extended discussion, see [22,23].
Acknowledging different kinematic structures in limb and Exoskeleton, [23] introduces the EIKPE (Extended Inverse Kinematics Posture Estimation) method. EIKPE considers the parallel kinematic chains limb and Exoskeleton as related through the cuff constraints that fix them together. EIKPE then solves the IK problem of the parallel chain, therefore finding the limb joint angles. The real-time EIKPE accuracy (circa 3-degree RMS) is reported for (1) wrist flexion-extension, (2) elbow flexion-extension, and (3) forearm pronation-supination. Limitations of [23] are (a) restriction to 1-DOF movements due to constraints in the ground-truth reading equipment and (b) elbow and wrist angle estimations.
Contributions of This Paper. The present paper complements [23] (see Table 1) by addressing the training of compound movements (simultaneous movement of multiple joints). In particular, it is shown how EIKPE enhances the accuracy in the estimation of the GH joint angles with respect to the Exoskeleton-based approach. Specifically, contributions of this paper are as follows.
(1) The paper illustrates the capacity of EIKPE in addressing compound movements (i.e., object prehension), extending the results of [23], which had individual joint movements. This added complexity requires the usage of (a) more evolved marker and camera sets, (b) a more complex biomechanical and kinematic model, and (c) an optimized posture estimation for full arms. (2) It computes the error in the GH and elbow joint angles of EIKPE with respect to the measurements of a marker-based optical MOCAP. (3) It computes the error in the GH and elbow joint angles of the rehabilitation Exoskeleton encoders with respect to the measurements of the MOCAP. (4) It applies various statistical measures (linear fit method (LFM), RMSE, ROM error, box plots, and significance test) to assess the differences between items (3) and (4), showing the feasibility of using EIKPE to enhance posture estimates from Exoskeletons. Table 1 shows further details on the differences and contributions of the present paper when contrasted with related publications.

Materials and Methods
This section briefly introduces EIKPE and describes how the ground-truth values are used to assess the accuracy of the angle estimations provided by EIKPE and Exoskeleton joints.

EIKPE Method.
Since the purpose of the present paper is the experimental assessment of the theoretical construct in [23], only the key aspects of EIKPE are discussed here.
To estimate the angles of the limb joints of the patient (denoted by vector V ( )) during RAR, the human limb and Exoskeleton are modeled as a parallel kinematic chain connected by the fixations of the Exoskeleton (Figure 1(a)).
The elements that are considered inputs to the problem are as follows (Figure 1(b)).
(1) Patient. The human limb kinematic model is denoted by ( , ) (e.g., the Denavit-Hartenberg parameters [24]), where and are sets of links and joints, respectively. The human kinematic model used in EIKPE includes joints of the spine, scapuloclavicular system, and arm. The upper limb is modeled with 9 DOFs: 2 DOFs of the scapuloclavicular system, 3 DOFs of the GH joint (spherical joint), 2 DOFs of the elbow, and 2 DOFs of the wrist.
(2) Exoskeleton. The Exoskeleton kinematic model is denoted by ( , ). The Exoskeleton joint angles are denoted by vector V . The values of V at any instant of the therapy (V ( )) are known. In the rehabilitation platform where EIKPE is implemented the Exoskeleton corresponds to the Armeo Spring® (Hocoma, AG) [25], which has 7 DOFs.   (4) Set of Ergonomic Criteria . consists of a set of principles that dominate the posture of the patient limb while interacting with the Exoskeleton (e.g., the preference of the human to put the limb in a rest posture V rest ). (V ( )) is the set of vector-valued functions that model the kinematic constraints imposed on the patient limb by the set of ergonomic criteria .
The goal of the implemented algorithm is to find the approximate angles of the joints of the patient limbṼ ( ), such that the sets of constraints and are met.
In order to obtain the estimationsṼ ( ), the IK of ( , ) is solved considering the sets of constraints and . The IK solution is obtained in real-time using the V-REP® simulator (Coppelia Robotics, GmbH) [26]. The joint angles of the Exoskeleton and EIKPE are sampled with frequency = 60 Hz.

Biomechanical
Model. The biomechanical model (Figure 2) of the upper limb described in [27] was used as the reference kinematic model for the assessment of the accuracy of EIKPE. This model was developed in the software Visual3D™ (C-Motion, Inc.) [28] and presents 6 DOFs: 3 DOFs of the GH joint (spherical joint), 2 DOFs of the elbow joint, and 1 DOF of the wrist joint. The biomechanical model can be scaled to match the anthropomorphic measures of each of the test subjects.
The biomechanical model includes virtual markers (gray spheres) that allow reconstructing the motion of the limb by using motion data from MOCAPs. In order to do so, the 3D positions of the real markers (which were installed on the patient and tracked by a MOCAP) are treated as the desired positions of the virtual markers. Then, the limb joint angles  are computed by solving the IK of the limb such that the position of the virtual markers matches the position of the real markers. The detailed geometry depicted in Figure 2 is only used for visualization purposes and a simplified version is used in the IK computation. The joint angles obtained by using this methodology are the ground-truth V ( ) angles.

Marker Placement Protocol.
A total of 21 markers are installed on each test subject to precisely track the movement of the upper limb. The markers are distributed on the subject arm and trunk as described in Table 2 and Figure 3.

Motion Capture
System. The Codamotion® (Charnwood Dynamics Ltd.) [29] is an optical marker-based  MOCAP. This MOCAP uses active markers that emit infrared light, which is detected by 3 sensor units (Figure 4(a)). For the accuracy assessment experiments, the MOCAP sensor units are distributed as depicted in Figure 4(b). With the described marker setup, the marker position sampling frequency is = 200 Hz.

Experimental Protocol.
The functional task that was chosen to conduct the accuracy assessment is the activity of daily living (ADL) of prehension, which has its stages shown in Figure 5. Notice that the prehension task shares movement stages with other ADLs, such as drinking and eating, which are among the most relevant tasks to rehabilitate [30].
The prehension movements are performed with the forearm pronation-supination and the wrist flexion-extension DOFs blocked in the Exoskeleton in order to avoid marker occlusions during the ADL movement (such joint blockage does not affect the angle estimation capabilities of the MOCAP or EIKPE). The joint angles of the blocked DOFs are not studied in this work.
In the setup stage of this protocol, the lengths of the arm and forearm of each test subject are manually measured and entered into the EIKPE software (as it would be done in a clinical application). The Exoskeleton arm and forearm link lengths are adjusted for every subject according to the device manufacturer instructions. The Exoskeleton link lengths are also entered into the EIKPE software. Next, the optical markers are installed on the subject and the MOCAP calibration procedure is conducted.
After the subjects wear the Exoskeleton, they perform some practice trials with the virtual reality (VR) game. In the VR game, the hand positions at the grasping and object holding up stages are calibrated for each subject. For each test subject, 4 repetitions of the prehension movement are recorded. Each prehension movement execution is limited to 20 seconds. A total of 4 healthy subjects participate in the movement recordings.

Signal
Processing and Analysis. The accuracy assessment presented in this paper involves the comparison of the upper limb joint angle estimates that come from the following sources: (a) The joint angles obtained from the MOCAP.
(b) The joint angles obtained from EIKPE.
(c) The joint angles obtained from the Exoskeleton encoders. Table 3 summarizes the measured angles of the joints of the upper limb, the methods and reference coordinate systems (CS) used to compute such joint angles.
In order to compare the various joint angle measurements along the execution of the prehension movement, the obtained joint angle signals are filtered and synchronized as follows.
(1) Resampling and Filtering. The joint angle profiles obtained from the MOCAP are resampled to match the sampling frequency of the Exoskeleton and EIKPE. Then, a low-pass Butterworth filter with a 5 Hz cutoff frequency is applied to all the obtained signals. Figures 7(a)-7(c) show the angle estimations of the elbow flexion of one of the trials of a subject after resampling and filtering.
(2) Signal Trimming. The joint angle profiles obtained from EIKPE and Exoskeleton are manually trimmed such that they approximately contain the same movement segment recorded with the MOCAP. Figure 7(d) shows the trimmed Exoskeleton and EIKPE estimations of the movement trial mentioned in the previous step.   the angle estimations to a common coordinate system to compare them. In order to compare the angle estimations, they are related to each other by using the steady limb joint angles at the initialization posture (subjects were asked to remain static in this posture for a few seconds). To do so, the joint angles measured by the MOCAP at the initial stage of the movement are set as the initial values for the angle estimations of the Exoskeleton and EIKPE. In this way, the estimations of the joint movements performed with respect to the initialization posture can be compared. Figure 7(e) shows an example of the result of this step.
(4) Temporal Axis Offset Adjustment. A fine tuning in the aliment of the signals in the temporal axis is performed by applying a time offset to the EIKPE and Exoskeleton estimations such that their correlation with the MOCAP measurements is maximized. Figure 7(f) shows an example of the result of this step.    (3) LFM Parameters. The LFM [31] is applied to compare the waveforms of the reference ref ∈ 1× (MOCAP) and estimated angles est ∈ 1× in terms of the linear regression coefficients: : offset, : amplitude, and 2 : shape similarity [32]. These coefficients are computed such that fit = + * The obtained ROM error and RMSE metrics of the Exoskeleton and EIKPE are compared with a paired difference test to check if there is a statistically significant difference between their means (confidence interval 95%). Table 4 presents the average RMSE and ROM errors (± their standard deviation) of the joint angles measured by the Exoskeleton and EIKPE for all the trials of the test subjects when compared to the joint angles provided by the MOCAP (ground-truth). Around 12200 samples were compared to compute each of the RMSE values presented in Table 4. A Wilcoxon signed-rank test [33] was performed to check if there is a statistically significant difference between the mean accuracy of the methods in estimating the various joint angles and ROMs (by using the SPSS statistical analysis software (IBM Corp.) [34]). Values in bold in Table 4 indicate statistically significant differences between the accuracy provided by the Exoskeleton and EIKPE. Table 5 presents the assessment of the estimation methods according to the LFM. In this table the average and standard deviation of the parameters are presented for each studied angle. Figure 8 shows the application of the LFM to one of the SAA datasets. When the waveforms of the estimated and reference (MOCAP) angles (Figure 8(a)) are similar, a linear fit of the angle estimations (black dashed line in Figures  8(b) and 8(c)) that resembles the ideal linear fit (blue line, = 0, = 1, and 2 = 1) is obtained. The ideal linear fit represents the case of a perfect match between the reference and estimated angles.

Results and Discussion
For the case in Figure 8, EIKPE estimations closely approximate those of the MOCAP, and the LFM parameters are close to those of the ideal linear fit (blue and black lines are close to each other in Figure 8(c)). The waveform of the Exoskeleton estimations presents similar shape ( 2 ≈ 1) but different amplitude ( ≪ 0 and ≫ 1) compared to those of the MOCAP. The effects of the values of parameters and are reflected in the offset and slope of the linear fit of the Exoskeleton estimations (Figure 8(b)), which poorly approximates the ideal linear fit.

Angle Estimations of the GH Joint.
The RMSE, ROM, and LFM metrics (Tables 4 and 5) show that EIKPE presents small errors in estimating the SFE and SAA angles. In comparison with the results obtained for SFE and SAA, EIKPE presents larger errors in the SIER angle estimation. EIKPE estimates the SFE and SAA angles using the movement constraints imposed by the Exoskeleton on the upper arm. However, the estimation of the SIER angle involves information of  the pose of the forearm (which also depends on the elbow movement) and therefore is subject to additional estimation and modeling errors. In Figure 9, it can be observed that EIKPE angle waveforms follow closely those of the MOCAP. For the GH joint angles, there is a strong correlation (0.82 ≤ 2 ≤ 0.91) between EIKPE and MOCAP estimations.
The movement trial in Figure 9 is a good example of the large angle estimation errors produced by the misalignment of the axes of the Exoskeleton joints with respect to the ones of human joints. This misalignment causes under-or overestimation of an angle and also failures in estimating the direction of motion. The SIER is the worst estimated angle by the Exoskeleton (Tables 4 and 5). The low shape similarity coefficient ( 2 = 0.54) of SIER angle estimations (Table 5) confirms the significant misalignment between the rotation axis of joint 6 of the Exoskeleton ( Figure 6) and the upper arm longitudinal axis in most of the ADL stages ( Figure 5). According to Table 5, the Exoskeleton tends to overestimate the SAA and to underestimate the SFE.

Angle
Estimations of the Elbow Joint. EIKPE presents a fair accuracy in estimating the EFE angle according to the RMSE, ROM, and LFM metrics (Tables 4 and 5). A source of error in the estimation of the EFE angle is in the modeling of the elbow joint. Traditionally, the EFE DOF has been modeled with a revolute joint with its rotation axis normal to both the upper arm and forearm links [35], which is the one used in the EIKPE model. However, the angle between the EFE axis of rotation and the upper arm and forearm longitudinal axes differs between subjects [36] and even varies with the angle of flexion of the elbow [37]. In the case of the MOCAP, the mentioned axis of rotation is estimated by using markers installed on bony landmarks of the elbow at the system calibration stage.
According to Tables 4 and 5, the EFE is the angle that is best estimated by the Exoskeleton (underestimation trend). Notice that the rotation axis of joint 4 of the Exoskeleton is always aligned with the gravitational vertical axis ( Figure 6). Then, for the studied ADL, in which the forearm lies on the horizontal plane and reaches the height of the chest, the angle of joint 4 fairly resembles the EFE angle of the subjects. However, it should be remarked that such accuracy will not be maintained when the EFE movement is performed in another plane, as it occurred in the movement trial in Figure 9 (object holding up stage).

Comparison of the Accuracy of the Exoskeleton and EIKPE.
For the GH joint angles, Tables 4 and 5 show that EIKPE provides significantly better estimations than the Exoskeleton.
(i) RMSE. EIKPE errors are 50 to 60% lower than those of the Exoskeleton (statistically significant difference). Figure 10(a) shows that EIKPE variances are significantly lower than those of the Exoskeleton.
(ii) ROM Error. EIKPE errors are 60 to 68% lower than those of the Exoskeleton (statistically significant difference). Figure 10(b) shows that EIKPE variances are significantly lower than those of the Exoskeleton. For the EFE angle, Tables 4 and 5 show that EIKPE provides slightly better estimations than the Exoskeleton.
(i) RMSE. EIKPE error is 13% lower than that of the Exoskeleton (no statistically significant difference). Figure 10(a) shows that EIKPE variance is larger than that of the Exoskeleton.  (ii) ROM Error. EIKPE error is 35% lower than that of the Exoskeleton (no statistically significant difference). Figure 10(b) shows that EIKPE variance is lower than that of the Exoskeleton.
(iii) LFM. EIKPE parameters are slightly closer to the ideal LFM values than the Exoskeleton ones. The biggest difference between EIKPE and the Exoskeleton is in parameter , meaning that EIKPE estimates better the movement amplitude.   A visual guide of how the joint angle errors are mapped to the reconstructed pose of the upper limb is shown in Figure 11. This figure presents a comparison of the reconstructed upper limb poses at the object holding up stage of the movement trial depicted in Figure 9 with the joint angle estimations provided by the MOCAP, EIKPE, and Exoskeleton.

Comparison with Related
Works. The conducted literature review did not produce any other citations than [19][20][21]23] in the area of posture estimation of the upper limb in Exoskeleton-based rehabilitation by using computational methods. We consider that the method in [21] would be the strongest competitor to EIKPE ( Table 1). Notice that the arm swivel angle representation may suffice for the targeted application in [21]. However, for the application addressed in this work (patient follow-up and evaluation), the joint angles of the limb are required. A direct comparison of EIKPE with the method in [21] is not possible because in this reference only the arm swivel angle is reported.
EIKPE accuracy is close to the ones of MOCAPs that deal with the upper limb posture estimation in ambulatory settings (no robotic devices interacting with the subjects are involved). For instance, the method in [14] presents an average RMSE of 5.5 deg. in the estimation of the angles of the shoulder and elbow joints by using inertial sensors during the ADL movement of reaching for a doorknob.

Conclusion
This paper studied the feasibility of using the EIKPE method for the estimation of the patient limb posture in the Robot-Assisted Rehabilitation (RAR) of the compound movement of object prehension. In order to do so, the comparison of the estimations of the GH and elbow joint angles provided by (a) EIKPE, (b) the joint encoders of a state-of-the-art commercial Exoskeleton (typical practice in RAR), and (c) an optical motion capture system (ground-truth) was conducted. The performed test intended to replicate the conditions of use of EIKPE by an end-user. In this way, the estimation of parameters that affect the method accuracy, such as the ones related to the kinematic model of the human subject (arm, forearm, and hand lengths) and to the Exoskeleton kinematic model (adjustable link lengths), was not optimized in any way.
The obtained results suggest that EIKPE is accurate for the application. The studied joint angles were estimated with a RMSE of 5 degrees with respect to the measurements of the optical motion capture system. EIKPE accuracy approaches the one of inertial MOCAPs, avoiding the difficulty of using MOCAPs in RAR.
EIKPE improved markedly the accuracy of the estimations of the GH joint angles provided by the Exoskeleton. Statistically significant differences were found in the accuracy of the Exoskeleton and EIKPE for all GH joint angles. EIKPE provided errors in terms of the LFM parameters, RMS and ROM that are 49-60% smaller than the ones of the Exoskeleton for all the studied angles. This suggests that EIKPE may be used to enhance the accuracy in the estimation of the patient posture in Exoskeleton-based rehabilitation platforms.
Future Research Opportunities. The methodology introduced in this paper implies the following future activities for interested researchers: (a) a full clinical study with a patient set (e.g., stroke and spinal cord injury), (b) tests on other Exoskeleton-based platforms, and (c) tests with other compound movements. All of these activities are a natural followup given the enhanced posture estimation via the fixture constraints applied here.