0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用NVIDIA CUDA-Pointpillars检测点云中的对象

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-04-13 16:42 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

点云是坐标系中的点数据集。点包含丰富的信息,包括三维坐标(X、Y、Z)、颜色、分类值、强度值和时间等。点云主要来自于各种NVIDIA Jetson用例中常用的激光雷达,如自主机器、感知模块和3D建模。

其中一个关键应用是利用远程和高精度的数据集来实现3D对象的感知、映射和定位算法

PointPillars是最常用于点云推理的模型之一。本文将探讨为Jetson开发者提供的NVIDIA CUDA加速PointPillars模型。马上下载CUDA-PointPillars模型。

什么是CUDA-Pointpillars

本文所介绍的CUDA-Pointpillars可以检测点云中的对象。其流程如下:

基本预处理:生成柱体。

预处理:生成BEV特征图(10个通道)。

用于TensorRT的ONNX模型:通过TensorRT实现的ONNX模式。

后处理:通过解析TensorRT引擎输出生成边界框。

图 1 。 CUDA 点柱管道。

基本预处理

基本预处理步骤将点云转换为基本特征图。基本特征图包含以下组成部分:

基本特征图。

柱体坐标:每根柱体的坐标。

参数:柱体数量。

poYBAGJWjTyABlEDAACUw3Ico5I757.png

图 2 。将点云转换为基础要素地图

预处理

预处理步骤将基本特征图(4个通道)转换为 BEV 特征图(10个通道)。

图 3 。将基本要素地图转换为 BEV 要素地图

用于TensorRT的ONNX模型

出于以下原因修改OpenPCDet的原生点柱:

小型操作过多,并且内存带宽低。

NonZero等一些TensorRT不支持的操作。

ScatterND等一些性能较低的操作。

使用“dict”作为输入和输出,因此无法导出ONNX文件。

为了从原生OpenPCDet导出ONNX,我们修改了该模型(图4)。

图 4 。 CUDA Pointpillars 中 ONNX 模型概述。

您可把整个ONNX文件分为以下几个部分:

输入:BEV特征图、柱体坐标、参数,均在预处理中生成。

输出:类、框、Dir_class,在后处理步骤中解析后生成一个边界框。

ScatterBEV:将点柱(一维)转换为二维图像,可作为TensorRT的插件。

其他:TensorRT支持的其他部分。

图 5 。将点支柱数据散射到二维主干的二维图像中。

后处理

在后处理步骤中解析TensorRT引擎的输出(class、box和dir_class)和输出边界框。图6所示的是示例参数。

poYBAGJWjW6AY7PjAAE6J47WgR0196.png

图 6 。边界框的参数。

使用 CUDA PointPillars

若要使用CUDA-PointPillars,需要提供点云的ONNX模式文件和数据缓存:

 std::vector nms_pred; PointPillar pointpillar(ONNXModel_File, cuda_stream); pointpillar.doinfer(points_data, points_count, nms_pred);

将OpenPCDet训练的原生模型转换为CUDA-Pointpillars的ONNX文件

我们在项目中提供了一个Python脚本,可以将OpenPCDet训练的原生模型转换成CUDA-Pointpillars的ONNX文件。可在CUDA-Pointpillars的/tool 目录下找到exporter.py 脚本。

可在当前目录下运行以下命令获得pointpillar.onnx文件:

