A Comparative Study of the Clinical use of Motion Analysis from Kinect Skeleton Data
Sean Maudsley-Barton Jamie McPheey Anthony Bukowski Daniel Leightley Moi Hoon Yap
cs.CV

















































A Comparative Study of the Clinical use of Motion Analysis from Kinect Skeleton Data
    Sean Maudsley-Barton1,
		Jamie McPhee2,
		Anthony Bukowski1, 
		Daniel Leightley3 and 
		Moi Hoon Yap1
	1School of Computing, Mathematics and Digital Technology

		Manchester Metropolitan University, Manchester, M1 5GD, UK

		Email: sean.maudsley-barton@mmu.ac.uk§
	2School of Heathcare Science

		Manchester Metropolitan University, Manchester, M1 5GD, UK
	3King's Centre for Military Health Research 

		King's College, London, WC2R 2LS, UK
    December 30, 2023
==============================================================================================================================================================================================================================================================================================================================================================================================================================================================






The analysis of human motion as a clinical tool can bring many benefits such as the early detection of disease and the monitoring  of recovery, so in turn helping people to lead independent lives. However, it is currently under used. Developments in depth cameras, such as Kinect, have opened up the use of motion analysis in settings such as GP surgeries, care homes and private homes. To provide an insight into the use of Kinect in the healthcare domain, we present a review of the current state of the art. We then propose a method that can represent human motions from time-series data of arbitrary length, as a single vector.  Finally, we demonstrate the utility of this method by extracting a set of clinically significant features and using them to detect the age related changes in the motions of a set of 54 individuals, with a high degree of certainty (F1-score between 0.9 - 1.0).  Indicating its potential application in the detection of a range of age-related motion impairments.
















§ INTRODUCTION


The analysis of human motion from video has a long history, beginning in the 1970s with the experiments of Johansson <cit.>, which demonstrated people can recognise a wide range of human motions, even if only the joints of an actor are highlighted.  This work led directly to the large multi camera, marker based, motion capture systems, still regarded by many as the gold standard for motion capture (mocap).  The introduction of the Kinect depth camera, in 2011, heralded a new age of inexpensive markerless motion capture. Most importantly, thanks the work of Shotton et al. <cit.>, Kinect reduces the depth image to a stick skeleton, who's joints while not strictly anatomically correct have been demonstrated to have a high correlation with its marker-based kinsman <cit.>.  Originally conceived to rival the Wii, Kinect has now found applications in areas as diverse as facial analysis <cit.>, surveillance, security and health.

In the nearly 6 years since its introduction, much effort has been put into using the Kinect to analyse human motion.  Often but not always allied to some form of automatic classification and/or quantification.  Initially this work used classical machine learning techniques such as Random Forests and Support Vector Machine (SVM).  Although these techniques have provided excellent results <cit.>,  the newer deep learning techniques offer the possibility of detecting finer detail.  This paper provides a comparison of traditional machine learning approaches and the newer deep learning techniques. their relative success so far and details our own investigations using the K3Da dataset.  Our initial findings demonstrate that deep learning can outperform traditional methods.



 §.§ Scope of review

Human motion analysis is a broad topic, it encompasses areas of facial movement, hand movement and sign language recognition, rehabilitation and many others. This study limits itself to the use of skeleton data for the analysis of motions in a clinical setting.  Motion analysis is used by health professionals in the assessment of a range of diseases and conditions which affects both young and old.  Prior to the introduction of Kinect, the cost and availability of marker-based systems meant that only a small section of the population had access to this type of assessment.  The majority of assessments were, and still are done subjectively, by direct observation. Or rely on patients filling in a questionnaire.  Even after the introduction of Kinect, many studies <cit.>, <cit.> and applications still require an expert to interpret the results.  This is where machine intelligence can play a role, by providing quick and objective analysis of human movement.



§ RELATED WORK

From the introduction of Kinect in 2011, the possibilities for use in healthcare were recognised.  Some researchers have concentrated on rehabilitation while others work on the quantification of movement.  Before Kinect, attempts had been made to use RGB cameras in rehabilitation schemes.  These systems used colour segmentation to identify limbs.  This made them very sensitive to light, shadows and distance from the camera.  Kinect's technology is indifferent to these issues. Many studies have used Kinect in rehabilitation, sometimes referred to as the gamification of physiotherapy.  It both reduces the strain on therapeutic resources and encourages individuals, to repeat their beneficial exercises <cit.>, <cit.>, <cit.>.

