当前位置: 首页 > news >正文

【论文阅读】VAD: Vectorized Scene Representation for Efficient Autonomous Driving

一、介绍

VAD是华科团队设计的一个端到端无人驾驶框架,针对传统的无人驾驶框架的模块化设计的问题,该算法使用向量化的策略进行了端到端的实现。传统的模块化设计使得感知模块完全依赖于感知模块的计算结果,这一解耦实际上从规划模块的角度损失了很多的信息,诸如语义信息。VAD采用向量化的策略进行了重新设计,从实验结果上来看超过了上海实验室提出的UniAD。

二、方法

VAD的模型以多视角的图像作为输入,编码后提取BEV特征,该特征会被送到Transformer中提取两类特征,这两类特征后续应用到轨控模块中。
在这里插入图片描述

3.1 Vectorized Scene Learning

这一节主要是介绍特征提取的部分。首先论文并没有介绍从多视角图像到BEV图像这个过程是如何实现的,应该是直接使用了现成的转换模型。论文直接是从得到BEV视角后开始介绍的。这一部分实际上包括了两种查询:Ageng query和Map query。这里的query实际上就是Transformer里面的那个query,我们主要就是训练这个query。

Map query

先给出结论, 这一个查询输入是BEV视角下的特征,输出是场景中的向量化的实例特征,可以理解为“当前场景中的物体以及哪些点归属于这些物体”。这个实例特征作者起名叫做map vector,它是一个Nm×Np×2大小的矩阵,其中Nm表示场景中物体的数目、Np为一个物体占据的点的数目,最后的2则是说它在BEV视角下的位置。这一个模块中算法主要关注三个内容:车道分割线、道路边界以及人行横道。简单来说就是通过Transformer处理之后,最后转换为一个三分类任务。

Agent query

与Map query类似,这一部分其实也是提取一类特征,主要是对场景中的物体的行进轨迹进行预测,这一预测会被用到后续的规划中。这一部分的输入依然是BEV视角下的特征,输出的是一个大小为Na×Nk×Tf×2的矩阵,其中Na表示场景中物体的数量,Nk表示行驶状态,Tf表示未来的时间戳,最后的2则是BEV视角下的坐标。我的理解是,这个矩阵表示了未来Tf时间内,Na个车辆的行驶状态及位置。相当于在这个模块内进行了所有交通参与者的状态预测,利用这一预测结果来约束后面轨控模块的行驶策略。

在这个模块中,稍微补习了一下Transformer的内容,在Transformer的编码器中,关键的三个值是query、key和value,其中query是我们训练的结果,key和value则是输入的变种。对于VAD中的查询模块,key和value都来源于BEV视角下的特征输入。这里的过程如下图:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
查询的数量并不等于类别数量,查询相当于多个卷积核,只负责特征的提取,而真正影响类别数量的是最后softmax层的结构。计算Key和Value的时候,映射矩阵Wk和Wv相当于一个降维的作用,负责对齐Key、Value以及Query的维度,这两个映射矩阵也是模型需要学习的参数。计算注意力的时候,所涉及的维度变化为:
在这里插入图片描述
在计算注意力之前,其实就已经存在一个展平的过程,原本BEV应该是H×W×C大小的,每张图是H×W,一共有C张,在计算键值的时候就已经展平了,这样子才可以与Wk和Wv进行计算,计算之后的键值变为D个长度为H×W的向量,拼成一个二维矩阵,key首先与query进行计算,得到相关性,这一相关性与value加权求和,得到大小为Nm×D的二维矩阵,表示D个长度为Nm的向量,可以解释为Nm个关键信息,每个信息都是一个长度为D的向量。这些信息会通过MLP解码进行后处理,将D维度调整为Np×2的维度,这样子就可以恢复出地图元素的位置以及包括的点。最终变成Vm:
在这里插入图片描述

相关文章:

  • STM32第一天建立工程
  • 云计算:虚拟化、容器化与云存储技术详解
  • 字节跳动C++客户端开发实习生内推-抖音基础技术
  • 数据库语句
  • leetcode day27 455+376
  • 中级网络工程师面试题参考示例(5)
  • Leetcode 刷题记录 06 —— 矩阵
  • Python 高级编程与实战:构建数据可视化应用
  • yolov5 onnx的部署文件(主要是onnx文件的使用)
  • AutoGen学习笔记系列(九)Advanced - Selector Group Chat
  • PawSQL for MSSQL:PawSQL 支持 SQL Server 的SQL优化、SQL审核、性能巡检
  • 【redis】type命令和定时器的两种实现方式(优先级队列、时间轮)
  • elasticsearch是哪家的
  • 每天五分钟深度学习pytorch:基于Pytorch搭建ResNet模型的残差块
  • 分布式ETCD面试题及参考答案
  • 2025 年 AI 网络安全预测
  • 使用 Java 在后端 为 PDF 添加水印
  • 电脑中本地部署阉割版DeepSeek或其他大模型的方法
  • ES-分词器安装与使用详解
  • MWC 2025 | 移远通信推出AI智能无人零售解决方案,以“动态视觉+边缘计算”引领智能零售新潮流
  • 网友景区倒卖柠檬水3.5小时赚254元?蜜雪冰城:正核实
  • 2025年上海市工程建设标准国际化工作要点发布
  • 每日475.52元!最高检公布最新侵犯公民人身自由的赔偿金标准
  • 山西资深公益人士孙超因突发急病离世,终年37岁
  • 住建部:目前已累计建设改造各类市政管网50万公里
  • 英伟达回应在上海设立新办公空间:正租用一个新办公空间,这是在中国持续深耕的努力