AirSim 公告:此仓库将于明年归档#
2017 年,微软研究院创建了 AirSim 作为人工智能研究和实验的仿真平台。在五年时间里,这个研究项目作为共享研究代码和测试航空人工智能开发与仿真新想法的常用方式,已经达到了其目的,并取得了很大进展。此外,随着时间的推移,我们将技术应用于现实世界的方式也取得了进步,特别是通过空中机动性和自主系统。例如,无人机送货不再是科幻情节,它已成为商业现实,这意味着需要满足新的需求。我们在此过程中学到了很多,并感谢社区在此期间的参与。
本着向前发展的精神,我们将在明年发布一个新的仿真平台,并随后归档原始的 2017 年 AirSim。届时用户仍然可以访问原始 AirSim 代码,但将不再进行任何更新,即时生效。相反,我们将把精力集中在新的产品 Microsoft Project AirSim 上,以满足航空航天行业不断增长的需求。Project AirSim 将提供一个端到端平台,用于通过仿真安全地开发和测试空中自主系统。用户将受益于商业产品中独有的安全性、代码审查、测试、高级仿真和人工智能功能。随着 Project AirSim 发布日期的临近,将提供学习工具和功能,帮助您迁移到新平台并指导您使用该产品。要了解更多关于使用新的 Project AirSim 构建空中自主系统的信息,请访问 https://aka.ms/projectairsim。
欢迎使用 AirSim#
AirSim 是一个用于无人机、汽车等的仿真器,基于 虚幻引擎 构建(我们现在也有一个实验性的 Unity 版本)。它是开源、跨平台的,支持与流行的飞控(如 PX4 和 ArduPilot)进行软件在环仿真,以及与 PX4 进行硬件在环仿真,以实现物理和视觉上的真实仿真。它作为虚幻插件开发,可以简单地放入任何虚幻环境中。同样,我们有一个 Unity 插件的实验版本。
我们的目标是将 AirSim 开发为一个人工智能研究平台,用于实验自动驾驶车辆的深度学习、计算机视觉和强化学习算法。为此,AirSim 还公开了 API,以平台独立的方式检索数据和控制车辆。
观看 1.5 分钟的快速演示
AirSim 中的无人机
AirSim 中的汽车
如何获取#
Windows#
Linux#
macOS#
* 构建它
有关更多详细信息,请参阅 使用预编译二进制文件 文档。
如何使用#
文档#
查看我们关于 AirSim 所有方面的 详细文档。
手动驾驶#
如果您有如下图所示的遥控器 (RC),您可以在仿真器中手动控制无人机。对于汽车,您可以使用箭头键手动驾驶。
程序化控制#
AirSim 公开 API,因此您可以通过编程方式与仿真中的车辆进行交互。您可以使用这些 API 检索图像、获取状态、控制车辆等。API 通过 RPC 公开,并且可以通过各种语言访问,包括 C++、Python、C# 和 Java。
这些 API 也作为单独的、独立的跨平台库的一部分提供,因此您可以将它们部署到车辆上的伴随计算机上。这样,您就可以在仿真器中编写和测试代码,然后将其在真实车辆上执行。迁移学习和相关研究是我们的重点领域之一。
请注意,您可以使用 SimMode 设置 来指定默认车辆或新的 ComputerVision 模式,这样您每次启动 AirSim 时都不会收到提示。
收集训练数据#
有两种方法可以从 AirSim 生成深度学习的训练数据。最简单的方法是直接按下右下角的录制按钮。这将开始为每一帧写入姿态和图像。数据记录代码非常简单,您可以随意修改它。
一种生成您想要的训练数据的更好方法是访问 API。这使您能够完全控制如何、什么、何处以及何时记录数据。
计算机视觉模式#
使用 AirSim 的另一种方法是所谓的“计算机视觉”模式。在此模式下,您没有车辆或物理。您可以使用键盘在场景中移动,或者使用 API 将可用的摄像机放置在任意姿态,并收集深度、视差、表面法线或对象分割等图像。
天气效果#
按 F10 查看可用的各种天气效果选项。您还可以使用 API 控制天气。按 F1 查看其他可用选项。
教程#
- 视频 - 使用 Pixhawk 设置 AirSim 教程 作者 Chris Lovett
- 视频 - 使用 Pixhawk 教程 作者 Chris Lovett
- 视频 - 使用现成环境与 AirSim 作者 Jim Piavis
- 网络研讨会 - 利用高保真仿真实现自主系统 作者 Sai Vemprala
- 使用 AirSim 进行强化学习 作者 Ashish Kapoor
- 自动驾驶食谱 作者 Microsoft 深度学习与机器人车库分会
- 使用 TensorFlow 进行简单碰撞避免 作者 Simon Levy 和 WLU 团队
参与#
论文#
更多技术细节可在 AirSim 论文 (FSR 2017 会议) 中找到。请引用此文,如下所示:
@inproceedings{airsim2017fsr,
author = {Shital Shah and Debadeepta Dey and Chris Lovett and Ashish Kapoor},
title = {AirSim: High-Fidelity Visual and Physical Simulation for Autonomous Vehicles},
year = {2017},
booktitle = {Field and Service Robotics},
eprint = {arXiv:1705.05065},
url = {https://arxiv.org/abs/1705.05065}
}
贡献#
如果您正在寻找可贡献的领域,请查看 开放问题。
谁在使用 AirSim?#
我们维护着一个我们知道的少数项目、人物和群组的 列表。如果您想在此列表中展示,请 在此提出请求。
联系我们#
加入我们的 GitHub 讨论组 以保持更新或提出任何问题。
我们还在 Facebook 上有一个 AirSim 群组。
新功能#
- 电影摄影机
- ROS2 包装器
- 列出所有资产的 API
- movetoGPS API
- 光流相机
- simSetKinematics API
- 从现有 UE 材质或纹理 PNG 动态设置对象纹理
- 能够生成/销毁灯光并控制灯光参数
- 支持 Unity 中的多架无人机
- 通过键盘控制手动相机速度
有关更改的完整列表,请查看我们的 变更日志
常见问题#
如果您遇到问题,请查看 常见问题,并随时在 AirSim 仓库中发布问题。
行为准则#
本项目已采用 微软开源行为准则。有关更多信息,请参阅 行为准则常见问题解答,或通过 opencode@microsoft.com 联系我们以提出任何其他问题或意见。
许可#
本项目根据 MIT 许可发布。请查看 许可文件 了解更多详细信息。