This project describes how to recognize certain types of human physical activities using acceleration data generated from the ADXL345 accelerometer connected to the Intel Edison board.
I have also published this project on the Intel Developer Zone site.
Human activity recognition has a wide range of applications especially in wearables. The data collected can be used monitoring patient activity, exercise patterns in athletes, fitness tracking and so on.
We will be using support vector machine learning algorithm to achieve this. The project is implemented using the LIBSVM library and done separately in both Python and node.js.
The set of activities to be recognized are running, walking, going up/down a flight of stairs and resting. We collect the accelerometer data over a set of intervals, extract the features which in this case are the acceleration values along the x,y and z axes. We then use this data for building a training model that will do the activity classification.
The project code can be downloaded from here
The diagram below shows the pin connection for the ADXL345 to the Intel® Edison board.
Part 1. Python Implementation.
Setting up LIBSVM
Download the LIBSVM library and transfer the LibSVM zipped folder to the Intel® Edison board root directory using WINSCP. Then extract it by running:
Run make in libsvm-3.21 directory