Navigation

Benchmark cyclic activity recognition database using wearables

This dataset will be published in the context of a journal paper within the Sensors Journal Special Issue: Inertial Sensors for Activity Recognition and Classification 

This dataset is  is published as a journal article in the Sensors Journal Special Issue: Inertial Sensors for Activity Recognition and Classification  . The paper includes a fuill description of the dataset as well as the methods used to annotate it [1]

This dataset is an extended version of our paper published as [2]

 

Dataset Summary

 

This is just a summary of the dataset. All details of study setup, data statistics and sensors can be found in [1] and [2].

Age 27 ± 6 years
Gender 28 female, 52 male
Height 174 ± 7 cm
Weight 66 ± 18 kg
Shoe size (EU) 41 ± 2
Handedness 74 right, 6 left
Location 56 from Erlangen, 24 from Ljubljana

 

 

Citation

Please cite this publication when using the data set:

[1] C. F. Martindale, S. Sprager and B. M. Eskofier, “Hidden Markov Model-Based Smart Annotation for Benchmark Cyclic Activity Recognition Database Using Wearables” Sensors 201919(8), 1820

doi: 10.3390/s19081820

[2] C. F. Martindale, N. Roth, J. Hannink, S. Sprager and B. M. Eskofier, “Smart Annotation Tool for Multi-sensor Gait-based Daily Activity Data,” 2018 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops), Athens, 2018, pp. 549-554.
doi: 10.1109/PERCOMW.2018.8480193

Download

The dataset can be downloaded here.

The download includes all raw data and all annotations.

Please contact Christine Martindale. in case of questions or urgent queries.

 

For easy access of the data a sample python script and sample matlab script for loading the data can be found here: [to be added soon]

 

The file names are in this format: subjectX_countY where X refers to the subject number and Y to the data recording (the counts are consecutive in time). The time between ‘counts’ was excluded due to occlusion or sensor failure (as described in [1]).

e.g. subject1_count_1, subject1_count_2, subject1_count_3, subject1_count_4, subject1_count_5 contain all the data from subject 1 in consecutive order.

However after subject 63, the naming convention changes to : subjectXy_countY where y shows the section of the dataset. Between each ‘y’ the hardware was resynchronised.

e.g. subject631_count_1, subject632_count_1, subject633_count_1, subject633_count_2 contain all the data from subject 63, in consecutive order. The system was resynchronised between subject631_count_1 and subject632_count_1, between subject632_count_1 and subject633_count_1. However NOT between subject633_count_1 and subject633_count_2 .

 

The data is stored in the following variables:

Sampling frequency was 200 Hz therefore each sample in the data is 1/200 = 0.05 s.

‘dataEndInd’ – sample number at the end of this data, this index allows one to calculate the time between ‘counts’
‘dataStartInd’ – sample number at the start of this data, this index allows one to calculate the time between ‘counts’
‘iSplitCount’ – the current count for this subject

‘AccX_leftFoot’ – Accelerometer X-axis of the left foot sensor (see figure 1 in [1])
‘AccY_leftFoot’ – Accelerometer Y-axis of the left foot sensor (see figure 1 in [1])
‘AccZ_leftFoot’ – Accelerometer Z-axis of the left foot sensor (see figure 1 in [1])
‘GyrX_leftFoot’ – Gyroscope X-axis of the left foot sensor (see figure 1 in [1])
‘GyrY_leftFoot’ – Gyroscope Y-axis of the left foot sensor (see figure 1 in [1])
‘GyrZ_leftFoot’ – Gyroscope Z-axis of the left foot sensor (see figure 1 in [1])
‘AccX_rightFoot’ – Accelerometer X-axis of the right foot sensor (see figure 1 in [1])
‘AccY_rightFoot’ – Accelerometer Y-axis of the right foot sensor (see figure 1 in [1])
‘AccZ_rightFoot’ – Accelerometer Z-axis of the right foot sensor (see figure 1 in [1])
‘GyrX_rightFoot’ – Gyroscope X-axis of the right foot sensor (see figure 1 in [1])
‘GyrY_rightFoot’ – Gyroscope Y-axis of the right foot sensor (see figure 1 in [1])
‘GyrZ_rightFoot’ – Gyroscope Z-axis of the right foot sensor (see figure 1 in [1])
‘AccX_leftWrist’ – Accelerometer X-axis of the left wrist sensor (see figure 1 in [1])
‘AccY_leftWrist’ – Accelerometer Y-axis of the left wrist sensor (see figure 1 in [1])
‘AccZ_leftWrist’ – Accelerometer Z-axis of the left wrist sensor (see figure 1 in [1])
‘GyrX_leftWrist’ – Gyroscope X-axis of the left wrist sensor (see figure 1 in [1])
‘GyrY_leftWrist’ – Gyroscope Y-axis of the left wrist sensor (see figure 1 in [1])
‘GyrZ_leftWrist’ – Gyroscope Z-axis of the left wrist sensor (see figure 1 in [1])
‘AccX_rightWrist’ – Accelerometer X-axis of the right wrist sensor (see figure 1 in [1])
‘AccY_rightWrist’ – Accelerometer Y-axis of the right wrist sensor (see figure 1 in [1])
‘AccZ_rightWrist’ – Accelerometer Z-axis of the right wrist sensor (see figure 1 in [1])
‘GyrX_rightWrist’ – Gyroscope X-axis of the right wrist sensor (see figure 1 in [1])
‘GyrY_rightWrist’ – Gyroscope Y-axis of the right wrist sensor (see figure 1 in [1])
‘GyrZ_rightWrist’ – Gyroscope Z-axis of the right wrist sensor (see figure 1 in [1])

