GPS导航是怎么知道路名的?特别是一些山村公路?

毕了毕了毕了毕


这是把卫星导航和地图数据进行完美的匹配,才让我们可以通过各类的导航软件来在地图上定位我们的位置信息,而展现到我们眼前的是我们的位置在地图上的哪个地名,搜索到哪个方位地名。

这一系列,大致上由三部分来共同完成的。

地图测绘阶段

每一个gps导航软件的背后,都会有着庞大的地图数据库依托,靠着测绘和采集得出来地图数据,那么这些数据的来源和采集到底是由什么方式来执行的呢?

我们有的时候会在某些户外看到过测绘人员把测绘仪器通过黄色的三脚架支撑在地面上,在需要测量的另一端也搭建测绘仪。


通过这种发射和接收测距信号,这也就是我们在地图上用比例尺可以计算出来两个地点的距离。

我国地图比例尺:1.城镇地区1:500 1:1000 1:20002.农村地区1:5000 1:10000 1:25000 1:50000

由于地形地貌比较复杂,测绘工程人员在野外作业的时候都是比较辛苦的,也具有相当的危险性。

测绘之后,通过整合零散的数据,最后被录入到电脑中,通过二次编辑形成了地图文件。




真正的地图绘制是个很复杂的过程,对地物标注仅仅是个最基本的程序工作,这也是靠着人工采集信息录入,也就是我们在地图上可以看到我们想要了解的地名,例如哪些山村,哪些山路的稀奇古怪的名称。

通过测量的地域都有标准的经纬度。

这里要说一下经纬度的概念

简单来说就是无数条互相垂直的线,而每个相互垂直的线的焦点就是在地球上的坐标点,就是我们所说的一个地点的经纬度。

卫星导航和接收终端

在我之前的文章中有提到过,地球的轨道卫星用于导航的主要有中国的北斗卫星,美国的GPS卫星和俄罗斯的格洛纳斯卫星。

我们的手机或者是车载导航中都已经集成GPS模块或者是北斗模块,当打开手机的定位之后,经过接收到卫星的信号,三颗卫星可以实现XYZ方位的定位信息,这样也就得出来手机的经纬度,有些软件可以实时的查询自己所在的经纬度,有兴趣的小伙伴可以去尝试着自己测试一下。

经纬度信息和地图软件的结合

由于地图上的位置在测绘的时候,就已经标明有明确的经纬度了,那么通过打开手机导航软件,通过软件调用手机与卫星交互所形成的手机位置信息,在地图上显示出来,就可以完成导航和查看地图距离等操作了。

结语

大致的过程就是这个样子,关于测绘,要求的精度准确率极高,不允许有半点的差池,我们在地图上所能看到的信息都是经过一点一点的收集而形成的,同时也是借助这里向着辛苦的在地球上画点的人-测绘工程人员致敬。


感谢阅读,如果喜欢可以随手点个赞,也可以在下方评论区讨论一下你们的看法。

吉吉美学


应邀回答本行业问题。

GPS导航并不知道路名,是他应用的地图软件提供的地名信息。

GPS提供的其实是定位功能,而这个定位其实是手机完成并提供的。

我们的手机硬件配置之中有GPS定位芯片,目前大部分被集成到了手机的Soc里,也有少部分是单独的定位芯片。这些定位芯片会通过搜索定位卫星系统的信号,去计算出来当前的经纬度(高度)。

目前国内的智能手机70%是支持多套卫星定位系统混合定位的,搜索的卫星包括美国GPS、中国的北斗、俄罗斯的格洛纳斯、欧洲的伽利略,苹果手机不支持北斗。

GPS导航软件通过定位权限去从手机获取到当前的经纬度。GPS导航软件还会内置某款地图软件,根据用户当前的经纬度以及选定的目的地,后台计算出来用户从当前地到目的地得具体行进路线。一般还会提供多条路径,供用户选择。

地图软件提供地图,地图带有路名。

地图是由多个图层组成的,包括地形地貌、道路、建筑物、学校、医院、公园等,这些共同组成了我们最终看到的地图。

我们常用的地图,基本上有几种获得的途径,一个是地图软件派出地图信息集采车等人工收集,还有一些地图公司会从第三方购买一些地图资料。我们通常的地图上的道路等信息资料基本是从第三方的公司购买的。

现在我们也有时候会发现,道路的名称已经变更了,但是在导航的时候发现还是原来的名字,就是因为相关的资料还没有被更新。