Stone et al. <cit.> used Kinect in gait analysis.  They used it to calculate gait velocity and length in the lab.  Followed up, a year later, by a proof that Kinect cameras can be used to continuously monitor gait in the home <cit.>. Dolatabadi et al. <cit.> wrote a case study, detailing how they used features derived from Kinect to unobtrusively monitor recovery from hip replacements, in the home.   Pu et al. <cit.> used Kinect to assess balance in a selection of 100 people.  These studies calculated hand crafted features from the Kinect data and analysed them to demonstrate their significance.
 
As the popularity of Kinect has grown a cottage industry in validating Kinect against the gold standard for mocap has sprung up.  One of the most extensive comparisons was carried out by  a large team, led by Otte <cit.>.  They validated both V1 and V2 of Kinect and found there was high agreement between both versions, however there was some spread between different joints, the head joint being the most accurately tracked and feet joints being the least. Yang et al. <cit.> demonstrated a small, linear discrepancy between the Centre of Mass (CoM), calculated using Kinect and the ground truth.  As this discrepancy is linear, it can easily be accommodated or just ignored for calculations which look at the change of a quantity over time, for example postural sway.

The studies,  highlighted above, rely on expert analysis by humans.  There has been no attempt to automate the process or leverage machine intelligence.  The next set of papers look at, do just that.



 §.§ Machine Intelligence

The most basic application of machine intelligence is to apply a heuristic approach, as  Bigy et al. <cit.> did in their real-time system which can detect Freeze of Gait (FoG) a problematic symptom of Parkinson's disease as well as falls and tremors <cit.>.  Their simple rules-based approach makes this easily applied in real time.

Alexiadis et al. <cit.>, took a more sophisticated approach.  in their work related to an automatic method for evaluating a dancer's performance.  They developed three metrics and techniques to temporally align the movements of amateur dancers with ground truth provided by professionals. Inspired by this work, Su  et al. <cit.> developed a system which uses Dynamic Time Warping (DTW), a method previously used in relation to hand writing and audio recognition, to compare the movements of patients in their everyday life to a standard set of movements.  The aligned sequences are then classified using an Adaptive Neuro-Fuzzy Inference System (ANFIS) which uses a combination of artificial neural network and fuzzy logic.

A drawback with DTW is that it does not perform well for periodic movements like waving.  Wang et al. <cit.> proposed the pairwise encoding of the relative joints, producing a much more discriminating feature set.  This process relies on the normalisation of skeleton graphs so that all joint offsets are relative to those in the first frame.  This type of normalisation has become the de-facto pre-processing step when calculating features from Kinect skeletons.

Gabel et al. <cit.> extracted a feature set which expanded on gait analysis to include arm kinematics and additional body features namely, Centre of Mass (COM), Direction of Progress (DoP) and Acceleration.  These measures have become common features of many skeleton based studies.  A combination of Multiple Additive Regression Trees (MART) and a state model were used to predict the gait cycle.  However, machine learning was not used to produce a predictive model for gait quality. 

Greene et al. <cit.> had demonstrated the use of logistic regression to quantify falls risk, with data derived from kinematic sensors but the groups using Kinect had yet to venture in to prediction.

Cary et al. <cit.> decomposed each skeleton generated by Kinect into a 17-value, feature vector of spherical coordinates.  This was calculated, in relation to torso bias, a 3-value vector produced by applying Principal Component Analysis (PCA) to the torso joints. They used these features to train an Artificial Neural Network (ANN) to recognise a range of movements.

Kargar et al. <cit.>, extracted both gait and angle-based anatomical features from skeletons in order to quantify a person's physical mobility.  To achieve this they used a SVM.

In 2016, Leightley et al. <cit.> detailed the first end-to-end pipeline for the automated analysis and quantification of human movement, using Kinect.  The system uses a variety of motion analysis techniques to first extract clinically significant features and then quantify them using SVM.



 §.§ Deep Learning

In the last few years, there have been a flurry of papers that use deep learning to either extract features or analyse human movement.  LeCun et al. <cit.> demonstrated the ability of Convolutional Neural Networks (CNN) to outperform SVM models for static images. 

The first 3D CNN was created by Ji et al. <cit.> to address the issue of automatic feature extraction and recognition from RGB airport footage.  Ijjina et al. <cit.> demonstrated the use of 3D CNNs with motion capture, Leightley et al. <cit.> applied a similar network structure to clinically significant motions, captured by Kinect.  They demonstrated significant improvement over the previous best method (SVM) in differentiating between good and unstable motions. 

In this paper we demonstrate a hybrid approach to deep learning.  We use manually extracted clinically significant features and then use a deep, fully connected neural network to classify the motion.  When comparing this approach to random forests and SVM.  The deep neural network out performs the other classifiers.



 §.§ Datasets
 
