实时加SOTA一飞冲天!FastOcc:推理更快、部署友好Occ算法来啦!
写在前面&笔者的个人理解
在自动驾驶系统当中,感知任务是整个自驾系统中至关重要的组成部分。感知任务的主要目标是使自动驾驶车辆能够理解和感知周围的环境元素,如行驶在路上的车辆、路旁的行人、行驶过程中遇到的障碍物、路上的交通标志等,从而帮助下游模块做出正确合理的决策和行为。在一辆具备自动驾驶功能的车辆中,通常会配备不同类型的信息采集传感器,如环视相机传感器、激光雷达传感器以及毫米波雷达传感器等等,从而确保自动驾驶车辆能够准确感知和理解周围环境要素,使自动驾驶车辆在自主行驶的过程中能够做出正确的决断。
目前,基于纯图像的视觉感知方法相对于基于激光雷达的感知算法具有更低的硬件成本和部署成本,因此受到了工业界和学术界的广泛关注。已经涌现了许多出色的视觉感知算法,用于实现3D目标感知任务和BEV场景下的语义分割任务。虽然现有的3D目标感知算法在检测性能方面已经取得了显著进展,但在实际应用中仍然存在一些问题逐渐显露出来:
- 原有的3D目标感知算法无法很好的解决数据集中存在的长尾问题,以及真实世界中存在但是当前训练数据集中可能没有标注的物体(如:行驶道路上的大石块,翻倒的车辆等等)
- 原有的3D目标感知算法通常会直接输出一个粗糙的3D立体边界框而无法准确描述任意形状的目标物体,对物体形状和几何结构的表达还不够细粒度。虽然这种输出结果框可以满足大多数的物体场景,但是像有连接的公交车或者具有很长挖钩的建筑车辆,当前3D感知算法就无法给出准确和清楚的描述了
基于上述提到的相关问题,栅格占用网络(Occupancy Network)感知算法被提出。本质上而言,Occupancy Network感知算法是基于3D空间场景的语义分割任务。基于纯视觉的Occupancy Network感知算法会将当前的3D空间划分成一个个的3D体素网格,通过自动驾驶车辆配备的环视相机传感器将采集到的环视图像送入到网络模型中,经过算法模型的处理和预测,输出当前空间中每个3D体素网格的占用状态以及可能包含的目标语义类别,从而实现对于当前3D空间场景的全面感知。
近年来,基于Occupancy Network的感知算法因其更好的感知优势而受到了研究者们的广泛关注,目前已经涌现出了很多优秀的工作用于提升该类算法的检测性能,这些论文的大概思路方向为:提出更加鲁棒的特征提取方法、2D特征向3D特征的坐标变换方式、更加复杂的网络结构设计以及如何更加准确的生成Occupancy真值标注帮助模型学习等等。然而许多现有的Occupancy Network感知方法在模型预测推理的过程中都存在着严重的计算开销,使得这些算法很难满足自动驾驶实时感知的要求,很难上车部署。
我们提出了一种创新的Occupancy Network预测方法,与当前的领先感知算法相比,我们的FastOcc算法具有实时的推理速度和优异的检测性能。通过下图可以直观地比较我们提出的算法与其他算法在性能和推理速度上的差异。
FastOcc算法和其他SOTA算法的精度和推理速度比较
论文链接:https://arxiv.org/pdf/2403.02710.pdf
网络模型的整体架构&细节梳理
为了提高Occupancy Network感知算法的推理速度,我们分别从输入图像的分辨率、特征提取主干网络、视角转换的方式以及栅格预测头结构四个部分进行了实验,通过实验结果发现,栅格预测头中的三维卷积或者反卷积具有很大的耗时优化空间。基于此,我们设计了FastOcc算法的网络结构,如下图所示。
FastOcc算法网络结构图
整体而言,提出的FastOcc算法包括三个子模块,分别是Image Feature Extraction用于多尺度特征提取、View Transformation用于视角转换、Occupancy Prediction Head用于实现感知输出,接下来我们会分别介绍这三个部分的细节。
图像特征提取(Image Feature Extraction)
对于提出的FastOcc算法而言,网络输入依旧是采集到的环视图像,这里我们采用了ResNet的网络结构完成环视图像的特征提取过程。同时,我们也利用了FPN特征金字塔结构用于聚合主干网络输出的多尺度图像特征。为了后续的表达方便,这里我们将输入图像表示为,经过特征提取后的特征表示为。
视角转换(View Transformation)
视角转换模块的主要作用就是完成2D图像特征向3D空间特征的转换过程,同时为了降低算法模型的开销,通常转换到3D空间的特征会进行粗糙的表达,这里为了方便表示,我们将转换到3D空间的特征标记为,其中代表嵌入特征向量的维度,代表感知空间的长度、宽度和高度。在目前的感知算法当中,主流的视角转换过程包括两类:
- 一类是以BEVFormer为代表的Backward的坐标变换方法。该类方法通常是先在3D空间生成体素Query,然后利用Cross-view Attention的方式将3D空间的体素Query与2D图像特征进行交互,完成最终的3D体素特征的构建。
- 一类是以LSS为代表的Forward的坐标变换方法。这类方法会利用网络中的深度估计网络来同时估计每个特征像素位置的语义特征信息和离散深度概率,通过外积运算构建出语义视锥特征,最终利用VoxelPooling层实现最终的3D体素特征的构建。
考虑到LSS算法具有更好的推理速度和效率,在本文中,我们采用了LSS算法作为我们的视角转换模块。同时,考虑到每个像素位置的离散深度都是估计出来的,其不确定性一定程度上会制约模型最终的感知性能。因此,在我们的具体实现中,我们利用点云信息来进行深度方向上的监督,以实现更好的感知结果。
栅格预测头(Occupancy Prediction Head)
在上图展示的网络结构图中,栅格预测头还包含三个子部分,分别是BEV特征提取、图像特征插值采样、特征集成。接下来,我们将逐一介绍三部分的方法的细节。
BEV特征提取
目前,大多数的Occupancy Network算法都是对视角转换模块得到的3D体素特征进行处理。而处理的形式一般是三维的全卷积网络。具体而言,对于三维全卷积网络的任意一层,其对输入的三维体素特征进行卷积所需要的计算量如下:
其中,和分别代表输入特征和输出特征的通道数量,代表特征图空间大小。相比于直接在3D空间中处理体素特征,我们采用了轻量级的2D BEV特征卷积模块。具体而言,对于视角转换模块的输出体素特征,我们首先将高度信息和语义特征进行融合得到2D的BEV特征,其次利用2D全卷积网络进行特征提取得到BEV特征,该2D过程的特征提取过程的计算量可以表述成如下的形式
通过3D和2D处理过程的计算量对比可以看出,通过利用轻量化的2D BEV特征卷积模块来代替原有的3D体素特征提取可以大大减少模型的计算量。同时,两类处理过程的可视化流程图如下图所示:
2D FCN和3D FCN网络结构的可视化情况
图像特征插值采样
为了减少栅格预测头模块的计算量,我们将视角转换模块输出的3D体素特征的高度进行压缩,并利用2D的BEV卷积模块进行特征提取。但为了增加缺失的Z轴高度特征信息并秉持着减少模型计算量的思想出发,我们提出了图像特征插值采样方法。
具体而言,我们首先根据需要感知的范围设定对应的三维体素空间,并将其分配到ego坐标系下,记作。其次,利用相机的外参和内参坐标变换矩阵,将ego坐标系下的坐标点投影到图像坐标系,用于提取对应位置的图像特征。
其中,和分别代表相机的内参和外参坐标变换矩阵,代表ego坐标系下的空间点投影到图像坐标系下的位置。在得到对应的图像坐标后,我们将超过图像范围或者具有负深度的坐标点过滤掉。然后,我们采用双线性插值运算根据投影后的坐标位置获取对应的图像语义特征,并对所有相机图像收集到的特征取平均值,得到最终的插值采样结果。
特征集成
为了将得到的平面BEV特征与插值采样得到的3D体素特征进行集成,我们首先利用上采样操作将BEV特征的空间尺寸和3D体素特征的空间尺寸进行对齐,并且沿着Z轴方向执行repeat操作,操作后得到的特征我们记作。然后我们将以及图像特征插值采样得到的特征进行Concat并通过一个卷积层进行集成得到最终的体素特征。
上述提到的图像特征插值采样和特征集成过程整体可以用下图进行表示:
图像特征插值采样以及特征集成过程
除此之外,为了进一步确保经过BEV特征提取模块输出的BEV特征包含有足够的特征信息用于完成后续的感知过程,我们采用了一个额外的监督方法,即利用一个语义分割头来首先语义分割任务,并利用Occupancy的真值来构建语义分割的真值标签完成整个的监督过程。
实验结果&评价指标
定量分析部分
首先展示一下我们提出的FastOcc算法在Occ3D-nuScenes数据集上和其他SOTA算法的对比情况,各个算法的具体指标见下表所示
各个算法指标的在Occ3D-nuScenes数据集上的对比
通过表格上的结果可以看出,我们提出的FastOcc算法相比于其他的算法而言,在大多数的类别上都更加的具有优势,同时总的mIoU指标也实现了SOTA的效果。
除此之外,我们也比较了不同的视角转换方式以及栅格预测头当中所使用的解码特征的模块对于感知性能以及推理耗时的影响(实验数据均是基于输入图像分辨率为640×1600,主干网络采用的是ResNet-101网络),相关的实验结果对比如下表所示
不同视角转换以及栅格预测头的精度和推理耗时对比
SurroundOcc算法采用了多尺度的Cross-view Attention视角转换方式以及3D卷积来实现3D体素特征的提取,具有最高的推理耗时。我们将原有的Cross-view Attention视角转换方式换成LSS的转换方式之后,mIoU精度有所提升,同时耗时也得到了降低。在此基础上,通过将原有的3D卷积换成3D FCN结构,可以进一步的增加精度,但是推理耗时也明显增加。最后我们选择采样LSS的坐标转换方式以及2D FCN结构实现检测性能和推理耗时之间的平衡。
此外,我们也验证了我们提出的基于BEV特征的语义分割监督任务以及图像特征插值采样的有效性,具体的消融实验结果见下表所示:
不同模块的消融实验对比情况
此外,我们还做了模型上的scale实验,通过控制主干网络的大小以及输入图像的分辨率,从而构建了一组Occupancy Network感知算法模型(FastOcc、FastOcc-Small、FastOcc-Tiny),具体配置见下表:
不同主干网络和分辨率配置下的模型能力对比
定性分析部分
下图展示了我们提出的FastOcc算法模型与SurroundOcc算法模型的可视化结果对比情况,可以明显的看到,提出的FastOcc算法模型以更加合理的方式填补了周围的环境元素,并且实现了更加准确的行驶车辆以及树木的感知。
FastOcc算法与SurroundOcc算法的可视化结果对比情况
结论
在本文中,针对现有的Occupancy Network算法模型检测耗时长,难以上车部署的问题,我们提出了FastOcc算法模型。通过将原有的处理3D体素的3D卷积模块用2D卷积进行替代,极大缩短了推理耗时,并且和其他算法相比实现了SOTA的感知结果。
以上是实时加SOTA一飞冲天!FastOcc:推理更快、部署友好Occ算法来啦!的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

