​
EECS349
Machine Learning
Northwestern University

Smartphone-Based Recognition of Human Activities and Postural Transitions

Jiahui Liu, Meng Lu, Tianyu Huang

Department of Mechanical Engineering
Northwestern University
Evanston IL 60201

Contact: tianyu.huang@u.northwestern.edu

DOWNLOAD REPORT

Motivation

Our task is to recognize human activities and postural transitions based on the oscillogram recorded by smartphone. This task can be employed to provide support in many applications, for example, the system can be used to detect people's presence and the activation so that it is possible to infer the activities performed and places showed based on the sensors signals along with other relevant aspects. Also, this system is capable to monitor sleeping, sitting and walking time during the day. Consequently, the collected Human activity recognition information can be exploited to anticipate future people requirements.

Data

The data is downloaded from UCI data repository. The original data was recorded by a smartphone. 30 volunteers, whose age was from 19-48 years, carried out the experiment. They were wearing a Samsung galaxy SII on the waist with embedded accelerometer and gyroscope to capture acceleration and angular velocity. 

Picture
Figure 1. The axis orientation of the inertial sensors

​Three static postures (standing, sitting, and lying) and three dynamic activities (walking, walking downstairs, and walking upstairs) were recorded by each volunteer. The data set also includes postural transitions occurred between the static postures (stand-to-sit, sit-to-stand, sit-to-lie, lie-to-sit, stand-to-lie, and lie-to-stand). 
​

Features

The features selected for this database come from the time domain oscillogram recorded by 3-axial accelerometer and gyroscope. A Fast Fourier Transform (FFT) was applied to some of these signals producing frequency domain signals. A sample feature is shown below:
​
Picture
Figure 2. Illustration of a sample feature (mean acceleration in y direction) in time domain (orange) and frequency domain (grey) extracted from one piece of data recorded by the smartphone

​Time domain features:
  • Body and gravity linear acceleration and angular velocity (XYZ directions): mean value, standard deviation, max value, min value, signal magnitude area, energy, interquartile range, signal entropy, autoregressive coefficient. correlation coefficient. 
  • Acceleration: Angle between two vectors.

Frequency domain features:
  • body and gravity linear acceleration and angular velocity (XYZ directions): mean value, standard deviation, max value, min value, signal magnitude area, energy, interquartile range, signal entropy, autoregressive coefficients, correlation coefficient. 
  • Angular velocity(XYZ): index of the frequency component with largest magnitude, weighted average of the frequency components to obtain a mean frequency, skewness of the frequency domain signal, kurtosis of the frequency domain signal, energy of a frequency interval within the 64 bins of the FFT of each window.

​The 561 attributes were numerical attributes. There were 10930 examples in the dataset and 70% of the data selected as training set, and the remaining 30% would be the test set.

Method

Four different algorithms are applied to this classification task​: Logistic Regression (LR), Support Vector Machine (SVM), Neural Network (NN) and Decision Tree (DT). Because each team member has expertise in different software, the four methods were implemented on different platforms. Below is a summary of algorithms and platforms used:

Method          Platform
LR                   R and Weka
SVM               MATLAB (coded by ourselves) and Weka
NN                  MATLAB (Neural Net Fitting Toolbox)
DT                   Weka

To obtain best performance, for different algorithms, different subset of features/attributes are used, as summarized below:

Method           Attributes
LR                    frequency domain attributes (259)
SVM                the frequency domain attributes of body linear acceleration and angular velocity​
NN                   all attributes (561)
DT                    frequency domain attributes (259)


Result

The accuracy achieved by each method:

Method                                             LR                    SVM                   NN                   DT                            
Accuracy by R/MATLAB              0.879                  0.74                  0.812
Accuracy by Weka                          0.9                   0.837                                         0.858

Please refer to our report to get the analysis and discussion over these results.
Powered by
✕