| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> Lanelet2 学习笔记 -> 正文阅读 |
|
[人工智能]Lanelet2 学习笔记 |
之前做的L2项目,都是高速、高架场景,地图传输格式ADASISv3就够了。现在要推广到城市场景,原来的框架或协议可能不够用了,所以打算学习下Lanelet2这套新的高精度地图框架。 参考资料:
现有地图格式框架的问题在自动驾驶领域,高精地图常被应用于以下几个方面: ?比如:
以往的地图框架,比如openstreetmap(OSM),采用自上而下的设计思路。道路road被一条虚拟车道中心线center line表达。它已被广泛使用于导航设备。其他车道信息,比如交通线和道路边界的位置,都以属性的形式附加到这条中心线上。 随着ADAS需求的增加,越来越多的属性将被增加。这使得地图信息极度复杂且无法直接被表示。比如,路边目标的绝对位置,只能通过中心线左右边界的偏移量以及道路宽度间接推算出来。如果是十字路口,没有中心线的,那将变得更加困难。 作者认为opendrive也有同样的问题。 Lanelet2 组件及概念Lanelet2主要包含如下图层:
上述层级结构主要由Points, linestrings, polygons, lanelets, areas and regulatory elements 共六个元素表达,每个元素的实体都拥有独立的ID号,数据属性通过键值对储存。 Points包含ID, 3D坐标和属性。关于高程,天朝图商不让发布高程信息,所以可以采用2.5D的形式,主要用于区分隧道和桥梁,一般的路面高程为0,碰到隧道或桥梁,可以设置为1,表示这里有新的图层,这对于路径规划很重要。 另外,单个点是没有意义的,在lanelet2中必须同其他对象一起使用才有意义。 point可以由osm格式中的node表示。 Linestrings也被认为是多项式曲线,由一系列的point通过线性插值表达,如下图所示。linestring由三个绿色的point经过插值后表达。包含ID,类型,以及point数组。? lanelstring可以由OSM格式中的way来表示。 Polygons多边形同linestring类似,只是它构成了一个区域,言下之意是它的point数组中,第一个point和最后一个point是相互链接的。它通常被用于描述自定义区域或交通牌。 它同样可以由OSM中的way表示。 Laneletslanelet 是对车道的原子描述。原子意味着交通规则在这条lanelet上不会改变。 lanelet可以有OSM格式中的relation表示,包含多种way以及交通元素 lanelet由左右边界构成,边界由linestring表达,同一条车道的两条linestring方向必须相同。另外lanelet还包含车道中心线,且默认是单向的。相邻的lanelet需要共享linestring。 每个lanelet可以绑定交通元素,比如限速、限行 如下图所示,9个点,三条linestrings构成了两条Lanelets,包含2个ID,以及车辆可以通信的标记 Areas?area同lanelet的区别是,area可以用于表达无向的交通环境(比如停车场),而lanelet只能表达有向的交通环境。同一个area内的交通规则不可更改。 Area内部运行有空洞,表示改区域不可访问。但是空洞内部不允许有别的area或linestring area由一组linestring按照顺时针顺序描述,如下图所示,ID 126和 ID 127是两片用于停车的区域。? Regulatory element交通元素被lanelet或area索引,用tag表示具体的交通规则。如下图所示,交通元素ID 126为红绿灯。 下面是一则综合案例,表达了6个元素与3个图层之间的关系。 Lanelet 距离公式理解如何计算lanelet外一点X距离该lanelet的距离? 给定外点X,其坐标(x,y)已知,假设linestring的端点b和t的位置和梯度方向也是知道的。 我们知道lanelet是有多个points的线性插值得到polyline表述,我们无法知道X到这条polyline的解析解(缺乏polyline的曲线系数) ?为此,我们对梯度方向和位置同时插值有下式: 另外,根据向量关系有: 同时,我们知道垂直约束关系: ?假设在原点(0,0),坐标为(l,0),它们对应的梯度方向为(1,)和(1,),那么联立上面所有公式,整理得到变量为: ?有了这个插值比例后,我们就知道了,从而可以知道模长,也就是距离。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 21:32:08- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |