-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve accuracy of location updates and add a usable error estimate in OfflineProvider #19
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Accuracies are estimated using mean square distance from other wifis Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
…ersion Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Signed-off-by: mvglasow <michael -at- vonglasow.com>
wish7code
added a commit
that referenced
this pull request
Mar 20, 2016
Improve accuracy of location updates and add a usable error estimate in OfflineProvider
That sounds so cool... I'm excited to test! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Improvements:
Notes:
Using multiple cells for geolocation works only where the full cell ID is available. On 3G/4G, the full ID is only available for the serving cell (for neighboring cells only the PSC/PCI is available until the device connects to that cell). On multi-SIM devices, where there is one serving cell per SIM slot, all cells can be used if they are exposed through the Android API. Note that some devices never report any neighboring cells.
When the reported accuracy is low (several hundred meters or more), this is typically the result of a moved wifi: Suppose the device is picking up n wifis, of which one has moved. This will dramatically increase the error estimate for each location – the outlier will get an error close to the actual distance from the others, while all the others will get 1/n times that distance as an error. The synthesized location will have an error which is slightly lower than 1/n times the distance the one wifi has moved. All of this can be observed in the logs. The location reported will generally be only slightly off (much closer to the actual location than it was previously). The more stationary wifis there are in view, the better the result will be. A possible future improvement could be to identify obvious outliers and ignore them.
Blacklisting is not yet implemented – I had a look at the mechanisms in Radiobeacon today and they're somewhat complex. That will be a future extension – though the current code already provides for some generic filtering (basically a series of
if
statements) which can easily be extended to filter for other criteria.