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

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

3天内不再提示

使用Omniverse Replicator SDK构建自定义、物理级精确的合成数据生成管线

丽台科技 来源:NVIDIA英伟达企业解决方案 作者:NVIDIA英伟达企业解 2022-07-11 11:49 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

提供合成数据生成工具和服务的企业以及开发者现在可以使用 Omniverse Replicator SDK 构建自定义、物理级精确的合成数据生成管线。Omniverse Replicator SDK 建立在 NVIDIA Omniverse 平台上,目前已在 Omniverse Code 内提供公测版。

Omniverse Replicator 是一个建立在可扩展的 Omniverse 平台上的高度可扩展 SDK,它可以生成物理级精确的 3D 合成数据来加速 AI 感知网络的训练和性能。开发者、研究人员和工程师现在可以使用 Omniverse Replicator 生成的大规模逼真合成数据来引导和提高现有深度学习感知模型的性能。

b0dca986-00c1-11ed-ba43-dac502259ad0.png

图1:Replicator 使用基于开放标准的 Omniverse 平台,以及 OmniGraph 和 Farm 架构提供的可延伸性和可扩展性

Omniverse Replicator 为开发者提供了一个可以根据他们的神经网络要求构建特定合成数据生成应用的特殊平台。它建立在通用场景描述(USD)、PhysX 和材质定义语言(MDL)等开放标准之上并带有易于使用的 python API,还具有可扩展性并且支持自定义随机发生器、注释器和写入器。Replicator 通过基于 CUDA 的 OmniGraph 实现核心注释器功能,支持瞬间数据生成,因此可以实时预览输出。当与 Omniverse Farm 和 SwiftStack 输出相结合时,Replicator 可在云中提供大规模的可扩展性。

Omniverse Replicator SDK 由六个用于自定义合成数据工作流程的主要组件组成:

语义模式编辑器:通过对 3D 资产及其 prim 进行语义标记,Replicator 可以在渲染和数据生成过程中对目标对象进行注释。语义模式编辑器提供一种通过用户界面将这些标签应用于 prim 的方式。

可视化器:为分配给 3D 资产的语义标签以及 2D/3D bounding box、法线、深度等注释提供可视化功能。

随机发生器:域随机化是 Replicator 最重要的功能之一。用户可以使用随机发生器创建随机化的场景,从资产、材质、照明和摄像机位置等随机化能力中取样。

Omni.syntheticdata:提供与 Omniverse RTX 渲染器和 OmniGraph 计算图系统的低层次集成,驱动 Replicator 的基准真值数据提取注释器,将任意输出变量(AOV)从渲染器传递到注释器。

注释器:从 Omni.syntheticdata 扩展程序中提取 AOV 和其他输出,生成用于深度神经网络(DNN)训练的精确标记注释。

写入器:处理来自注释器的图像和其他注释,并生成用于训练的 DNN 专用数据格式。

用于 AI 训练的合成数据

为了训练一个用于感知任务的 DNN,通常需要从数百万图像中手动采集数据,然后对这些图像进行手动注释和有选择性的增强。

b0fff4a4-00c1-11ed-ba43-dac502259ad0.png

图2:数据采集和注释任务图

人工数据采集和注释是一项费力而主观的任务。在采集和注释真实图像的过程中,即便只是像大规模 2D bounding box 这样的简单注释也会带来许多人力协调方面的挑战。分割等所涉及到的注释存在资源限制,并且手动执行此类任务时的准确性要差得多。

b1148a54-00c1-11ed-ba43-dac502259ad0.png

图3:语义分割任务的复杂性

在采集和注释完毕后,数据将被转换成 DNN 可用的格式,然后训练用于感知任务的 DNN。一般情况下,接下来会通过超参数调节或改变网络结构来优化网络性能。在对模型性能进行分析时,可能会导致数据集发生变化,在大多数情况下,还需要进行一轮手动数据采集和注释,这种人工数据采集和注释的迭代循环是昂贵、乏味且缓慢的。


凭借以合成方式生成的数据,团队就能以一种高成本效益的方式启动和加强带有准确注释的大规模训练数据的生成。此外,合成数据生成还有助于解决与长尾异常、缺乏可用训练数据和在线强化学习有关的挑战。不同于人工采集和注释的数据,以合成方式生成的数据具有较低的摊销成本。由于数据采集/注释和模型训练周期一般具有迭代性,因此这一点十分有益。

b15da57c-00c1-11ed-ba43-dac502259ad0.png

图4:使用 Omniverse Replicator 生成带有准确注释的大规模训练数据

Omniverse Replicator 通过利用 Omniverse 平台的众多核心功能和最佳实践来解决这些挑战,包括但不限于物理级精确、逼真的数据集和对超大数据集的访问。

