0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将传感器坐标系下的数据转换到自车坐标系?

ml8z_IV_Technol 来源:未知 作者:胡薇 2018-08-06 10:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

无人驾驶系统是一个多传感器整合的系统,需要将不同位置的传感器数据统一到一个固定的坐标系——自车坐标系下,才能分析当前无人车所在的道路场景。本文将会集中在如何将传感器坐标系下的数据转换到自车坐标系下。有关无人驾驶技术中传感器到车体坐标系的坐标转换原理及数学推导,该原理不仅用在无人车领域,同时在机器人无人机、三维建模等领域也得到了广泛使用。

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

无人车的自车坐标系

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

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

z轴 – 通过车顶垂直于地面指向上方

y轴 – 在行驶的方向上指向车辆前方

x轴 – 自车面向前方时,指向车辆右侧

车辆坐标系的原点在车辆后轮轴的中心,如下图所示。

图片出处:

https://github.com/ApolloAuto/apollo/blob/master/docs/specs/coordination_cn.md

传感器坐标系与自车坐标系的转换

对于无人车的传感器安装位置,业内大同小异,比如奥迪A8的传感器配置如下图所示:

以安装在无人车左前方的角雷达(Corner radar)为例,进行后面的介绍,叫雷达的安装位置和坐标系如下图绿线所示。

角雷达检测到的障碍物如图中的绿点所示,绿点在雷达坐标系下的坐标为(x1,y1),为了便于理解暂不加入z方向的坐标。

绿点转换到自车坐标系下需要经过一定的数学运算。基本思路是这样的:

| 平移

先将角雷达坐标系的O点平移到与自车坐标系的O点重合,此时(x1,y1)需要减去两个坐标系在x和y方向的距离。如下图所示:

| 旋转

在两个坐标系的O点重合后,将角雷达坐标系沿着z轴进行一定角度的旋转,这样(x1,y1)就转到了自车坐标系上。这个过程在数学上称为欧拉旋转。

坐标系的平移和旋转是两件相互独立的事情,先平移再旋转和先旋转再平移并不会影响最终的结果。

以上是感性的分析过程,下面我们将这整个过程在数学上实现。

| 平移

平移步骤根据传感器安装位置和自车后轴的距离进行计算,仅仅是XYZ三个方向加减运算。

| 旋转

绕轴旋转需要引入角度,不是简单的加减运算,所以我们通过图示来推导一下。

先将两个坐标系变换到正常的视角,如下图所示:

障碍物在角雷达坐标系下的坐标为(x1,y1),假设障碍物在自车坐标系下的坐标为(x0,y0),需要根据安装角度α(可测量),用x1,y1,α这三个已知量表示x0,y0,求得他们的数学关系。

通过做辅助线进行计算,如下图蓝线所示所示:

何关系可用以下两个等式表示:

使用矩阵表示,可以简化表达,可以用一个等式代替两个等式,是这样的

于这次旋转是绕z轴旋转,因此旋转前和旋转后的z值是保持不变的

将z方向的值也放到上面的等式中,即可得到

就意味着,只要把角雷达采集到的障碍物坐标值与上面这个矩阵进行矩阵乘法运算,即可完成沿Z轴的旋转。在这里我们把这个矩阵叫做Z轴旋转矩阵RZ,那必然还有沿着X轴和Y轴的旋转矩阵RX和RY。

角雷达目标的坐标依次右乘这三个矩阵,就完成了沿着Z轴,Y轴,X轴的旋转,得到的结果就是自车坐标系下的坐标值了。即

再加上一个平移的矩阵,就能够完整描述整个坐标转换的关系了

不同的坐标系定义,会有不同的RX,RY和RZ,因此需要根据实际情况计算旋转矩阵和平移矩阵。

欧拉旋转所存在的问题

以上过程也称为欧拉旋转,但是欧拉旋转会有一个不可避免的问题——万向锁。欧拉旋转的过程中在某些特殊情况时,会导致丢失维度。万向锁通过文字解释起来会有点困难,可以看一个讲解万向锁的小视频进行了解。

视频出处:

为了解决欧拉旋转所带来的万向锁问题,业界引入了四元数。四元数除了解决万向锁的问题外,还能在一定程度上简化计算。因而百度Apollo也选择了四元数作为各个传感器安装位置和角度的存储介质。有关四元数的定义和使用方法这里不做详细讨论,可参看Apollo的Calibration模块。链接如下:

https://github.com/ApolloAuto/apollo/tree/master/modules/calibration

结语

实际参与到开发中你才会发现,自己在大学学习的高数和线性代数等都是很重要的数学工具,而不是仅仅用来考试的。

以上就是有关无人驾驶技术中传感器到车体坐标系的坐标转换原理及数学推导,该原理不仅用在无人车领域,同时在机器人、无人机、三维建模等领域也得到了广泛使用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2573

    文章

    54368

    浏览量

    786058
  • 无人驾驶
    +关注

    关注

    99

    文章

    4255

    浏览量

    126042

原文标题:无人驾驶中的坐标转换

