A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/assemu/OccNet-Course below:

assemu/OccNet-Course: Surrounding Semantic Occupancy Perception Course for Autonomous Driving (docs, ppt and source code)

文档 代码 视频 课后答疑

Surrounding Semantic Occupancy Perception Course for Autonomous Driving

大家好!

欢迎来到《占据网络在自动驾驶中的应用》这门课程的学习,我是Charmve,大家也可以叫我察姆。目前任职于国内某自动驾驶独角兽公司,有多年自动驾驶量产经验。在本课程中,我们主要对今年国内外备受关注的Occupancy Network做一个专题学习分享,普遍认为它是解决自动驾驶感知长尾问题的关键技术。

特斯拉在去年AI DAY上,分享了他们在感知方面的一个重点技术:Occupancy Network (占据网络),自此引发业内网对占据网络的关注。研究机器人技术的同学肯定对occupancy grid不会陌生,occupancy表示空间中每个3D体素(voxel)是否被占据,可以是0/1二元表示,也可以是[0, 1]之间的一个概率值。

为什么估计occupancy对自动驾驶感知很重要呢?很核心的一个原因是:车辆在行驶中,除了常见障碍物如车辆、行人,我们可以通过3D物体检测的方式来估计他们的位置和大小,还有更多长尾的障碍物也会对行驶产生重要影响。例如:

  1. 可变形的障碍物,如两节的挂车,不适合用3D bounding box来表示;
  2. 异形障碍物,如翻倒的车辆,3D姿态估计会失效;
  3. 不在已知类别中的障碍物,如路上的石子、垃圾等,无法进行分类。

因此,我们希望能找到一种更好的表达来描述这些长尾障碍物,完整估计3D空间中每一个位置的占据情况(occupancy),甚至是语义(semantics)和运动情况(flow)。

特斯拉用下图的具体例子来展现Occupancy Network的强大。不同于3D的框,occupancy这种表征对物体没有过多的几何假设,因此可以建模任意形状的物体和任意形式的物体运动。图中展示了一个两节的公交车正在启动的场景,蓝色表示运动的体素,红色表示静止的体素,Occupancy Network精确地估计出了公交车的第一节已经开始运动,而第二节还处于静止状态。


图1 Tesla Occupancy Network
▲对正在启动的两节公交车的occupancy估计,蓝色表示运动的体素,红色表示静止的体素

特斯拉的Occupancy Network 模型结构如下图所示。首先模型利用RegNet和BiFPN从多相机获取特征,然后模型通过带3D空间位置的spatial query对2D图像特征进行基于attention的多相机融合。如何实现3D spatial query和2D特征图之间的联系呢?具体融合的方式图中没有细讲,但最有可能采取的是两种方案:

不光是上述提到的BEVFormer、PETR算法,我们在本课程中会详细的分析、总结和对比不同算法之间的来龙去脉,各自发展的过程,核心思想和优化点。

这一工作的分享,激发了大家对自动驾驶感知算法方向的探讨,普遍认为占据网络是未来感知算法的终极解决方案 。通过稠密的空间体素占用确定自动驾驶车辆的感知结果,为预测和规划提供更加准备的条件。更加有利于特征时序融合、做到自动驾驶端到端的解决方案,最终实现L4,直至L5完全无人驾驶。


图2 空间占据预测示例(TPVFormer、OccFormer)

今年来,学术界和工业界都在视觉occupancy方面有了大量的工作,从纯视觉的方案到多传感器的方案、从前向预测到后向预测,再到最近提出的forward-backward联合方案。对于我们初学者,造成了极大的学习困难。一下子不知道如何下手,从哪开始。本课程的出发点就是为了解决这个痛点,应该算是国内外对于占据网络全面讲解的第一个课程或者专题内容。

在接下来的很长一段时间,我会从自动驾驶从业者的角度,跟大家一起学习和分享占据网络的发展及其算法原理,同时我们也提供了代码实践内容。以通俗的语言讲解从2D目标检测到BEV视角下的3D目标检测,再到3D空间占用算法的整个过程。并且尤其关注到算法原理本身,对比不同算法,详细分析其核心思想和各算法的优化点。更为特别的,在本课程中,我们会给出两个占据网络的复现和优化,让你快速复现,学以致用。尤其适合目前正在求职的朋友、对自动驾驶感知算法感兴趣的跨行就职者。每个章节都会有详细的课件和答疑群,欢迎大家一起交流!课程后,会有一个大作业,根据给出的条件和目标,思路提示,完成占据网络算法的优化,提升mIoU指标。