Datasets are a constant issue when training deep neural networks.   The largest dataset currently available for RGB data is the Sports-1M dataset <cit.>, which contains one million sports videos culled from YouTube and separated into 487 classes <cit.>.  RGB-D (depth) datasets are much smaller.  The largest currently available being NTU RGB+D <cit.> with 56,880 recordings of 50 individuals, carrying out 60 classes of movement.  Zhang et al. <cit.>, identified a total of 44 RGB-D datasets.  7 of these concentrate on tracking multiple individuals and 10 use an array of multiple cameras.  Of the remaining 27, only 2 are captured in laboratory conditions.  However, the movements they capture are not clinically relevant.

To address the issue of small datasets, the creation of synthetic data has become popular, indeed the random forest used to generate Kinect skeletons uses synthetic data in its training set.  Validation issues have made researchers in clinical studies, shy away from this approach to bulk out small datasets.  Zhang et al. <cit.> proposed a method for synthesising data, within the network that improved the recognition rate of motions.  It is reported that this form of enhancement, overcomes the limitations of the human defined pre-processing approaches. In time  this type of approach may offer answers to those objections found in the clinical sphere.  To this end we demonstrate an automatic method for the production of a family of vectors that can fully describe a motion of any length from a time-series of Kinect skeletons.

Currently, the K3Da dataset, highlighted in <cit.> is the only dataset that contains RGB-D data of clinically important actions.  It contains 576 recordings of 54 individuals completing the 13 movements from the Short Physical Performance Battery (SPPB) <cit.>.  This is the dataset used in our investigations.



§ METHODS

Someone with good postural control, when standing, will be able to keep their Centre Of Mass (CoM) over their Base of Support (BoS).  Someone with poor postural control, their CoM will more often be outside their BoS and they will initiate more frequent and larger postural corrections, evident as higher postural sway, or poor balance.  The corrective actions are initiated through motor control pathways achieved via joint moments applied around the ankle, knee and the hip <cit.>.   The extent to which these different joints are active depends on the extent of the postural challenge.  When the CoM during quiet standing irrecoverably deviates from the base of support, the person will take a step to rescue from falling.  During two-legged quiet standing, the base of support is stable in the medio-lateral (ML) directions, so the ankle and hip strategies <cit.> mainly work to minimise  instability in the anterior-posterior (AP) axis.  In less stable foot positions, such as one-foot stand, instability around the ankle mainly occurs in the ML-axis. To measure deviations in the AP axis, we calculate the body lean angle, that is the Euler angle between the ground plane and the middle of the spine.  Norris et al. <cit.> point to the loss of postural control also resulting in movements in the ML axis.  To account for this, we record the position of the spine joints in the ML axis, ignoring movements in the AP axis to reduce noise.  Together these features give us a measure of postural sway.  

In addition to measuring sway,  we directly estimate the CoM position, Leightley et al. <cit.> found this to be a useful measure of steadiness.  We complete our features by calculating Euclidean distance between the base of the spine and the head and the Euler angle between the base of the spine and the neck. Ejupi et al. <cit.> discusses the importance of visual and somatosensory systems, as well as the vestibular system in maintaining balance.  To factor these items into our study, we chose tasks that would challenge all three systems.  The movements used and the reason for their inclusion are detailed in table <ref>.


In this work we used the skeleton data from the K3Da dataset <cit.>, which is the largest data set of it's kind.  It consists of, 26 young and middle aged people (18-48 years, 17 male and 9 female) and 28 older age people (61-81 years, 14 male and 14 female) carrying out the SPPB.  None of the participants have any non-age-related movement issues.

Using the methods outlined in fig. <ref>, we automated the process of feature encoding and classification of an individual, based upon their motion alone.  The data processing step was carried out using Matlab.  Matlab was also used for classification by traditional machine learning.  The Theano framework was used to build the neural network.  The following section covers each step in detail.





 §.§ Pose Normalisation

From the skeleton data, a series of matrices were constructed, one for each frame of the movement (30 fps).  The skeletons were normalised by aligning all frames to the Spine Base joint of the first frame, using equation <ref>.


    p_n,i(x,y,z)^*= P_n,i(x,y,z) - P_spinebase,1(x,y,z)




 §.§ Feature Encoding

After normalisation, a set of features, shown in 
Table <ref>, was calculated.   Although the Kinect camera provides coordinates for 25 joints, we found that features derived from just the torso joints, as defined in <cit.>, plus a calculation of CoM were enough to discriminate the differences in motions of young and older people.











Euclidean Distance
was calculated between the spine base and head, using equation <ref>.


    distance= √((x_1-x_2 )^2 + (y_1-y_2 )^2 + (z_1-z_2 )^2)


Euler Angle
was calculated between the Spine base and Neck joints, using equation <ref>.


    Θ = arctan( S.Q/SQ)


