高精度地图地理坐标系

高精度地图地理坐标系

这个系列主要会讲一些关于建图流程中涉及到的一些测量测绘,地图标准,高精度地图格式等问题,会涉及部分公式推导,也会提醒一下我使用时踩过的坑,权当是我自己的一个笔记。

附赠自动驾驶最全的学习资料和量产经验:链接


地球坐标系

经纬度

大地是一个十分近似于球体的椭球体,如果我们以球心为坐标系原点,赤道平面为 xoy 平面,地理北极为 z 轴,即可建立一个空间直角坐标系,或者是一个球坐标系。

球坐标系用方位角,极角和距离来表示,其实就是我们很熟悉的经度 longitude,纬度 latitude,高程 altitude。

  • 0° 纬线是赤道,纬度是指某点与地球球心的连线和地球赤道面所成的线面角。

  • 0° 经线是本初子午线,地球上其它地点的经度是向东到 180° 或向西到 180° 。由于地球是个扁椭球体,经度没有自然的起点,所以人为规定使用经过伦敦格林尼治天文台旧址的子午线作为起点。东经 180° 即西经 180°,约等同于国际日期变更线,并且恰好国际日期变更线在白令海峡附近,没有横穿人类居住密度较大的大陆,对人生活的影响较小。

  • 而定义高程,首先需要定义一个与地球几何最吻合的椭球体(中心与地球质心重合,短轴与协议地球自转轴一致,表面与大地水准面之间的高度差的平方和最小),即基准椭球体,来代替表面凹凸不平的地球,并且需要和我们日常生活中经常提到的海拔作区分。
    高程是距离基准椭球体的高度海拔是距离大地水准面的高度,大地水准面是个假想的理想海平面,可以理解为平均海拔平面,由于地球引力和板块的原因,地球的各处的海拔平面和基准椭球面是有不同的差异的。

image

基准椭球面和大地水准面

image

  • h:从点到基准椭球面的法线距离,即大地高度,外正内负;

  • H:点到大地水准面的法线距离,海拔高度;

  • Nh :大地水准面高度,即大地水准面高出基准椭球面的法线距离,它在全球各地区的值可由相关资料查得;

由于地球是个椭球体,可以看出在低纬度地区,1度纬线之间的距离差,和高纬度地区的1度纬线距离差,是不同的,数值大概都在 111km 左右。

1度经线的差异会随着维度不同而不同,可以想象,高维度地区,越靠近极点,1度经线差异越接近 0km。


ECEF

前面提到根据地心构造出来的球坐标系,那么地心地固直角坐标系(Earth-Centered, Earth-Fixed)以地心质点O作为坐标原点,其 z 轴指向协议地球北极,x 轴指向本初子午线与地球赤道的交点,构造出来的一个右手直角坐标系。

image

ECEF 坐标系

image


WGS-84

WGS-84 可以理解为对基准椭球体(与地球几何最吻合的椭球体,中心与地球质心重合,短轴与协议地球自转轴一致,表面与大地水准面之间的高度差的平方和最小)进行明确的定义。

美国国防局下属的国防制图局指定的世界大地坐标系,经过多次的修改和完善,1984 年版的大地坐标系已经是一个小但精确的协议地心直角坐标系,其定义的基准椭球面与大地水准面在全球范围内的差异(即 ℎ 值)在 -100m到+75m之间。最初使用 GRS80 参考椭球体,但在出版后,在以后的版本中进行了一些小的改进。

基准大地参数值 [单位]
基准椭球体的长半径 a6378137.0 [m]
基准椭球体的短半径 b6356752.3142 [m]
基准椭球体的极扁率 f1/298.257223563

有些国家和地区采用本地的⼀个坐标系统,与之相应的本地地图上的经度、纬度可能与 GPS 接收机定位结果给出的 WGS-84 大地坐标系中的经度、纬度不相⼀致。这种差异主要是本地地图所基于的基准椭球体可能只是对所在国家或局部地区的地球球体的逼近,而 WGS-84 是对整个地球球体的逼近

比如 ETRS89 是欧盟推荐的欧洲大地测量参考坐标系,其重点是欧亚板块作为一个静态平面,不会受到大陆漂移的影响,它是欧洲唯一用于测绘目的的大地测量基准。它对欧洲的作用与北美的 NAD-83 相同,NAD-83 是北美板块作为一个整体是静态的,在美国、加拿大和墨西哥用于测绘和测量的基准面。