文章出处:【微信号:IV_Technology,微信公众号:智车科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    坐标系转换与手眼标定

    首先坐标系转换的变换矩阵(没有坐标系矩阵变换的概念可先百度)如图:
    发表于 06-20 18:34

    如何处理四轴东北天坐标系和北东地坐标系不同时传感器输出的数据方向?

    问题如下:我在阅读发烧友的四轴代码时,发现四轴是用的北东地坐标系,我现在有两个疑问:1)使用东北天坐标系和北东地坐标系,重力向量都是[0 0 1]吗?还是分别是+/-1? 2)当使用北东地坐标
    发表于 07-16 04:35

    如何计算才能把坐标系转换成水平的坐标系

    当mpu6050初始放置的时候是倾斜的,如何计算才能把坐标系转换成水平的坐标系转换后的效果是保证倾角不变,水平转动mpu,出来的数据是水平
    发表于 07-31 22:19

    CAD制图软件新手攻略:坐标系及标注坐标

    坐标系。下面就来给大家详细介绍一浩辰CAD制图软件中坐标系及标注坐标的方法吧!首先一起来复习一关于数学中的
    发表于 09-23 10:28

    解决电压方程在静止坐标系与运动坐标系转换问题

    本文解决电压方程在静止坐标系与运动坐标系转换问题。本文呈现的转换关系是电压方程由静止
    发表于 08-27 07:17

    传感器坐标系跟踪的实际状况

    任何跟踪滤波的最基本特征是坐标系和参考点或该坐标系原点。坐标系和原点的选择依赖于几个因素。这些因素包括由系统跟踪的目标类型、综合到系统中的传感器
    发表于 07-13 12:11 20次下载

    什么是坐标系

    什么是坐标系          &nb
    发表于 12-31 14:16 4993次阅读

    坐标系与鱼雷运动参数

    坐标系与鱼雷运动参数 一、常采用的几种坐标系 在鱼雷航行动力学的研究过程中,根据不同的研究目的,须要采用不同的坐标系。常采用
    发表于 01-06 16:47 5869次阅读
    <b class='flag-5'>坐标系</b>与鱼雷运动参数

    OPENGL坐标系介绍 世界坐标系和当前绘图坐标系区别

    世界坐标系:在OpenGL中,世界坐标系是以屏幕中心为原点(0, 0, 0),且是始终不变的。你面对屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴。长度单位这样来定:窗口范围按此单位恰好是(-1,-1)到(1,1),即屏幕左下角
    发表于 05-04 09:00 1.3w次阅读
    OPENGL<b class='flag-5'>坐标系</b>介绍 世界<b class='flag-5'>坐标系</b>和当前绘图<b class='flag-5'>坐标系</b>区别

    带你来剖析机器人的坐标系吧!

    大地坐标系:大地坐标系是以大地作为参考的直角坐标系。在多个机器人联动的和带有外轴的机器人会用到,90%的大地坐标系与基坐标系是重合的。但是在
    的头像 发表于 05-09 15:49 5753次阅读

    自动驾驶各个坐标系

    ENU局部坐标系采用三维直角坐标系来描述地球表面,实际应用较为困难,因此一般使用简化后的二维投影坐标系来描 述。 UTM:在众多二维投影坐标系中,统一横轴墨卡托(The Unive
    发表于 06-01 15:59 0次下载
    自动驾驶各个<b class='flag-5'>坐标系</b>

    坐标如何建立坐标系

    我们在检测工件时,需要正确的装夹检测工件,使工件有足够的检验空间和恒温时间,坐标系的建立就是为后续的测量奠定基础,建立错误的坐标系直接导致测量尺寸的误差建立正确的参考方向即坐标系是十分重要的。
    的头像 发表于 02-17 10:24 1.3w次阅读
    三<b class='flag-5'>坐标</b>如何建立<b class='flag-5'>坐标系</b>?

    世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的关系

    相机的成像过程涉及到四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系。这篇博客介绍相机的成像过程,以及四个
    的头像 发表于 07-03 10:30 1.5w次阅读
    世界<b class='flag-5'>坐标系</b>、相机<b class='flag-5'>坐标系</b>、图像<b class='flag-5'>坐标系</b>、像素<b class='flag-5'>坐标系</b>之间的关系

    深度剖析机器人的四大坐标系

    大地坐标系:大地坐标系是以大地作为参考的直角坐标系。在多个机器人联动的和带有外轴的机器人会用到,90%的大地坐标系与基坐标系是重合的。但是在
    发表于 11-13 11:24 2905次阅读
    深度剖析机器人的四大<b class='flag-5'>坐标系</b>

    应用卫星通信领域的一个坐标转换过程—机体坐标系与ENU坐标系转换

    今天我们要讲的是应用于卫星通信领域的一个坐标转换过程——机体坐标系与ENU坐标系转换
    的头像 发表于 12-27 09:30 7459次阅读
    应用卫星通信领域的一个<b class='flag-5'>坐标</b><b class='flag-5'>转换</b>过程—机体<b class='flag-5'>坐标系</b>与ENU<b class='flag-5'>坐标系</b>的<b class='flag-5'>转换</b>