为了生成物理级精确的逼真数据集,需要使用各种 RTX 技术、基于物理学的材质和物理引擎等 Omniverse 平台的所有核心技术进行准确的光线追踪和路径追踪。

b1969a6c-00c1-11ed-ba43-dac502259ad0.png

图5:使用 Omniverse Replicator 增强仓库场景中的传感器注释

基于通用场景描述(USD)的 Omniverse 可以无缝连接其他 3D 应用,因此开发者可以导入自定义内容或编写自己的工具来生成不同的域场景。由于需要在多个 GPU 和节点上进行扩展,因此这些资产的生成往往会成为瓶颈。

Omniverse Replicator 通过 Omniverse Farm 使团队能够一起使用多个工作站或服务器驱动渲染或合成数据生成等工作。合成数据生成工作流程不是一蹴而就的,为了成功使用合成数据训练网络,必须在真实数据集上反复测试该网络。Replicator 通过将模拟世界转换为一组可学习的参数来提供这种以数据为中心的 AI 训练。

使用 Omniverse Replicator 和 TAO 工具套件加速现有的工作流程

开发者、工程师和研究人员可以将 Omniverse Replicator 与现有的工具进行整合,来加快 AI 模型的训练速度。例如,在生成合成数据后,开发者可以利用 NVIDIA TAO 工具套件快速训练他们的 AI 模型。TAO 工具套件利用迁移学习让开发者无需事先掌握 AI 专业知识,就能根据其用例来训练、调整和优化模型。

b1b935ea-00c1-11ed-ba43-dac502259ad0.png

图6:用于合成数据生成和模型训练的 Omniverse Replicator 和 TAO 工具套件工作流程

使用 Omniverse Replicator 构建应用

Kinetic Vision 是一家为零售、内部物流、消费性制造和消费性包装品行业的大型客户提供服务的系统集成商。为了向客户提供高质量的合成数据服务,该公司正在开发一个基于 Omniverse Replicator SDK 的新企业应用。

当训练深度学习模型所需的数据不可用时,Omniverse Replicator 会生成可用于增强有限数据集的合成数据。Lightning AI (前身为 Grid.AI)使用 NVIDIA Omniverse Replicator 生成基于通用场景描述(USD)格式、物理级精确的 3D 数据集,这些数据集可用于训练这些模型。用户只需要拖放 3D 资产,然后在数据集生成后,就可以选择最新、最先进的计算机视觉模型并使用合成数据自动训练。

b1e3c936-00c1-11ed-ba43-dac502259ad0.png

图7:Lightning AI 应用正在基于 Replicator 生成的合成数据来训练和测试 DNN。

NVIDIA Isaac Sim 和 DRIVE Sim 团队使用 Omniverse Replicator SDK 构建特定领域的合成数据生成工具——用于机器人的 Isaac Replicator 和用于自动驾驶汽车训练的 DRIVE Replicator。Omniverse Replicator SDK 为开发者提供一套核心功能,方便开发者利用 Omniverse 平台所提供的所有优势建立任何特定领域的合成数据生成管线。Replicator 通过将 Omniverse 作为 3D 模拟、渲染和 AI 开发能力的开发平台,提供自定义合成数据生成管线。

b2007374-00c1-11ed-ba43-dac502259ad0.png

图8:使用 Omniverse Replicator 构建的 NVIDIA Isaac Sim(左)和 DRIVE Sim(右)合成数据生成能力

使用Omniverse Replicator

现在可以在 Omniverse Code 中使用 Omniverse Replicator SDK。用户可从 Omniverse Launcher 下载 Omniverse Code。

审核编辑 :李倩

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

    关注

    1

    文章

    826

    浏览量

    32650
  • SDK
    SDK
    +关注

    关注

    3

    文章

    1093

    浏览量

    51201
  • 深度学习
    +关注

    关注

    73

    文章

    5590

    浏览量

    123907

原文标题:已开启公测 | 使用 Omniverse Replicator 构建自定义合成数据生成管线

