Tsinganos 2017
Tsinganos 2017
Abstract—Falls can be severe enough to cause disabilities possible and another that adjusts the model to the user activity
especially to frail populations. Thus, prompt health care patterns.
provision is essential to prevent and restore any harm. The
purpose of this study is to develop a smartphone-based fall An advantage of accelerometer sensors is that the
detection system that can distinguish between falls and activities generated signal in case of a fall event is highly
of daily living (ADL). The typical fall detection system consists of distinguishable, as shown in Fig.1. This can be decomposed
a sensing component and a notification module. Android devices, into a series of stages which can be identified during the
equipped with sensors and communication services, are the best detection process [4] using a Finite State Machine (FSM):
candidates for the development of such systems. This work
incorporates a threshold based algorithm, whose accuracy is The pre-fall period, characterized by conventional
enhanced by a k Nearest Neighbor (kNN) classifier. In addition, ADLs containing some signs of instability.
this paper proposes the implementation of a personalization and The free-fall phase, during which the human body
power regulation system. It achieves high fall detection accuracy,
experiences a temporal weightless state provoked by a
(97.53% sensitivity and 94.89% specificity), which is comparable
hasty movement toward the ground, generating values
to related works.
near to 0g.
Keywords—falls; ADLs; fall detection; smartphone; The impact phase, characterized by a vertical shock
accelerometer; machine learning when the body hits the ground. In some cases, the
initial hit can be followed by a series of minor
I. INTRODUCTION impacts.
According to World Health Organization (WHO) “a fall is
A post-fall phase, in which the body lies on the
defined as an event which results in a person coming to rest
ground and a remarkable change in body‟s orientation
inadvertently on a lower level” [1]. The reasons why falls
is recognized.
occur and some people are more likely to fall may be intrinsic
or extrinsic. In the first case, chronic problems and diseases A recovery phase during which the patient may
such as arthritis and visual impairment can increase the remain still motionless if he/she is unconscious or
incidence of falls. On the other hand, environmental hazards severely injured after the collapse.
(e.g. slippery surfaces) and dangerous activities may cause a
fall. Regarding the effects, they vary from severe physical
injuries to psychological issues, depression and avoidance of
the activity that caused the fall.
The current fall detection system implementation [2] is
based on both threshold and machine learning techniques,
while it consists of four parts. The detection component
collects data from the accelerometer which are preprocessed
using a series of magnitude and time thresholds as
implemented in [3] to identify fall-like segments. A second
part extracts features from these segments that are used by a k
Nearest Neighbor (kNN) classifier to distinguish between falls
and activities of daily living (ADL). There are also two
auxiliary components; one that monitors the activation level of
the sensor and aims keeping battery consumption as low as
Fig.1 Wearable sensor acceleration signal of falling event
Signal Processing
978-1-5090-4011-7/17/$31.00 c 2017 IEEE 53 Signal Analysis
10th International Symposium on Image and Signal Processing and Analysis (ISPA 2017) September 18-20, 2017, Ljubljana, Slovenia
Table 1 Related fall detection works. The abbreviations for the sensors These studies differ in many aspects of their
are as folows: Accelerometer (Acc.), Gyroscope (Gyr.), Orientation (Ori.) implementation. For example, [3] and [8] employ both
and Magnetometer (Mag.) thresholds and machine learning techniques, whereas the rest
Ref Year Position Sensors Sampling(Hz) are comprised of threshold based algorithms only. Moreover,
[3] 2012 Belt Acc. 51.2
various filtering methods are used to smooth the noisy
[5] 2010 Shirt, Belt, Pants Acc.
[6] 2011 Waist Acc. 50
accelerometer data, such as first and second order low-pass
[7] 2013 Chest Acc.,Gyr. filters [9].
[8] 2011 Acc., Ori.. 24.45
One of the problems in assessing a fall detection algorithm
[9] 2016 Pants, Belt Accel., Gyr., Ori. 50
Head, Chest,
is the lack of an approved database of realistic falls and ADLs.
[10] 2014 Waisy, Wrist, Acc., Gyr., Mag. 25 Actually, every published study selects a different set of
Thigh, Ankle activity patterns on which they evaluate the detection
algorithm. The most common activities performed are
These phases are not present in all types of falls or may walking, running, standing up and sitting down, while
appear more than once. For example, when falling down the forward, backward and lateral fall types are simulated.
stairs the recorded signal may be characterized by the presence However, in most cases, these data are not made. Therefore,
of successive free fall and impact phases. not only is a reasonable comparison almost impossible, but the
Detecting these phases in an acceleration signal can help results are not reproducible as well.
distinguish fall-like events from common daily activities.
However, to further improve the detection rate, machine III. IMPLEMENTATION
learning techniques can be used. During this step a set of
features is extracted to retain information relevant to the A. Overview
acquired data. Then, a classifier takes advantage of these The application is comprised of two major components;
characteristics to construct a mathematical model that the detection system and the notification system. The detection
distinguishes between two or more classes. component continuously collects acceleration data sampled at
The rest of this paper is organized as follows: In Section II 50Hz, applies the fall detection algorithm, and broadcasts a
related work in the field of fall detection is presented. Section fall event when a fall is identified by the classifier. Then, the
III gives a description of the components of the proposed fall notification system sends a notification (email or SMS)
detection system, while Sections IV and V present the results containing the location of the user to predefined contacts
and the conclusions respectively. (defined in the Settings menu).
These elements were implemented using the Java
II. RELATED WORK programming language (Fig.2). In particular, the Android
Both academic research and industry have been interested Studio IDE was used for the communication of the various
in activity recognition over the last decades. Fall detection, a
subset of the former, has been studied and an array of systems
has been developed with varying degrees of accuracy. Some
use only wearable inertial sensors, while others have ambient
sensors be integrated in the living environment. Of particular
interest are the smartphone-based implementations. Table 1
displays the most representative works in the literature.
The authors of [5] and [6] use thresholds for the magnitude
of the acceleration and the acceleration at the vertical
direction. When both thresholds are exceeded within a time
window, a fall is detected. The system developed in [6] uses
angular velocities in addition to acceleration magnitude. When
both values are greater than the specified thresholds a fall is
detected. Unlike the previous implementations the phone is
attached to middle chest. In [8] they use both upper and lower
thresholds for the acceleration magnitude. If they are both
exceeded in less than 1s, the acceleration signal is compared
with a fall template using wavelet transform. Then a fall is
detected if the transformation yields high similarity. The
authors of [9] evaluate the capacity of smartphone sensors to
differentiate fall events from ADLs and they propose a low
power consumption threshold-based algorithm. Although most
works depend on thresholds, recent approaches [10] employ
feature extraction and machine learning classifiers to improve
detection accuracy. Fig.2 Home screen of Fall Detection app
Signal Processing
54 Signal Analysis
10th International Symposium on Image and Signal Processing and Analysis (ISPA 2017) September 18-20, 2017, Ljubljana, Slovenia
objects while from the WEKA library for Java the kNN
implementation was imported.
B. Data-Preprocesssing
Accelerometer data are collected with a rate of 50 samples
per second. This sampling frequency is regularly used in the
literature and satisfies the Nyquist theorem, since body
movements contain frequency components mainly in the range
of 0Hz to 15Hz ([11], [12]). To account for sensor errors two
filtering techniques have been applied to the triaxial data
(acceleration vector). Firstly, an offset value is used to correct
the collected measurements at each axis. At a next stage, a
60ms time window with Fs=50Hz is used to apply a median
low-pass filter. The major advantage of this filter is that
narrow spikes are removed while abrupt changes caused by
body motion are preserved.
C. FSM
Once a new accelerometer sample is collected, the triaxial
data along with the magnitude and time are forwarded to the
detection algorithm.
The first part of the detection algorithm can be modeled as
a Finite State Machine (FSM) that uses a series of thresholds
both on the acceleration magnitude and the time to eliminate
false positives. It consists of five states as shown in Fig.3 and Fig.3 Fall detection FSM
is described extensively in [3].
The resulting waveform was then adapted to satisfy the
D. Features wavelet definition using the MATLAB Wavelet Toolbox
(Fig.4). This technique has been previously used in [13] and
Then, a set of 14 features is extracted from fall-like [14]. The output of the wavelet transform is a two-dimensional
segments that are used by a kNN classifier to distinguish signal with columns that correspond to time and rows to scale.
between a „FALL‟ and an „ADL‟. They are taken from the To account for border effects, i.e. high values at the borders of
acceleration magnitude data collected in the interval [−2500, the CWT, 10% of the signal is removed from the left and right
1000]ms, centered at the instant of maximum peak above the borders.
threshold. Of the selected features, seven are derived from the
time domain (AAMV, IDI, MPI, PDI, ARI, FFI, SCI) and are Using the CWT of the acceleration patterns allows the
fully explained in [3], five are statistical measures (SKEW, localization of the transient state of the signal during the
KURT, IQR, POWER_IMP, STD_IMP) and two are extracted impact. Thus, a fall incidence can be detected if a maximal
from the wavelet transform as described in Table 2. surface is searched. On the contrary, an ADL will not generate
a distinctive maximum, since these activities usually generate
The time domain features capture the main characteristics repetitive patterns (Fig.5).
of the fall acceleration pattern, such as the abrupt transition
from low values to the peak, the impact and free fall durations.
On the other hand, statistical features contain information
about the distribution of the acceleration values of the fall
pattern. A negative skewness (SKEW) means that the majority
of the samples has high values, whereas the higher the kurtosis
(KURT) value the more the outliers. Considering the fall
pattern in Fig.1,we expect a positive skewness and a high
kurtosis value. Two metrics of variability (IQR and
STD_IMP) have been used since the distribution of the fall
pattern is not normal in general. Finally, the power of the
impact segment (POWER_IMP) indicates the magnitude of
the impact and can be used to distinguish between a fall and
sitting on a chair.
Two features are related to the Continuous Wavelet
Transform (CWT). These were extracted from the CWT of the
acceleration magnitude using a custom-built wavelet. This
wavelet was generated from a 2s segment of the median signal
of all the fall patterns in the dataset aligned at their peak value. Fig.4 The adapted wavelet
Signal Processing
55 Signal Analysis
10th International Symposium on Image and Signal Processing and Analysis (ISPA 2017) September 18-20, 2017, Ljubljana, Slovenia
nearest neighbors.
Table 2 Extracted features description
Signal Processing
56 Signal Analysis
10th International Symposium on Image and Signal Processing and Analysis (ISPA 2017) September 18-20, 2017, Ljubljana, Slovenia
distance weighting
J48 decision tree with pruning set to 0.2
Performing a cross-validation we can see that kNN scores
the highest performance (Table 3). A further comparison
reveals that this model is better regarding not only the AUC
performance, but other metrics as well. The high AUC value
in the 10-fold cross validation indicates that the algorithm has
good generalization properties. Consequently, the KNN
algorithm was chosen based on its overall performance on the
dataset.
The MobiAct [18] dataset contains 647 fall patterns and
Fig.6 Accelerometer activation level during intermittent walking 1879 patterns of daily activities. This set of activities was
when continued walking the sensor was considered activated. separated into train and test datasets using a 10-fold cross
validation in order to evaluate the entire classifier model. The
IV. RESULTS results of this evaluation are shown in Table 4a. Then some
common evaluation metrics can be computed as follows:
In the current work, four different classifier models are
being compared before the final model is implemented. Since sensitivity=recall=618/647=95.52%
our dataset is imbalanced (more feature tuples from „FALL‟
class), the accuracy metric is not an appropriate performance specificity=1824/1879=97.07%
measure [17]. Therefore, the evaluation of these classifiers is precision=618/673=91.83%
based on the area under the ROC curve (AUC) metric. Model
statistics are generated from 10-fold cross-validation and a The final model is built using all the activities in the
pairwise comparison is performed with a t-test. This allows dataset. Of these, the FSM module with the chosen parameters
examining whether the difference in the performance of the detects 932 possible falls, 637 of which are real falls. This
candidate models is significant, thus one classifier is preferred reduced dataset is used to build the classifier model. Using the
over the others. Once the classifier is chosen, the total confusion matrices that resulted from each of the two
performance of the system is reported in terms of accuracy, components the overall performance of the algorithm can be
specificity (SP) and sensitivity (SE) in order to be compared calculated (Table 4b). To this effect, the kNN classifier is
with other works in the literature. trained from the reduced dataset after the ENN rule is applied
with k=3, whereas it is evaluated using the whole dataset.
Between the most common classifiers, meaning Artificial Employing the above equations results to sensitivity and
Neural Network (ANN), Support Vector Machine (SVM), specificity equal to 97.53% and 94.89% respectively.
Decision trees and kNN, the latter performed better based on
the MobiFall dataset [18]. Specifically, for each model a set of To further assess the proposed algorithm, a comparison
parameters was chosen with a grid search such that the AUC with other similar studies of Table 1 is carried out (Table 5).
metric was maximized. As a consequence the following Since the dataset and the implemented algorithm of each
models were compared: model was not available, the comparison is based on the
reported values of SE and SP metrics. The recorded results
ANN was a multilayered perceptron with one hidden from our implementation are comparable to other algorithms
layer of 7 nodes, momentum 0.7 and learning rate 0.1 in the literature (Table 5). As we may see, the proposed model
performs better than the threshold based algorithms
SVM with RBF kernel and gamma set to 0.15
implemented on smartphones. This means that a machine
kNN of 7 neighbors, Manhattan distance and inverse learning classifier definitely improves the detection
performance of a threshold based algorithm (e.g. [6] and [7]).
Table 3 Paired t-test comparisons. The first column represents the base This advantage is considerable when the smartphone is fixed
classifier in each test. Parentheses contain the AUC value. A “v” denotes
that the classifier outperforms the base model, while “*” denotes that the
base model is better. Table 5 Comparison of algorithms based on SE and SP
kNN ANN SVM J48 Dai J. Lee R. Yang BS.
(1.00) (0.99) (0.95) (0.96) Abbate S. Tsinganos P.
[3] [5] [6] [7] [2]
kNN - * * *
ANN v - * * SE 100% 97.33% 77 % 95.24% 97.53%
SVM v v - SP 100% 91.30% 81% 94.25% 94.89%
J48 v v -
Signal Processing
57 Signal Analysis
10th International Symposium on Image and Signal Processing and Analysis (ISPA 2017) September 18-20, 2017, Ljubljana, Slovenia
Table 6 Battery consumption with the power management system enabled providing the MobiAct [18] dataset. We also thank the authors
and disabled of [3] and especially Gugliemo Cola (Pervasive Computing &
ON OFF Networking Lab, University of Pisa) for providing
ASUS Zenfone 0.01% (0.03mAh) 0.66% (16.45mAh) clarifications on their work.
LG D160 0.36% (6.19mAh) 0.92% (15.67mAh)
Signal Processing
58 Signal Analysis