Body Lean Angle
is defined as the Euler Angle between the ground plane and the Spine mid joint.  This represents changes in the AP axis.

Centre of Mass (CoM) of any body, is the mean point that the mass of that body acts.  For a human body standing erect, the centre of mass is located around the navel. CoM was calculated using equation <ref>, where J1 = Spine mid, J2 = Hip left, J3 = Hip right, where


    CoM_x=J1_x+ J2_x  +J3_x/3
    
    CoM_y=J1_y+ J2_y  +J3_y/3
    
    CoM_y=J1_z+ J2_z  +J3_z/3


ML Axis This represents the frame-by-frame position of the torso joints in the ML axis.



 §.§ Motion Representation


K-mean Clustering is used to convert a time-series of differing lengths (depending on individual recordings), into a set of representative poses of a known length.   The k was determined empirically for each type of motion, 5 for chair rise and 2 for all other movements.

















The centroid poses of each cluster was identified and extracted.  Next, the centroids were concatenated together in time-order to produce a 1D vector that provides an example of the whole motion.  A label is then added, 1 for young and 0 for older.

Simply choosing the centroid would not provide enough examples to train the models.  More examples were collected, using the following method:-  

	
  * Each member of a cluster were ranked using Euclidean distance  from the centroid.  
	
  * The closest 50% were selected.  To ensure that each vector represents the whole motion, only n number of motion were produced, from each time-series, where n is the number of members in the smallest cluster. 

This method produces a family of feature-sets which are representative of a person's motions.  By providing a family of similar examples, we increase the number of examples retrieved from a time-series, many times, without the  need to resort to synthesising data.  This approach makes the models more robust as they are trained on a diverse but representative  feature-set.



 §.§ Evaluation

We compared 3 methods for classification, SVM, Random Forests and Deep Neural Networks.  SVM being widely regarded as the best choice in traditional machine learning for a binary classification, but requires extensive tuning of hyper parameters to achieve top results.  Random Forests, on the other hand are much simpler to train and provide excellent results for both binary and multi-class scenarios.  We chose these methods in our study to allow us to compare the best of traditional machine learning with deep learning.  The neural network consisted of several fully connected layers which learned to separate young from older based on hand crafted features neural networks were not used to extract features.  Feature extraction by neural networks, is an area which will be explored in future work.



 §.§ Validation

10-fold cross validation was used to assess the effectiveness of each approach. In K-fold validation every data point gets put into the test set exactly once, and into training set k-1 times. This allows the results to be averaged over the whole dataset.



§ RESULTS

The results, summarised in Table <ref>, are similar to those found in the literature for traditional machine learning.  In addition we were able to demonstrate that deep learning is able to outperform traditional methods.

Using our method, that automatically identifies the essence of a motion and then collects many examples of that motion from a time-series of arbitrary length, we were generate enough examples to allow both traditional and deep learning methods to discriminate between young and older people, with a high degree of certainty.  This is demonstrated by high F1-score and Matthews Correlation Coefficient (MCC) scores for all movements, with the chair rise producing the best overall classification.

These results are encouraging. However, we do accept that although, the K3Da is one of the larger depth datasets and the only one currently that contains clinically significant movements, it is still a small dataset when compared with those that contain RGB information.  Consequently, our results may suffer from overfitting.  To address this issue, our future work will involve building a large dataset of clinically significant depth data.







§ DISCUSSION

There is  a pressing need to develop a portable system that can help in the assessment of physical impairment  and frailty. Currently the assessment of individuals requires a high degree of training and experience, which can lead to inconsistency from one location to the next.

We have taken the first steps in developing a tool which could be used by clinicians in detecting the changes in motion that advance with age.  We demonstrate its utility by separating a random sample of young and older individuals from the K3Da dataset.



§ CONCLUSION AND FUTURE WORK
     
Our current feature set is working well for a simple two class solution.  However, our future work will concentrate on the prediction of mobility issues.  The current method may lack the power needed to discern the small changes needed to predict future issues.  Hence, we intend to consider the use of deep learning auto-encoders and convolutions, to automatically extract feature sets from motions encoded in depth data.  Using this line of research we may be able to produce a complete pipeline exclusively using deep learning.

We recognise that in order to build a robust end-to-end deep learning solution we need many more examples that exists in the K3Da dataset.  To this end we have taken the first steps towards building a larger dataset of clinically significant motions.  We hope that in turn, this dataset maybe a useful resource for other researchers.

Finally, to fulfil our ambition of developing a tool, useful to clinicians, we must  have a system that works in real time, taking the data feed directly from the Kinect camera.

































































































IEEEtran


[1]© 2017 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.