$ python exporter.py --ckpt ./*.pth

性能

下表显示了测试环境和性能。在测试之前提升CPUGPU的性能。


表 1 测试平台与性能

开始使用 CUDA PointPillars

本文介绍了什么是CUDA-PointPillars以及如何使用它来检测点云中的对象。

由于原生OpenPCDet无法导出ONNX,而且对于TensorRT来说,性能较低的小型操作数量过多,因此我们开发了CUDA-PointPillars。该应用可以将OpenPCDet训练的原生模型导出为特殊的ONNX模型,并通过TensorRT推断ONNX模型。

关于作者

Lei Fan 是 NVIDIA 的高级 CUDA 软件工程师。他目前正与 TSE 中国团队合作,开发由 CUDA 优化软件性能的解决方案。

Lily Li 正在为 NVIDIA 的机器人团队处理开发人员关系。她目前正在 Jetson 生态系统中开发机器人技术解决方案,以帮助创建最佳实践。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NVIDIA
    +关注

    关注

    14

    文章

    5687

    浏览量

    110115
  • 数据集
    +关注

    关注

    4

    文章

    1240

    浏览量

    26261
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NVIDIA推出cuEST量子化学加速库

    本周,NVIDIA 发布了 NVIDIA cuEST。这是一款全新的 NVIDIA CUDA-X 库,可将电子结构计算迁移到 GPU 上执行。应用材料公司、三星、新思科技和 TSMC
    的头像 发表于 03-23 15:11 483次阅读

    NVIDIA cuDF和cuVS获全球领先数据平台采用

    企业每年产生数百 ZB (Zettabyte) 的数据,并在争相将这些信息转化为洞察。NVIDIA cuDF 和 cuVS 作为基于 NVIDIA CUDA-X 构建的加速数据库,正在被各行业的数据平台所应用,带来至高 5 倍性
    的头像 发表于 03-19 15:46 445次阅读

    NVIDIA携手全球工业软件巨头构建AI智能体加速设计与工程开发流程

    GTC — NVIDIA 今日宣布,正与包括 Cadence、达索系统、PTC、西门子和新思科技等在内的全球领先工业软件厂商合作,将 NVIDIA CUDA-X™、NVIDIA Omn
    的头像 发表于 03-19 15:39 416次阅读

    借助NVIDIA CUDA Tile IR后端推进OpenAI Triton的GPU编程

    NVIDIA CUDA Tile 是基于 GPU 的编程模型,其设计目标是为 NVIDIA Tensor Cores 提供可移植性,从而释放 GPU 的极限性能。CUDA Tile 的
    的头像 发表于 02-10 10:31 524次阅读

    如何在NVIDIA CUDA Tile中编写高性能矩阵乘法

    本博文是系列课程的一部分,旨在帮助开发者学习 NVIDIA CUDA Tile 编程,掌握构建高性能 GPU 内核的方法,并以矩阵乘法作为核心示例。
    的头像 发表于 01-22 16:43 5287次阅读
    如何在<b class='flag-5'>NVIDIA</b> <b class='flag-5'>CUDA</b> Tile中编写高性能矩阵乘法

    超擎数智为您深度解析NVIDIA Quantum-X800 InfiniBand平台

    NVIDIA
    专精特新
    发布于 :2026年01月08日 19:47:03

    NVIDIA RTX PRO 5000 Blackwell GPU的深度评测

    NVIDIA RTX PRO 5000 Blackwell 是 NVIDIA RTX 5000 Ada Generation 的升级迭代产品,其各项核心指标均针对 GPU 加速工作流的高性能
    的头像 发表于 01-06 09:51 4016次阅读
    <b class='flag-5'>NVIDIA</b> RTX PRO 5000 Blackwell GPU的深度评测

    如何解决激光雷达云中“鬼影”和“膨胀”问题?

    [首发于智驾最前沿微信公众号]之前在聊激光雷达云“鬼影”和“膨胀”的文章中( 相关阅读: 激光雷达云中“鬼影”和“膨胀”是什么原因导致的?),很多小伙伴都提到一个问题,那就是激光雷达
    的头像 发表于 01-02 09:30 613次阅读
    如何解决激光雷达<b class='flag-5'>点</b><b class='flag-5'>云中</b>“鬼影”和“膨胀”问题?

    NVIDIA CUDA Tile的创新之处、工作原理以及使用方法

    NVIDIA CUDA 13.1 推出 NVIDIA CUDA Tile,这是自 2006 年 NVIDIA
    的头像 发表于 12-24 10:17 647次阅读
    <b class='flag-5'>NVIDIA</b> <b class='flag-5'>CUDA</b> Tile的创新之处、工作原理以及使用方法

    在Python中借助NVIDIA CUDA Tile简化GPU编程

    NVIDIA CUDA 13.1 版本新增了基于 Tile 的GPU 编程模式。它是自 CUDA 发明以来 GPU 编程最核心的更新之一。借助 GPU tile kernels,可以用比 SIMT
    的头像 发表于 12-13 10:12 1425次阅读
    在Python中借助<b class='flag-5'>NVIDIA</b> <b class='flag-5'>CUDA</b> Tile简化GPU编程

    NVIDIA CUDA 13.1版本的新增功能与改进

    NVIDIA CUDA 13.1 是自 CUDA 二十年前发明以来,规模最大、内容最全面的一次更新。
    的头像 发表于 12-13 10:08 2447次阅读

    NVIDIA 与新思科技宣布建立战略合作伙伴关系,携手重塑工程与设计未来

    长期战略合作涵盖了 NVIDIA CUDA 加速计算、代理式 AI 和物理 AI 以及 Omniverse 数字孪生,以实现以前通过传统 CPU 计算难以企及的仿真速度和规模,为工程领域各类场景开辟
    的头像 发表于 12-03 10:27 1191次阅读
    <b class='flag-5'>NVIDIA</b> 与新思科技宣布建立战略合作伙伴关系,携手重塑工程与设计未来

    NVIDIA在Hot Chips 2025大会展示创新技术

    本周在加利福尼亚州帕洛阿尔托(Palo Alto)举行的 Hot Chips 大会上,NVIDIA 专家详细介绍了 NVIDIA NVLink 和Spectrum-X 以太网技术、Blackwell 以及 CUDA 如何为全球数
    的头像 发表于 08-27 12:52 2064次阅读

    NVIDIA携手Ansys和DCAI推进流体动力学量子算法发展

    为抓住这一机遇,Ansys 宣布,将利用在 Gefion 超级计算机上运行的 NVIDIA CUDA-Q 量子计算平台,推进流体动力学应用的量子算法发展。
    的头像 发表于 06-12 15:28 1169次阅读

    借助NVIDIA技术加速半导体芯片制造

    NVIDIA Blackwell GPU、NVIDIA Grace CPU、高速 NVIDIA NVLink 网络架构和交换机,以及诸如 NVIDIA cuDSS 和
    的头像 发表于 05-27 13:59 1273次阅读