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

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

3天内不再提示

Frenet坐标系,自动驾驶“混乱”的源头

jf_C6sANWk1 来源:阿宝1990 2023-04-03 10:16 次阅读

人类驾驶员在道路上开车的时候,没有人会去基于当前距离出点的横向和纵向距离是多少,而去决定下一步的方向盘转角大小。通常情况,我们只会关注车辆当前距离左右车道线的距离,来判断是否偏离车道,是否需要打方向盘进行方向微调。

自动驾驶运动规划也在效仿这一过程,而为了让这一过程得以实施,2010年,BMW的Moritz Werling在2010年的论文《Optimal Trajectory Generation for Dynamic Street Scenarios in a Frene´t Frame》中提出了Frenet坐标系。

没错,还是国外人发明,我们整天鼓吹自动驾驶第一大国,但看看自动驾驶常用的基础理论、经典架构、基础软件、经典算法……,有多少是我们的发明创造!每个场景都炒一波自动驾驶概念,每个概念都拉一波融资,每一波融资都用来重复造轮子……。大而不强,是自动驾驶继承自汽车产业的顽疾。

Frenet坐标下的出现,让规划、控制有了方向,但也从此开启了自动驾驶万国混战的源头。

01Frenet坐标系的定义

Frenet坐标系的建立基于一个参考线,这个参考线可以是任意曲线,但在自动驾驶运动规划中一般定义为道路的中心线,这条中心线是地图模块输入过来的一系列离散点。同时使用参考线的切线向量和法线向量建立一个直角坐标系,如图1所示,这个坐标系就是Frenet坐标系。

edd2af6e-d1c4-11ed-bfe3-dac502259ad0.png

图1 Frenet坐标系示意图

某一时刻,假设车辆质心在全局笛卡尔坐标系下的坐标为(x,y),车辆质心到参考线上的投影点称为原点,原点切线方向称为s轴方向或纵轴方向,原点法线方向称为d轴方向或横轴方向。纵坐标s值指的是参考线上的原点与起点之间曲线的长度,也就是车辆在道路上的纵向行驶距离。横坐标d值指的是原点与车辆质心之间的距离,也就是车辆偏离道路中心线的距离。车辆质心随着时间在不断变化,因此Frenet坐标系的原点也在不断变换,所以Frenet坐标系是一个移动坐标系。

02为什么使用Frenet坐标系

(一)道路表达直观

假设现在我们知道笛卡尔坐标系下车辆的位置为(x,y),在道路通常都有一定曲率的背景下,从这个坐标中我们无法得知道路在哪里,也不知道车辆行驶了多远,更难以确定它是否偏离车道中心。当然我们可以从输入的高精地图数据进行计算获得上述数据,但是计算量太大,因此用笛卡尔坐标系描述道路会非常复杂。

而在Frenet坐标系中,横轴和纵轴相互垂直且原点所在参考线与车道中心线平行,容易确定车辆偏离车道中心线的距离以及车辆沿车道中心线的行驶距离。因此使用Frenet坐标系可以忽略道路曲率的影响,让道路表达更加直观、简洁。

(二)简化路径规划问题

运动规划是为了获得车辆在未来一段时间内具有前瞻性的行驶轨迹,这个轨迹是一种由二维空间和一维时间组成的三维空间中的曲线。

在笛卡尔坐标系下,整车的横向运动、纵向运动耦合在一起,想要计算清楚两者的关系还是需要费一番苦力的。而在Frenet坐标系中,距离参考线的位置可以使用纵向距离s和横向距离d分别表示,而通过对时间分别求导,又可以得到纵向运动速度和横向运动速度。

车辆的二维运动问题在Frenet坐标系下被解耦成两个一维运动问题,而一维优化问题要比二维优化问题更容易容易求解。因此相比于笛卡尔坐标系,Frenet坐标系可以明显地简化运动规划问题,这就是运动规划中笛卡尔坐标系转换为Frenet坐标系的必要性。

下面我们用一个例子来解释Frenet坐标系的这种降维作用。假设行为决策层判断前方有低速行驶的车辆,随后在t0时刻做出了一个在t1时刻完成变道的决策。即车辆需要在Δt=(t1-t0)时间内,横向上需要完成一个Δd以及纵向上完成一个Δs的移动。如图2所示,我们可以将s和d分别表示为关于t的函数:s(t)和d(t),这样二维运动规划问题被分割成了两个独立的一维优化问题。

ede535e4-d1c4-11ed-bfe3-dac502259ad0.png

图2 Frenet坐标系下运动规划示例

03Frenet坐标系与笛卡尔坐标系转换

要使用Frenet坐标系进行运动规划,就需要将笛卡尔坐标系下的车辆状态转化为Frenet坐标系下的状态。由于公式太多,只能采用图片方式呈现后续内容。

edf7774a-d1c4-11ed-bfe3-dac502259ad0.png

图3 Frenet坐标系和笛卡尔坐标系下的状态表示

ee108cee-d1c4-11ed-bfe3-dac502259ad0.png

ee2193cc-d1c4-11ed-bfe3-dac502259ad0.png

ee389de2-d1c4-11ed-bfe3-dac502259ad0.png

ee4cf486-d1c4-11ed-bfe3-dac502259ad0.png

ee68182e-d1c4-11ed-bfe3-dac502259ad0.png

ee82e79e-d1c4-11ed-bfe3-dac502259ad0.png

