自动驾驶:车辆pose

文章介绍了坐标系的基本概念,包括右手坐标系和左手坐标系,以及2D和3D空间中的坐标方向。世界坐标系通常用于全球定位,如Apollo项目的高精地图使用WGS-84坐标系。局部坐标系与特定物体相关,随物体移动和旋转。在自动驾驶领域,各种传感器如激光雷达、相机和GPS都有自己独特的坐标系,需要转换到统一的自车坐标系进行数据分析。
摘要由CSDN通过智能技术生成

坐标系

注意:坐标系等价于空间,一个坐标系就定义了一个空间,在这里可能会混用坐标系和空间,但它们的意思一致。

左手坐标系 右手坐标系

2d 坐标系一般来说大家都有默认: x轴朝右,y轴朝向。
在这里插入图片描述

研究第三维时,一般在桌面或纸面上研究,加的z轴,一般自然的垂直桌面或纸面向上,这就是我们常用的三维坐标系,是右手坐标系。
在这里插入图片描述
其实只改变任意一个轴的朝向,就可以使右手坐标系转为左手坐标系,反之亦然。
在这里插入图片描述
改变一个轴的朝向,相当于改边了另外两个轴的顺序,所以交换任意两个轴的值,也改变坐标系的左右手性。
在这里插入图片描述

世界坐标系 vs 局部坐标系

世界坐标系

世界坐标系,也叫作绝对坐标系| 全局坐标系 | 宇宙坐标系 ❕

  • 世界坐标系是一个特殊的坐标系,它建立了我们所关心的最大的空间。

  • 世界坐标系是一个特殊的坐标系,它建立了描述其他坐标系所需要的参考系。也就是说,能够用世界坐标系描述其他坐标系的位置,而不能用更大的、外部的坐标系来描述世界坐标系。

  • 有很多人定义世界坐标系是“我们所关心的最大坐标系”,通过这个坐标系可以去描述和刻画所有想刻画的实体。

在这里插入图片描述

Apollo项目使用全球地理坐标系(世界坐标系)表示高精地图( the high-definition map,HD Map)中各个元素的地理位置,通常包括:纬度(latitude)、经度(longitude)和海拔(elevation)。

全球地理坐标系普遍采用地理信息系统中用到的WGS-84坐标系来表示物体的纬度和经度。通过使用该标准坐标系统,我们可以使用2个数字:x坐标和y坐标来唯一的确定地球表面上除北极点之外的所有点,其中x坐标表示经度,y坐标表示纬度。WGS-84常用于GIS服务,例如地图绘制、定位和导航等。全球地理坐标系统的定义在下图中展示。
在这里插入图片描述

局部坐标系(物体坐标系)

局部坐标系,也叫作物体坐标系 | 本地坐标系 | 模型坐标系 ❕

  • 坐标系以物体的中心为坐标原点,表示的物体的左方、上方、右方
  • 物体坐标系与特定的物体关联
    • 每个物体都有它们独立/特定的坐标系
    • 不同物体之间的坐标系相互独立,可以相同,可以不同,没有任何联系。
  • 同时,物体坐标系与物体绑定
    • 当物体移动或改变方向时,和物体相关的坐标系也会改变。不会受世界坐标的影响
    • 物体的旋转、平移等操作都是围绕局部坐标系进行的,这时,当物体模型进行旋转或平移等操作时,局部坐标系也执行相同的旋转或平移操作(物体坐标系和物体之间运动同步,相互绑定。)

举例说明一下物体坐标系:我们每个人都有自己的物体坐标系,当我们决定要往前走的时候,每个人实际前行的绝对方向都不一样,可能是向北,也可能向南,或者其他方向。这里前后左右是物体坐标系中的概念。当告诉张三往前走,就是张三同学沿着自己物体坐标系的前方运动。至于张三往前走是往东还是向北,这是张三的运动在世界坐标系下的描述。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

为什么又叫做本地坐标系:

  • 小明家住在东经120度、北纬23度,这就是世界坐标系;小红家住在小明家往东300米、往北100米,这就是本地坐标系。
  • 现在有一个任务:在地图上标注出小明家和小红家的位置。有了经纬度,我们就能直接在地图上标出小明家的位置;但要标出小红家的位置,则要先找到小明家的位置,然后换算300米相当于多少经度,100米相当于多少纬度,再按照任务要求完成偏移。
  • 乍一看,本地坐标系好像很不好用,还得先找到“小明家”这个参照点。其实不然,你觉得它不好用是因为我们这个任务要求是在地图上标注位置。如果我们换一个任务:你现在就在小明家,你要去小红家怎么走。这样的话,局部坐标系反而更直接。
  • 所以,对于不同的目的,我们可能需要采用不同的坐标系才更方便。

全局坐标系和本地坐标系都是坐标系而已,没有什么不同。

为什么还要有全局坐标系和局部坐标系之分呢?

  • 那是因为在一项任务中,可能会用到很多很多的坐标系,坐标系A、坐标系B、坐标系C…… 某物体o在坐标系A下的坐标是 a1,a2,a3,在坐标系B下的坐标是b1,b2,b3,在坐标系C下的坐标是c1,c2,c3……这么多组坐标,各不相同,相互之间很难比较,因此我们迫切需要一个统一的坐标系U,把坐标系A、B、C下的坐标都转换到坐标系U下的坐标,这样我们就能方便地进行比较了!我们就把这个统一的坐标系叫做全局坐标系。
  • 所以,你也猜到了。理论上说,其实可以把任意一个坐标系作为全局坐标系。全局坐标系不过就是一个统一的”单位“。我说我有一根铅笔有1米长,你说你有一根铅笔有5英寸长,单位不同自然也就无法直接比较,要做单位转换才行,要么都转换到米,要么都转换到英寸,要么我们都转换到另一个新单位比如厘米。
  • 但话又说回来,虽然理论上可以随便选一个坐标系作为全局坐标系,但根据人类活动的过往经验,还是有一些约定俗成的全局坐标系的(比如上文的地理坐标系)。如果大家都用同一套坐标系,就你不用,那你就费劲呗。

