^{1}

^{1}

^{2}

^{1}

^{1}

^{2}

Algorithms based on the ground reflex pressure (GRF) signal obtained from a pair of sensing shoes for human walking pattern recognition were investigated. The dimensionality reduction algorithms based on principal component analysis (PCA) and kernel principal component analysis (KPCA) for walking pattern data compression were studied in order to obtain higher recognition speed. Classifiers based on support vector machine (SVM), SVM-PCA, and SVM-KPCA were designed, and the classification performances of these three kinds of algorithms were compared using data collected from a person who was wearing the sensing shoes. Experimental results showed that the algorithm fusing SVM and KPCA had better recognition performance than the other two methods. Experimental outcomes also confirmed that the sensing shoes developed in this paper can be employed for automatically recognizing human walking pattern in unlimited environments which demonstrated the potential application in the control of exoskeleton robots.

In the past decades, many wearable human-assistive robot systems have been developed for the purpose of assisting physically weakened people such as elderly, disabled, and injured people. Many important results have already been achieved. Sankai et al. developed hybrid-assistive limb (HAL) for augmenting power of normal persons [

In recent years, many researches were focused on the recognition of human’s motion pattern for the purpose of control of exoskeleton robot. Signals for the gait recognition can be obtained by different kinds of sensors. The main information types used are biomechanical signals, electromyographic (EMG) signals, peripheral nervous system signals, and central nervous system signals [

Consequently, studies on the motion pattern recogniztion are focused on looking for other signals instead of EMG. Ground reflex pressure (GRF) signal is viable and effective for identifying behavior because human movement and posture are well reflected in foot pressure distribution. Many walking pattern recognition methods based on GRF were studied. Force platform is widely used to analyze human movement. However, the force platform imposes constraints on measurement and is not feasible for measurement of free-living subjects. The present researches tend to focus on daily worn wristwatches, glasses, and shoes where sensors can be embedded into. With embedded sensors, noninvasive detection is available for providing action assistantce. Many researchers have developed wearable sensors attached to insoles [

In many robotic systems, pressure sensors were installed at toe or heel to recognize movements. Most of the methods were based on threshold [

Generally, using more signal acquisition channels could provide more motion information for better performance of walking pattern classification. However, more sensors will definitely increase the complexity of computation and analysis which may lead to slow discrimination response. These issues make walking pattern recognition a difficult task for the control of exoskeleton robot. Therefore, comprehensive analysis between the recognition accuracy and the processing speed should be done. Feature extraction acts as a vital role for pattern recognition. In order to improve the processing speed, some algorithms can be used to compress the data during the process of feature extraction. Principal component analysis (PCA) is a well-known method for feature extraction which can lower dimension [

It is worth noting that stair climbing has not been studied as extensively as gait during the control of exoskeleton robot, although the significance of the prevention of falling on stairs has been well recognized. Startzell et al. [

The main purpose of this paper is to apply machine learning approaches to recognize the walking pattern of stair descending or stair ascending from the pattern of walking on a flat surface or standing still using the GRF data. In order to improve both the recognition accuracy and rapidity, data-decreased algorithms based on both PCA and KPCA were studied in this paper. Comparing with the traditional motion recognizing methods based on pressure threshold which are used in most exoskeleton robots, the method proposed in this paper can provide higher recognition accuracy.

This reminder of this paper is organized as follows. Section

A pair of foot pressure sensing shoes was developed in this paper. The distribution of the pressure sensors was shown in Figure

Names of sensing positions.

Position number | Name |
---|---|

1 | Great toe |

2 | Little ball |

3 | Lateral border |

4 | Heel |

5 | Posterior metatarsal |

6 | Anterior metatarsal |

7 | Great ball |

Measurement position.

The proposed method for recognition of human motion pattern using FRG signals was displayed in Figure

The process of human motion pattern recognition.

The first step of the process is to create the training input dataset from the signals that were obtained from the 14 pressure sensors which installed under the sole. The signals are wirelessly transmitted to the PC. The raw data is made up of the pressure of each point at each time step. In addition, every time step is labeled with a value which indicates the current type of motion (such as walking forward on a flat surface, stair descending, or stair ascending):

The signals were filtered by a low-pass filter with a 10 Hz cut-off frequency. In order to prepare the input from the sensor data, the sliding window technique is used to segment the GRF data for continuous classification decision making (Figure

Windowing of pressure data in the continuous classifier.

The performance of the classifier mainly depends on the effective feature extraction method. In this work, five features were calculated from the collected sensor data for training and testing, which are average value, standard deviation, maximum value, minimum value, and difference deviation.

A commonly used feature reduce method is the principal analysis (PCA), which maps data onto the axes of greatest variance and reduces the number of dimensions. PCA reduces dimensionality by throwing away axes with small variances, ensuring that the data matrix, now projected onto its principal components, loses as little information as possible.

Mathematically, the principal components of a matrix

Since PCA is linear transformation, it is relatively quick to compute. However, the PCA algorithm may not be effective in dealing with nonlinear feature boundaries.

In this study, foot pressure detection is formulated as a four-class classification problem. The distribution of foot pressure signals is nonlinear. Therefore, a linear boundary is inappropriate. The input vector should be mapped into a high-dimensional feature space for higher classifying accuracy.

If the data matrix

Then, the eigenvectors are found in the same way as PCA. Constructing the principal components yields:

Feature extraction with KPCA uses a kernel function defined as

To construct

The goal of this research was to improve the classification accuracy with a kernel PCA because of the fact that KPCA tends to have better results than PCA with nonlinear data, and experimental results with both PCA and KPCA were illustrated in this paper.

Once the kernel function was selected, values of multiple free kernel parameters must be determined. Although these kernel functions have been widely used in many applications successfully, they are not the optimal choice for all data sets. Instead of a priori selecting kernel function from a finite set of candidates without explicitly considering the structure of the data, the better way is to estimate it from the data. With a data-dependent kernel function tailored to data under consideration, the performance of KPCA or other kernel-based methods can be improved.

A nonlinear approach, that is, support vector machine (SVM) with a nonlinear kernel, was investigated for walking pattern recognition. Support vector machine (SVM) is based on the foundation of statistical learning theory [

The basic SVM takes a set of input data and predicts, for each given input, which of two possible classes forms the output, making it a nonprobabilistic binary linear classifier. Given a set of training examples, each marked as belonging to one of two categories, an SVM training algorithm builds a model that assigns new examples into the first category or the other.

By choosing a non-linear mapping, the SVM constructs an optimum separation hyperplane in the higher-dimensional space. To start with, we train a classifier

So the formula above results in an optimization problem with convex constrains, which is ready to be solved by the interior point method. For the walking pattern recognition issue, we selected the foot pressure signals of the 14 points in Figure

A multiclass SVM with “one-against-one” structure was used [

The performances of the dimensionality reduction algorithms based on both PCA and KPCA were evaluated by experiments data. The data set is partitioned into 2 subsets. One subset is used to train the classifier model, whereas the other subset is used to test the classifier model. The classifier was evaluated by the classification accuracy (CA) which was defined as the percentage of correctly classified observations out of the total number of observations within that class.

The value of CA can be calculated using the following equation:

During the experiments, the participant wore a pair of shoes with pressure sensors installed in the sole. Our tests were carried out using a 24-year-old female wearer, 1.66 m tall. Wearer walked at a comfortable speed. With battery power supplied, foot pressure signals were gathered by 14 FSR402 sensors every 40 ms and transmitted virtually through the data processing board to the computer wirelessly. The waveforms of each sensor on both feet were exhibited on the desktop simultaneously for monitoring. The walking pattern recognition procedure was implemented by MATLAB 2010a, running on a PC with 2 G, 2 GHZ CPU.

The raw data on foot pressure distributions for each moving pattern were acquired with the developed foot pressure sensing shoes (Figure

Ascending and descending stairs with developed shoes.

Foot pressure distribution of four walking patterns.

Foot pressure distribution of standing still

Foot pressure distribution of walking forward

Foot pressure distribution of stair ascending

Foot pressure distribution of stair descending

There was a total of 4 classes, with a total of 6 binary classifiers for the classifier in each walking pattern. To build each binary classifier, a hyperplane was found by maximizing the boundary margin between two classes and minimizing the training classification errors. Six hyperplanes between any two classes were computed after training. During the testing procedure, each observed feature vector

Five internal time-domain parameters were picked up as feature, which are average value, standard deviation, maximum value, minimum value, and difference deviation. Features representing the pressure signal were memorized in matrix and sent to the classifier. Cross-validation was used to train and test the classifier based on SVM. We picked up 630 sets of data samples of each moving pattern; the former 420 are for classifier training and the latter for testing. The training data and training label are used to form the whole training set.

The classification accuracy of SVM, SVM-PCA, and SVM-KPCA was compared in the experiments.

The cross-validation results of parameter selection of SVM.

Contour map of parameter selection results

3D view of parameter selection results

The classification model was applied to predict the output category for testing samples identification. The actual and testing patterns of testing samples were shown in Figure

Actual and testing patterns of testing samples with SVM.

According to Figure

Accuracy of different movements with SVM.

Moving pattern | Training accuracy (%) | Testing accuracy (%) |
---|---|---|

Standing still | 100 | 100 |

Walking on level | 91.2 | 91.0 |

Stair ascending | 93.1 | 93.7 |

Stair descending | 90.0 | 86.7 |

Accuracy of different movements with PCA.

Moving pattern | Training accuracy (%) | Testing accuracy (%) |
---|---|---|

Standing still | 99.8 | 100 |

Walking on level | 89.3 | 80.5 |

Stair ascending | 90.8 | 88.6 |

Stair descending | 89.8 | 86.2 |

The cross-validation result of parameter selection of SVM-PCA.

Contour map of parameter selection results

3D view of parameter selection results

The kernel parameters of different kernel functions were selected after several simulation experiment as follows:

The KPCA and PCA processing results of testing samples.

According to the analysis result, we can see that if the selection of the kernel parameters is appropriate, good dimensionality reduction result can be obtained through KPCA algorithm. Algorithm based on KPCA has more excellent feature selection capability compared with PCA.

We also took the columns of PCs which occupied over 95% information of original data. A few numbers of new input eigenvectors were fed to the SVM classifier.

As an example, when polynomial kernel function was used, the accuracy rate can be obtained; it reaches as high as 92.5%. The parameters of SVM are

Accuracy of different movements with KPCA2.

Moving pattern | Training accuracy (%) | Testing accuracy (%) |
---|---|---|

Standing still | 100 | 100 |

Walking on level | 86.4 | 85.7 |

Stair ascending | 92.1 | 88.8 |

Stair descending | 91.4 | 90.1 |

The error figure of SVM-KPCA2.

Based on the experimental results, for the same testing data, the recognition of the algorithms based on KPCA with different kernel functions were obviously higher than algorithm based on KPCA. The biggest defect of KPCA over PCA is that more runtime would be required by KPCA algorithm during the training stage because it mapped data to a higher-dimensional space in order to perform PCA. However, the additional time could be taken as a one-time cost and has little impact on the recognition speed in online classifying.

The average recognition accuracy and running time with different processing algorithms were compared in Table

Comparison of recognition rate with different processing methods.

Processing method | SVM | SVM-PCA | SVM-KPCA2 |
---|---|---|---|

Average recognition accuracy | 92.9% | 88.7% | 91.1% |

Data dimension | 70 | 42 | 42 |

Running time | 0.46 s | 0.21 s | 0.22 s |

This study demonstrated that the foot pressure sensing shoes designed in this paper was able to recognize four walking patterns accurately. The experimental results showed that the classification method fusing SVM and KPCA was superior to the method that only used SVM or fused SVM and PCA. The average recognition accuracy based on KPCA-SVM classifier produced 91.1%, and the classifying speed is twice as fast as that SVM classifier. These promising results may help the future controller design of exoskeleton robot.

However, there still exists some drawback of our designed system. The processing speed of microcontroller and ZigBee communication used in the data acquisition mode is limited, which result in lower sampling rate. Higher-speed

This research is a general project, Project 61305131 supported by the Natural Science Foundation of China. Special appreciation should be given to the Research Centre of Fluid Power Transmission and Control, Beihang University, for the sake of their selfless help.