前言
四旋翼無人機自發明以來已經有了非常長遠的發展,現階段對四旋翼無人機的運動學和動力學模型已經有了很多較深入的研究,無人機仿真方面的軟件和工具也是層出不窮。
例如Gazebo有優秀的物理引擎,可以模擬出真實的物理環境,同時也能夠自主搭建環境;鳳凰模擬器能夠模擬遙控器手動飛行,對于飛手的訓練有非常大的幫助。
Gazebo 中四旋翼無人機飛行效果圖
鳳凰模擬器中用遙控器控制四旋翼的飛行?? 現如今機器視覺和人工智能飛速發展,但是仿真軟件中的環境不夠逼真,直觀看起來比較假,同時背景環境也不夠豐富,并不能充分驗證計算機視覺等相關算法。
AirSim就是在這種情況下應運而生的,它將四旋翼的動力學模型與游戲引擎(虛幻引擎Unreal)相結合,借助游戲引擎強大的視覺渲染能力和豐富的場景,彌補了這一缺陷。
虛幻引擎 Unreal Engine,簡稱UE,中文譯名為虛幻引擎,是非常出名的游戲引擎,它是一套完整的游戲開發工具,目前已經被廣泛應用于游戲開發、建筑設計與渲染、汽車展示、廣播與實況活動、影視渲染、訓練與模擬等各個領域中。
虛幻引擎同時還具備編輯器功能,具有照片級逼真的視覺渲染水平、支持動態物理模擬的效果,能夠制作出栩栩如生的動畫,甚至可以制作電影大片級的場面。其豐富而強大的數據接口,能夠為各行各業的專業人士帶來無限的創作自由。
從UE4版本開始,其源代碼就可以從Github開源社區下載,所以實質上你可以修改任何東西,包括:物理引擎、渲染效果和用戶界面等。同時 UE4的跨平臺特性支持 Windows PC、Linux、Max OSX、iOS、安卓等平臺,甚至可以支持VR等虛擬現實的設備。
虛幻商城中有非常豐富的逼真場景可供選擇,甚至有復原了完整的著名城市和建筑群,下圖展示的有:沙漠景觀、城市建筑、公園、森林。虛幻引擎中的所有場景都可以設置為AirSim無人機仿真的環境場景。
虛幻商城中部分環境展示:沙漠、城市、公園、森林 這些豐富的場景中,還包含了風沙雨雪霧、落葉等不同天氣或氣候情況下的渲染,甚至包括同一地區不同季節時的景觀。
這些在仿真中都可以任意設置,能夠充分測試視覺算法在不同的場景下的效果。
虛幻商城中Realistic Landscapes 環境不同季節和氣候的景色展示
什么是 AiriSim
AirSim 是微軟公司開發的基于游戲引擎的一個開源的跨平臺仿真器,它可以用于無人機、無人機車等機器人的物理和視覺仿真。
它同時支持基于PX4 和 ArduPilot等飛行控制器的軟件在環仿真,目前還支持基于PX4的硬件在環仿真。 AirSim 是作為虛幻游戲引擎的插件而存在的,適配基于虛幻引擎搭建的環境,目前AirSim也有一個實驗版本的插件適用于Unity引擎。
得益于游戲引擎優秀的視覺渲染效果,AirSim 仿真平臺在具備物理仿真的同時也具備了逼真的視覺仿真效果,這是其一大亮點,非常適用于進行基于深度學習等視覺AI仿真驗證。
AirSim提供了很多API接口,用于讀取數據、控制車輛、控制天氣等,使用 API接口可以實現自動收集數據集的功能,還可以測試視覺算法。
AirSim的開發者希望這個平臺能夠幫助研究人員用于深度學習、計算機視覺、強化學習等人工智能相關的研究,適用于無人機、無人駕駛、機器人等領域的應用。
AirSim支持多平臺運行,在Windows、Linux和Mac系統中可以運行,但是目前只有在Windows系統下才可以創建工程,而對于Linux系統下的使用,需要首先在 Windows 系統下創建好工程,再復制到Linux系統下。
AirSim 可以做什么
1. 手動飛行(駕駛)
使用可以接入電腦的無人機遙控器或者 XBox,都可以實現手動飛行仿真中的無人機,它不只能夠訓練飛手的飛行技術,還可以瀏覽美景。得益于虛幻商城中的豐富且逼真的場景,能夠給予玩家震撼的視覺效果,使用1比1復原的實現場景時,甚至有一種駕駛飛機瀏覽世界各地名勝的感覺。
2.程序控制無人機飛行(控制算法測試)
AirSim 提供了豐富的程序控制接口,用戶可以使用多種編程語言來編寫程序,實現對無人機的狀態讀取和飛行控制。AirSim 還支持硬件在環仿真,可以最大程度模擬四旋翼的飛行效果。
控制接口功能豐富,
包括四旋翼的: 位置控制、速度控制、姿態控制、電機控制 等,
支持 電機轉速控制 、底層飛控的 PID參數調節 ,滿足了從基礎控制到 高機動控制 等不同的任務需求。
使用AirSim APIs 接口可以讀取無人機的狀態(位置、速度、姿態等),包括真實狀態、傳感器測量到的有噪聲的狀態信息。
AirSim 還支持同時仿真多架無人機,可以測試 集群和多無人機協同 算法。
AirSim 支持在視口中直接作圖,由此可以顯示無人機的 飛行軌跡 。
多無人機協同編隊控制 無人機跟蹤8字形軌跡
3. 數據集自動收集、視覺算法測試
仿真場景中可以知道全部的信息,使用程序控制,可以很方便地實現對無人機位置和姿態的控制,同時也能方便地控制相機的姿態和內參。也可以同時添加多個相機,安裝在無人機的不同位置。
AirSim 中可以獲得的圖像包括: 單目 RGB圖像、雙目深度圖、分割圖、紅外圖 等。
由于是仿真模擬,深度圖和分割圖非常完美,并不能完全模擬顯示中的不確定性。
紅外圖是基于分割圖生成的,需要自己定義每個物體的溫度。
自由設置相機的 數量、位置、內參 等。
自由添加噪聲: 相機畸變、運動模糊、圖片隨機噪 聲 等。
自由設置不同的天氣狀態: 雨、雪、霧、風速、落葉、沙塵 等。
自由 改變無人機的外觀 ,可以將無人機外形設置成任意型號的無人機,如 DJI Mavic。
可以導入現實中的環境。
設置時間流逝,由此可以 改變一天中太陽的位置 ,從而產生光照強度、光源位置變化,產生環境變化。
4.強化學習
AirSim 支持獲取碰撞信息,碰撞信息不止包括是否發生碰撞,還包括:發生碰撞的位置、發生碰撞的表面、碰撞深度等信息。使用程序可以讀取碰撞信息、無人機狀態等,加上強化學習算法,可以實現強化學習的訓練。
5. 多傳感器融合
AirSim 目前支持的傳感器有:相機、雙目相機、紅外相機、雷達、距離傳感器、氣壓計、IMU、GPS、磁力計。同時使用多個傳感器,可以測試多傳感器融合算法。
審核編輯:劉清
-
機器人
+關注
關注
211文章
28611瀏覽量
207891 -
機器視覺
+關注
關注
162文章
4402瀏覽量
120550 -
遙控器
+關注
關注
18文章
840瀏覽量
66406 -
距離傳感器
+關注
關注
3文章
76瀏覽量
15139 -
四旋翼無人機
+關注
關注
2文章
18瀏覽量
5464
原文標題:走進Airsim,教你如何做機器人與視覺的融合仿真
文章出處:【微信號:3D視覺工坊,微信公眾號:3D視覺工坊】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論