image

地心地固直角坐标系和大地坐标系


ENU

站心坐标系,即东北天坐标系,可以直接的理解为地心地固直角坐标系通过旋转和平移,把坐标原点平移到了选中的球面 base 点,xyz 坐标轴旋转指向了该点的东北天,北为真北,即地理北极。

image

image

image


NED

在导航领域,会常用到 NED 北东地坐标系,其实就是 base 点的切面构造出来的 xyz 方向定义不同的坐标系。

image

image


以上定义了一些欧式空间下的直角坐标系,但在制图环节,由于我们人类信息的呈现方式大部分是平面,我们需要把球面的地表信息拍平成一个平面,绘制在我们的信息传达媒介上,比如地图。

而把球面拍平成平面的过程,可以很直观地想到,如果不引入失真,不对球面进行不均匀的放缩,球面是无法拍平成平面的。所以接下来需要介绍的是一种制图时的投影方法,将球面上的 (x,y,z) 映射成平面上的 (x,y) 。


地图投影

Mercator Projection

墨卡托投影是将地球表面绘制成矩形世界地图的正轴等角圆柱投影,在该投影中线型比例尺在图中任意一点周围都保持不变,从而可以保持大陆轮廓投影后的角度和形状不变(即等角)。

假设地球被围在一中空的圆柱里,其基准纬线与圆柱相切(赤道)接触,然后再假想地球中心有一盏灯,把球面上的图形,沿着光线投影到圆柱体上,再把圆柱体展开,这就是一幅选定基准纬线上的“墨卡托投影”绘制出的地图。

墨卡托投影没有角度变形,由每一点向各方向的长度比相等,它的经纬线都是平行直线,且相交成直角,经线间隔相等,纬线间隔从基准纬线处向两极逐渐增大。墨卡托投影的地图上长度和面积变形明显,但基准纬线处无变形,从基准纬线处向两极变形逐渐增大,但因为它具有各个方向均等扩大的特性,保持了方向和相互位置关系的正确.

由于墨卡托地图的线性比例随着纬度的增加而增加,因此它会使远离赤道的地理对象的尺寸失真,使面积产生变形(即沿着圆柱轴越远,失真越大)。在北纬或南纬大于70°的纬度上,墨卡托投影实际上是不可用的,因为两极的线性比例变得无限大。因此,墨卡托地图永远无法完整显示极地区域。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

image

若想要基于椭球假设计算得出更精确的值,可参考 wikipedia: Generalization_to_the_ellipsoid,增加一个 scaling factor。

如果你想了解不同于圆柱投影的其他投影方式,可以参考 地图投影介绍 - 牛老师的集思空间的个人空间 - OSCHINA - 中文开源技术交流社区 


UTM

通用横轴墨卡托投影(wikipedia)是横轴等角割圆柱投影,可以标记地球南纬80°至北纬84°之间的所有位置。也就是圆柱底面直径两端构成的两条轴线分别与南纬80°纬线和北纬84°纬线相割。

image

UTM 经度区范围为1到60,其中58个区的东西跨度为 6°。纬度范围从 80°S 到 84°N 之间的所有区域。一共有 20个UTM 纬度区,每个区的南北跨度为 8°,使用字母 C 到 X 标识(其中没有字母 I 和 O),它们覆盖了部分南极和北极区。

image

由于是横轴墨卡托投影的缘故,之前提到,沿着圆柱轴越远,失真越大(但你看上图左右方向又是没有失真的),所以 UTM 在经度方向上进行分区,每个分区的投影带用不同的中央子午线来进行变形的修正(越靠近圆柱相切部分失真越小),你可以理解为想要投影经线 0° 附近的区域,我们就把横轴割圆柱的横截面转到和 0° 经线平面重合,想要投影东经 90° 附近的区域,我们就把横轴割圆柱的横截面旋转到和东经 90° 的平面重合,来降低每个分区的失真。

所以可以看出,UTM 坐标系中,不同分区之间的坐标是不连续的!跨区时需要处理坐标跳变的问题。

无人驾驶中还会涉及到一些关于车体坐标系和传感器坐标系(IMU 坐标系,相机坐标系,激光雷达坐标系),IMU和激光雷达的坐标系会根据传感器的不同,xyz 三轴方向不同,在此不一一展开。

Reference

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值