笛卡尔坐标系和Frenet坐标系
Frenet坐标系,自动驾驶“混乱”的源头
【自动驾驶】运动规划丨轨迹规划丨Frenet坐标转换
【自动驾驶】笛卡尔坐标系和frenet坐标系相互转换
轨迹规划作为具有多个非线性约束的高维优化问题,需要消耗大量的计算资源,并且由于场景的复杂性和实时性,并不是总能快捷简单的得到最优轨迹,这对规划算法的鲁棒性和实用性有着较高的要求
通常使用笛卡尔坐标系
描述物体的位置,但笛卡尔坐标系对车辆来说并不是最佳选择,即使给出车辆位置 (x, y),但也不知道道路在哪里,也很难知道车辆行驶了多远,也难以确定它是否偏离车道中心
技术缺点:
1、道路条件:由于大部分的道路并不是笔直的,而是具有一定弯曲度的弧线
2、数据处理:运动规划需要对HDmap获取的坐标点进行处理,数据量比较大
3、控制需求:车辆只需知道所在车道位置以及与周边障碍物的横纵向距离进行控制
笛卡尔坐标系的替代解决方案为 Frenet 坐标系
,Frenet 坐标系描述了汽车相对于道路的位置,在 Frenet 坐标系中,s 代表沿道路的距离称为纵坐标,d表示与纵向线的位移称为横坐标
Frenet坐标系的建立基于一个参考线,这个参考线可以是任意曲线,但在自动驾驶运动规划中一般定义为道路的中心线,这条中心线是地图模块输入过来的一系列离散点。同时使用参考线的切线向量和法线向量建立一个直角坐标系,如图1所示,这个坐标系就是Frenet坐标系
某一时刻,假设车辆质心在全局笛卡尔坐标系下的坐标为(x,y),车辆质心到参考线上的投影点称为原点,原点切线方向称为s轴方向或纵轴方向,原点法线方向称为d轴方向或横轴方向。纵坐标s值指的是参考线上的原点与起点之间曲线的长度,也就是车辆在道路上的纵向行驶距离。横坐标d值指的是原点与车辆质心之间的距离,也就是车辆偏离道路中心线的距离。车辆质心随着时间在不断变化,因此Frenet坐标系的原点也在不断变换,所以Frenet坐标系是一个移动坐标系
假设行为决策层判断前方有低速行驶的车辆,随后在t0时刻做出了一个在t1时刻完成变道的决策。即车辆需要在Δt=(t1-t0)时间内,横向上需要完成一个Δd以及纵向上完成一个Δs的移动。如图2所示,我们可以将s和d分别表示为关于t的函数:s(t)和d(t),这样**二维运动规划问题被分割成了两个独立的一维优化问题
**
Frenet坐标系与笛卡尔坐标系转换