(if relevant/exisiting) ‘AccX_rightPocket’ – Accelerometer X-axis of the right Pocket sensor (see figure 1 in [1])
(if relevant/exisiting)’AccY_rightPocket’ – Accelerometer Y-axis of the right Pocket sensor (see figure 1 in [1])
(if relevant/exisiting) ‘AccZ_rightPocket’ – Accelerometer Z-axis of the right Pocket sensor (see figure 1 in [1])
(if relevant/exisiting)’GyrX_rightPocket’ – Gyroscope X-axis of the right Pocket sensor (see figure 1 in [1])
(if relevant/exisiting)’GyrY_rightPocket’ – Gyroscope Y-axis of the right Pocket sensor (see figure 1 in [1])
(if relevant/exisiting)’GyrZ_rightPocket’ – Gyroscope Z-axis of the right Pocket sensor (see figure 1 in [1])

‘pressure_left_1’ – Pressure sensor 1 on left foot  (see figure 1 in [1])
‘pressure_right_1’ – Pressure sensor 1 on right foot (see figure 1 in [1])
‘pressure_left_2’- Pressure sensor 2 on left foot  (see figure 1 in [1])
‘pressure_right_2’ – Pressure sensor 2 on right foot (see figure 1 in [1])
‘pressure_left_3’- Pressure sensor 3 on left foot  (see figure 1 in [1])
‘pressure_right_3’ – Pressure sensor 3 on right foot (see figure 1 in [1])
‘pressure_left_4’- Pressure sensor 4 on left foot  (see figure 1 in [1])
‘pressure_right_4’ – Pressure sensor 4 on right foot (see figure 1 in [1])
‘pressure_left_5’- Pressure sensor 5 on left foot  (see figure 1 in [1])
‘pressure_right_5’ – Pressure sensor 5 on right foot (see figure 1 in [1])

‘OnGroundPhase_left’ – One hot encode for periods of time where the left foot is on the ground
‘OffGroundPhase_left’- One hot encode for periods of time where the left foot is off the ground
‘OnGroundPhase_right’- One hot encode for periods of time where the right foot is on the ground
‘OffGroundPhase_right’- One hot encode for periods of time where the right foot is off the ground

NB: During the walking activity the transition from  OnGroundPhase_left to OffGroundPhase_left would correspond to Toe off and the transition from OffGroundPhase_left to OnGroundPhase_left would correspond to heel strike. The same for the right foot.

 

One hot encoded activity labels. for definitions see Figure 2 and table 4 in [1].
‘walkActivity’
‘runActivity’
‘jogActivity’
‘side_stepActivity’
‘jumpingActivity’
‘hopActivity’
‘skipingActivity’
‘stairsActivity’
‘restActivity’
‘sitActivity’
‘cycleActivity’
‘runOnSpotActivity’

‘unknownActivity’ – any activity occulded from the camer view

‘labelConversion’ – list of all possible labels of tasks (see table 4 in [1])
‘initial_activity_labels_all_str’ – current task per sample
‘initial_activity_labels_all_no’ – the start of the current task per sample as in index of labelConversion

(if relevant/exisiting) ‘cycleDuration’ – duration of all cycles within the cycle activity per foot
(if relevant/exisiting) ‘cyclecount’ – number of cycles within each cycle activity per foot

 

Please note all activites include standing, pauses and mistakes.