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

【自动驾驶】《Sparse4Dv3》代码学习笔记

这里时间比较有限,优先看Sparse4Dv3方法里面相对以前改动的地方。

0.参考

代码v1/v2/v3:https://github.com/HorizonRobotics/Sparse4D

跑起来:https://github.com/HorizonRobotics/Sparse4D/blob/v3.0/docs/quick_start.md

1.方法

(1)时序实例去噪(3D)

代码解析:在head的InstanceBank模块中,两组kmeans提前初始化好的均匀分布锚点:nuscenes_kmeans900.npy,然后另外一组锚点,通过SparseBox3DKeyPointsGenerator模块进行forward噪声生成,然后通过二分图匹配(在哪?)。通过时间差,补偿锚点的中心点、尺寸、yaw、速度等。

(2)质量估计 (Quality Estimation)

代码解析:下面三张图,由配置文件,可以知道是用到了质量估计这个模块的。

代码解析:下面三张图,由配置文件,可以知道中心点的使用的交叉熵损失函数,而yaw角度的优化,使用的高斯focal loss损失函数进行优化。看起来跟论文中的是正好反过来的!!!

(3)解耦注意力 (Decoupled Attention)

将锚点独立的高维特征编码 (independently conduct high-dimensional feature encoding),随后将它们拼接 (concatenate) 起来。将与原始 Sparse4D 相比,这种方法带来了更低的计算量和参数开销 (lower computational and parameter overhead)。然后E 和 F 分别代表锚点嵌入 (anchor embedding) 和实例特征 (instance feature)也拼接起来。

代码解析:我们可以看到将a这个独立高维特征编码后进行add或者concatenate操作,其中是进行add还是cat操作通过self.mode这个参数进行配置的。head中anchor_encoder中type=“SparseBox3DEncoder”对应 mode=“cat”。

(4)扩展到追踪 (Extend to Tracking)

代码解析:Sparse4DHead中forward,通过调用instance_back.get返回instance_feature与anchor  作为R;

代码解析:Sparse4DHead中forward,通过调用instance_back.cache,将topk的instance_feature存在cache中;

代码解析:Sparse4DHead中forward,通过调用instance_back.get_instance_id,如果id为空或置信度>threshold,给赋新的id(self.pred_id基础上+i);

2.结果

v3增加了track的任务,帧率上降低并不多。mAP提升了2.5个点,对于IDS可能还需要做一些优化。

http://www.lryc.cn/news/612867.html

相关文章:

  • uniapp/uniappx实现图片或视频文件选择时同步告知权限申请目的解决华为等应用市场上架审核问题
  • 行业应用案例:MCP在不同垂直领域的落地实践
  • 学深度学习,有什么好的建议或推荐的书籍?
  • 深入解析Java类加载机制:双亲委派模型的设计与实现
  • 开源大模型实战:GPT-OSS本地部署与全面测评
  • Android 之 Jetpack - Lifecycle
  • 告别复杂配置!cpolar让Prometheus监控突破网络限制
  • 【PHP 接口(Interface)完全入门指南】
  • 力控汽车零部件冲压MES系统方案
  • 汽车线束设计—导线的选取
  • 亚远景-ISO 42001:汽车AI安全的行业标准新趋势
  • 数字孪生系统让汽车工厂虚实联动预测维护少停机
  • Flink-1.19.0-核心源码详解
  • Linux图文理解进程
  • Android-Kotlin基础(Jetpack①-ViewModel)
  • 软件测试中,pytest 运行完成后,如何自动发送邮件?
  • 解密MVCC:如何实现高效的数据库并发
  • Linux学习-数据结构(二叉树)
  • 【物联网】基于树莓派的物联网开发【24】——树莓派安装influxDB时序数据库
  • 关于AI应用案例计算机视觉、自然语言处理、推荐系统和生成式AI四大领域的详细技术分析。
  • 时序数据库的功能与应用价值
  • uniapp-vue2导航栏全局自动下拉变色
  • 护网行动之后:容器安全如何升级?微隔离打造内网“微堡垒”
  • imx6ull-驱动开发篇12——GPIO子系统驱动LED
  • Android Studio(2025.1.2)Gemini Agent 使用指南
  • 如何使用 pnpm创建Vue 3 项目
  • Vue内置动画组件 Transition
  • 【FreeRTOS】(号外)任务间通讯2: 信号量- Counting Semaphore
  • 前端发布 发布前端项目流程
  • Spring AI + Redis:构建高效AI应用缓存方案