0

0

SurroundOcc:环视三维占据栅格新SOTA!

WBOY

WBOY

发布时间:2023-09-18 20:25:01

|

1640人浏览过

|

来源于51CTO.COM

转载

在这个工作中,我们通过多帧点云构建了稠密占据栅格数据集,并设计了基于transformer的2d-3d unet结构的三维占据栅格网络。很荣幸地,我们的文章被iccv 2023收录,目前项目代码已开源,欢迎大家试用。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

SurroundOcc:环视三维占据栅格新SOTA!

arXiv:https://arxiv.org/pdf/2303.09551.pdf

代码:https://github.com/weiyithu/SurroundOcc

主页链接:https://weiyithu.github.io/SurroundOcc/

最近一直在疯狂找工作,没有闲下来写,正好最近提交了camera-ready,作为一个工作的收尾觉得还是写个知乎总结下。其实文章部分的介绍各个公众号写的已经很好了,也感谢他们的宣传,大家可以直接参考自动驾驶之心的自动驾驶之心:nuScenes SOTA!SurroundOcc:面向自动驾驶的纯视觉3D占据预测网络(清华&天大)。总的来说,contribution分为两块,一部分是如何利用多帧的lidar点云构建稠密occupancy数据集,另一部分是如何设计occupancy预测的网络。其实两部分的内容都比较直接易懂,大家有哪块不理解的也可以随时问我。那么这篇文章我想讲点论文之外的事情,一个是如何改进当前方案使其更加易于部署,另一个是未来的发展方向。

SurroundOcc:环视三维占据栅格新SOTA!

部署

SurroundOcc:环视三维占据栅格新SOTA!

一个网络是否易于部署,主要看其中有没有比较难在板端实现的算子,SurroundOcc这个方法里比较难搞的两个算子是transformer层以及3D卷积。

transformer的主要作用是将2D feature转换到3D空间,那么其实这部分也可以用LSS,Homography甚至mlp来实现,所以可以根据已实现的方案去修改这部分的网络。但据我所知,transformer的方案在几个方案里对calibration不敏感并且性能也比较好,建议有能力实现transformer部署的还是利用原有方案。

对于3D卷积来说,可以将其替换成2D卷积,这里需要将原来 (C, H, W, Z) 的3D feature reshape成(C* Z, H, W)的 2D feature,然后就可以用2D卷积进行特征提取了,在最后occupancy预测那步再把它reshape回(C, H, W, Z),并进行监督。另一方面,skip connection由于分辨率比较大所以比较吃显存,部署的时候可以去掉只留最小分辨率那一层。我们实验发现3D卷积中的这两个操作在nuscenes上都会有些许掉点,但业界数据集规模要远大于nuscenes,有时候有些结论也会改变,掉点应该会少甚至不掉。

Andi
Andi

智能搜索助手,可以帮助解决详细的问题

下载

SurroundOcc:环视三维占据栅格新SOTA!

在数据集构建方面,最耗时的一步是泊松重建。我们使用的是nuscenes数据集,其中采用了32线激光雷达进行采集。即使使用了多帧拼接技术,我们发现拼接后的点云仍然存在许多洞。因此,我们采用了泊松重建来填补这些洞。然而,目前业界使用的许多激光雷达点云都比较密集,例如M1、RS128等。因此,在这种情况下,可以省略泊松重建这一步,以加快数据集构建的速度

另一方面,SurroundOcc里是利用nuscenes中标注好的三维目标检测框将静态场景和动态物体分离的。但实际应用过程中,可以利用autolabel,也就是三维目标检测&跟踪大模型去得到每个物体在整个sequence中的检测框。相较于人工标注的label,利用大模型跑出来的结果肯定会存在一些误差,最直接的体现就是多帧的物体拼接后会有重影的现象。但其实occupancy对于物体形状的要求没有那么高,只要检测框位置比较准就能满足需求。

未来方向

当前方法还是比较依赖lidar提供occupancy的监督信号的,但很多车上,尤其是一些低阶辅助驾驶的车上没有lidar,这些车通过shadow模式可以传回来大量的RGB数据,那么一个未来方向是能不能只利用RGB进行自监督学习。一个自然的解决思路就是利用NeRF进行监督,具体来说,前面backbone部分不变,得到一个occupancy的预测,然后利用体素渲染得到每个相机视角下的RGB,和训练集中的真值RGB做loss形成监督信号。但很可惜的是这一套straightforward的方法我们试了试并不是很work,可能的原因是室外场景range太大,nerf可能hold不住,但也可能我们没有调好,大家也可以再试试。

另一个方向是时序&occupancy flow。其实occupancy flow对于下游任务的用处远比单帧occupancy大。ICCV的时候没来得及整occupancy flow的数据集,而且发paper的话还要对比很多flow的baseline,所以当时就没搞这块。时序网络可以参考BEVFormer和BEVDet4D的方案,比较简单有效。难的地方还是flow数据集这一部分,一般的物体可以用sequence的三维目标检测框算出来,但异型物体例如小动物塑料袋等,可能需要借助场景流的方法进行标注。

SurroundOcc:环视三维占据栅格新SOTA!

需要进行改写的内容是:原文链接:https://mp.weixin.qq.com/s/_crun60B_lOz6_maR0Wyug

相关专题

更多
github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

315

2026.01.21

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2035

2024.08.16

c++ 根号
c++ 根号

本专题整合了c++根号相关教程,阅读专题下面的文章了解更多详细内容。

17

2026.01.23

c++空格相关教程合集
c++空格相关教程合集

本专题整合了c++空格相关教程,阅读专题下面的文章了解更多详细内容。

22

2026.01.23

yy漫画官方登录入口地址合集
yy漫画官方登录入口地址合集

本专题整合了yy漫画入口相关合集,阅读专题下面的文章了解更多详细内容。

91

2026.01.23

漫蛙最新入口地址汇总2026
漫蛙最新入口地址汇总2026

本专题整合了漫蛙最新入口地址大全,阅读专题下面的文章了解更多详细内容。

124

2026.01.23

C++ 高级模板编程与元编程
C++ 高级模板编程与元编程

本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。

14

2026.01.23

php远程文件教程合集
php远程文件教程合集

本专题整合了php远程文件相关教程,阅读专题下面的文章了解更多详细内容。

65

2026.01.22

PHP后端开发相关内容汇总
PHP后端开发相关内容汇总

本专题整合了PHP后端开发相关内容,阅读专题下面的文章了解更多详细内容。

59

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Node.js 教程
Node.js 教程

共57课时 | 9.2万人学习

Rust 教程
Rust 教程

共28课时 | 4.8万人学习

Vue 教程
Vue 教程

共42课时 | 7.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号