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

    文章

    829

    浏览量

    33064
  • SDK
    SDK
    +关注

    关注

    3

    文章

    1111

    浏览量

    52016
  • 深度学习
    +关注

    关注

    73

    文章

    5608

    浏览量

    124634

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    自定义卡片编辑组件

    自定义卡片编辑页面从左到右分为功能区、预览画布区和属性配置区。 开发者可以拖动左边组件图标到中间画布区域,选中中间画布上某个组件时,右边会展示该组件的属性配置,修改属性配置可以实时在画布上生效
    发表于 04-22 11:11

    使用Python/MyHDL创建自定义FPGA IP

    使用 Python/MyHDL 创建自定义 FPGA IP,与 Vivado 集成,并通过 PYNQ 进行控制——实现软件上的简单硬件设计。
    的头像 发表于 04-09 09:53 224次阅读
    使用Python/MyHDL创建<b class='flag-5'>自定义</b>FPGA IP

    MCUXpresso SDK创建自定义清单

    开始。 测试导入和生成项目 此时,自定义 MCUXpresso SDK 清单已准备就绪,可供使用。要进行测试,请将示例项目导入 MCUXpresso for VS Code 并构建
    发表于 04-07 07:11

    极海APM32F427如何实现自定义USB HID设备与PC进行通信

    最近需要使用到 APM32F427 枚举成Custom HID设备进行用户自定义通信,但是官方的例程只有提供的HID枚举为鼠标或者键盘类型的设备。这里记录一下,怎么使用Geehy官方的USB中间件,实现自定义的USB HID设备进行用户通信。
    的头像 发表于 03-30 09:30 2772次阅读
    极海APM32F427如何实现<b class='flag-5'>自定义</b>USB HID设备与PC进行通信

    如何保证电能质量在线监测装置的自定义监测时段功能的准确性和稳定性?

    要保证电能质量在线监测装置 自定义监测时段功能 的准确性(时段执行精准、数据采集可靠)和稳定性(长期无故障、异常自动恢复),需从 时间基准、硬件保障、软件调度、配置校验、容错冗余、运维校准 六个维度
    的头像 发表于 12-10 14:03 500次阅读
    如何保证电能质量在线监测装置的<b class='flag-5'>自定义</b>监测时段功能的准确性和稳定性?

    电能质量在线监测装置可自定义监测时段吗?

    电能质量在线监测装置 完全支持自定义监测时段 ,并提供 精细化、差异化 的配置能力。核心通过 嵌入式任务调度系统 结合 本地 / 远程参数配置 实现,可灵活设定监测开始 / 结束时间、采样频率、数据
    的头像 发表于 12-10 13:58 463次阅读
    电能质量在线监测装置可<b class='flag-5'>自定义</b>监测时段吗?

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

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

    无图形界面模式下自定义检查工具的应用

    此前文章已介绍 ANSA 中的自定义检查工具。本文将探讨该功能在无图形界面(No-GUI)模式下的应用,旨在满足标准化工作流程的需求,适用于需要高度自动化的前处理场景。通过集成自定义检查,用户可实现工作流程的高效自动化运行。
    的头像 发表于 11-30 14:13 778次阅读
    无图形界面模式下<b class='flag-5'>自定义</b>检查工具的应用

    电能质量在线监测装置的数据推送协议是否可以自定义配置?

    、核心协议配置能力 1. 协议参数自定义 主流装置支持对协议底层参数进行精细化调整,包括但不限于: 物理层配置 :波特率(1200-115200bps)、数据位(7-8 位)、停止位(1-2 位)、校验方式(CRC、奇偶校验)。
    的头像 发表于 11-12 13:58 555次阅读
    电能质量在线监测装置的<b class='flag-5'>数据</b>推送协议是否可以<b class='flag-5'>自定义</b>配置?

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

    具体实现 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 4354次阅读
    如何使用<b class='flag-5'>SDK</b>进行<b class='flag-5'>自定义</b>音频播放功能

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

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

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

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

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

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

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

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