​Cloner 入门

训练强化学习策略通常可以从执行相同任务的环境的矢量化副本中收集轨迹中受益。Cloner 界面旨在通过提供允许用户根据需要多次克隆给定环境的 API,从而简化此类场景的环境设计过程。

除了提供克隆功能外,Cloner 界面还提供用于生成目标路径、自动计算目标转换以及过滤克隆之间冲突的实用程序。

1. 学习目标

在本教程中,我们将介绍 Cloner 界面。我们会的

  1. 使用 Cloner 类设置示例

  2. 使用 GridCloner 类设置示例

  3. 使用 omni.isaac.core 中的 API 访问克隆对象

  4. 了解使用物理复制和其他参数进行高级克隆

10-15分钟教程

2. 入门

我们将首先启动 Isaac Sim 并启用 Cloner 扩展。通过从顶部菜单栏导航到“窗口>扩展”,从 UI 中打开“扩展”窗口。找到 Isaac Sim Cloner 扩展或 omni.isaac.cloner,然后通过扩展名称右侧的切换开关启用该扩展。

接下来,通过从顶部菜单栏导航到“脚本编辑器”窗口>,从 UI 打开“脚本编辑器”窗口。本教程中的所有示例代码都可以粘贴到“脚本编辑器”窗口中,并通过单击“运行”来执行。

3. Cloner 简介

在运行代码段之前,请确保从“扩展”窗口中启用了 omni.isaac.cloner。

让我们首先从Cloner界面的简单用例开始。在此示例中,我们将创建一个包含 4 个立方体的场景。

 1from omni.isaac.cloner import Cloner    # import Cloner interface
 2from omni.isaac.core.utils.stage import get_current_stage
 3from pxr import UsdGeom
 4
 5# create our base environment with one cube
 6base_env_path = "/World/Cube_0"
 7UsdGeom.Cube.Define(get_current_stage(), base_env_path)
 8
 9# create a Cloner instance
10cloner = Cloner()
11
12# generate 4 paths that begin with "/World/Cube" - path will be appended with _{index}
13target_paths = cloner.generate_paths("/World/Cube", 4)
14
15# clone the cube at target paths
16cloner.clone(source_prim_path="/World/Cube_0", prim_paths=target_paths)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值