<p align="center"><img width="50%" src="https://yellow-cdn.veclightyear.com/835a84d5/fbeb2614-2175-44c6-b889-dfd1813758d1.svg" /></p>
<h3 align="center"><i>一个近乎真实照片级的可交互框架,用于具身AI代理</i></h3>
<p align="center">
<a href="//travis-ci.org/allenai/ai2thor" target="_blank">
<img src="https://yellow-cdn.veclightyear.com/835a84d5/da34f834-2187-4195-ab81-dee9f2f05b69.svg?branch=main">
</a>
<a href="//github.com/allenai/ai2thor/releases">
<img alt="GitHub发布" src="https://yellow-cdn.veclightyear.com/835a84d5/e069730d-434b-4675-bd45-7d68594ac6a3.svg">
</a>
<a href="//ai2thor.allenai.org/" target="_blank">
<img alt="文档" src="https://img.shields.io/website/https/ai2thor.allenai.org?down_color=red&down_message=离线&up_message=在线">
</a>
<a href="//github.com/allenai/ai2thor/blob/main/LICENSE">
<img alt="许可证" src="https://yellow-cdn.veclightyear.com/835a84d5/1ae30be3-9055-4c1b-8304-92db0610a4aa.svg?color=blue">
</a>
<a href="//arxiv.org/abs/1712.05474" target="_blank">
<img src="https://img.shields.io/badge/arXiv-1712.05474-<COLOR>">
</a>
<a href="//www.youtube.com/watch?v=KcELPpdN770" target="_blank">
<img src="https://img.shields.io/badge/视频-YouTube-red">
</a>
<a href="//pepy.tech/project/ai2thor" target="_blank">
<img alt="下载量" src="https://pepy.tech/badge/ai2thor">
</a>
</p>
🏡 环境
<table>
<tr>
<td width="33%">
<img src="https://yellow-cdn.veclightyear.com/835a84d5/628e339b-b4b6-4588-8d7b-063c9fca129f.jpg" width="100%" />
</td>
<td width="33%">
<img src="https://yellow-cdn.veclightyear.com/835a84d5/b73501d4-98fa-4c1d-b902-0f548045d7d9.jpg" width="100%" />
</td>
<td width="33%">
<img src="https://yellow-cdn.veclightyear.com/835a84d5/6d23caf8-4abc-4c1e-9437-046cfa132eb8.jpg" width="100%" />
</td>
</tr>
<tr>
<td align="center" width="33%">
<code>iTHOR</code>
</td>
<td align="center" width="33%">
<code>ManipulaTHOR</code>
</td>
<td align="center" width="33%">
<code>RoboTHOR</code>
</td>
</tr>
<tr>
<td width="33%">
一个高级交互框架,有助于具身常识推理研究。
</td>
<td width="33%">
一个中级交互框架,便于使用机械臂进行物体的视觉操作。
</td>
<td width="33%">
一个框架,通过在物理世界中的模拟场景对应集合,促进仿真到现实的研究。
</td>
</tr>
</table>
🌍 特性
🏡 场景。 200多个定制高质量场景。可以在我们的演示页面探索这些场景。我们正在努力快速扩展可用场景的数量,并在每个场景内进行域随机化。
🪑 物体。 超过100种物体类型的2600多个定制家居物品。每个物体都有大量注释,这使得近乎真实的物理交互成为可能。
🤖 代理类型。 支持多代理,定制的LoCoBot代理,受Kinova 3启发的机器人操作代理,以及无人机代理。
🦾 动作。 200多种动作,有助于在广泛的基于交互和导航的具身AI任务中进行研究。
🖼 图像。 对多种图像模态和相机调整提供一流支持。一些模态包括以自我为中心的RGB图像、实例分割、语义分割、深度帧、法线帧、俯视帧、正交投影和第三人称相机帧。用户还可以轻松更改相机属性,如图像大小和视场。
🗺 元数据。 在环境中的每一步之后,都有大量关于环境状态的感知数据可用。这些信息可用于构建高度复杂的自定义奖励函数。
📰 最新公告
<table>
<tr>
<td align="center" width="80">
日期
</td>
<td align="center" colspan="2">
公告
</td>
</tr>
<tr>
<td align="center">
2021年5月
</td>
<td width="50%">
<video src="https://user-images.githubusercontent.com/28768645/118589971-58cf8e80-b756-11eb-82ea-a94f84f57353.mp4"/>
</td>
<td>
现已支持<code>RandomizeMaterials</code>功能!它能在每个场景中实现大量逼真的域随机化。请在<a href="https://ai2thor.allenai.org/demo">演示</a>中尝试使用。
</td>
</tr>
<tr>
<td align="center">
2021年4月
</td>
<td colspan="2">
我们很高兴发布<a href="https://ai2thor.allenai.org/manipulathor/">ManipulaTHOR</a>,这是AI2-THOR框架内的一个环境,可以使用机械臂进行物体的视觉操作。请查看<a href="https://github.com/allenai/ai2thor/blob/main/doc/static/ReleaseNotes/ReleaseNotes_3.0.md">完整的3.0.0版本发布说明</a>。
</td>
</tr>
<tr>
<td align="center">
2021年4月
</td>
<td width="50%">
<video src="https://user-images.githubusercontent.com/28768645/118590040-7a307a80-b756-11eb-9b4c-c43373bea528.mp4"></video>
<video src="https://user-images.githubusercontent.com/28768645/118589727-d1821b00-b755-11eb-9dff-9eda97fe0998.mp4"></video>
</td>
<td>
现已支持<code>RandomizeLighting</code>功能!它包含许多可调参数,允许对其效果进行广泛控制。请在<a href="https://ai2thor.allenai.org">演示</a>中尝试使用!<br/><br/>
</td>
</tr>
<tr>
<td align="center">
2021年2月
</td>
<td colspan="2">
我们很高兴主办<a href="https://ai2thor.allenai.org/rearrangement/">AI2-THOR重排挑战赛</a>、<a href="https://ai2thor.allenai.org/robothor/cvpr-2021-challenge/">RoboTHOR物体导航挑战赛</a>和<a href="https://askforalfred.com/EAI21/">ALFRED挑战赛</a>,这些挑战赛与CVPR 2021的<a href="https://embodied-ai.org/">具身人工智能研讨会</a>同期举行。
</td>
</tr>
<tr>
<td align="center">
2021年2月
</td>
<td colspan="2">
AI2-THOR v2.7.0宣布对AI2-THOR进行了多项重大加速!在<a href="https://medium.com/ai2-blog/speed-up-your-training-with-ai2-thor-2-7-0-12a650b6ab5e">这里</a>了解更多信息。
</td>
</tr>
<tr>
<td align="center">
2020年6月
</td>
<td colspan="2">
我们发布了<a href="https://github.com/allenai/ai2thor-docker">🐳 AI2-THOR Docker</a>,这是一个简化在Docker中运行AI2-THOR的迷你框架。
</td>
</tr>
<tr>
<td align="center">
2020年4月
</td>
<td colspan="2">
框架的2.4.0版本更新已经发布。现在,所有不是环境结构明确组成部分的模拟对象都可以通过物理交互进行移动。新增了多种对象类型和许多新动作。请查看<a href="https://github.com/allenai/ai2thor/blob/main/doc/static/ReleaseNotes/ReleaseNotes_2.4.md">完整的2.4.0版本发布说明</a>。
</td>
</tr>
<tr>
<td align="center">
2020年2月
</td>
<td colspan="2">
AI2-THOR现在包括两个框架:<a href="https://ai2thor.allenai.org/ithor/">iTHOR</a>和<a href="https://ai2thor.allenai.org/robothor/">RoboTHOR</a>。iTHOR包括交互式对象和场景,而RoboTHOR由模拟场景及其对应的真实世界场景组成。
</td>
</tr>
<tr>
<td align="center">
2019年9月
</td>
<td colspan="2">
框架的2.1.0版本更新已经添加。新增了多种对象类型和新的初始化动作。改进了所有场景中的分割图像生成。
</td>
</tr>
<tr>
<td align="center">
2019年6月
</td>
<td colspan="2">
AI2-THOR框架的2.0版本更新现已上线!我们将动作和物体状态数量增加了四倍以上,添加了新的动作,可以实现视觉上明显的状态变化,如电子设备的屏幕破损、窗户破碎、易碎餐具、可装液体的容器、可清洁的餐具、凌乱和整理过的床铺等等!除了这些新的状态变化,物体还具有更多物理属性,如温度、质量和显著材料,这些都会在物体元数据中反馈。为了结合所有这些新属性和动作,现在可以通过新的上下文敏感交互自动改变物体状态。这包括诸如将脏碗放在流动的水槽下清洗、将马克杯放入咖啡机自动注入咖啡、将点燃的蜡烛放入水中熄灭,或将物体放在正在工作的炉灶上或冰箱中改变其温度等交互。请查看<a href="https://github.com/allenai/ai2thor/blob/main/doc/static/ReleaseNotes/ReleaseNotes_2.0.md">完整的2.0版本发布说明</a>,了解所有变更和新功能的详细信息。
## 💻 安装
使用Google Colab
AI2-THOR Colab可以在Google Colab云端免费运行AI2-THOR。在Google Colab中运行AI2-THOR使得探索其功能变得极其简单,无需在本地设置AI2-THOR。
使用pip
pip install ai2thor
使用conda
conda install -c conda-forge ai2thor
使用Docker
可以使用🐳 AI2-THOR Docker,它添加了运行X服务器的配置,供Unity 3D渲染场景使用。
最小示例
安装AI2-THOR后,你可以运行以下最小示例来验证一切是否正常工作:
from ai2thor.controller import Controller
controller = Controller(scene="FloorPlan10")
event = controller.step(action="RotateRight")
metadata = event.metadata
print(event, event.metadata.keys())
系统要求
组件 | 要求 |
---|
操作系统 | Mac OS X 10.9+,Ubuntu 14.04+ |
显卡 | DX9(着色器模型3.0)或具有9.3功能级别的DX11 |
CPU | 支持SSE2 指令集 |
Python | 3.5+版本 |
Linux | 启用GLX模块的X服务器 |
💬 支持
问题:如果你对AI2-THOR有任何问题,请在我们的GitHub讨论页面上提问。
问题报告:如果你在使用AI2-THOR时遇到任何问题,请在GitHub上提交问题。
🏫 了解更多
📒 引用
如果你使用AI2-THOR或iTHOR场景,请引用原始的AI2-THOR论文:
@article{ai2thor,
author={Eric Kolve and Roozbeh Mottaghi and Winson Han and
Eli VanderBilt and Luca Weihs and Alvaro Herrasti and
Daniel Gordon and Yuke Zhu and Abhinav Gupta and
Ali Farhadi},
title={{AI2-THOR: An Interactive 3D Environment for Visual AI}},
journal={arXiv},
year={2017}
}
如果你使用🏘️ ProcTHOR或程序生成的场景,请引用以下论文:
@inproceedings{procthor,
author={Matt Deitke and Eli VanderBilt and Alvaro Herrasti and
Luca Weihs and Jordi Salvador and Kiana Ehsani and
Winson Han and Eric Kolve and Ali Farhadi and
Aniruddha Kembhavi and Roozbeh Mottaghi},
title={{ProcTHOR: Large-Scale Embodied AI Using Procedural Generation}},
booktitle={NeurIPS},
year={2022},
note={Outstanding Paper Award}
}
如果你使用ManipulaTHOR代理,请引用以下论文:
@inproceedings{manipulathor,
title={{ManipulaTHOR: A Framework for Visual Object Manipulation}},
author={Kiana Ehsani and Winson Han and Alvaro Herrasti and
Eli VanderBilt and Luca Weihs and Eric Kolve and
Aniruddha Kembhavi and Roozbeh Mottaghi},
booktitle={CVPR},
year={2021}
}
如果你使用RoboTHOR场景,请引用以下论文:
@inproceedings{robothor,
author={Matt Deitke and Winson Han and Alvaro Herrasti and
Aniruddha Kembhavi and Eric Kolve and Roozbeh Mottaghi and
Jordi Salvador and Dustin Schwenk and Eli VanderBilt and
Matthew Wallingford and Luca Weihs and Mark Yatskar and
Ali Farhadi},
title={{RoboTHOR: An Open Simulation-to-Real Embodied AI Platform}},
booktitle={CVPR},
year={2020}
}
👋 我们的团队
AI2-THOR是由艾伦人工智能研究所(AI2)的PRIOR团队开发的一个开源项目。AI2是一个非营利研究机构,其使命是通过高影响力的人工智能研究和工程来为人类做出贡献。
<br />
<a href="//prior.allenai.org">
<p align="center"><img width="100%" src="https://yellow-cdn.veclightyear.com/835a84d5/f496d7b4-813d-4213-9045-c5b19e2f28cd.svg" /></p>
</a>