Difference between revisions of "Location Manager"
(→Android) |
(→Android) |
||
Line 29: | Line 29: | ||
Besides the stated systems, the user can utilize the position of GEO-Objects by clicking the {{key press|Use Location}} button in the [[UBIK Client Basics#Context Menu|Context Menu]]. Pose estimation is started once the device pose is requested by another part of the application (e.g. [[POI_View|POI View]], [[Map_View|Map View]], [[UBIK_Client_Basics#Content Browser|Content Browser]]). If the specific device does not possess the required sensor technology of an active pose estimation system, a notification is shown. | Besides the stated systems, the user can utilize the position of GEO-Objects by clicking the {{key press|Use Location}} button in the [[UBIK Client Basics#Context Menu|Context Menu]]. Pose estimation is started once the device pose is requested by another part of the application (e.g. [[POI_View|POI View]], [[Map_View|Map View]], [[UBIK_Client_Basics#Content Browser|Content Browser]]). If the specific device does not possess the required sensor technology of an active pose estimation system, a notification is shown. | ||
+ | |||
+ | == Working Principle == | ||
+ | |||
+ | Internally the Location Managers uses an Extended Kalman Filter to combine and filter pose estimation systems, based on their probabilistic error levels. Each Pose Estimation System is therefore associated with a variance level (squared standard deviation), describing the expected uncertainty. Precise systems, such as AR-Markers, are associated with a lower variance than inaccurate systems such as GPS. | ||
+ | |||
+ | The Kalman Filter keeps track of the current device pose (= best estimate) and the associated uncerctainty. The operation is subdivided into two stages: Prediction and Correction. | ||
+ | In the Prediction stage, the next pose (in time) is estimated using the Step Detector and Gyroscope Pose Estimation System. At this stage the uncertainty of the current device pose is increased, based on the elapsed time. If no Gyroscope or Step Detector is available only the uncertainty is increased. | ||
+ | As soon as a measurement from other Pose Estimation Systems is received, the current device pose is combined with the measured pose, based on their probabilistic error levels. The combined pose then serves again as the basement for the next prediction. | ||
+ | Consequently the Kalman Filter not only combines various Pose Estimation Systems based on their expected performance, but also accounts for the elapsed time between updates, reflecting the behavior of human walk. | ||
+ | |||
+ | [[File:EKF.png|700 px|center|thumb|alt=Extended Kalman Filter|Extended Kalman Filter]] | ||
+ | |||
+ | == Best Practices == | ||
+ | AR-Marker and Gyroscope are the most precise pose estimation systems. Thus it is adviced to activate them in any case. Especially in the proximity of POIs AR-Markers should be deployed, to provide a good AR-experience. Furthermore it is recommended to activate the Step-Detector in scenarios, where the mobile device points into walking direction (i.e. the operator is not expected to walk sideward). | ||
+ | In indoor environments and environments with strong magnetic fields the Compass and GPS Pose Estimation Systems should be deactivated. Routing-graph snapping should only be activated and configured where the user is in the proximity of the graph (e.g. on corridors). | ||
[[Category:Android|Location Manager]] | [[Category:Android|Location Manager]] |