总而言之,GPS导航里道路的名称是地图软件自带的,而一般的GPS导航软件都会内置一款地图。

以上个人浅见,欢迎批评指正。喜欢的可以关注我,谢谢!

认同我的看法的请点个赞再走,再次感谢!


通信一小兵


高德地图算是比较常见的 APP,有时候看着高德地图,你会不会想:“它是怎么知道哪里堵车了呢?”。

这里要分清一个概念,我们往常说的 GPS、北斗这些卫星导航系统,是不清楚各个街道的名字的,而各个地图 APP,才是真正将 GPS、北斗这些卫星导航系统的数据使用起来,和各个地区的地名、路名联系起来。

那么这些地图厂商是怎么获取这些地名、路名的呢?

我知道的有:

  1. 官方采集。这种方法是地图厂商自己花费人力物力来收集各个地区的位置信息,来集成到自己的地图系统中去的。


  2. 获取交通部门的信息。要知道现在的道路系统是很发达的,到处布满了摄像头,而且像出租车、公交车这种受管制的车辆,都是有定位系统的,所以交通部门的数据可以说是很全面了。

  3. 向专业公司购买。如果你想做一个地图导航类的APP,第一个想法难道是去自己画个详细的地图?当然不是这样耗时费力,你可以找专业的提供地图数据的公司购买,毕竟他们专门搞这个,比你重新造轮子便宜多了。

知道了获取地图信息的途径,其实很多东西就能联想到了。

最开始的时候,地图厂商是与出租车合作,获取每辆出租车的位置信息,然后再用自己的系统分析出哪里的车流比较多。

后来慢慢的私家车都内置了导航系统,各种导航 APP 常常可以在车上看到,这样地图厂商就有更多的获取路况信息的途径,信息也就越来越准确了。


月半不是胖,都看到这里了,为你收获了一份知识点个赞吧!

月半程序员见闻


感谢您的阅读!

你用GPS导航定位的时候,甚至一些山沟沟,它都会告诉你具体的地名。难道是它能够自动识别地名吗?知道一定位,就能够将地名显示出来?

实际上,GPS定位所获得的是什么——本质是GSP的接收器接收GPS信号并计算出我们所在的经纬度。

因此,你打开了iPhone本身的指南针,就能够看到GPS定位的最基础的东西。

而地图软件在经过GPS定位的时候,地图软件会提供地图,多个图层的地图中显示的内容不同,包括地名,路名等等。

而地图这样地名信息怎么来的?

  • 地图公司会有专门的采集车,通过数据采集,上传到数据库中。
  • 交通部门的相关信息的收集。
  • 众包数据就是每个人都参与的任务数据,一般分为主动参与和被动参与,地图软件80%实时路况数据来源于此。
  • 专门的收集公司提供,当然这些都是他们的业务。

地图软件所显示的地名或者是路名不会是在我们定位的时候就会一蹴而就,它一定是通过人工手动上传而出现的。


LeoGo科技


商业公司不知道的地名,政府机构是肯定是肯定知道的。可商用的地图数据是可以卖给企业地图服务公司的,这也是地图服务商的重要地图数据来源。但这些数据只提供基础数据,如果想要更详细的地图服务,公司就需要自己去测量啦,比如实景图这种。所以,地图软件都是有自己的测量团队或者合作伙伴,去做这些详细到村、组的路线测试,以保证能最大程度知道路在哪儿,叫什么名字。但山村公路其实也仅限于主要路干,比如进村相连的省道,镇上的公路,进村之后,大多数都是路线指引,被称为无名路。无名路这个事情,不只是很多山村公路,在城市也有这样的事情,主要是因为新开的路,地图还没有来得及更新,或者地图从来都不知道它名字。于是每次开车的时候,就会听到,前方右转,进入无名路…


初始值


我们说的GPS,其实是美国全球定位系统的简称,说习惯了,就成了导航系统的代名词了。就像我们说给你发个微信一样,微信是软件名称,语文老师会告诉你,正确的说法是“用微信给你发条消息”,不管说什么,这样都是无所谓的,有些人非得矫情,还扯上国家安全,民族大义,要改名叫北斗,最好是华为北斗,纯粹是堤高于岸。

说回正题,一个可以提供商用的导航系统,分为两个部分,图资和算法,再加上一些周边,比如用户操控界面,附加功能,这些整合在一起才能构成完整的导航系统。

