Accelerometer - motion detection (iphone)

I need to find a better approach to solving the problem, trying to recognize physical movements - from the iPhone in my pocket - for example, using waling, stopping, turning left / right while sitting.

I thought that I only heuristically find the data corresponding to each action, then check the input values ​​for this data (with a threshold) and see what happens. This is a very crude approach, of course, therefore, perhaps using something like the Support Vector Machine methods, but it seems too complicated for the time I have to develop.

What approach would you suggest here?

+4
source share
1 answer

Walk . Make the signal fft by the signal of gravity. Measure its frequency response for walking at different speeds, and then set a simple threshold.

Stop : if average power, i.e. the total energy in the signal over the past few seconds, falls below a certain threshold, then you can say that the user has stopped.

Turn left, right . Use the gravity vector and gyroscope rotation speed vector to determine if the user is turning clockwise or counterclockwise.

Seat It will be very difficult to determine, but if you are lucky, SVM will find the correct template.

Each of the above can be weighted, and then you will need to find a good way to get training data for training your SVM. Perhaps you can transfer signals from your phone to a web server and simultaneously record user movements manually.

Your Best Starting Point - Apples Code Example: CoreMotionTeapot

Alternatively, you can analyze the GPS signal. This will give you a very good way to detect a larger movement of users, such as walking / moving or changing the title, etc.

+6
source

Source: https://habr.com/ru/post/1345909/


All Articles