背景图
全球卫星定位系统及其应用中的问题

GPS 是美国国防部在上世纪 70 年代启动的全球定位计划,它为使用者提供定位、导航和定时(PNT)服务。这套系统由三个部分组成:空间部分,控制部分和用户部分。美国空军承担空间和控制部分的开发、维护和运行。[1]

GPS概览

空间部分

发射在 6 个轨道平面的 24 颗卫星,可以保证在地球的任何地点都可以至少收到其中 4 颗的信息。而通过卫星位置、接收时间和时间差,可以在空间中画出至少三个球面,收取信号的位置就在球面的交汇点上。

示意图

控制部分

控制部分包括世界范围的监控站,通过不时发出的指令使卫星维持在适当的轨道上运行,同时校正卫星的时钟。它还跟踪GPS卫星,上载更新的导航数据,并且保持卫星群的健康运行和排列状态。

用户部分

用户部分由GPS接收机组成,它们从GPS卫星收到信号并利用传来的信息计算用户的三维位置及时间。

早在 2000 年,美国时任总统克林顿宣布撤销对民用 GPS 信号的干扰,使其误差可以控制在10米左右。这是 GPS 民用时代的开端。

今天,所有智能手机的 CPU 芯片都集成了 GPS 功能。基于 GPS 的定位方案已经相当成熟,只需要捕获信号的基带芯片和转换信号的射频芯片,就可以组装一个物美价廉的 GPS 模块。

但要在手机上使用精准的地图定位,还有许多麻烦。

GPS在实际应用中的问题

空间位置技术处理(加密处理)

根据中国国家测绘局制定的《导航电子地图安全处理技术基本要求》,在中国发行电子地图,必须先交给测绘局做“空间位置技术处理”。这种加密处理其实是一种半公开算法,可以让全球通用的标准坐标系统(WGS-84)变为中国的自定义坐标系统(GCJ-02,亦称“火星坐标系”)。加密的意义在于隐藏国家一些重要的机构(如军事管理区或国防战备设施等)。

这两个坐标系统存在偏差,下图是GCJ02和WGS84的误差示意图。绿色为偏移量最小的地方,红色为偏移量最大地方。右下角为图例,最小值为0.000213487度,大概为20多米;最大值为0.0104393,大概为1公里多。

GCJ02和WGS84的全国误差示意图
局部误差示意图

解决天朝地图偏移的方法是让 GPS 数据也同样经历一次加密,这样,偏移的 GPS 定位就和偏移的地图对上了。

附录:如何看待“地形图非线性保密处理技术”?

城市峡谷

即便解决了地图加密的问题,在高层建筑密布的城市里,GPS 仍然会经常出现严重漂移。

这种环境在业内称为城市峡谷,卫星信号在玻璃建筑垂直光滑的表面发生反射,再被手机接收。于是,设备将错误计算信号的传播时间,进而得出错误的位置结论,产生近百米的误差。

Figure 3: Line-of-sight blockage and strong reflections can cause large GPS errors.

如上图3所示,GPS定位基本假设是,接收机对每个正在计算其伪距的卫星都有直接的LOS(line of sigh,无线电信号的视线传输),在开阔地形中工作无碍,但在城市环境中则偏差较大。

Uber的优化

通过在 3D 地图上模拟射线追踪的方式,UBER 试图计算每一个位置的 GPS 信号强度,进而建立概率模型,推算出更精确的乘客位置。

具体而言,第一,对于城市内任何位置的接收器,我们可以校验卫星的 LOS 是否会被遮挡。

如下图4所示,如果某颗卫星的信号比预期弱,那么很可能被大楼挡住了,你处在大楼的阴影里面,因此可以据此修正你的位置。

Figure 4: Satellite signal strengths, when combined with 3D maps, provide valuable location information.

第二,安卓手机上,LocationManager API 不仅提供了手机的位置估计,还提供每个GNSS卫星的信噪比(SNR)。 第三,使用一个在 LOS 和阴影条件下的信噪比概率分布模型,我们可以算出任何位置任何时间信号的信噪比似然估计。 第四,最终绘制出这么一张位置热力图,如下图5所示:

Figure 5: Ray tracing from one possible location to each satellite for probabilistic shadow matching. This is done for thousands of hypothesized locations.

