自动驾驶地图数据传输协议ADASIS v2

发布于:2025-04-18 ⋅ 阅读:(31) ⋅ 点赞:(0)

ADASIS(Advanced Driver Assistance Systems Interface Specification)直译过来就是 ADAS 接口规格,它要负责的东西其实很简单,就是为自动驾驶车辆提供前方道路交通相关的数据,这些数据被抽象成一个标准化的概念:ADAS Horizon。

数据从地图应用来,要传输到车内的 ADAS 软件应用中。我们常见的互联网传输协议是 Http,内容封装协一般是 json、protocol buffer、xml 等等。但汽车中的数据通信不同于互联网,一般走 CAN 通信,类似于 json,ADASIS v3 就定义了如何在汽车这个大平台下进行数据传输。

简而言之,ADASIS v3 就是一个用于地图数据传输的通信协议。

3. ADASIS 基础概念

3.1 基本要素

AHP(ADAS Horizon Provider) 电子地平线内容提供者
AHR(ADAS Horizon Reconstructor) 数据重构者
ADAS Application
ADASIS v3 Protocol
AHP、AHR、ADAS Application 它们代码可以位于不同进程,甚至不同的 ECU,这算异构技术,当然,高度自动驾驶没有那么多 ECU, 那么它们也可以在同一个域控制器或者中央计算平台当中。

在 ADASIS v3 中地图如何表示

地图信息很多,对于地图的表示也可以按照功能要求从简单到复杂。

ADASIS 倾向于尽可能简单。

如上图所示,你没有必要把每条街道推送给汽车软件,因为很多不需要,所以最简单也是可行的就是尽量推送少但有用的信息。

什么是少但有用的信息呢?

ADASIS v3 给出答案是:

前方道路
可能的道路
于是,Path 的概念就应运而生,可以看看上图那根红线。

Path 精简了地图数据,它只关注汽车可能行驶的路线。

3.2 Path

世上的路千万条,但你每次驾驶时都是走一条确定的路线,这条路线就叫做 Path,它是一种驾驶的可能性。

有了 Path 就可以将路网压缩成线性地图表示。

说是线性,我们可以将 path 看作是一条线,线上挂着许多类别的铃铛、星星等等。

有了这根线和这些铃铛,ADAS Horizon 就差不多成了。

当然,如果只有一条 path 也就是太粗鲁简单了,path 的表示也有粗细之分。

先看看这么一个路网信息:

汽车要向前方行驶,Path 信息可以简略表达,也可以复杂点表达。

3.2.1 Simple Path Representation
Simple Path 代表简略表达路网的策略。

如果告诉汽车,要去上图中 Link235 处,那么,有 2 种路由:

200 -> 210 -> 230 -> 215 -> 235
200 -> 205 -> 220 -> 235

把每种可能的路径用 Path 表示出来,而不是把所有的 Link 展示出来就是 Simple Path 的思想,会产生如下结果。

前面说的两种可能,其实就可以用 Path3 和 Path5 表示。

Simple Path 存在冗余,比如上图中所有的 Path 是有相同的起点的,也就是存在重复的数据,大量的重复数据会加剧通信带宽的压力,所以这需要一定的优化。

这涉及到 Path 的另外一种表示:Optimized Path Representation.

3.2.2 Optimized Path Representation
ADASISv3 使用 Optimized Path Representation 表示 Path。

它主要为了减少冗余,并且有了主从之分:

root path
sub path

因为有了主从之分,所以 path 可以形成层次表达。

ADAS Horizon 构造器会将汽车最有可能继续行驶的 Path 作为 root path,一般也是 MPP(Most Prefere Path),而 root-path 下的第一层 sub-path 会作为备选路径。

比如,上图中汽车向前,大概率会沿着 Path2 的方向,但 Path4、Path1、Path3 也是有可能的。

Path 是 ADAS Horizon 最主要的实体,像道路上的路标、十字路口、车道几何信息什么的可以当作 Path 当中的 Attributes。

所以,AHP 首要任务是要传输 Path 信息,AHR 首要任务是要根据 Path 进行路径重建。

3.2.3 Horizon Length

ADAS Horizon 由一系列的 Path 组成,随着汽车位置的移动,有些新的 Path 会添加进来,一些过时的 Path 就删掉了。

这牵扯到一个视窗的大小,在 ADASIS v3 中由 Horizon Length 决定
horizonlength = greatestoffse – smallestoffset.

做程序实现的时候,最小不能低于某个值,最大也不能超过某个值。

3.3 Profile

前面讲过,Path 可以看做是一根长长的线,上面挂了许多铃铛。

这些铃铛依附在线上,在 ADASIS v3 中用 Profile 表示。

Profile 有不同的类型,可以代表不同的道路相关信息,比如限制车速、路口位置、交通标志等等。

V2

  1. Profile

profile 是路径的属性,其相关信息是基于所在路径来确定的。而路径在 ADASIS v2 的概念里,是具有明确方向的,车辆沿着路径行驶的方向即为路径方向。因此,profile 所描述的属性信息,如道路曲率、坡度等,都是在这个既定的路径方向基础上进行表达的。在描述一段具有曲率的道路时,profile 中的曲率信息是针对车辆沿着该路径行驶方向而言的,正曲率可能表示车辆沿着路径行驶时向右侧转弯,负曲率则可能表示向左转弯 。这就意味着,虽然 profile 没有专门的方向字段,但它与有方向的路径紧密相连,从而间接体现了方向特性。

部分特定的 profile 类型能够更直接地反映方向信息。Heading Change profile 用于表示路径方向的变化情况,它通过描述相对于路径的航向变化角度,清晰地展示了路径方向的改变 。若该 profile 的值发生变化,就表明车辆在沿着路径行驶过程中,行驶方向出现了调整。再如,在一些与道路几何形状相关的 profile 中,如描述道路中心线走向的 profile,虽然没有明确的方向标识,但通过其对道路形状的描述,结合路径方向,可以推断出车辆在该路段行驶时的大致方向变化。


网站公告

今日签到

点亮在社区的每一天
去签到