我试着在Android上做一个“跟踪”应用。我使用的是融合的位置Api,就像在很多不同的站点上一样,我用它的准确性来过滤这些位置。
public void onLocationChanged(Location location) {
if (location.getAccuracy() <= 10.0f && location.hasAccuracy() ) {
//saveLocation(); or whatever
}代码是更详细的,它只是为了反映想法。
这个应用程序在我走路的时候画一个Polyline,我每5秒得到一个位置。如果GPS没有启用,我说用户可以启用它。
问题是(我不允许上传图片,所以我会描述它),我的路径/路线,线,做奇怪的曲线,进入建筑物,etc...and我不知道如何保持直线在街道上.
如果我更改为“旧”API,使用locationManager等,我会得到更好的位置吗?或者有另一种方法来处理Fused Location
谢谢!
发布于 2015-06-01 19:48:51
全球定位系统的信号通常很“嘈杂”。根据我的经验(主要是位置管理器),即使接收器是静止的,连续的gps测量也可以“跳”10米。将原始数据点与多条线连接起来可能会显示出一条非常锯齿状的路径。
我的建议是更快地采样并过滤数据。过滤方法有很多种。例如,您可以简单地平均最近的N个纬度值(对经度也是这样) --一个“运行平均”过滤器。一种更复杂的方法将使用关于可能的速度和方向变化的知识(例如卡尔曼滤波)。
https://stackoverflow.com/questions/29924201
复制相似问题