Skip to content

IRC-SPHERE/embedded-features

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a test of feature extraction performance (speed, RAM usage, ROM usage) on ARM Cortex-M3 and M4 cores.

Please cite the following paper if you use this repository:

  • A. Elsts, R. McConville, X. Fafoutis, N. Twomey, R. Piechocki, R. Santos-Rodriguez and I. Craddock. On-Board Feature Extraction from Acceleration Data for Activity Recognition, EWSN 2018.

Features

Importing data:

cd import
./load_sphere_challenge_files.py

This creates a number of .c files in the data directory, each containing 15000 samples of 3-axis acceleration data. The data is expressed as 8-bit signed integers.

Running

Running natively (the same architecture as on the machine it is compiled on):

cd feature-test
make run ARCHITECTURE=native

Running on an emulator - needs Zephyr OS and Zephyr SDK to be installed:

cd feature-test
make run ARCHITECTURE=zephyr

Running on hardware (a SPHERE board) - needs Contiki OS and ARM compiler to be installed:

cd feature-test
make run ARCHITECTURE=sphere

Other supported targets are: z1 (for Zolertia Z1 with msp430), zoul (for Zolertia Zoul with CC2538) and nrf52dk (for Nordic NRF52DK with Cortex-M4F).

Features

Note: for increased performance, some of the FFT-based feature results are not normalized! To get the correct result, they should be divided either by FREQUENCY_FEATURE_WINDOW_SIZE or by FREQUENCY_FEATURE_WINDOW_SIZE^2 depending on the feature.

Generating results for comparison

Go to the top directory and run

./generate_features.py

This will generate a number of CSV files in the export directory. Each file is based on 25-minute data from a single participant and includes all of the supported features.

This will run the feature test natively. Prerequisites:

  • GNU make
  • GCC
  • Python3

Results

  • The export directory will contain the .csv files with the different features after running generate_features.py.
  • The result directory contains the processing duration evaluation results on the different hardware platforms.

About

Source code release for our EWSN 2018 paper

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published