i77700的性能运行win11完全足够,但是用户却发现自己的i77700不能升级win11,这主要是受到了微软硬性条件的限制,所以只要跳过该限制就能安装了。i77700不能升级win11:1、因为微软限制了cpu的版本。2、intel只有第八代及以上版本可以直升win11。3、而i77700作为7代,无法满足win11的升级需求。4、但是i77700在性能上是完全能流畅使用win11的。5、所以大家可以使用本站的win11直装系统。6、下载完成后,右键“装载”该文件。7、再双击运行其中的“一键

写在前面&笔者的个人理解目前,在整个自动驾驶系统当中,感知模块扮演了其中至关重要的角色,行驶在道路上的自动驾驶车辆只有通过感知模块获得到准确的感知结果后,才能让自动驾驶系统中的下游规控模块做出及时、正确的判断和行为决策。目前,具备自动驾驶功能的汽车中通常会配备包括环视相机传感器、激光雷达传感器以及毫米波雷达传感器在内的多种数据信息传感器来收集不同模态的信息,用于实现准确的感知任务。基于纯视觉的BEV感知算法因其较低的硬件成本和易于部署的特点,以及其输出结果能便捷地应用于各种下游任务,因此受到工业

C++中机器学习算法面临的常见挑战包括内存管理、多线程、性能优化和可维护性。解决方案包括使用智能指针、现代线程库、SIMD指令和第三方库,并遵循代码风格指南和使用自动化工具。实践案例展示了如何利用Eigen库实现线性回归算法,有效地管理内存和使用高性能矩阵操作。

