471
機器人
在這裏,你的無人機可以任性炸機,還可以順便“調教”人工智能
文章來源:DroneDev
人工智能的發展離不開數據的積累,在一些涉及到飛行器或自動駕駛交通工具的項目裏,如果使用實體的測試設備來收集訓練數據的話,成本會變得很高,一旦在測試時出現墜落或撞牆,損失會較為慘重。為了降低數據收集的成本,微軟研發團隊於今年 2 月份在 Github 上開源了一套基於虛幻引擎 4(Unreal Engine 4,以下簡稱 UE4)構建的無人機模擬飛行插件——AirSim,方便大家能以「不炸機」的方式收集用於深度學習和人工智能研究的數據。
UE4 在遊戲開發上的表現極為出色,而 AirSim 則內置了 UE4 商城裏的一個名為「Modular Neighborhood Pack」環境包,裏麵高度還原了一個逼真虛擬環境,模擬了陰影、陽光炫光、陰霾和道路表麵積水等真實世界的環境細節,使用者可以在裏麵模擬無人機的操作。
使用方法
添加遙控器操作
安裝好 AirSim 後,你可以使用外接遙控器進行模擬飛行。按照 AirSim 文檔裏 Remote Control 的描述,AirSim 支持 DJI、PX4 等無人機的遙控器及一些可用的控製器,包括 XBox 360、Playstation 3 的遊戲手柄,但如果要接入這些外接遙控器,就必須在電腦上進行相應的配置。幸好,在最新的代碼中,AirSim 內置了名為「simple_flight」的模擬遙控器,你可以跳過配置外接遙控器的繁瑣事了。
點擊播放
GIF/2449K
程序控製
AirSim 允許你通過 APIs 與虛擬的飛行器進行操作交互。如下麵的中,設置了「按任意鍵以 5m/s 的速度飛往(-10,10,-10)的坐標點上」以及「按任意鍵拍照」的功能:
收集訓練數據
從 AirSim 中生成用於深度學習的數據,最簡單的方法是按右下角的記錄按鈕,點擊後,係統會記錄並寫入每一幀的飛行姿態和圖像信息。當然,你也可以接入其 APIs,根據訓練項目的需求,獲取你想要的訓練數據。
計算機視覺模式
在該模式下,你可以通過鍵盤或 APIs 代碼指令來控製飛行器的姿態並獲取當前顯示圖像的深度、視差、地麵法線、圖像分割等信息,你還可以設置分辨率、人稱視角、動態模煳等參數。
小結
如果隻是用 AirSim 來練習飛行技巧的話,就有點「大材小用」了,微軟開發 AirSim 的初衷是希望幫助你做些 AI-things。AirSim 的 APIs 采用 RPC 協議,支持 C++,Python,C# 和 Java 等多種語言。同時,APIs 被封裝成獨立的跨平台庫,模擬器的執行代碼也可以在真實的無人機上進行編譯執行,所以訓練數據是可以互通的。
AirSim 可以記錄使用者的操控行為,並作為深度學習神經網絡的訓練數據,比如通過大量記錄使用者躲避障礙物的操控方式,可以讓 AI 學習區分陰影與深色牆壁的差別。雖然虛擬環境不能完全替代現實環境下的測試,但能以這種低成本的方式獲得海量的數據,對於要開發無人機或自動駕駛技術的公司來說,簡直是一項大福利。
最後說句,因為鍾德夫(就是 DroneDev 啦)上周出差了,所以拖延了一把,本來文章裏還會提到 AirSim 的安裝方法,不過沒曾想單是 UE4 在 Mac OS 上的環境配置就有那麼多坑,所以具體的配置方法和上手體驗會放到下一篇推送裏,嘿嘿。
點擊播放
GIF/144K
最後更新:2017-10-08 06:47:11