存储库组织

目录

存储库组织#

Isaac Lab 仓库的结构如下:

IsaacLab
├── .vscode
├── .flake8
├── CONTRIBUTING.md
├── CONTRIBUTORS.md
├── LICENSE
├── isaaclab.bat
├── isaaclab.sh
├── pyproject.toml
├── README.md
├── docs
├── docker
├── source   ├── extensions
│      ├── omni.isaac.lab
│      ├── omni.isaac.lab_assets
│      └── omni.isaac.lab_tasks
│   ├── standalone
│      ├── demos
│      ├── environments
│      ├── tools
│      ├── tutorials
│      └── workflows
├── tools
└── VERSION

source 目录包含所有 Isaac Lab 扩展独立应用 的源代码。这两者是 Isaac Sim 中支持的不同开发工作流程。它们将在以下部分中描述。

扩展#

扩展是构成 Omniverse 生态系统的模块化包。在 Isaac Lab 中,这些写入 source/extensions 目录中。为了简化构建过程,Isaac Lab 直接使用 setuptools python包来构建扩展提供的python模块。这是通过扩展目录中的 setup.py 文件完成的。

扩展组织如下:

  • omni.isaac.lab: 包含了 Isaac Lab 的核心接口扩展。这为执行器、对象、机器人和传感器提供了主要模块。

  • omni.isaac.lab_assets: 包含了为 Isaac Lab 预配置资源的扩展。

  • omni.isaac.lab_tasks: 包含了为 Isaac Lab 预配置环境的扩展。它还包括了使用这些环境与不同智能体一起使用的包装器。

独立#

source/standalone 目录包含了用python编写的各种独立应用程序。它们组织如下:

  • 基准测试: 包含了对不同框架组件进行基准测试的脚本。

  • 演示: 包含了展示核心框架 omni.isaac.lab 的各种演示应用程序。

  • 环境: 包含了使用 omni.isaac.lab_tasks 中定义的环境与不同智能体一起运行的应用程序。这包括随机策略、零动作策略、远程操作或脚本化状态机。

  • 工具: 包含了使用框架提供的工具的应用程序。这包括转换资产、生成数据集等。

  • 教程: 包含了使用框架提供的API的逐步教程。

  • 工作流: 包含了使用各种基于学习的框架的环境的应用程序。这包括不同的强化学习或模仿学习库。