Gait Recognition from Motion Capture Data
Michal Balazia Petr Sojka

homo-geneous hetero-geneous mocap
Gait Recognition from Motion Capture Data]Gait Recognition from Motion Capture Data


0000-0001-7153-9984

0000-0002-5768-4007

Masaryk University 
Faculty of Informatics
Botanická 68a 
602 00 
Brno
Czech Republic


Gait recognition from motion capture data, as a pattern classification discipline, can be improved by the use of machine learning. This paper contributes to the state-of-the-art with a statistical approach for extracting robust gait features directly from raw data by a modification of Linear Discriminant Analysis with Maximum Margin Criterion. Experiments on the CMU MoCap database show that the suggested method outperforms thirteen relevant methods based on geometric features and a method to learn the features by a combination of Principal Component Analysis and Linear Discriminant Analysis. The methods are evaluated in terms of the distribution of biometric templates in respective feature spaces expressed in a number of class separability coefficients and classification metrics. Results also indicate a high portability of learned features, that means, we can learn what aspects of walk people generally differ in and extract those as general gait features. Recognizing people without needing group-specific features is convenient as particular people might not always provide annotated learning data. As a contribution to reproducible research, our evaluation framework and database have been made publicly available. This research makes motion capture technology directly applicable for human recognition.








<ccs2012>
<concept>
<concept_id>10002978.10002991.10002992.10003479</concept_id>
<concept_desc>Security and privacy Biometrics</concept_desc>
<concept_significance>500</concept_significance>
</concept>
<concept>
<concept_id>10010147.10010178</concept_id>
<concept_desc>Computing methodologies Artificial intelligence</concept_desc>
<concept_significance>300</concept_significance>
</concept>
<concept>
<concept_id>10010147.10010257</concept_id>
<concept_desc>Computing methodologies Machine learning</concept_desc>
<concept_significance>300</concept_significance>
</concept>
<concept>
<concept_id>10010405.10010462.10010463</concept_id>
<concept_desc>Applied computing Surveillance mechanisms</concept_desc>
<concept_significance>300</concept_significance>
</concept>
</ccs2012>


[500]Security and privacy Biometrics
[300]Computing methodologies Artificial intelligence
[300]Computing methodologies Machine learning
[300]Applied computing Surveillance mechanisms



Authors thank to the reviewers for their detailed commentary and suggestions. The data used in this project was created with funding from NSF EIA-0196217 and was obtained from <http://mocap.cs.cmu.edu> <cit.>. Our extracted database and evaluation framework are available online at <https://gait.fi.muni.cz> to support reproducibility of results.

