导读
高精地图区别于普通电子地图,一般来说高精地图的精度要求在亚米级甚至厘米级,其所含有的道路交通元素也更丰富和细致。这就造成高精地图数据生产过程中会遇到很多普通地图没有的问题和困难,更需要有专业的测绘知识解题。
本文从现实世界到地图数据的抽象基础-坐标系着手,介绍相关领域知识,希望对大家深入高精地图领域有所裨益。
本文属于漫话地图系列,将会持续介绍地图行业一些有趣的知识点,欢迎持续关注。
【相关阅读】漫话 | 地图数据处理之道路匹配篇
1.如何定义地球
1.1 地球椭球体
众所周知地球表面凸凹不平,是一个无法用数学公式表达的曲面,这样的曲面不能作为测量制图的基准面。那么假想一个扁率极小的椭圆,绕大地球体短轴旋转所形成的规则椭球体称之为地球椭球体。
1.2 大地水准面
大地水准面是海平面向陆地内部的自然延伸形成的闭合面,由于地球重力面分布不均匀,大地水准面仍然不是一个标准的数学模型,无法作为制图表达。
1.3 大地基准面
大地基准面是设计为最密合部分或全部大地水准面的数学模式,它由椭球体本身及椭球体和地表原点间关系来定义,从而衍生出参考椭球体(参考于标准椭球体)的概念。此关系能以 6 个量来定义,通常是大地纬度、大地经度、原点高度、原点垂线偏差之两分量及原点至某点的大地方位角。
1.4 参心坐标系/地心坐标系
地心坐标系是以地球质心为原点建立的空间直角坐标系 XYZ,或以球心与地球质心重合的地球椭球面为基准面所建立的大地坐标系 BLH;参心坐标系是以参考椭球体的几何中心为原点的坐标系。
1.4.1 常见的坐标系-WGS 84 坐标系
原点:地球质心。
Z 轴:BIH(1984.0)定义的地极(CTP)方向,即国际协议原点 CIO,它由 IAU 和 IUGG 共同推荐。
X 轴:指向 BIH 定义的零度(本初)子午面和 CTP 赤道的交点。
Y 轴:和 Z,X 轴构成右手坐标系。
WGS84 椭球体:国际大地测量与地球物理联合会第 17 届大会测量常数推荐值,长轴 6378137.000m,短轴 6356752.314,扁率 1/298.257223563。
1.4.2 北京 54/西安 80/GCJ2000
北京 54:前苏联克拉索夫斯基椭球体,是前苏联 1942 坐标系的延伸,原点不在北京而是在前苏联的普尔科沃。
西安 80:国际大地测量与地球物理联合会推荐值(IAG75 椭球体)。西安大地原点设在陕西省泾阳县永乐镇,位于西安市西北。1985 国家高程基准采用青岛验潮站 1952-1979 年确定的黄海平均海水面。
GCJ2000:地心坐标系在我国的具体体现,和 84 椭球体仅有 0.11mm 的误差。
2 如何定义二维地图
2.1 地图投影
利用一定数学法则把地球表面转换到平面上的理论和方法称为地图投影。由于地球表面是一个不可展平的曲面,所以运用任何数学方法进行投影转换都会产生误差和变形,为按照不同的需求缩小误差,就产生了各种投影方式,如圆柱投影、圆锥投影、等角投影、等面积投影、切投影、割投影等。
2.2 常见的几种投影方式
2.2.1 墨卡托/Web 墨卡托
一种正轴等角切圆柱投影。
等角:保证对象形状不变以及方向位置正确。
圆柱:保证纬线经线平行相互垂直且经线间隔相同。
缺点:纬线间隔从赤道向两级逐渐增大,面积变形大。
Web 墨卡托:Google 首创,把地球模拟为球体而非椭球体,近似等角。
2.2.2 高斯投影/UTM 投影
两个投影很相似,高斯投影为等角横切椭圆柱投影,前苏联、中国和德国等所采用。UTM 投影(通用横轴墨卡托) 是一种等角横割椭圆柱投影,为世界上大部分国家采用。
3. 如何定义高精地图
相对于普通电子地图,高精地图采集方式发生了质的变化。从误差米级到厘米级能力提升主要源于高精采集车上更加丰富和立体的传感器设备,包括但不限于激光雷达、RTK、惯导、摄像机等,有能力反映更加精细的真实世界。
高精地图以采集车为基础,可以分为如下几个坐标系。
3.1 ECEF-地心地固坐标系
原点位于地球质心,z 轴沿着地轴指向北极,y 轴沿着赤道平面与格林威治子午面的交线上,y 轴在赤道平面与 x 轴 z 轴满足右手法则,该坐标系一般和 WGS84 坐标系相互转换,属于同一基准下不同表达。
3.2 东北天/当地水平坐标系
当地水平坐标系的原点位于载体所在的地球表面,x 轴和 y 轴在当地水平面内,分别指向东向和北向,z 轴垂直向上,与 x 轴 y 轴满足右手法则,称为东-北-天(e-n-u)坐标系,相对另一坐标系(北东地)。
3.3 车体坐标系
车体坐标系原点在载体质量中心与载体固链,x 轴沿载体轴指向右,y 轴指向前,z 轴和 xy 满足右手坐标法则指天,又称为右-前-上(r-f-u)坐标系
3.4 激光雷达坐标系
和选用雷达类型及安装方式有关,一般来说原点位于多线束旋转轴的交点处,z 轴沿着轴线向上,其测量的点坐标是在激光雷达坐标系下的三维坐标。雷达与载体固链,通过坐标系外参和车体姿态可以得到激光点的世界坐标系。
3.5 IMU 坐标系
IMU 坐标系的坐标原点在陀螺仪和加速度计的坐标原点,xyz 三个轴方向分别与陀螺仪和加速度计的对应轴向平行。在解算惯性导航系统中 IMU 与车体固链,因此在不考虑安装误差角的情况下,载体坐标系也即为 IMU 坐标系。
3.6 相机坐标系
以自己的光心为原点,xy 一般由相平面决定,x 朝右,y 轴朝下建立一个局部坐标系,一般与载体固链,通过外参进行刚性变化转换。
3.7 什么是右手坐标系
右手系(right-hand system)是在空间中规定直角坐标系的方法之一,两种定义方式:
a. 把右手放在原点的位置,使大姆指,食指和中指互成直角,把大姆指指向 x 轴的正方向,食指指向 y 轴的正方向时,中指所指的方向就是 z 轴的正方向。
b. 如果当右手(左手)的大拇指指向第一个坐标轴(x 轴)的正向,而其余手指以第二个轴(y 轴)绕第一轴转动的方向握紧,就与第三个轴(z 轴)重合,与之相反则为左手系。
4. 坐标系之间的转换
4.1 地学概念上的坐标转换
坐标系变换就是在相同空间点在不同椭球体下的不同坐标表达形式的数值换算,主要分为三种:
大地坐标系与空间直角坐标系的相互转换(经纬度转 ECEF)。
空间直角坐标系与站心坐标系的转换(ECEF 转工程)。
大地坐标系与平面坐标系的转换(经纬度转投影坐标)
4.1.1 相同基准面下的变化-经纬度转笛卡尔坐标公式
相同基准下,将大地坐标系转换为空间直角坐标系的公式为
4.1.2 不同椭球体间的变化-布尔沙七参数模型
需要 7 个参数
三个坐标平移量(△X,△Y,△Z),即两个空间坐标系的坐标原点之间坐标差值。
三个坐标轴的旋转角度(△α,△β,△γ),通过按顺序旋转三个坐标轴指定角度,可以使两个空间直角坐标系的 XYZ 轴重合在一起。
尺度因子 m,即两个空间坐标系内的同一段直线的长度比值,通常 m 值等于 1
4.2 三维空间变换相关的一些概念
4.2.1 欧拉角/欧拉旋转
旋转步骤:
物体绕全局的 z 轴旋转α角。
继续绕自己的 X 轴(也就是图中的 N 轴)旋转β角。
最后绕自己的 Z 轴旋转γ角。
详细介绍:
https://www.matongxue.com/madocs/442.html
4.2.2 万向节死锁
沿着机身右方轴(X)进行旋转,称为 Pitch 俯仰。
沿着机头上方轴(Y)进行旋转,称为 Yaw 偏航。
沿着机头前方轴(Z)进行旋转,称为 Roll 桶滚。
详细介绍:
https://blog.csdn.net/AndrewFan/article/details/60981437#
4.2.3 旋转矩阵
任何维的旋转可以表述为向量与合适尺寸的方阵的乘积,最终一个旋转等价于在另一个不同坐标系下对点位置的重新表述。
推导过程:
https://blog.csdn.net/TOM_00001/article/details/62054572
4.2.4 旋转向量
向量旋转公式最早由 Rodrigues 提出,用一个三维向量来表示三维旋转变换,该向量的方向是旋转轴,其模则是旋转角度,设旋转向量的单位向量为 r,模为θ,三维点 p 在旋转向量 r 的作用下变换至 p′
4.2.5 四元数
四元数优势:
解决万向节死锁(Gimbal Lock)问题。
仅需存储 4 个浮点数,相比矩阵更加轻量。
四元数无论是求逆、串联等操作相比矩阵更加高效。
相关资料
5. 坐标系转换关系
6.关于坐标系的一些周边
6.1 EPSG 欧洲石油测绘组织
European Petroleum Survey Group:成立于 1986 年,它负责维护并发布坐标参考系统的数据集参数,以及坐标转换描述,该数据集被广泛接受并使用,通过 Web 发布平台进行分发。
SRID:OGC 标准中空间参考系统的唯一 ID, https://spatialreference.org/
6.2 WGS 1984 Web Mercator
EPSG:3785 EPSG 在 2008 给 Web Mercator 设立的 WKID,但是这个坐标系的基准面是正圆球,不是 WGS 1984,存在了一段时间后被弃用。
EPSG:3857 EPSG 为 Web Wercator 最终设立的 WKID,也就是现在我们常用的 Web 地图的坐标系,并且给定官方命名 WGS 84 / Pseudo-Mercator
OPENLAYER:900913 Web Mercator 已经成为 Web 地图领域的事实标准,尽管这个坐标系由于精度问题一度得不到官方认证,Google 为 Web Mercator 任性地制定了这个 ID。
6.3 ProJ.4
Proj.4 是开源 GIS 最著名的地图投影库,许多开源软件的投影都直接使用了 Proj.4 的库文件。该项目遵循 MIT license,用 C 语言编写,由 USGS 的 Gerald I.Evenden 在 1980 年代创立并一直维护到退休,目前有 C、Java 、Python、JS 等多语言版本维护。功能主要有经纬度坐标与地理坐标的转换,坐标系的转换,包括基准变换等。
7. 参考资料
无人驾驶中的坐标系
空间坐标与投影系统
如何理解 3D 动画中的欧拉角以及死锁
如何形象地理解四元数
刚体在三维空间的旋转
本文转载自公众号高德技术(ID:amap_tech)。
原文链接:
评论