今天给大家介绍一篇MIT上周发表的文章,使用GPT-3.5-turbo解决时间序列异常检测问题,初步验证了LLM在时间序列异常检测中的有效性。整个过程没有进行finetune,直接使用GPT-3.5-turbo进行异常检测,文中的核心是如何将时间序列转换成GPT-3.5-turbo可识别的输入,以及如何设计prompt或者pipeline让LLM解决异常检测任务。下面给大家详细介绍一下这篇工作。图片论文标题:Largelanguagemodelscanbezero-shotanomalydete

C++sort函数底层采用归并排序,其复杂度为O(nlogn),并提供不同的排序算法选择,包括快速排序、堆排序和稳定排序。

人工智能(AI)与执法领域的融合为犯罪预防和侦查开辟了新的可能性。人工智能的预测能力被广泛应用于CrimeGPT(犯罪预测技术)等系统,用于预测犯罪活动。本文探讨了人工智能在犯罪预测领域的潜力、目前的应用情况、所面临的挑战以及相关技术可能带来的道德影响。人工智能和犯罪预测:基础知识CrimeGPT利用机器学习算法来分析大量数据集,识别可以预测犯罪可能发生的地点和时间的模式。这些数据集包括历史犯罪统计数据、人口统计信息、经济指标、天气模式等。通过识别人类分析师可能忽视的趋势,人工智能可以为执法机构

01前景概要目前,难以在检测效率和检测结果之间取得适当的平衡。我们就研究出了一种用于高分辨率光学遥感图像中目标检测的增强YOLOv5算法,利用多层特征金字塔、多检测头策略和混合注意力模块来提高光学遥感图像的目标检测网络的效果。根据SIMD数据集,新算法的mAP比YOLOv5好2.2%,比YOLOX好8.48%,在检测结果和速度之间实现了更好的平衡。02背景&动机随着远感技术的快速发展,高分辨率光学远感图像已被用于描述地球表面的许多物体,包括飞机、汽车、建筑物等。目标检测在远感图像的解释中

一、58画像平台建设背景首先和大家分享下58画像平台的建设背景。1.传统的画像平台传统的思路已经不够,建设用户画像平台依赖数据仓库建模能力,整合多业务线数据,构建准确的用户画像;还需要数据挖掘,理解用户行为、兴趣和需求,提供算法侧的能力;最后,还需要具备数据平台能力,高效存储、查询和共享用户画像数据,提供画像服务。业务自建画像平台和中台类型画像平台主要区别在于,业务自建画像平台服务单条业务线,按需定制;中台平台服务多条业务线,建模复杂,提供更为通用的能力。2.58中台画像建设的背景58的用户画像
