Inspiration
The inspiration was from a conference talk I attended, where they did classification of an animal's activities, that was then passed on a classification model to find if they're sick or not, using motion censors and machine learning on the fourier transformed data collected
What it does
This app creates a weekly tracker of activity of a user for fitness purposes
to classify the activity it uses samples of acceleration and pitch of the phone in 5 second intervals, then runs the acceleration through an FFT, selecting the peaks, and with combination of those and the pitch it can detect through a model trained using machine learning on labeled data if a person is sitting, standing, walking or running, regardless of if they're actively using their phone or have it in their pocket.
How we built it
First I collected data through the matlab mobile app, and acted out each activity with censort tracking on, for 5 minutes on each activity (sitting, walking, running, separately for phone in pocket and on hand), and saving them as separate files
I later ran an FFT for 5 second intervals, detected the peaks and outputted a file containing peak amplitudes and average phone pitch angle data. This 10 dimensional space of samples is used to classify with an 80% accuracy (on the training data) using an SVM Kernel machine learning model
What's next for Fourier Fitness Tracker
I would like to add a user interface and a tracker for activities through the week and a goal settings page, that would make it more useful to people that want to be more active throughout their week and want to set goals for each activity