第五,既然是一个概率模型,那根据手机上报的位置,Uber 估算出你的每一个运动点都有很多的可能性(像电子云),并最终推演你的实际运行轨迹。如下面这张动图所示。

Figure 6. A location heat map computed based on satellite signal strengths can have many hotspots. In the above example, our improved location estimate (blue path, black uncertainty ellipse) follows ground truth (yellow path), whereas standard GPS (red path, gray uncertainty ellipse) is inaccurate.

滴滴的优化

除了城市峡谷,隧道,高架等复杂场景也会导致GPS 失效。滴滴使用的 FLP(Fusion Location Provider)方案,则采用了更多定位手段。通过网络定位,路网定位和车辆航位推算,FLP 方案可以在复杂场景下弥补 GPS 的缺陷,提高定位精确度。

基于 Wi-Fi 的网络定位服务 (Geo-Rank) ,是除 GPS 外最常用的定位手段。

打开你的手机 Wi-Fi ,每一个能被搜索到的热点,都有全球唯一的 MAC 地址。而每一个位置,都有不同数量,不同信号强弱的 Wi-Fi 。这些数据的集合,就能成为这个位置独一无二的信息。

这些信息可以帮助滴滴将定位问题转化为机器学习算法排序问题。

每天,滴滴的上千万用户将共同完善这个由 MAC 地址和 GPS 位置构成的热点数据库。同时,滴滴也能记录手机的信号强度、速度和方向,进一步优化网络定位结果。

因此,即使 GPS 失效,只要你打开了Wi-Fi 功能 ,就能与云端数据库数据比对,进而确定你的位置。

另一方面,滴滴能采集大量路面行驶的车辆定位数据,使网络定位的结果更偏向于在路上。

而车辆航位推算和道路匹配可以更有效的解决隧道、高架等场景下 GPS 信号丢失或不准确的问题。

根据手机内置的加速度计、陀螺仪等惯性导航元件,车辆航位推算算法可以推算车辆的速度、航向角等信息,进行位置推算。而根据司机的轨迹数据,道路匹配算法可以推算车辆当前和下一时段所在的道路的可能性,将定位点准确绑定在道路上。

每 1-3 秒,滴滴手机端会上传一个定位包至实时计价模块,通过对每个点的降噪和补偿,就能得到一个相对准确的数据线路。

滴滴会把定位点绑定在行驶概率高的道路上

通过这些不同的工具,滴滴可以在城市峡谷、高架、隧道等各种复杂场景下降低误差,让用户获得更准确的上车点和更可靠的里程计费。

尽管如此,手机定位仍然是一件相当困难的事。

在可预见的未来,也没有什么好办法可以把定位误差稳定控制在 5 米以内。

参考资料


附录:如何看待「地形图非线性保密处理技术」?

知友-「已注销」的回答

在中国,出于“保密”的理由,所有地图被强制要求使用 GCJ-02 座标系,也就是所有 POI控制点 的座标都要被映射到一个经过“地形图非线性保密处理”之后的座标系上。更有趣的是,这个转换模块还是要由测绘部门收费的

打 Ingress(适地性游戏) 的时候,由于我并不会使用任何专业的工具,于是只能依赖 Google Earth 来自动生成地形图。然而,中国境内的道路都是按照 GCJ-02 记录的,而每个地方的海拔高度却是卫星取得的 WGS-84 座标系下面的数据。于是,生成的地形图很可能是错的——由于山口附近地形陡峭,座标偏移上几百米,可能海拔也会有上百米的错误,给我带来不小麻烦。

这个问题不可能去怪 Google。全世界就只有一个“其它国家”有这种奇葩的座标系映射。并且,如果单单把中国内地的POI映射掉的话,在边境地带就会出现中国内地的POI和其它地方的POI不连续,甚至重叠的情况。Google 对于街道图就采取了这样的措施,于是就产生了下图这样的惨状(港澳台地图不需经过加密):
大陆与香港接壤处地图混乱

知友-张浮生的回答

1: 地图这个东西,于情于理都应该有两个版本,一个版本呈现给民众,一个版本作为国家机密。民众看到的地图必须是不精确的,不正确的。