图3 课程源代码

作者根据多年的自动驾驶经验,从占据网络的发展过程详细的阐述从2D检测到BEV 3D检测再到占据网络,讲清楚为什么前一方法不适用,各自方法有什么局限性。占据网络的神力又在哪里?由浅入深,一个问题一个问题解答。

涵盖当前几乎所有的占据网络算法,融会贯通,总结和提炼各自算法的核心思想,引出新的思考。

项目实战和理论结合,实战课程的课后配套实战代码和操作文档,随学随练、快速掌握。

Index

#自动驾驶感知算法之占据网络专题#

课程章节(点击标题展开章节详情🔎) 课程视频 课件PPT 源代码 🔥 试看 一、BEV感知概述(3周)

课程目录

[📹 Video] | [百度网盘] 提取码: mnee [PPT]() | [百度网盘] 🔥 试看 二、占据栅格网络概述(1.5周)

课程目录

[📹 Video] | [百度网盘] 提取码: akkb [PPT]() | [百度网盘]() 三、重要数据集和Benchmark介绍(1周)

课程目录

[📹 Video] | [百度网盘]() [PPT]() | [百度网盘]() 四、基于纯视觉的Occ算法(6周)

课程目录

[📹 Video] | [百度网盘]() [PPT]() | [百度网盘]() 五、基于点云和多模态融合的Occ方案(4周)

课程目录

[📹 Video] | [百度网盘]() [PPT]() | [百度网盘]() 六、课程展望与总结(1周)

课程目录

[📹 Video] | [百度网盘] 七、大作业(实践内容)(2周)

课程目录

[📹 Video] | [百度网盘] [PPT]() | [百度网盘] 🔥 试看 八、补充材料(1周)

课程目录

[📹 Video] | [百度网盘] 🎉 课程彩蛋 这是一个彩蛋 🥚
git clone https://github.com/Charmve/OccNet-Course ~/mway
cd ~/mway/OccNet-Course

scripts/start_dev_docker.sh
scripts/goto_dev_docker.sh

cd Chapter07-FinalProject/OccNet

细致的讲解,不光要有理论,代码及实践也一定要讲透彻!通过全套的视频讲解,帮你在脑海中搭建模型的基本框架,彻底搞懂每一个知识点,从而提高写代码的效率和速度。


图4 课程源代码


图5 课件PPT

Index

我是 Charmve,在多家自动驾驶头部公司任职,主要关注在BEV视觉感知、3D场景重建,有多个自动驾驶量产项目经验。近年来,尤其关注在占据网络的研发上,根据个人所学所思和工作实践,跟大家一起分享这个主题内容。

Index

  1. 对占据网络有较为全面的认识,深入理解各种算法的核心思想和原理,尽可能做到融会贯通,结合实际工作,改善和提高系统感知能力;
  2. 对自动驾驶系统的感知算法会有较深入的理解,掌握感知算法的设计痛点和难点;
  3. 学完本课程,并理解本课程所讲解的内容,你将会是占据网络掌握的少数人!
  4. 提高从业竞争力,卷过同级身边人,同时也能够结识许多行业从业人员与学习合作伙伴!

Index

  1. 计算机视觉与自动驾驶感知相关研究方向的本科/硕士/博士;
  2. CV与自动驾驶2D/3D感知相关算法工程人员;
  3. 对占据网络算法感兴趣的朋友,要是有实际需求会更好;
  4. 对计算机视觉有部分了解,具有一定的Python、Pytorch基础的小伙伴;

Index

2023年11月份开始学习之路,历经两个月,离线视频授课。主讲老师在微信学习群内答疑,对课程中的算法、代码、环境配置等问题一一解惑!

Index

VIP 专享8折优惠券

扫码学习课程

微信咨询:Charmve

Index


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4