ee9507d0-d1c4-11ed-bfe3-dac502259ad0.png

eeb644e0-d1c4-11ed-bfe3-dac502259ad0.png

eecc1ed2-d1c4-11ed-bfe3-dac502259ad0.png

eedd73d0-d1c4-11ed-bfe3-dac502259ad0.png

eef04e38-d1c4-11ed-bfe3-dac502259ad0.png

ef02b0d2-d1c4-11ed-bfe3-dac502259ad0.png

ef17ce5e-d1c4-11ed-bfe3-dac502259ad0.png

ef30ab04-d1c4-11ed-bfe3-dac502259ad0.png

ef43de0e-d1c4-11ed-bfe3-dac502259ad0.png

ef561b78-d1c4-11ed-bfe3-dac502259ad0.png

基于Frenet坐标系进行运动规划,将输出单独的横、纵向轨迹,而最终输出到自动驾驶车辆参考运动轨迹需要可直接被控制模块所应用,因此最后还需要把Frenet坐标系下得到的轨迹转化到一个全局笛卡尔坐标系中。逆过程过于简单,下面直接给出结论。

ef72874a-d1c4-11ed-bfe3-dac502259ad0.png

04写在最后

Frenet坐标系的熟练掌握,应该是规划控制入门的第一课,也是开启你自动驾驶混乱时代的第一课。

审核编辑 :李倩

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

    关注

    2

    文章

    131

    浏览量

    18854
  • 向量
    +关注

    关注

    0

    文章

    55

    浏览量

    11662
  • 自动驾驶
    +关注

    关注

    784

    文章

    13798

    浏览量

    166421

原文标题:Frenet坐标系,自动驾驶“混乱”的源头

文章出处:【微信号:阿宝1990,微信公众号:阿宝1990】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是坐标系

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

    坐标系与鱼雷运动参数

    坐标系与鱼雷运动参数 一、常采用的几种坐标系 在鱼雷航行动力学的研究过程中,根据不同的研究目的,须要采用不同的坐标系。常采用
    发表于 01-06 16:47 4999次阅读
    <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>区别

    一种基于Frenet坐标系的优化轨迹动作规划方法

    本文介绍一种基于Frenet坐标系的优化轨迹动作规划方法,该方法在高速情况下的高级车道保持和无人驾驶都具有很强的实用性,是目前普遍采用的一种动作规划算法。
    的头像 发表于 07-09 09:33 1.3w次阅读
    一种基于<b class='flag-5'>Frenet</b><b class='flag-5'>坐标系</b>的优化轨迹动作规划方法

    自动驾驶各个坐标系

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

    自动驾驶中的各种时空坐标系

    介绍自动驾驶威廉希尔官方网站 中几种常用的坐标系统,以及他们之间如何完成关联和转换,最终构建出统一的环境模型。 所谓时空坐标系,包括三维空间坐标系和一维时间坐标
    发表于 06-02 15:44 0次下载
    <b class='flag-5'>自动驾驶</b>中的各种时空<b class='flag-5'>坐标系</b>

    自动驾驶里面的三个坐标系

    自动驾驶里面会有三个坐标系.其中自然坐标系是指以我们规划的轨迹,建立的自然坐标系。使用自然坐标系的目的是要使控制算法的使用变得简单。自然坐
    发表于 06-06 09:56 0次下载
    <b class='flag-5'>自动驾驶</b>里面的三个<b class='flag-5'>坐标系</b>

    自动驾驶规划算法基础之frenet与笛卡尔cartesian坐标系的转换

    该笔记来自b站up主(偶像):憨厚老实的老王 B站视频链接跟着老王的视频手写推了一遍公式,这酸爽! csdn中推导公式比较好的博主: Frenet坐标系与Cartesian坐标系互转
    发表于 06-06 10:01 2次下载
    <b class='flag-5'>自动驾驶</b>规划算法基础之<b class='flag-5'>frenet</b>与笛卡尔cartesian<b class='flag-5'>坐标系</b>的转换

    自动驾驶车辆控制(车辆运动学模型)

    本文应配合b站up主“ 忠厚老实的老王 ”的 自动驾驶控制算法 系列视频食用。文章目录1. 两个车辆运动学模型 1.1 三个坐标系 1.2符号定义 1.3车辆运动学模型 1.4车辆动力学模型
    发表于 06-07 11:53 0次下载
    <b class='flag-5'>自动驾驶</b>车辆控制(车辆运动学模型)

    坐标如何建立坐标系

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

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

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

    浅谈自动驾驶威廉希尔官方网站 常用坐标系统关联和转换

    视觉系统一共有四个坐标系:像素平面坐标系(u,v)、图像坐标系(x,y)、相机坐标系()和世界坐标系()。每种
    发表于 10-30 10:24 1203次阅读
    浅谈<b class='flag-5'>自动驾驶</b>威廉希尔官方网站
常用<b class='flag-5'>坐标系</b>统关联和转换

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

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

    自动驾驶坐标变换意义与类型

    自动驾驶的关键挑战之一是准确感知和解释车辆周围环境的能力。这需要使用各种传感器,如相机、激光雷达和雷达,来捕捉周围环境的数据。 然而,这些传感器捕获的数据通常位于与车辆自身坐标系不同的坐标系中。这
    的头像 发表于 11-14 11:49 743次阅读
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>坐标</b>变换意义与类型

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

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