图资方面,需要专业机构的授权,这方面涉及国家安全,所以必须由国家统一管理,并不是每一家公司都弄一套全国地图。拿到授权和数据,再结合设计目的开发路线规划算法,这是各家的核心技术,目前主流导航虽然算法不同,但结果差别不大。

导航之所以知道道路名称,甚至村里的羊场小路,是因为所用的图资里面有该区域的数据,最直观的体现就是在没有下载离线地图,手机又没有联网的情况下,地图是无法显示的。


想要熊猫898


先说结论,gps不知道路名!

这应该算是个认知误差吧?不过平时也不重要。

我修改一下问题:

导航软件怎么知道路名的?它是怎么工作的?

导航软件(高德,百度等等)也叫地图软件,只不过有个导航功能而已。

它的道路信息来自地图,也就是我们使用时需要下载的地图数据包。而这数据包来源,高赞回答说了,主要是自采数据、交通部门数据,官方绘图部门等等。


有了这些地图数据还不能实现定位和导航,这时就需要导航设备和导航卫星(美国gps、中国北斗等)的帮助。一般使用过导航设备的都听说过搜星吧?就是搜索导航卫星信号!

工作流程是这样的:

导航设备(手机、导航仪等)向导航卫星发射信号(握手信号)并记录时间,卫星接收信号后马上回复位置信息和时间,设备端接收后计算时间差,就确定了与这颗卫星的距离。

但这不足以准确定位,实际上与卫星的确定距离的点的集合是个球面。为了准确的在地表定位,设备端至少要同时与四颗卫星取得联系。


定位了准确位置后,再与地图比对,显示出当前位置。

gps导航系统中的每个卫星都只管自己的时间和位置,有个说法是导航卫星的核心就是原子钟,原子钟的精确度直接影响定位的精确度。

所以它不知道,也不在乎路名的,很高冷~


鲸鱼拆解


    GPS导航是不知道山村公路,街道名的,导航卫星提供定位信息,也就是“经纬度”数据,导航软件将经纬度显示在地图上,就可以显示街道、公路等数据,其中有一个坐标转换的过程。

    导航卫星提供定位

    目前,绝大多数的手机处理器内置了导航芯片,支持GPS、北斗、伽利略、格洛纳斯导航卫星,这里以GPS为例。

    为了实现GPS定位,需要通过四颗已知位置的卫星来确定GPS接收器(手机导航芯片)的位置,如下图所示。

    通过四颗卫星的空间坐标,以及手机GPS芯片接收导航卫星数据的时间差,就可以计算出与卫星的距离,最终确定手机的经度、纬度、高度数据。


    经纬度“映射”到地图坐标系

    导航卫星提供了定位用到的经纬度数据,需要“映射”到地图坐标,常用的有三种坐标:

  • WGS-84原始坐标系:就是GPS记录下来的经纬度,通过GPS定位拿到的原始经纬度,Google地图和高度地图(国外版)都是基于了WGS-84坐标系,但是在国内是不允许直接使用WGS84坐标系的,需要加密后使用;

  • GCJ-02坐标系:是我国国测局独创的坐标体系,通过WGS84坐标系加密而来。根据国家规定,国内必须使用加密后的坐标系,至少是GCJ-02坐标系,或者是GCJ-02坐标系的再加密,比如高德、腾讯地图等;

  • BD-09坐标系:是百度在GCJ-02基础上再加密形成坐标系,只适合百度地图使用。

    如下图所示,显示了三种坐标系之间的转换。


    总之,导航卫星提供了定位数据,即经纬度数据,经过坐标变换显示到地图上,就可以显示街道、地名、公路等数据。

如果觉得对你有帮助,可以多多点赞哦,也可以随手点个关注哦,谢谢。

Geek视界


现在的地图都是数字地图,也就是地图上的名个建筑物,广场,商厦,都有相应的经纬度,一条路上可以每隔一两米找一个点标明经纬度,然后你打开导航,导航系统每分每秒都在接收卫星信号,从而计算出你所在位置的经纬度,这个经纬度与导航系统内置的地图一对比,就能马上知道你在哪条路上,哪条街道


鸬鹚2818


我记得我看见过百度导航测试车,车上面有好多的零件,估计是探路用的,也就是它探路完了以后,标注地名,为后面的大众服务的。具体的还真不知道。


分享到:


相關文章: