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

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

3天内不再提示

使用Omniverse Replicator构建自定义合成数据生成管道

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-08-15 15:53 次阅读

提供合成数据生成工具和服务的公司以及开发人员现在可以使用 Omniverse Replicator SDK 。 Omniverse Replicator SDK 构建在 NVIDIA Omniverse 平台上,在 Omniverse Code 。

Omniverse Replicator 是一个高度可扩展的 SDK ,构建在可扩展的 Omniverse 平台上,用于物理精确的 3D 合成数据生成,以加速 AI perception Network 的训练和性能。开发人员、研究人员和工程师现在可以使用 Omniverse Replicator 来引导现有的深度学习感知模型,并利用大规模真实照片合成数据提高其性能。

pYYBAGL5-_uAE3LoAAE-5nyittU423.png

图 1 :。 Replicator 使用基于 Omniverse 开放标准的平台以及 OmniGraph 和 Farm 体系结构提供的可扩展性和可伸缩性

Omniverse Replicator 为开发人员提供了一个非常出色的平台,以构建特定于其神经网络需求的合成数据生成应用程序。它建立在开放标准上,如 通用场景描述 ( USD 、 PhysX 和 材料定义语言 ( MDL ),具有易于使用的 Python API ,还具有可扩展性,支持自定义随机化器、注释器和编写器。通过基于 CUDA 的 OmniGraph 实现核心注释器功能,支持闪电般的数据生成,这意味着可以立即预览输出。与组合时 Omniverse 农场 和 SwiftStack 输出, Replicator 在云中提供了巨大的可扩展性。

Omniverse Replicator SDK 由六个主要组件组成,用于定制合成数据工作流:

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

Visualizer: 这为分配给三维资源的语义标签以及二维/三维边界框、法线、深度等注释提供了可视化功能。

Randomizers: 域随机化是 Replicator 最重要的功能之一。使用随机化器,您可以创建随机化场景,从资源、材质、照明和摄影机位置以及其他随机化功能进行采样。

Omni.syntheticdata: 这提供了与 Omniverse RTX 渲染器和 OmniGraph 计算图形系统的低级集成。它还支持 Replicator 的地面真相提取注释器,将任意输出变量( AOV )从渲染器传递到注释器。

Annotators: 这些接收来自 Omni 的 AOV 和其他输出。 syntheticdata extension 为深度神经网络( DNN )训练生成精确标记注释。

Writers: 处理来自注释器的图像和其他注释,并生成 DNN 特定的数据格式以供培训。

人工智能训练中的合成数据

为感知任务训练 DNN 通常涉及从数百万张图像中手动收集数据,然后手动注释这些图像和可选的增强。

pYYBAGL5_AmAM2aRAALCe1IlbVk438.png

图 2 :。数据收集和注释任务图

手动数据收集和注释既费力又主观。大规模收集和注释真实图像,即使是简单的注释,如二维边界框,也会带来许多后勤挑战。涉及到的注释(如分段)是资源受限的,手动执行时精度要低得多。

pYYBAGL5_C6ARbPzAAWBwbchng4388.png

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

收集和注释后,数据将转换为 DNN 可用的格式,然后对 DNN 进行感知任务培训。网络架构中的超参数调整或更改是优化网络性能的典型后续步骤。对模型性能的分析可能会导致数据集中的潜在更改,但在大多数情况下,这需要另一个手动数据收集和注释周期。这种手动数据收集和注释的迭代周期是昂贵、乏味和缓慢的。

利用合成生成的数据,团队可以以经济高效的方式引导和增强大规模训练数据的生成,并提供精确的注释。此外,合成数据生成还有助于解决与长尾异常、缺乏可用培训数据和在线强化学习相关的挑战。与手动收集和注释数据不同,合成生成的数据具有较低的摊销成本,这有利于数据收集/注释和模型训练周期的典型迭代性质。

poYBAGL5_G2AFVdSAAHAioB--TE993.png

图 4 :。 Omniverse Replicator ,用于生成具有精确注释的大规模训练数据

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

物理精确的光绘数据集要求使用 RTX 技术、基于物理的材料和物理引擎进行精确的光线跟踪和路径跟踪,所有这些都是 Omniverse 平台的核心技术。

pYYBAGL5_HaAPKSDAAN4ZqlhIUg769.png

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

基于 通用场景描述 ( USD ), Omniverse 无缝连接到其他 3D 应用程序,因此开发人员可以引入定制内容,或者编写自己的工具来生成不同的域场景。 生成这些资产通常是一个瓶颈,因为它需要跨多个 GPU 和节点进行扩展。

Omniverse Replicator 通过利用 Omniverse Farm ,允许团队一起使用多个工作站或服务器来支持渲染或合成数据生成等工作。合成数据生成工作流并非“一劳永逸”为了成功地使用合成数据训练网络,必须在真实数据集上对网络进行迭代测试。 Replicator 通过将模拟世界转换为一组可学习的参数来提供这种以数据为中心的 AI 培训。

使用 Omniverse Replicator 和 TAO Toolkit 加速现有工作流

开发人员、工程师和研究人员可以将 Omniverse Replicator 与现有工具集成 加快 AI 模型培训。例如,一旦生成了合成数据,开发人员就可以使用 NVIDIA TAO 工具包 。 TAO 工具包利用迁移学习的力量,让开发人员在没有人工智能专业知识的情况下,针对其用例培训、调整和优化模型。

poYBAGL5_IKAH-y0AACadH7jF60718.png

图 6 :用于合成数据生成和模型培训的 Omniverse Replicator 和 TAO toolkit 工作流

使用 Omniverse Replicator 构建应用程序

Kinetic Vision 是一家面向零售、内部物流、消费制造和消费包装产品等大型工业客户的系统集成商。他们正在开发基于 Omniverse Replicator SDK 将为客户提供高质量的合成数据作为一项服务。

当深度学习模型训练所需的数据不可用时, Omniverse Replicator 生成合成数据,可用于扩充有限的数据集。 闪电 AI (前身为 Grid.AI )使用 NVIDIA Omniverse 复制器根据通用场景描述( USD )生成物理上精确的 3D 数据集,可用于训练这些模型。用户可以简单地拖放 3D 资产,在生成数据集后,用户可以从最新的最先进的计算机视觉模型中进行选择,以自动对合成数据进行训练。

pYYBAGL5_IuAZWLvAAHs-Qdz9-U140.png

图 7 : Lightning AI 应用程序显示在 Replicator 生成的合成数据上训练和测试的 DNN

在 NVIDIA, ISAAC Sim DRIVE Sim 团队利用 Omniverse Replicator SDK 构建特定领域的合成生成工具,用于机器人的 ISAAC Replicator 和用于自主车辆培训的 DRIVE Replicator 。 Omniverse Replicator SDK 为开发人员提供了一组核心功能,可以利用 Omniverse 平台提供的所有优势构建任何特定于领域的合成数据生成管道。借助 Omniverse 作为 3D 模拟、渲染和 AI 开发功能的开发平台, Replicator 提供了定制的合成数据生成管道。

可利用性

这个 Omniverse Replicator SDK 现已在中提供 Omniverse Code ,可从 Omniverse 启动器下载

关于作者

Nyla Worker 是 NVIDIA 的解决方案架构师,专注于嵌入式设备的模拟和深入学习。她在机器人和自动车辆的深度学习边缘应用方面拥有丰富的经验,并为嵌入式设备开发了加速推理管道。

Bhumin Pathak 是 NVIDIA 合成数据生成 SDK (也称为 Replicator )的高级产品经理。他喜欢在计算机图形学、 3D 仿真机器学习的交叉领域工作。在加入 NVIDIA 之前,他曾在迪士尼担任人工智能的应用研究员,并在思科和三星担任其他各种职务。

审核编辑:郭婷

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

    关注

    14

    文章

    4930

    浏览量

    102794
  • AI
    AI
    +关注

    关注

    87

    文章

    30095

    浏览量

    268362
  • SDK
    SDK
    +关注

    关注

    3

    文章

    1026

    浏览量

    45765
收藏 人收藏

    评论

    相关推荐

    创建自定义的基于闪存的引导加载程序(BSL)

    电子发烧友网站提供《创建自定义的基于闪存的引导加载程序(BSL).pdf》资料免费下载
    发表于 09-19 10:50 0次下载
    创建<b class='flag-5'>自定义</b>的基于闪存的引导加载程序(BSL)

    NVIDIA Omniverse微服务助力构建大规模数字孪生

    NVIDIA Omniverse Cloud Sensor RTX 生成用于加速自动驾驶汽车、机械臂、移动机器人、人形机器人和智能空间 AI 开发工作的合成数据
    的头像 发表于 09-09 10:20 472次阅读

    EtherCAT运动控制器PT/PVT实现用户自定义轨迹规划

    EtherCAT运动控制器PT/PVT实现用户自定义轨迹规划。
    的头像 发表于 08-15 11:49 546次阅读
    EtherCAT运动控制器PT/PVT实现用户<b class='flag-5'>自定义</b>轨迹规划

    NVIDIA NeMo加速并简化自定义模型开发

    如果企业希望充分发挥出 AI 的力量,就需要根据其行业需求量身定制的自定义模型。
    的头像 发表于 07-26 11:17 681次阅读
    NVIDIA NeMo加速并简化<b class='flag-5'>自定义</b>模型开发

    NVIDIA AI Foundry 为全球企业打造自定义 Llama 3.1 生成式 AI 模型

    Foundry 提供从数据策管、合成数据生成、微调、检索、防护到评估的全方位生成式 AI 模型服务,以便部署自定义 Llama 3.1 N
    发表于 07-24 09:39 678次阅读
    NVIDIA AI Foundry 为全球企业打造<b class='flag-5'>自定义</b> Llama 3.1 <b class='flag-5'>生成</b>式 AI 模型

    如何为ESP8266构建自定义盾牌?

    我正在寻找某种如何为ESP8266构建自定义盾牌的指南。 到目前为止,我已经使用 NODEMCU 构建了功能原型,但我现在想简化事情并使其更小。 1. 是否有一些书面的、开放的硬件指南 (很好
    发表于 07-08 07:17

    Omniverse教程(12):NVIDIA Omniverse USD Presenter的基础应用

    如前所述,NVIDIA Omniverse™ 是一个参考开发平台,通过模块化的开发框架能够轻松扩展和自定义
    的头像 发表于 05-20 10:09 629次阅读
    <b class='flag-5'>Omniverse</b>教程(12):NVIDIA <b class='flag-5'>Omniverse</b> USD Presenter的基础应用

    HarmonyOS开发案例:【 自定义弹窗】

    基于ArkTS的声明式开发范式实现了三种不同的弹窗,第一种直接使用公共组件,后两种使用CustomDialogController实现自定义弹窗
    的头像 发表于 05-16 18:18 1281次阅读
    HarmonyOS开发案例:【 <b class='flag-5'>自定义</b>弹窗】

    TSMaster 自定义 LIN 调度表编程指导

    LIN(LocalInterconnectNetwork)协议调度表是用于LIN总线通信中的消息调度的一种机制,我们收到越来越多来自不同用户希望能够通过接口实现自定义LIN调度表的需求。所以在
    的头像 发表于 05-11 08:21 603次阅读
    TSMaster <b class='flag-5'>自定义</b> LIN 调度表编程指导

    HarmonyOS开发案例:【UIAbility和自定义组件生命周期】

    本文档主要描述了应用运行过程中UIAbility和自定义组件的生命周期。对于UIAbility,描述了Create、Foreground、Background、Destroy四种生命周期。对于页面
    的头像 发表于 05-10 15:31 1174次阅读
    HarmonyOS开发案例:【UIAbility和<b class='flag-5'>自定义</b>组件生命周期】

    微软Dev Home应用提供自定义文件管理支持

    据悉,Microsoft 近期发布了 0.13 版 Dev Home 应用程序,除修复多项 BUG 外,还新增了自定义文件资源管理器功能。该应用支持用户在应用内创建虚拟机,利用微软旗下的 Hyper V 技术生成本地虚拟机。
    的头像 发表于 04-26 11:15 414次阅读

    HarmonyOS开发实例:【自定义Emitter】

    使用[Emitter]实现事件的订阅和发布,使用[自定义弹窗]设置广告信息。
    的头像 发表于 04-14 11:37 970次阅读
    HarmonyOS开发实例:【<b class='flag-5'>自定义</b>Emitter】

    鸿蒙ArkUI实例:【自定义组件】

    组件是 OpenHarmony 页面最小显示单元,一个页面可由多个组件组合而成,也可只由一个组件组合而成,这些组件可以是ArkUI开发框架自带系统组件,比如 `Text` 、 `Button` 等,也可以是自定义组件,本节笔者简单介绍一下自定义组件的语法规范。
    的头像 发表于 04-08 10:17 601次阅读

    基于YOLOv8实现自定义姿态评估模型训练

    Hello大家好,今天给大家分享一下如何基于YOLOv8姿态评估模型,实现在自定义数据集上,完成自定义姿态评估模型的训练与推理。
    的头像 发表于 12-25 11:29 2776次阅读
    基于YOLOv8实现<b class='flag-5'>自定义</b>姿态评估模型训练

    博途用户自定义库的使用

    中经常使用的函数/函数块/数据类型等存放到自定义库中,方便自己使用及与别人共享。博途具有很强的库管理功能,包括:库版本管理,库的更新及清扫等等。本系列文章我将给大家介绍项目库、全局库、库的更新/清扫等功能,今天这篇文章,我们先来介绍项目库。
    的头像 发表于 12-25 10:08 873次阅读
    博途用户<b class='flag-5'>自定义</b>库的使用