When we began LeanLeft, we thought that we would be basing our threshold values on the common posture values of others. We collected data from 20 people, and began to manipulate it. We took the Fourier transform of one person's data and discovered that the peak values for each axis correlated with the threshold values for good posture!
We then realized that instead of applying a general threshold value to all people, we could customize our values for each person. We created a calibration process so each person can customize LeanLeft to their ideal posture.
Some of the accelerometer data plots that we collected
When setting up LeanLeft, we will calibrate the device to your ideal posture. The calibration process consists of taking accelerometer data for the x, y, and z axes in the following positions:
We then take the Fourier transform of this data, and use the peaks of the transform to find the ideal accelerometer values for good posture for the x, y, and z axis.
We create a "padding" around this value to create a threshold for good posture for each axis.
Since we received threshold values for each axis while calibrating, we can now check our accelerometer readings to see if they are within the threshold or not. We read live data, and show you your posture in each axis. We compare our live readings to our threshold values to ensure that you are maintaining good posture. It is easy to look at the live plots and see how you need to adjust yourself to keep your posture within the good posture threshold. If your posture is worsening, LeanLeft will alert you to adjust yourself accordingly.
Here is a link to our github repository: https://github.com/askrishnan/PostureTracker
Here is a video of the product in action!! Take a look.