为什么要物体坐标系

  • 导航中最基础的问题之一,就是要描述物体的位置、速度和姿态等参数。
  • 然而,这些参数对物体本身而言是无意义的。比如在生活中,可能会产生这样的运动错觉:当观察夜空时,感觉月亮在云中穿梭;或乘坐列车时,无法分辨出启程的是自己乘坐的列车还是对面停靠的列车。因此,当我们需要确定物体的位置、速度和姿态等参数时,通常需要相对于某种形式的参考系来描述。
  • 在描述时,首先需要选择被描述对象上的一点作为该对象的原点,该点可以是物体的质心、几何中心,或其他合适的点,比如天线的相位中心点等;然后,还需要选择一组轴系和一个原点,构成描述对象所需的参考系。
  • 轴系和原点的选取并没有固定的要求,但为了描述方便,轴向间通常是正交的。如果要描述对象的方位或角运动,则至少需要三个非共面的正交轴。参考系的原点通常会选择太阳系的中心、地球的中心、当地的地标点等。
  • 对象或参考系的原点和轴系一起构成了坐标系。一般我们都是用右手坐标系

导航中常用的坐标系有:地心惯性坐标系(Earth-centered inertial frame,ECI)、地心地固坐标系(Earth-centered Earth-fixed frame,ECEF)、当地导航坐标系(local navigation frame)和载体坐标系(body frame)。

自车坐标系 | 车辆坐标系

自车坐标系,也叫作车辆坐标系| 车身坐标系 ,它是一个局部坐标系。常用来表示车的位置。

不同的无人驾驶团队对于坐标系的定义可能不同,但这并不影响开发,只要团队内部达成一致即可。

以百度 Apollo 提供的自车坐标系为例,自车坐标系的定义为:

  • x 轴 – 自车面向前方时,指向车辆右侧;
  • y 轴 – 在行驶的方向上指向车辆前方;
  • z 轴 – 通过车顶垂直于地面指向上方;

车辆坐标系的原点在车辆后轮轴的中心,如下图所示。
在这里插入图片描述

上面是右-前-天坐标(RFU)用的比较多。

不过一般在车辆设计中使用的是这种坐标车身坐标系前-左-天坐标(FLU):x轴平行地面指向行进方向,y轴指向汽车的左侧,z轴指向上方并垂直与地面,o点为汽车的质心

在这里插入图片描述

无人车的位置和姿态

自动驾驶中有一个自定位系统,它的作用是相对一个坐标系,确定无人车的位置和姿态。

  • 位置:3个自由度,x、y、z
  • 姿态:3个自由度,三个方向的旋转:横滚(roll)、俯仰(pitch)、航向(yaw)

在这里插入图片描述

位置(自车/车体坐标系)

  • 车辆的位置(VRP, Vehicle Reference Point)一般选取一个车辆的基准点在世界坐标系的位置作为车辆位置。 在Apollo中选择车辆后轴中心作为车辆的基准点

也叫做自车坐标系,它是一个局部坐标系,它与N系或者导航坐标系、当地水平坐标系之间的旋转关系表示现在车的姿态。

roll、yaw、pitch是什么?

  • pitch是围绕X轴旋转,也叫做俯仰角
  • yaw是围绕Y轴旋转,也叫偏航角
  • roll是围绕Z轴旋转,也叫翻滚角

pitch:
请添加图片描述
yaw:
请添加图片描述

roll:
请添加图片描述

车辆传感器布局

对于一个自动驾驶系统来说,一般都会有激光雷达、毫米波雷达、超声波雷达、相机、IMU/GPS等各种传感器,而每个传感器都有自己的坐标系定义,为了描述自动驾驶车辆在地图中的位置,一般还涉及到全局定位,这就还会包含全局坐标系,也称为世界坐标系。这些错综复杂的坐标系定义,不仅涉及到了不同传感器之间的内外参标定关系,也包含了许多与坐标系转换之间的操作,需要我们重点掌握和理解。

首先我们整体来看一下Apollo官方提供的传感器布置图:

在这里插入图片描述
从上面这张图中我们可以看出Apollo的Lincoln MKZ自动驾驶车辆上在车上不同位置布置有数量不同、种类繁多的传感器。

光从上面这张俯视图中我们可能没法清楚看出不同传感器的安装位置及坐标系定义,我们可以看下面这张图:
在这里插入图片描述

  • 注意区分其中相机坐标系和激光雷达坐标系的方向定义,其中
    • 激光雷达坐标系X轴向前,Y轴向左,Z轴向上
    • 相机坐标系Z轴向前,X轴向右,Y轴向下。
    • 另外在车的中间位置有一个紫色的传感器,上面写着Novatel,其实是诺瓦泰的GPS接收机,这个传感器的坐标系非常关键,因为Apollo中大部分传感器都是标定在该传感器坐标系下,Novatel坐标系定义为X轴向右、Y轴向前、Z轴向上。

无人车上拥有各种各样的传感器,每个传感器的安装位置和角度又不尽相同。对于传感器的提供商,开始并不知道传感器会以什么角度,安装在什么位置,因此只能根据传感器自身建立坐标系。无人驾驶系统是一个多传感器整合的系统,需要将不同位置的传感器数据统一到一个固定的坐标系 —— 自车坐标系下,才能分析当前无人车所在的道路场景。

参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值