2: 工程建设需要地图,修桥铺路需要坐标,工民建领域需要精确的坐标。所以,第一个问题出现了:工程师必须要看到国家机密,这是刚性需求,但工程师也是民众,工民建的企业也是社会企业,怎么办?

我国的解决办法是,收钱,把国家机密卖出去,卖给自己人。

别扭就出现在这里:

工程师掏钱买的应该是精确的坐标,但实际情况是,工程师买来的是工程建设的资格,不是精确的坐标,而是垃圾坐标。要建设,必须向当地的测绘部门掏钱买地图,买控制点,不买不让开工。掏钱之后才发现,买来的控制点坐标,埋点时间都很久远,有的控制点已经被当地农民铲掉了,而且坐标也是不正确的,测绘局提供的坐标大多是八九十年代的,坐标系大多都是54坐标,买来的地图多成图于八十年代,掏钱之后买来的几乎是垃圾。。。掏钱之后还必须自己再掏钱去重测,重新画地图,然后工程建设单位开始招标,谁能画地图?出来?老子给你钱,你给我把这片的地图画一下。。然后招标的过程中会发现,中标的很可能又是测绘局。。。为什么?航测要资质,有航测资质的单位,一个省份就那么几家,这个标如果比较大的话,在各种原因的驱使下,民营企业要中标,难度很大

所谓的国家机密,让人感觉仅仅是一个圈钱的概念而已,你永远看不到这套【机密机制】防范了多少对国家安全有害的动作,你只能看见这套【机密机制】恶心的是自己人。

所谓的机密无人维护,测绘局说没钱。所以直到现在,还有一大部分机密是八十年代的机密。这还叫机密吗?我不知道,我只知道这些八十年代的机密,很值钱。

3:「地形图非线性保密处理技术」有用吗?有实际用处吗?肯定是有的。

  • 民众要开车导航,也不会发现导航不正确,因为高德将被处理过的地图复原了,民众表示很开森,但高德在骂娘
  • 百度地图表示,你南方挣我的钱我就不说了,老子有钱,不在乎,但你要从我这挣钱你别给我添堵啊!你要让用户看到的地图是处理后的地图,好,我把我的地图全处理了!问题来了,用户手机上的GPS信号可不管这一套啊!定位出来的结果都是没漂移的坐标,我还得在后台把用户的定位结果再给处理一遍,再显示在用户的手机屏幕上!脱裤子放屁你烦不烦啊!
  • 在新疆非法测绘的、心怀不轨的歪果仁表示,我很开心,我该测还测。我先测几个控制点,然后根据已有的民用地图做个转换。。。。诶?百度地图好像被处理过了,不要紧,实验室有的是计算机,哦,非线性的啊,有点麻烦,不过不要紧,我多测几个控制点,逼近一下。加密嘛,不要紧,就是麻烦了点而已。。。。。。。。。

实际效果,很大程度上只是恶心了自己人而已。

4:如果测绘局要推广这套处理技术的话,受害的,是一大批做地理位置应用的民间企业。

而对于防范歪国仁这方面,很显然做的还不够好,即便有防范作用,也应该考量一下,为了恶心邻居,自己天天吃屎这种行为是否值得。


轻触查看原文链接。 本文版权归原作者所有,内容仅代表原作者个人观点。版权问题举报

精选留言

掩耳盗铃,脑残孩子想出来的折腾无辜工程师的点子。

——知乎用户biggates


极大阻碍了互联网时代基于位置服务的发展。极大提高了从事地理信息科研人员的数据整合难度。极大伤害了程序员的投身地理信息行业的热情。

——知乎用户成晓强


总之,国家测绘局的这个所谓的发明创新,最大的用处就是收钱和折腾用户,至于其实际保密效果就不敢恭维了。

——科学网用户科研唯真 做人至诚


这个地图偏移对地理信息处理和GPS技术的民用化起到了巨大的阻碍作用,近年各种与地理位置相关的应用如雨后春笋般涌现,但都为中国地图的偏移而头痛不已 …… 增加很多不必要的複杂性和浪费开发、数据处理的人力 …… 浪费了大量社会财富来对技术发展与应用进行封锁。

——Github博客用户aleung

发表您的看法

加载失败,请刷新页面。若该问题持续出现,则可能是评论区被禁用。