[
    Petr Sojka
    
==============



plain
fancy
[L]
ACM Transactions on Multimedia Computing, Communications, and Applications

special issue on Representation, Analysis and Recognition of 3D Humans, preprint



§ INTRODUCTION



From the surveillance perspective, gait pattern biometrics is appealing because it can be performed at a distance and without body-invasive equipment or the need for the subject's cooperation. This allows data acquisition without a subject's consent. As the data are collected with a high participation rate and the subjects are not expected to claim their identities, the trait is employed for identification rather than for authentication.

Motion capture technology acquires video clips of individuals and generates structured motion data. The format maintains an overall structure of the human body and holds estimated 3D positions of the main anatomical landmarks as the person moves. These so-called motion capture data (MoCap) can be collected online by RGB-D sensors such as Microsoft Kinect, Asus Xtion or Vicon. To visualize motion capture data (see Figure <ref>), a simplified stick figure representing the human skeleton (a graph of joints connected by bones) can be automatically recovered from the values of body point spatial coordinates. With recent rapid improvements in MoCap sensor accuracy, we foresee an affordable MoCap technology <cit.> that can identify people from MoCap data.



The goal of this work is to present a method for learning robust gait features from raw MoCap data. A collection of extracted features builds a gait template that serves as the walker's signature. Templates are stored in a central database. Recognition of a person involves capturing their walk sample, extracting gait features to compose a template, and finally querying this database for a set of similar templates to report the most likely identity. The similarity of the two templates is expressed in a single number computed by a similaritydistance function.

Related work is outlined in Section <ref> and our methods are described in detail in Section <ref>. We provide a thorough evaluation of a number of competitive MoCap-based gait recognition methods on a benchmark database and framework described in Section <ref>. Two setups of data separation into learning and evaluation parts are presented in <ref>, together with several metrics used for thorough evaluation. Results are presented and discussed in Section <ref>.



§ RELATED WORK



Human gait has been an active subject of study in physical medicine (detection of gait abnormalities <cit.> and disorders caused by stroke or cerebral palsy <cit.>), sport (gait regulation <cit.>), or sociology (age and gender classification <cit.> or attractiveness evaluation <cit.>) for a long time. Inspired by medical studies of Murray <cit.>, a psychological research of Johansson <cit.> and by Cutting and Kozlowski <cit.> conducted experiments about how participants are able to recognize pedestrians from simply observing the 2D gait pattern generated by light bulbs attached to several joints over their body. These experiments proved that the gait is personally unique and can be potentially used for biometric recognition. The main challenges from the perspective of biometric security <cit.> are (1) to detect gait cycles in long video footage; (2) to recognize registered participants by their biometric samples; and (3) to retrieve relevant biometric samples from large databases.

Many research groups investigate the discrimination power of gait pattern and develop models of human walk for applications in the automatic recognition from MoCap data of walking people. A number of MoCap-based gait recognition methods have been introduced in the past few years and new ones continue to emerge. In order to move forward with the wealth and scope of competitive research, it is necessary to compare the innovative approaches with the state-of-the-art and evaluate them against established evaluation metrics on a benchmark database. New frameworks and databases have been developed recently <cit.>.

Over the past few years, most of the introduced gait features are on a geometric basis. They typically combine static body parameters (bone lengths, person's height) with dynamic gait features such as step length, walk speed, joint angles and inter-joint distances, along with various statistics (mean, standard deviation or localglobal extremes) of their signals. We are particularly focused on the dynamic parameters. By our definition, gait is a dynamic behavioral trait. Static body parameters are not associated with gait, however, they can be used as another biometric.

What follows is a detailed specification of the thirteen gait features extraction methods that we have reviewed in our work to date. Since the idea behind each method has some potential, we have implemented each of them for direct comparison.

#1 
  • #1

AhmedF by Ahmed  <cit.> chooses 20 joint relative distance signals and 16 joint relative angle signals across the whole body, compared using the Dynamic Time Warping (DTW).
AhmedM by Ahmed  <cit.> extracts the mean, standard deviation and skew during one gait cycle of horizontal distances (projected on the Z axis) between feet, knees, wrists and shoulders, and mean and standard deviation during one gait cycle of vertical distances (Y coordinates) of head, wrists, shoulders, knees and feet, and finally the mean area during one gait cycle of the triangle of root and two feet.
AliS by Ali  <cit.> measures the mean areas during one gait cycle of lower limb triangles.
AnderssonVO by Andersson and Araujo <cit.> calculates gait attributes as mean and standard deviation during one gait cycle of local extremes of the signals of lower body angles, step length as a maximum of feet distance, stride length as a length of two steps, cycle time and velocity as a ratio of stride length and cycle time. In addition, they extract the mean and standard deviation during one gait cycle of each bone length, and height as the sum of the bone lengths between head and root plus the averages of the bone lengths between root and both feet.
BallA by Ball  <cit.> measures mean, standard deviation and maximum during one gait cycle of lower limb angle pairs: upper leg relative to the Y axis, lower leg relative to the upper leg, and the foot relative to the Z axis.
DikovskiB by Dikovski  <cit.> selects the mean during one gait cycle of step length, height, all bone lengths, then mean, standard deviation, minimum, maximum and mean difference of subsequent frames during one gait cycle of all major joint angles, and the angle between the lines of the shoulder joints and the hip joints.
JiangS by Jiang  <cit.> measures angle signals between the Y axis and four major lower body (thigh and calf) bones. The signals are compared using the DTW.
KrzeszowskiT by Krzeszowski  <cit.> observes the signals of rotations of eight major bones (humerus, ulna, thigh and calf) around all three axes, the person's height and step length. These signals are compared using the DTW distance function.
KwolekB by Kwolek  <cit.> processes signals of bone angles around all axes, the person's height and step length. The gait cycles are normalized to 30 frames.
NareshKumarMS by Naresh Kumar and Venkatesh Babu <cit.> is an interesting approach that extracts all joint trajectories around all three axes and compares gait templates by a distance function of their covariance matrices.
PreisJ by Preis  <cit.> takes height, length of legs, torso, both lower legs, both thighs, both upper arms, both forearms, step length and speed.
SedmidubskyJ by Sedmidubsky  <cit.> concludes that only the two shoulder-hand signals are discriminatory enough to be used for recognition. These temporal data are compared using the DTW distance function.
SinhaA by Sinha  <cit.> combines all features of BallA and PreisJ with mean areas during one gait cycle of upper body and lower body, then mean, standard deviation and maximum distances during one gait cycle between the centroid of the upper body polygon and the centroids of four limb polygons.


The aforementioned features are schematic and human-interpretable, which is convenient for visualizations and for intuitive understanding of the models, but unnecessary for automatic gait recognition. Instead, to refrain from ad-hoc schemes and to explore beyond the limits of human interpretability, we prefer learning gait features that maximally separate the identity classes in the feature space. The features calculated by statistical observation of large amounts of data are expected to have a much higher discriminative potential, which will be the subject of experimental evaluation in Section <ref>.

Methods for 2D gait recognition extensively use machine learning models for extracting gait features, such as principal component analysis and multi-scale shape analysis <cit.>, genetic algorithms and kernel principal component analysis <cit.>, radial basis function neural networks <cit.>, or convolutional neural networks <cit.>. All of these and many other models can be reasonably utilized in 3D gait recognition as well. The following section provides a scheme for learning the features directly from raw data by (i) a modification of Fisher's Linear Discriminant Analysis with Maximum Margin Criterion and (ii) a combination of Principal Component Analysis and Linear Discriminant Analysis.



§ LEARNING GAIT FEATURES



In statistical pattern recognition, reducing space dimensionality is a common technique to overcome class estimation problems. Classes are discriminated by projecting high-dimensional input data onto low-dimensional sub-spaces by linear transformations with the goal of maximizing class separability. We are interested in finding an optimal feature space where a gait template is close to those of the same walker and far from those of different walkers.

Let the model of a human body have  joints and all  learning samples of  walkers be linearly normalized to their average length . Labeled learning data in a sample (measurement) space have the form ={(n,n)}_n=1^ where

    n=[[11 ⋯ 1] ⋯ [1 ⋯ ]]^⊤

is a gait sample (one gait cycle) in which jt∈ℝ^3 are 3D spatial coordinates of joint j∈{1,…,} at time t∈{1,…,} normalized with respect to the person's position and walk direction. See that  has dimensionality =3. Each learning sample falls strictly into one of the learning identity classes {c}_c=1^ labeled by n. A class c⊆ has c samples. The classes are complete and mutually exclusive. We say that samples (n,n) and (n',n') share a common walker if and only if they belong to the same class, i.e., (n,n),(n',n')∈c⇔n=n'. For the whole labeled data, we denote the between- and within-class and total scatter matrices

    =∑_c=1^(c-)(c-)^⊤
        =∑_c=1^1/c∑_n=1^c(nc-c)(nc-c)^⊤
        =∑_c=1^1/c∑_n=1^c(nc-)(nc-)^⊤=+

where nc denotes the n-th sample in class c and c and  are sample means for class c and the whole data set, respectively, that is, c=1/c∑_n=1^cnc and =1/∑_n=1^n. Margin is defined as the Euclidean distance of class means minus both individual variances (traces of scatter matrices)

    c=1/c∑_n=1^c(nc-c)(nc-c)^⊤.


We measure class separability of a given feature space by a representation of the Maximum Margin Criterion (MMC) <cit.> used by the Vapnik's Support Vector Machines (SVM) <cit.> which maximizes the sum of 1/2(-1) between-class margins

    =1/2∑_c,c'=1^((c-c')^⊤(c-c')-(c+c'))
        =1/2∑_c,c'=1^(c-c')^⊤(c-c')-1/2∑_c,c'=1^(c+c')
        =1/2∑_c,c'=1^(c-+-c')^⊤(c-+-c')-∑_c=1^(c)
        =(∑_c=1^(c-)(c-)^⊤)-(∑_c=1^c)
        =()-()=(-).

Since () measures the overall variance of the class mean vectors, a large one implies that the class mean vectors scatter in a large space. On the other hand, a small () implies that classes have a small spread. Thus, a large  indicates that samples are close to each other if they share a common walker but are far from each other if they are performed by different walkers. Extracting features, that is, transforming the input data in the sample space into a feature space of higher , can be used to link new observations of walkers more successfully.

Feature extraction is given by a linear transformation (feature) matrix ∈ℝ^× from a -dimensional sample space ={n}_n=1^ of not necessarily labeled gait samples to a -dimensional feature space ={n}_n=1^ of gait templates where < and each gait sample n is transformed into a gait template n=^⊤n. The objective is to learn a transform  that maximizes MMC in the feature space

    =(^⊤(-)).

Once the transformation is found, all measured samples are transformed into templates (in the feature space) along with the class means and covariances. The templates are compared by the Mahalanobis distance function

    nn'=√((n-n')^⊤^-1(n-n')).


We show that a solution to the optimization problem in Equation (<ref>) can be obtained by eigendecomposition of the matrix -. An important property to notice about the objective  is that it is invariant w.r.t. rescalings →α. Hence, we can always choose =1⋯ such that d^⊤d=1, since it is a scalar itself. For this reason we can reduce the problem of maximizing  into the constrained optimization problem

    max    ∑_d=1^d^⊤(-)d
    subject to    d^⊤d-1=0 ∀d∈{1,…,}.

To solve the above optimization problem, let us consider the Lagrangian

    dd=∑_d=1^d^⊤(-)d-d(d^⊤d-1)

with multipliers d. To find the maximum, we derive it with respect to d and equate it to zero

    ∂dd/∂d=((-)-d)d=0

which leads to

    (-)d=dd

where d are the eigenvalues of - and d are the corresponding eigenvectors. Putting it all together,

    (-)=

where =(1,…,) is the eigenvalue matrix. Therefore,

    =(^⊤(-))=(^⊤)=∑_d=1^d^⊤dd=∑_d=1^dd^⊤d=∑_d=1^d=()

is maximized when  has  largest eigenvalues and  contains the corresponding eigenvectors.

In the following we discuss how to calculate the eigenvectors of - and to determine an optimal dimensionality  of the feature space. Rewrite -=2-. Note that the null space of  is a subspace of that of  since the null space of  is the common null space of  and . Thus, we can simultaneously diagonalize  and  to some  and 

    ^⊤    =
    ^⊤    =

with the ×() eigenvector matrix

    =^-1/2

where  and  are the eigenvector and corresponding eigenvalue matrices of , respectively, and  is the eigenvector matrix of ^-1/2^⊤^-1/2. To calculate , we use a fast two-step algorithm in virtue of Singular Value Decomposition (SVD). SVD expresses a real r × s matrix A as a product A=UDV^⊤ where D is a diagonal matrix with decreasing non-negative entries, and U and V are r×min{r,s} and s×min{r,s} eigenvector matrices of AA^⊤ and A^⊤A, respectively, and the non-vanishing entries of D are square roots of the non-zero corresponding eigenvalues of both AA^⊤ and A^⊤A. See that  and  can have the forms

    =    ^⊤ where =1/√()[(1-)⋯(-)] and
    =    ^⊤ where =[(1-)⋯(-)],

respectively. Hence, we can obtain the eigenvectors  and the corresponding eigenvalues  of  through the SVD of  and analogically  of ^-1/2^⊤^-1/2 through the SVD of ^-1/2^⊤. The columns of  are clearly the eigenvectors of 2- with the corresponding eigenvalues 2-. Therefore, to constitute the transform  by maximizing the MMC, we should choose the eigenvectors in  that correspond to the eigenvalues of at least 1/2 in . Note that  contains at most ()=-1 positive eigenvalues, which gives an upper bound on the feature space dimensionality .

We found inspiration in the Fisher Linear Discriminant Analysis (LDA) <cit.> that uses Fisher's criterion

    _LDA=(_LDA^⊤_LDA/_LDA^⊤_LDA).

However, since the rank of  is at most -, it is a singular (non-invertible) matrix if  is less than +, or, analogously might be unstable if ≪. Small sample size is a substantial difficulty as it is necessary to calculate ^-1. To alleviate this, the measured data can be first projected to a lower dimensional space using Principal Component Analysis (PCA), resulting in a two-stage PCA+LDA feature extraction technique <cit.> originally introduced for face recognition

    _PCA=   (_PCA^⊤_PCA)
    _LDA=   (_LDA^⊤_PCA^⊤_PCA_LDA/_LDA^⊤_PCA^⊤_PCA_LDA)

and the final transform is =_PCA_LDA. Given that there are  principal components, then regardless of the dimensionality  there are at least +1 independent data points. Thus, if the × matrix _PCA^⊤_PCA is estimated from - independent observations and providing the ≤≤-, we can always invert _PCA^⊤_PCA and in this way obtain the LDA estimate. Note that this method is sub-optimal for multi-class problems <cit.> as PCA keeps at most - principal components whereas at least -1 of them are necessary in order not to lose information. PCA+LDA in this form has been used for silhouette-based (2D) gait recognition by Su  <cit.> and is included in our experiments with MoCap (3D).

On given labeled learning data , Algorithm <ref> and Algorithm <ref> <cit.> provided below are efficient ways of learning the transforms  for MMC and PCA+LDA, respectively.







§ EVALUATION



This paper provides an extended evaluation. In the following we describe the evaluation database and framework, setups for data separation into learning and evaluation parts, evaluation metrics, and results with discussion.



 §.§ Database and Framework



For evaluation purposes we have extracted a large number of gait samples from the MoCap database obtained from the CMU Graphics Lab <cit.>, which is available under the Creative Commons license. It is a well-known and recognized database of structural human motion data and contains a considerable number of gait sequences. Motions are recorded with an optical marker-based Vicon system. People wear a black jumpsuit with 41 markers taped on. The tracking space of [30]m^2 is surrounded by 12 cameras with a sampling rate of [120]Hz at heights ranging from 2 to 4 meters above ground thereby creating a video surveillance environment. Motion videos are triangulated to get highly accurate 3D data in the form of relative body point coordinates (with respect to the root joint) in each video frame and are stored in the standard ASF/AMC data format. Each registered participant is assigned with their respective skeleton described in an ASF file. Motions in the AMC files store bone rotational data, which is interpreted as instructions about how the associated skeleton deforms over time.

These MoCap data, however, contain skeleton parameters pre-calibrated by the CMU staff. Skeletons are unique to each walker and even a trivial skeleton check could result in 100% recognition. In order to fairly use the collected data, a prototypical skeleton is constructed and used to represent bodies of all subjects, shrouding the skeleton parameters. Assuming that all walking individuals are physically identical disables the skeleton check from being a potentially unfair classifier. Moreover, this is a skeleton-robust solution as all bone rotational data are linked to one specific skeleton. To obtain realistic parameters, it is calculated as the mean of all skeletons in the provided ASF files.

The raw data are in the form of bone rotations or, if combined with the prototypical skeleton, 3D joint coordinates. The bone rotational data are taken from the AMC files without any pre-processing. We calculate the joint coordinates using the bone rotational data and the prototypical skeleton. One cannot directly use raw values of joint coordinates, as they refer to absolute positions in the tracking space, and not all potential methods are invariant to a person's position or walk direction. To ensure such invariance, the center of the coordinate system is moved to the position of root joint roott=[0,0,0]^⊤ for each time t and the axes are adjusted to the walker's perspective: the X axis is from right (negative) to left (positive), the Y axis is from down (negative) to up (positive), and the Z axis is from back (negative) to front (positive). In the AMC file structure notation it is achieved by setting the root translation and rotation to zero () in all frames of all motion sequences.

Since the general motion database contains all motion types, we extracted a number of sub-motions that represent gait cycles. First, an exemplary gait cycle was identified, and clean gait cycles were then filtered out using a threshold for their DTW distance on bone rotations in time. The distance threshold was explicitly set low enough so that even the least similar sub-motions still semantically represent gait cycles. Setting this threshold higher might also qualify sub-motions that do not resemble gait cycles anymore. Finally, subjects that contributed with less than 10 samples were excluded. The final database <cit.> has 54 walking subjects that performed 3,843 samples in total, resulting in an average of about 71 samples per subject.

As a contribution to reproducible research, we release our database and framework to improve the development, evaluation and comparison of methods for gait recognition from MoCap data. They are intended also for our fellow researchers and reviewers to reproduce the results of our experiments. Our recent paper <cit.> provides a manual and comments on reproducing the experiments. With this manual, a reader should be able to reproduce the evaluation and to use the implementation in their own application. The source codes and data are available online at our research group web page <cit.> with link to our departmental Git repository.

The evaluation framework comprises (i) source codes of the state-of-the-art human-interpretable geometric features that we have reviewed in our work to date as well as own our two approaches where gait features are learned by MMC (see Algorithm <ref>) and by PCA+LDA (see Algorithm <ref>), the Random method (no features and random classifier), and the Raw method (raw data and DTW distance function). Depending on whether the raw data are in the form of bone rotations or joint coordinates, the methods are referred to with BR or JC subscripts, respectively. The framework includes (ii) a mechanism for evaluating four class separability coefficients of feature space and four classifier performance metrics. It also contains (iii) a tool for learning a custom classifier and for classifying a custom probe on a custom gallery. We provide (iv) an experimental database along with source codes for its extraction from the CMU MoCap database.



 §.§ Evaluation Setup and Metrics



In the following, we introduce two setups of data separation: homogeneous and heterogeneous. The homogeneous setup learns the transformation matrix on a fraction of samples of  identities and is evaluated on templates derived from the remaining samples of the same = identities. The heterogeneous setup learns the transform on all samples of  identities and is evaluated on all templates derived from all samples of other  identities. An abstraction of this concept is depicted in Figure <ref>. Note that in heterogeneous setup no walker identity is ever used for both learning and evaluation at the same time.



A use of the homogeneous setup can be any system to recognize people that cooperated at learning the features. For example, a small company entrance authentication where all employees cooperated to register. MoCap data of each employee's gait pattern can be registered along with a picture of their face. On the other hand, the heterogeneous setup can be used at person re-identification. During video surveillance, new identities can appear on the fly and labeled data for all the people encountered may not always be available. In this scenario, forensic investigators may ask for tracking the suspects.

The homogeneous setup is parametrized by a single number = of learning-and-evaluation identity classes, whereas the heterogeneous setup has the form (,). This parametrization specifies how many learning and how many evaluation identity classes are randomly selected from the database. The evaluation of each setup is repeated 3 times, selecting new random identity classes each time and reporting the average result.

In both setups, the class separability coefficients are calculated directly on the full evaluation part whereas the classification metrics are estimated with the 10-fold cross-validation taking one dis-labeled fold as a testing set and the other nine labeled folds as gallery. Test templates are classified by the winner-takes-all strategy, in which a test template ^test gets assigned with the label _i^testi^gallery of the gallery's closest identity class.

What follows is a list of evaluation metrics. Recognition rate is often perceived as the ultimate qualitative measure; however, it is more explanatory to include an evaluation in terms of class separability of the feature space. The class separability measures give an estimate of the recognition potential of the extracted features and do not reflect eventual combination with an unsuitable classifier:

#1 (#2)
  • #1: #2
Davies-Bouldin Index (DBI)

    DBI=1/∑_c=1^max_1 ≤ c' ≤, c' ≠ cσ_c+σ_c'/cc'

where σ_c=1/c∑_n=1^cnc is the average distance of all elements in identity class c to its centroid, and analogically for σ_c'. Templates of low intra-class distances and of high inter-class distances have a low DBI.
Dunn Index (DI)

    DI=min_1 ≤ c<c' ≤cc'/max_1 ≤ c ≤σ_c

with σ_c from the above DBI. Since this criterion seeks classes with high intra-class similarity and low inter-class similarity, a high DI is more desirable.
Silhouette Coefficient (SC)

    SC=1/∑_n=1^b(n)-a(n)/max{a(n),b(n)}

where a(n)=1/c∑_n'=1^cnn' is the average distance from n to other samples within the same identity class and b(n)=min_1 ≤ c' ≤, c' ≠ c1/c'∑_n'=1^c'nn' is the average distance of n to the samples in the closest class. It is clear that -1≤SC≤1 and a SC close to one mean that classes are appropriately separated.
Fisher's Discriminant Ratio (FDR)

    FDR=1/∑_c=1^c/1/∑_c=1^∑_n=1^cnc.

A high FDR is preferred for seeking classes with low intra-class sparsity and high inter-class sparsity.


Apart from analyzing the distribution of templates in the feature space, it is schematic to combine the features with a rank-based classifier and to evaluate the system based on distance distribution with respect to a query. For obtaining a more applied performance evaluation, we evaluate:

#1 (#2)
  • #1: #2 
Cumulative Match Characteristic (CMC) 
Sequence of Rank-k (for k on X axis from 1 up to ) recognition rates (Y axis) to measure ranking capabilities of a recognition method. Its headline Rank-1 is the Correct Classification Rate (CCR).
False Accept Rate vs. False Reject Rate (FAR/FRR)
Two sequences of the error rates (Y axis) as functions of the discrimination threshold (X axis). Each method has a value e of this threshold giving Equal Error Rate (EER=FAR=FRR).
Receiver Operating Characteristic (ROC)
Sequence of True Accept Rate (TAR) and False Accept Rate with a varied discrimination threshold. For a given threshold, the system signalizes both TAR (Y axis) and FAR (X axis). The value of Area Under Curve (AUC) is computed as the integral of the ROC curve.
Recall vs. Precision (RCL/PCN)
Sequence of the rates with a varied discrimination threshold. For a given threshold the system signals both RCL (X axis) and PCN (Y axis). The value of Mean Average Precision (MAP) is computed as the area under the RCL/PCN curve.


These measures reflect how class-separated the feature space is, how often the walk pattern of a person is classified correctly and how difficult it is to confuse different people. They do not, in fact, provide complementary information, although a quality evaluation framework should be able to evaluate the most popular measures. Different applications use different evaluation measures. For example, a hotel lobby authentication system could use a high Rank-3 at the CMC, while a city-level person tracking system is likely to need the ROC curve leaning towards the upper left corner.

Finally, the evaluation incorporates two scalability measures: average distance computation time (DCT) in milliseconds and average template dimensionality (TD).



 §.§ Results



In this section we provide comparative evaluation results of the feature extraction methods in terms of evaluation metrics defined in Section <ref>. To ensure a fair comparison, we evaluate all methods on the same experimental database and framework described in Section <ref>. Table <ref> presents the implementation details of all the methods and the results of class separability coefficients, classification metrics and scalability.







The goal of the MMC-based learning is to find a linear discriminant that maximizes the misclassification margin. This optimization technique appears to be more effective than designing geometric gait features. A variety of class-separability coefficients and classification metrics allows insights from different statistical perspectives. The results in Table <ref> indicate that the proposed MMCBR method (on bone rotational data) is a leading concept for rank-based classifier systems: highest SC and AUC, lowest EER, and competitive DBI, DI, FDR, CCR and MAP. In terms of recognition rate, the MMC method was only outperformed by the Raw method, which is implemented here as a form of baseline. We interpret the high scores as a sign of robustness.

Apart from the performance merits, the MMC method is also efficient: relatively low-dimensional templates and Mahalanobis distance ensure fast distance computations and thus contribute to high scalability. Note that even if the Raw method has some of the best results, it can hardly be used in practice due to its extreme consumption of time and space resources. On the other hand, Random has no features but cannot be considered a serious recognition method. To illustrate the evaluation time, calculating the distance matrix (a matrix of distances between all evaluation templates) took a couple minutes for the MMC method, almost nothing for the Random method, and more than two weeks for the Raw method. The learning time of the MMC and PCA+LDA methods increases with the number of learning samples  (counting  and  matrices); however, this is not an issue in the field of gait recognition as training the models suffers from the opposite problem, undersampling.

To reproduce the experiments in Table <ref>, instructions to follow are to be found at <cit.>. Please note that some methods are rather slow – total evaluation times (learning included) in the last column were measured on a computer with Intel® Xeon® CPU E5-2650 v2 @ 2.60GHz and [256]GB RAM.

An additional experiment was carried out with the traditional 10-fold cross-validation in which gait cycles of a common walk sequence are always kept together in the same fold. This is to prevent a situation in which two consecutive gait cycles are split between testing and training folds which would cause a potential overtraining. The classification metrics of methods include CCR, EER, AUC, MAP, and the CMC curve up to Rank-10. Displayed in Table <ref>, the results suggest that the methods based on machine learning outperform the methods of hand-designed features in terms of all measured metrics. Note that the results are slightly worse than those in Table <ref> due to avoiding the overtraining cases and that the order of the tested methods is preserved. We interpret this order as a demonstrative result of comparison of all tested methods based on their classification potential.



Finally, the experiments A, B, C, D described below compare the homogeneous and heterogeneous setup and examine how quality of the system in the heterogeneous setup improves with an increased number of learning identities. The main idea is to show that we can learn what aspects of walk people generally differ in and extract those as general gait features. Recognizing people without needing group-specific features is convenient as particular people might not always provide annotated learning data. Results are illustrated in Figure <ref> and in Figure <ref>.

0pt
0pt

  A homogeneous setup with =∈{2,…,27};

  B heterogeneous setup with =∈{2,…,27};

  C heterogeneous setup with ∈{2,…,27} and =27;

  D heterogeneous setup with ∈{2,…,27} and =27-.


Experiments A and B compare homogeneous and heterogeneous setups by measuring the drop in the quality measures on an identical number of learning and evaluation identities (=). Please note that based on Section <ref> our database has 54 identity classes in total and they can be split into the learning and evaluation parts in the numbers of at most (27,27). Top plot in Figure <ref> shows the values of DBI and CCR metrics in both alternatives, which not only appear comparable but also in some configurations the heterogeneous setup has an even higher CCR. Bottom plot expresses heterogeneous setup as a percentage of the homogeneous setup in each of the particular metrics. Here we see that with raising number of identities the heterogeneous setup approaches 100% of the homogeneous setup. Therefore, the gait features learned by the introduced MMC method are walker-independent, which means that they can be learned on anybody.



Experiments C and D investigate the impact of the number of learning identities in the heterogeneous setup. Experiment D has only been evaluated up until (27,27) as results with a learning part larger than an evaluation part would be insignificant. As can be seen in Figure <ref>, the performance grows quickly on the first configurations with very few learning identities, which we can interpret as an analogy to the Pareto (80–20) principle. Specifically, the results of experiment C say that 8 learning identities achieve almost the same performance (66.78 DBI and 0.902 CCR) as if they had been learned on 27 identities (68.32 DBI and 0.947 CCR). The outcome of experiment D indicates a similar growth of performance and we see that 14 identities can be enough to learn the transformation matrix to distinguish 40 completely different people (0.904 CCR).





§ CONCLUSION



A common practice in state-of-the-art MoCap-based human identification is designing geometric gait features by hand. However, the field of pattern recognition has not recently advanced to a point where best results are frequently obtained using a machine learning approach. Finding optimal features for MoCap-based gait recognition is no exception. This work introduces the concept of learning robust and discriminative features directly from raw MoCap data by a modification of the Fisher Linear Discriminant Analysis with Maximum Margin Criterion and by combining Principal Component Analysis and Linear Discriminant Analysis, both with the goal of maximal separation of identity classes, avoiding the potential singularity problem caused by undersampling. Instead of instinctively drawing ad-hoc features, these methods are computed from a much larger space beyond the limits of human interpretability. The collection of features learned by MMC achieves leading scores in four class separability coefficients and therefore has a great potential for gait recognition applications. This is demonstrated on our extracted and normalized MoCap database of 54 walkers with 3,843 gait cycles by outperforming other 13 methods in numerous evaluation metrics. MMC is suitable for optimizing gait features; however, our future work will continue with research on further potential optimality criteria and multi-linear machine learning approaches.

The second contribution lies in showing the possibility of building a representation on a problem and using it on another (related) problem. Simulations on the CMU MoCap database show that our approach is able to build robust feature spaces without pre-registering and labeling all potential walkers. In fact, we can take different people (experiments A and B) and use just a fraction of them (experiments C and D). We have observed that already on 5 identities the heterogeneous evaluation setup exceeds 95% of the homogeneous setup and improves with an increasing volume of identities. This means that one does not have to rely on the availability of all walkers for learning; instead, the features can be learned on anybody. The CCR of over 90% when learning on 14 identities and evaluating on other 40 identities shows that an MMC-based system once learned on a fixed set of walker identities can be used to distinguish many more additional walkers. This is particularly important for a system that supports video surveillance applications where the encountered walkers never supply labeled data. Multiple occurrences of individual walkers can now be linked together even without knowing their actual identities.

In the name of reproducible research, our third contribution is the provision of the evaluation framework and database. All our data and source codes have been made available <cit.> under the Creative Commons Attribution license (CC-BY) for database and the Apache 2.0 license for software, which grant free use and allow for experimental evaluation. We hope that they will contribute to a smooth development and evaluation of further novel MoCap-based gait recognition methods. We encourage all readers and developers of MoCap-based gait recognition methods to contribute to the framework with new algorithms, data and improvements.

ACM-Reference-Format