文章出处:【微信号:Leadtek,微信公众号:丽台科技】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    利用NVIDIA Cosmos开放世界基础模型加速物理AI开发

    NVIDIA 最近发布了 NVIDIA Cosmos 开放世界基础模型(WFM)的更新,旨在加速物理 AI 模型的测试与验证数据生成。借助 NVIDIA Omniverse 库和 Co
    的头像 发表于 12-01 09:25 497次阅读

    采用汇编指示符来使用自定义指令

    具体实现 1、采用.word .half .dword等汇编指示符直接插入自定义指令,这种方法需要自己指定寄存器。其中.word为插入一个字的数据即32位,.half为插入半字即16位
    发表于 10-28 06:02

    如何使用SDK进行自定义音频播放功能

    在上一篇文章安信可离线语音模组 VC-01、VC-02 系列教程 【二次开发篇】自定义音频替换失败过程中,简要概述了res_build_tool.py 文件, 其主要的作用就是将音频文件进行转换,从而使编译固件的时候能够将音频文件编译到BIN中,然后在各项事件触发的时候实现播放。
    的头像 发表于 09-25 15:52 3011次阅读
    如何使用<b class='flag-5'>SDK</b>进行<b class='flag-5'>自定义</b>音频播放功能

    构建自定义电商数据分析API

      在电商业务中,数据是驱动决策的核心。随着数据量的增长,企业需要实时、灵活的分析工具来监控销售、用户行为和库存等指标。一个自定义电商数据分析API(应用程序接口)可以自动化
    的头像 发表于 07-17 14:44 401次阅读
    <b class='flag-5'>构建</b><b class='flag-5'>自定义</b>电商<b class='flag-5'>数据</b>分析API

    大彩讲堂:VisualTFT软件如何自定义圆形进度条

    VisualTFT软件如何自定义圆形进度条
    的头像 发表于 07-07 17:10 1220次阅读
    大彩讲堂:VisualTFT软件如何<b class='flag-5'>自定义</b>圆形进度条

    KiCad 中的自定义规则(KiCon 演讲)

    “  Seth Hillbrand 在 KiCon US 2025 上为大家介绍了 KiCad 的规则系统,并详细讲解了自定义规则的设计与实例。  ”   演讲主要围绕 加强 KiCad 中的自定义
    的头像 发表于 06-16 11:17 1461次阅读
    KiCad 中的<b class='flag-5'>自定义</b>规则(KiCon 演讲)

    HarmonyOS应用自定义键盘解决方案

    自定义键盘是一种替换系统默认键盘的解决方案,可实现键盘个性化交互。允许用户结合业务需求与操作习惯,对按键布局进行可视化重构、设置多功能组合键位,使输入更加便捷和舒适。在安全防护层面,自定义键盘可以
    的头像 发表于 06-05 14:19 1580次阅读

    LabVIEW运动控制(三):EtherCAT运动控制器的高效加工指令自定义封装

    LabVIEW高效加工指令自定义封装
    的头像 发表于 04-08 13:49 3266次阅读
    LabVIEW运动控制(三):EtherCAT运动控制器的高效加工指令<b class='flag-5'>自定义</b>封装

    如何添加自定义单板

    在开发过程中,用户有时需要创建自定义板配置。本节将通过一个实例讲解用户如何创建属于自己的machine,下面以g2l-test.conf为例进行说明。
    的头像 发表于 03-12 14:43 1082次阅读

    无法将自定义COCO数据集导入到OpenVINO™ DL Workbench怎么解决?

    精确 FP32 将自定义模型转换为中间表示 (IR) 格式。 使用未注注的数据集和默认配置将 IR (FP32) 转换为 IR (INT8)。 使用 IR(INT8)推断造成糟糕的结果。 创建
    发表于 03-05 06:02

    如何快速创建用户自定义Board和App工程

    可将该文件夹复制到用户自定义的工作目录(workspace)中,基于此模板进行开发。本模板主要牵涉到的用户自定义的文件有:用户板文件Board用户应用程序App用
    的头像 发表于 02-08 13:38 1000次阅读
    如何快速创建用户<b class='flag-5'>自定义</b>Board和App工程

    Altium Designer 15.0自定义元件设计

    电子发烧友网站提供《Altium Designer 15.0自定义元件设计.pdf》资料免费下载
    发表于 01-21 15:04 0次下载
    Altium Designer 15.0<b class='flag-5'>自定义</b>元件设计

    NVIDIA Omniverse扩展至生成物理AI领域

    NVIDIA近日宣布,其Omniverse™平台再次实现重大突破,成功推出多个生成式AI模型和蓝图,将Omniverse的应用范围进一步扩展至物理AI领域,包括机器人、自动驾驶汽车和视
    的头像 发表于 01-13 10:56 1058次阅读

    think-cell:自定义think-cell(四)

    C.5 设置默认议程幻灯片布局 think-cell 议程可以在演示文稿中使用特定的自定义布局来定义议程、位置和议程幻灯片上的其他形状,例如标题或图片。通过将此自定义布局添加到模板,您可以为整个组织
    的头像 发表于 01-13 10:37 880次阅读
    think-cell:<b class='flag-5'>自定义</b>think-cell(四)

    think-cell;自定义think-cell(一)

    本章介绍如何自定义 think-cell,即如何更改默认颜色和其他默认属性;这是通过 think-cell 的样式文件完成的,这些文件将在前四个部分中进行讨论。 第五部分 C.5 设置默认议程幻灯片
    的头像 发表于 01-08 11:31 1241次阅读
    think-cell;<b class='flag-5'>自定义</b>think-cell(一)