This is an Android application that solves Dead reckoning with help of step counter.
StepCounterService: This module detects each step with the use of accelerator sensor.
RoutingService: This module with each step and the direction of heading for that step tries to map the users movement.
ActivityRecognition: With ActivityRecognitionAPI of Google Play Service tries to classify the type of activity.
InPocketDetection: Determines wether the phone is in user's hand or pocket.
GyroOrientation: Calculate heading with the use of gyroscope sensor.
Orientation: Compass with magnetic declination fixed.
ScatterPlot: Plot the movement of user.
Filter: Implementation of Low Pass Filter, Complementary Filter and Median Filter for increase of accuracy.
This is an example of movement of about 700 meters with this app whithout the use of GPS.
ScreenShot:
Movement on Map with same scale:
- Add movement calculation for other than walking.
- Add heading detection when phone not in hand.
- Merge Master with optimize branches
- Refactor GyroOrientation.java