多维优化Centerpoint模型成果显著!基于3D点云的多任务模型在板端实现高效部署
一、地平线征程®5
地平线征程5是专为高阶智能驾驶打造的智能计算方案,搭载地平线第三代架构BPU--贝叶斯(Bayes),算力可达128TOPS,是率先实现前装量产的国产百TOPS级智能计算方案。基于征程5开发的高等级自动驾驶方案可实现ADAS功能、高速导航智能驾驶、城区导航智能驾驶和智慧泊车的全场景覆盖。针对自动驾驶实际工况,Bayes结合突破性的AI加速计算技术,通过灵活配置的访存计算,极大的优化内存占用及访存,将并行计算发挥到极致!
二、简介
对于自动驾驶应用来说,3D 场景感知至关重要。3D点云数据就是具有3D特征的数据。一方面,3D 点云可以直接用来获取障碍物的距离和大小,以及场景的语义信息。另一方面,3D 点云也可以与 2D 图像进行融合,以充分利用两者所提供的不同信息:图像的优势在于语义信息更加丰富,点云的优势在于距离和深度感知精确。随着深度学习架构的发展,出现了很多基于3D 点云感知模型,通过提取 3D 空间的点云特征,可以构建一种更精确、高维度、高分辨率的场景表示形式,助力下游预测与规控任务的发展。对于检测模型,相比图像感知模型,对于 3D 感知任务,基于3D 点云的感知模型通常拥有非常明显的精度优势。
同时,在自动驾驶系统中,可行驶区域分割是一项重要的任务。可行驶区域的提取是ADAS的关键技术,旨在使用传感器感知技术感知驾驶车辆周围的道路环境,识别并分割出当前驾驶场景下可行驶的区域,防止偏离车道或违规驾驶。
在部署过程中,相比图像模型,3D 点云的输入处理过程更复杂,量化难度高,导致难以部署。当前常见的对点云数据处理方式包括point-based、pillar-based、voxel-based等方式。考虑到部署的实时性需求,地平线选用了基于pillar-based的 Centerpoint,同时提出了基于3D点云的多任务模型,实现可行驶区域分割的感知功能。本文即对如何在地平线征程5芯片上高效部署基于3D点云的多任务模型进行介绍。
三、整体框架
本文介绍的多任务模型输入为3D点云,通过感知模型可同时输出 3D 目标检测结果和 2D 可行驶区域的分割结果。多任务模型网络结构可分为以下三个部分:
• 点云前处理。该部分是对3D点云做基于pillar-based的处理,将点划分到pillars中,形成伪图像。包括以下三个部分:
a. Pillar 化:将输入的原始点云转换为 pillar 特征;
b. PFNLayer:提取 pillar 特征,特征通道数提升至 64;
c. Scatter:完成 pillar 特征到伪图像化的转换。
• 特征提取和融合: 该层选用 MixVarGENet+UNET 结构,提取多层特征并加以融合,获得高层语义特征;
• 多任务输出头: 输出多类别的 3D 目标检测和二分类的可行驶区域分割结果。
四、部署优化
在部署优化之前,首先明确针对Centerpoint多任务模型的各部分的结构做性能和量化精度上分析,然后进一步给出优化方向和优化思路。
五、量化精度优化
在前面有提到,点云数据具有不均匀的特征,这种分布特点的数据使用PTQ量化方式很大可能会有量化精度问题,因此在 Centerpoint 多任务模型的量化过程中,我们使用 Calibration+QAT 的量化方式来保证点云模型的量化精度。需要提到的是地平线的calibration对于大部分模型就可以达到预期的量化精度,少量模型在较小的QAT训练代价下可以达到量化精度。由于 Centerpoint 多任务模型中所有算子的量化在征程5上是完全支持的,得到初版的量化精度是非常简单的。
QAT量化方式是根据数据的分布选取量化系数,将fp32的数据截断到int8范围,由于点云数据分布不均匀,其表现在部分数据(点云坐标)的数值范围较大,部分(点到中心的距离)数值范围较小,这种情况对量化是很不友好的,因此在量化训练中,会导致精度掉点;为了使数据分布处于均匀范围内,一般都会做归一化处理(归一化对浮点的精度也是有利的),因此,为了提升量化精度,我们增加了对点云特征的归一化处理。
在nuscenes数据集上的验证,经归一化处理后,量化精度损失在 1% 以内。
六、性能优化
点云前处理优化
前处理包括Voxelization操作和特征的扩维操作-VoxelAugment。我们将分析公版的实现在征程5上部署的困难点,然后基于困难点介绍优化方式以及地平线对点云前处理的部署优化。
Voxelization:体素化,是把三维空间中的点云数据转换到体素(voxel,即三维空间中的网格)。
Centerpoint中的 Pillars 可以看作是特殊( z 轴没有空间限制)的 voxel,为了与社区名称和代码实现名称相统一,我们下文统一称为 Voxelization、voxel。
七、Voxelization部署分析
假设用 (x, y, z, r, t) 表示点云数据中的一个点,其中(x, y, z) 坐标,r 为点云的反射强度,t为时间戳。
Centerpoint中的Pillar化(一种特殊的 Voxelization 操作,是把 z 轴看作一个整体,把三维空间离散化为 x-y 平面中均匀间隔的网格),在 Voxelization 过程中,需要依次、逐个对密集点云中的每个点进行判断,并将其划分入对应的 voxel 中,且每个 voxel 都需要存储点云中对应区域的信息。随着点云密度的增加,处理的体素数量也相应增多,导致需要更多的计算和内存资源,其计算复杂度可能导致较长的部署时间。
八、VoxelAugment部署分析
继voxelization 中把每个点云 point 划分到各个 pillar 中之后,公版 Centerpoint中对点云 point 做了特征增强,即前文提到的把基于 nuscenes 数据集的5 维点云 point 数据(x, y, z, r, t)根据点到中心的距离扩充到了 11 维(x, y, z, r, t, xc, yc, zc,xp, yp, zp,)。然而,这样的处理方式,无论是对量化精度还是部署性能方面,都存在一些不足:
• 量化精度方面:前文已提到,这里不再赘述;
• 部署性能方面: 在从 5 维扩充到 11 维时,对中心点距离的求解,增加了计算量和相应的耗时。而在我们的实验中发现,增加的后 6 维数据,实际对模型的浮点精度影响很小。
针对以上两个问题,下面介绍地平线的优化方法。
九、VoxelAugment优化
根据实验,原11维的方案会导致耗时增加,精度收益不大,因此在我们的改进方法中,点云 point 仅使用前5维(x, y, z, r, t),见板端c++代码:
在优化后,该部分耗时减少了 4ms,精度上影响较小。
除了以上的优化外,考虑硬件对齐特性,对特征的layout也做了优化,以便模型可以高效率运行。征程5计算运算的时候有最小的对齐单位,若不满足规则时会对Tensor自动进行padding,造成无效的算力浪费。例如conv的对齐大规则为2H16W8C/2H32W4C。基于硬件特征,采用H W维度转换的方式,将大数据放到W维度以减少算力的浪费,因此在生成pillars特征对其做归一化后使用permute将1x5x40000x20转换为1x5x20x40000。
十、Voxelization优化
对于点云的voxelization耗时问题,地平线提供了ARM和DSP部署方式。可以在OE包的AIBenchmerk中查看其具体实现。
DSP具有强大的并行计算能力,能够同时处理多个数据,且具有快速读写内存的特点,利用 DSP 可以有效加速 Voxelization 过程,提高实时性能。例如,在 nuscenes数据集(点云数据量为30万),经 DSP 优化后,前处理耗时由77ms 降低至20ms,性能提升3.8倍。具体数据可见实验结果章节。
优化后,点云处理部分流程图如下所示:
十一、特征提取与融合PFNLayeryi
Centerpoint 的PFNLayer作用是将每个包含D维特征的点(由前文可知,公版Centerpoint中 D=11,地平线参考模型中D=5)用一个Linear+BatchNorm1d+ ReLU+max 的组合来进行特征提取,生成(C,P,N) 的张量。
而地平线征程5最早针对的是以CNN为基础的图像处理,在编译器内部4d-Tensor是最高效的支持方式。如果不是4d-Tensor的话,编译器内部会主动转成4d(某些维度为1)来做,会多了很多无效的计算。我们可以使用常规的4维算子替换原来任意维度的设置,避免不必要的冗余计算。常见的替换方式如下,中间配合任意维度的reshape,permute来完成等价替换。因此,我们将公版中的 Linear + BatchNorm1d + ReLU + max 分别做了如下替换:
十二、伪图像化
PillarScatter 是实现伪图像转换的最后一个步骤,该部分将(1, 1, P, C) 的特征映射获得形如(C, H, W) 的伪图像。为了便于量化训练和上板推理优化,我们在 horizon_plugin_pytorch 和编译器中均实现了point_pillars_scatter 算子。该算子由编译器内部完成,用户不需要感知。
horizon_plugin_pytorch 中 point_pillars_scatter 算子的调用方式为:
十三、backbone+neck
关于特征提取与融合部分,由于点云处理部分生成的伪图像特征输出通道数较大,原 Centerpoint 模型中的 SECOND 结构部署速度不够快,本文选用 MixVarGENet+UNET 结构,作为模型的 backbone 与 neck。
MixVarGENet 为地平线基于征程5硬件特性自研的backbone结构,特点是性能表现优异,可以达到双核5845FPS。该结构的基本单元为MixVarGEBlock。如下为MixVarGEBlock的结构图:
MixVarGENet高度秉承了“软硬结合”的设计理念,针对征程5的算力特性做了一些定制化设计,其设计思路可以总结为:
1. 小channel时使用normal conv,发挥征程5算力优势;
2. 大channel时引入group conv,缓解带宽压力;
3. Block内部扩大channel,提升网络算法性能;
4. 缩短feature复用时间间隔,减少SRAM到DDR访存。
充分考虑征程5的带宽和硬件属性,小neck+大backbone的组合比较经济,且可以提高BPU的利用率,能达到平衡精度与速度的最佳组合!
十四、多任务输出头
Centerpoint多任务模型的输出头分为两部分,对于 3D 目标检测,选用 Centerpoint 模型的预测头,2D 可行驶区域的分割结果则选用了 FCN 结构做为输出头。
多任务模型的分割头为 FCNHead,其中部分卷积模块替换为深度可分离卷积,有利于部署性能的进一步提升。同理,多任务模型的检测头 CenterpointHead 也将部分卷积模块替换为深度可分离卷积。替换后,模型部署性能得到了进一步的提升,同时浮点精度不受影响。
由于公版 Centerpoint 模型的二阶段在 nuscenes 数据集上并无精度提升,因此这里只选用了一阶段的输出头。
十五、实验结果
1. Centerpoint 多任务模型在征程5性能数据
2. 基于3D点云的多任务模型高效部署通用建议
• 对输入数据做归一化,更有利于量化。
• 如在部署中使用PTQ无法解决量化精度问题,考虑使用QAT做量化部署。
• 对于点云数据,pillars_num较大,将大数据放到W维度提升计算效率。
• 建议选择小neck+大backbone的组合,减小带宽压力,达到性能提升。
• 使用地平线提供的点云前处理,若前处理存在性能瓶颈,尝试DSP方案。
十六、总结
本文通过对基于3D点云的多任务模型在地平线征程5上量化部署的优化,使得模型以低于1%的量化精度损失,得到 latency 为 23.79ms 的部署性能。在点云处理方面,通过针对性的优化方法,灵活支持了不同点云输入并大幅提高点云处理的速度;在特征提取方面,选用了征程5高效结构 MixVarGENet+UNET;在输出设置上,采用多任务输出设计,能够同时得到 3D 目标检测结果和可行驶区域的分割结果。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由出山转载自地平线HorizonRobotics公众号,原文标题为:多维优化Centerpoint模型成果显著!基于3D点云的多任务模型在板端实现高效部署,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
地平线算法工具链新进展! GANet在征程®5上实现高效部署
地平线征程5是专为高阶智能驾驶打造的智能计算方案,搭载地平线第三代架构BPU--贝叶斯(Bayes),算力可达128TOPS,是率先实现前装量产的国产百TOPS级智能计算方案。基于征程5开发的高等级自动驾驶方案可实现ADAS功能、高速导航智能驾驶、城区导航智能驾驶和智慧泊车的全场景覆盖。
引领行业筑牢安全基线,地平线主动安全产品获评功能安全应用典型案例
在2024年中国汽车工程学会年会(SAECCE 2024)期间,由中国汽车工程学会智能网联汽车安全分会组织的“2024年智能网联汽车功能安全应用典型案例”评选结果正式公布。凭借在技术创新、产品应用方面的典型性和领先性,地平线主动安全产品Horizon Mono™ (以下简称 Mono)荣获“2024年智能网联汽车功能安全应用典型案例”。
地平线与大众汽车集团旗下软件公司CARIAD合资公司正式成立,强大智能驾驶计算方案驱动出行变革
行业领先的智能驾驶计算方案提供商地平线与大众汽车集团旗下软件公司CARIAD正式宣布合资公司酷睿程(CARIZON)成立。新合资公司将整合地平线强大的软硬结合技术能力以及CARIAD在智能车身和软件系统整合方面的专业经验,开发行业领先的、高度优化的全栈式高级驾驶辅助系统和自动驾驶解决方案。酷睿程将基于地平线征程家族计算方案开展研发工作,落地智驾方案将搭载于大众汽车集团在中国市场的纯电动车型。
好算法更要配好用的芯片——基于LSS范式的BEV感知算法优化部署详解
本文通过对LSS范式的BEV多任务模型在地平线征程5上量化部署的优化,使得模型在该计算方案上用远低于1%的量化精度损失,得到latency为8.21ms的部署性能,同时,通过LSS范式的BEV模型的部署经验,可以推广到基于该范式的BEV模型的优化中,以便更好的在端侧部署。
地平线旭日® X5 介绍
描述- 地平线公司作为智能驾驶计算方案提供商,专注于深度神经网络芯片研发。其产品征程系列和旭日系列芯片广泛应用于自动驾驶、智能驾驶辅助系统等领域。公司拥有150+车型前装定点,1000万+出货量,200+生态合作伙伴,1200+专利,1500+研发人员。地平线旭日芯片持续迭代,提供高效进化的智能平台,支持多种算法加速需求。旭日5芯片集成了CPU、BPU、GPU、DSP四合一异构加速,满足不同算法加速需求。
比亚迪汉EV荣耀版搭载征程®5上市!地平线助力比亚迪加速智驾全面普及
比亚迪汉EV荣耀版正式上市,推出天神之眼四驱智驾型,成为比亚迪王朝首个搭载“天神之眼”DiPilot 100 平台的车型。采用国内首款百TOPS级算力,高阶智驾专用计算方案地平线征程®5,在L2+级智能驾驶辅助功能基础上,可进一步升级涵盖高速和城市快速路的高快领航NOA、AVP代客泊车功能......
基于地平线征程6E的中阶智驾方案已正式启动量产交付开发
智能驾驶系统供应商鉴智机器人基于地平线征程6E打造的多款中阶方案获得头部车企与Tier-1定点,并已正式启动量产交付开发。鉴智机器人作为地平线征程6首批算法合作伙伴,在征程6于今年4月发布同期,便推出基于征程6E的全栈解决方案,仅用3天完成感知算法迁移部署,15天内完成高速NOA方案上车,3个月内斩获定点合作,开发效率大幅提升。
四维图新发布基于地平线征程6系列的智驾产品矩阵,加速行业高质量发展
征程 6 系列是地平线在今年 4 月正式推出的全新车载智能计算方案,可覆盖从主动安全到全场景智驾的全阶应用。作为一款系列化的车载智能计算方案,征程 6 拥有统一的硬件架构、统一的工具链以及统一的软件栈,以及配套一致、完整成熟的智能驾驶量产开发平台,将助力四维图新等合作伙伴实现“快人一步”的量产效率,从而赋能车企决胜汽车智能化时代。
【IC】地平线发布征程6和高阶城区智驾样板间,以顶级的软硬结合全栈技术加速智驾平权
2024年4月24日,地平线举办“征程所向,向高而行”——2024智驾科技产品发布会。立足于智能驾驶时代,地平线凭借对软硬结合全栈技术理念的前瞻预判和深厚积累,重磅发布新一代车载智能计算方案征程®6系列以及Horizon SuperDrive™全场景智能驾驶解决方案,全面开启智能驾驶的范式级创新,加速智驾平权时代的到来。
搭载地平线征程®系列车规级智能芯片,佑驾创新推出高性能行泊一体域控与高性价比智驾前视一体机
智能驾驶解决方案研发商佑驾创新宣布推出两款搭载地平线征程®芯片的智能驾驶产品:搭载征程®5的高性能行泊一体智能驾驶域控制器D3t和搭载征程®3的高性价比智能驾驶前视一体机D2。
再创新高,地平线征程家族出货量正式突破600万!
地平线车载智能计算方案出货量突破600万套,自2020年起持续快速增长。征程家族计算方案适应多级别智驾市场,合作车型超30家,累计量产车型270款。新推出的征程®6系列和SuperDrive全场景智能驾驶解决方案致力于提升城区NOA领域的智驾体验,预计2024年第四季度推出标准版量产方案。地平线以其技术成熟度和量产合作模式,稳居智驾科技供应商领先地位。
基于地平线双征程5的TADC-D52域控制器首获Matrix标准硬件设计认证,加速推进高阶智能驾驶规模化落地
4月21日,地平线向官方授权IDH硬件合作伙伴苏州天准科技股份有限公司(以下简称“天准”),正式颁发「Horizon Matrix® 平台」认证证书,天准TADC-D52也成为首个通过Matrix 5认证的智能驾驶域控制器方案。此项认证也代表着,基于双征程®5的计算平台已达到量产成熟水平,将加速推进高阶智能驾驶规模化落地进程。
地平线创始人参加2023中国电动汽车百人会论坛,聚焦高级辅助驾驶发表主题演讲
2023中国电动汽车百人会论坛在京举办,4月1日,地平线创始人& CEO余凯博士出席以“推进汽车产业现代化”为主题的高层论坛,并发表《以人为本——回归理性的智能驾驶计算方案》主题演讲。地平线已定点量产50多款车型,前装定点120多款车型,车规级智能计算芯片出货量近300万片,征程5芯片成为业界唯二量产的超过100T算力的大算力芯片。
「老司机」首秀后,关于Horizon SuperDrive™的十问十答
4月24日,地平线发布了全新一代车载智能计算方案征程®6系列和Horizon SuperDrive™全场景智能驾驶解决方案。这两款产品的发布标志着地平线作为下一代全场景高阶智驾的行业标杆,为行业提供了全场景、全天候的高阶城区智能驾驶功能。围绕SuperDrive的拟人体验、端到端算法实践、原生软硬结合等优势,筛选了10个热门典型问题,带来了系统且更具针对性的解读。
电子商城
现货市场
服务
提供稳态、瞬态、热传导、对流散热、热辐射、热接触、和液冷等热仿真分析,通过FloTHERM软件帮助工程师在产品设计初期创建虚拟模型,对多种系统设计方案进行评估,识别潜在散热风险。
实验室地址: 深圳 提交需求>
使用FloTHERM和Smart CFD软件,提供前期热仿真模拟、结构设计调整建议、中期样品测试和后期生产供应的一站式服务,热仿真技术团队专业指导。
实验室地址: 深圳 提交需求>
登录 | 立即注册
提交评论