iOS Android 汽车实时行驶路程计算

找到的思路转载:https://blog.csdn.net/qq_36252003/article/details/73188188

 

第一版: 把每个定位点都记录下来,利用高德提供的工具一个个点距离相加. 如果点与点之间的距离大于1公里(就认为这个手机中途没信号了),那么这两个点就规划出一条路径. 这个方法能基本解决需求,但是因为点对点计算,每个点的精确度不一样,就算过滤掉基站定位的, 精确度还是有很大的问题,通常每10公里有1-2公里的误差.于是乎...接着研究下个版本

第二版: 应用高德的思想,每获取30个定位点,交给高德去纠偏,高德会把这30个点修正, 把漂移到路外面的点,修正到路中间,给出一条平滑的轨迹,丝般柔滑... 同时还有这30个点的distance数据.然后我要做的就是把轨迹和distance记录下来... 当然每次去纠偏都会把最后一个点存下来,放到下一次30个点的最前面,这样用户在没信号的过程中,也能得到相对精确的数据. 我记得当时我已经是对着总监拍胸脯了,因为毕竟是高德的官方推荐套路... 事实证明我被高德华丽的文案套路了.项目出现了比第一版还严重的问题, 就是高德的纠偏会过渡纠偏,比方我在等红灯的时候,如果当时定位打到右转的路上, 纠偏就会去那条路绕一下,最后导致公里数增加... 虽然后面做了优化,但是还是会有小概率出现这种问题,最后pass

第三版: 目前在用的一个版本,相对是比较稳定了,但是还是会出现一定的问题.说下思路: 首先沿用轨迹纠偏的思路做了优化,把轨迹点抽稀,出现问题的概率少了一点, 然后纠偏出来的distance和每个点对点计算出来的数据做比较,如果误差比较大,按照点对点的数据来; 最后的里程换了新的算法,先把每个点都保存下来,因为每个点的对象都是有道路名称的. 然后按照每个名称获取到车辆行驶中的途经点,起点终点我们有, 之后就能用高德导航规划出一条轨迹,同时算出里程. 问题:目前来说,因为定位点有误差,比方说高架上,高速上的误差会让里程增加很多, 做了不少优化,之后趋于稳定,但是还有会有小概率的误差.

以上供大家参考

自己的解决方案:

1.百度鹰眼:

室内测试经纬度漂移严重,在室外测试比较稳定,可以使用。但是数据需要存储在百度后台,需要存储自己服务器的只有获取百度数据之后再保存到自己服务器。使用方法比较简单。

2.高德导航(智能巡航):

该模式比较百度鹰眼使用方式更为简单,直接开启巡航,在回调函数中获取实时的位移的就行。目前不知道这个距离有没有经过优化处理,在和高德技术支持沟通。还有个问题就是回调的触发条件也有点问题。

3.百度轨迹纠偏:

百度最新上线的web api 中有了轨迹纠偏接口,配额免费每天100次,由于收费没有太过考虑。

4.高德轨迹纠偏:

高德轨迹纠偏集成之后测试效果不理想。。。

以上供大家参考

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值