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

BEVDet4D:多帧时序信息融合方法详解

GitHub:GitHub - HuangJunJie2017/BEVDet: Official code base of the BEVDet series .

利用多帧时序信息可以显著改善时间有关的预测效果(速度等)具体方法如下:

Simplify the Velocity Learning Task(速度学习任务简化) 

坐标系表示方法

按照 nuScenes [2] 的定义,我们用以下符号来表示不同的坐标系:

  • Og − XYZ:全局坐标系
  • Oe(T) − XYZ:自车坐标系(时间为 T)
  • Ot(T) − XYZ:目标坐标系(时间为 T)

如图 3 所示,我们构建了一个包含一辆移动中的自车和两辆目标车的虚拟场景。在全局坐标系中,一个目标车是静止的(即 Os − XYZ,标记为绿色),而另一个目标车是移动的(即 Om − XYZ,标记为蓝色)。相邻两帧(即帧 T−1 和帧 T)中的物体通过不同的透明度进行区分。物体的位置表示为 Px(t),其中 x ∈ {g, e(T), e(T − 1)} 表示定义位置的坐标系,t ∈ {T, T − 1} 表示记录位置的时间。我们使用 Tdst_src 表示从源坐标系到目标坐标系的转换。

预测目标的平移而非速度

为了简化学习任务,我们选择预测相邻帧中目标的平移量,而不是直接预测目标的速度。这样,学习任务被简化为仅依赖于两帧之间的BEV特征差异,而不需要考虑时间因素。此外,我们还倾向于学习与自车运动无关的平移量,这进一步简化了任务,因为自车运动会使目标位置的平移分布更加复杂。

通过这种方式:

  • 简化学习任务:去除时间因素,使目标平移量仅根据相邻帧之间的BEV特征差异来衡量。
  • 减少复杂性:通过忽略自车运动的影响,避免了由于自车运动引入的额外复杂性。

具体例子:

由于自车运动,一个在全局坐标系中静止的物体(例如图3中的绿色框)会在自车坐标系中变成一个运动物体。具体来说,BEV特征的感受野在自车周围对称地定义。考虑相邻帧中由视图变换器生成的两个特征,由于自车运动,它们在全局坐标系中的感受野是不同的。给定一个静止物体,其在全局坐标系中的位置分别为(在相邻的两个帧中)。 

为T时刻自车坐标系下车的位置;

为T时刻自车坐标系和全局坐标系的转化矩阵;

为T时刻和T-1时刻自车坐标系和全局坐标系的转化矩阵的变化矩阵(受自车运动影响)

目标平移预测中的自车运动校正

根据公式 (1),如果直接将两个特征连接起来,随后模块的学习目标(即两个特征中的目标位置平移)将与自车运动(即 ​)相关。为了避免这一点,我们通过来调整相邻帧中的目标位置,以去除自车运动的影响。

通过这种调整,学习目标被设定为当前帧的自车坐标系中的目标运动,这样可以消除自车运动的影响,使得目标平移的学习更加直接和有效。

所谓的特征对齐操作,就是上述所讲的目标平移预测中的自车运动校正,即,将学习目标由与自车运动相关变为了同一时刻的自车坐标系,降低模型的复杂性,消除了自车运动的影响。

具体实现方法如下:

给定上一帧和当前帧的候选特征可以通过以下步骤获得对齐后的特征:

 由于 可能在稀疏特征中不是有效的位置,因此需要应用双线性插值。双线性插值是一种次优方法,可能会导致精度下降。精度下降的程度与 BEV 特征的分辨率呈负相关。

 另外,作者实验证明了时序融合需要在BEV特征提取之后进行


http://www.kler.cn/a/282877.html

相关文章:

  • Flink中自定义Source和Sink的使用
  • 随机数
  • 力扣-Mysql-3308- 寻找表现最佳的司机(中等)
  • MySQL(5)【数据类型 —— 字符串类型】
  • Zookeeper的安装与使用
  • 爬虫补环境案例---问财网(rpc,jsdom,代理,selenium)
  • 富格林:正规方式顺利盈利出金
  • 性能测试的基本概念
  • Pycharm安装报错:Cannot detect a launch configuration 解决办法
  • 吴恩达机器学习笔记 四十五 基于内容的过滤的tensorFlow实现
  • 怎么解决 hash 碰撞,用 C++ 实现 hashMap?
  • Nosql数据库redis集群配置详解
  • Nginx轮询负载均衡配置指南:实现高效请求分发
  • docker常用命令使用dockerfile构建镜像,推送到私有镜像仓库
  • 【AI绘画】Midjourney前置指令/describe、/shorten详解
  • 适配算能BM1684开发板,bmodel推理模型转换
  • 矩阵分块乘法的证明
  • C语言典型例题55
  • VScode打开json文件和md文件直观展示方法
  • 免费批量Excel文件合并、拆分工具
  • Linux系统结构
  • 加密软件的特殊功能有哪些
  • STM32 - 按键控制LED灯
  • 在centos中安装 --nmon性能系统监控工具
  • 【实战场景】敏感词过滤如何实现?
  • 阿里最新发布Qwen2-VL:看视频的AI到底能干些什么惊人的事?