国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于虛擬校園的自動駕駛仿真測試平臺設計與實現

2022-05-30 06:06:12楊心悅劉向東郭宏宇張緣張志偉李程昊
電腦知識與技術 2022年30期
關鍵詞:自動駕駛虛擬仿真

楊心悅 劉向東 郭宏宇 張緣 張志偉 李程昊

摘要:針對自動駕駛中實車道路測試成本高、場景局限性大等問題,圍繞校園特殊場景下自動駕駛訓練的需求,提出并實現了一種基于校園環(huán)境的自動駕駛虛擬仿真測試平臺設計方案。采用基于無人機傾斜攝影的三維重建技術搭建出校園建筑物模型;基于虛幻引擎進行平臺場景搭建;基于像素流送技術開發(fā)了輕量級Web客戶端;基于AirSim開發(fā)了機器學習訓練接口。設計了兩項模擬實驗,經過測試,系統能夠平穩(wěn)運行,實現了直觀、方便地進行自動駕駛仿真測試的目的,具有較強的實踐價值。

關鍵詞:自動駕駛;虛擬仿真;虛幻引擎;AirSim;像素流送

中圖分類號:TP311.5? ? ? 文獻標識碼:A

文章編號:1009-3044(2022)30-0023-04

開放科學(資源服務)標識碼(OSID):

1 引言

隨著自動駕駛技術的發(fā)展,對于自動駕駛汽車的測試需求也逐漸提高。目前,自動駕駛汽車的測試評價體系主要包括兩種技術,即傳統的道路場地測試和虛擬仿真測試。由于傳統的實車道路場地測試需要極高的時間和資金成本,并且具有一定的危險性,完全使用實車道路測試并不符合實際需求。相比之下,基于場景的虛擬仿真測試成本較低,可以節(jié)約大量人力物力,且安全性更高[1]。因此,虛擬仿真測試技術已經成為自動駕駛車輛測試不可或缺的手段,將其與實車道路場地測試結合,可以取得非常貼近實際的測試效果[2]。目前國內外眾多科研機構對此展開了廣泛的研究。例如,百度公司開發(fā)的Apollo仿真平臺,微軟研究院開發(fā)的無人機及自動駕駛模擬平臺Airsim等。

基于場景的自動駕駛虛擬仿真測試主要包含三個方面的內容:測試場景、虛擬測試平臺、加速測試方法[3]。其中測試場景是虛擬仿真測試的核心。為了確保自動駕駛汽車測試能夠覆蓋足夠多的道路、環(huán)境、交通等情況,需要建立豐富的測試場景庫,以便在不同的場景下進行自動駕駛的訓練。

基于上述背景,本文面向應用于校園特殊場景的自動駕駛測試需要,依托虛幻引擎(Unreal Engine)設計并實現了一個基于校園場景的自動駕駛仿真系統。平臺采用吉林大學中心校區(qū)虛擬校園環(huán)境作為仿真測試場景;通過構建AI行為樹實現行人及交通流的仿真;采用藍圖可視化腳本編寫車輛動態(tài)仿真模型;集成Airsim插件用于自動駕駛算法的測試;使用VR技術可在車輛行駛時觀察周圍環(huán)境及評價測試效果;采用像素流送技術完成視頻幀到Web端的傳輸,實現輕量級的在線測試客戶端。

經過部署和測試使用,平臺達到了預期的要求,可以為自動駕駛仿真測試和道路安全分析提供技術支持,具有較高的使用價值。

2 系統架構

系統采用C/S和B/S混合架構進行開發(fā),主體架構如圖1所示。

平臺的架構大致分為三個部分,即場景搭建、系統前端設計與部署以及機器學習算法訓練器。

其中場景搭建是指搭建出虛擬校園環(huán)境。虛擬校園環(huán)境作為模擬車輛行駛的場景,是整個自動駕駛仿真平臺的基礎,其主要包括兩部分,即靜態(tài)場景和動態(tài)場景。靜態(tài)場景指校園建筑物、道路、植被、湖水以及靜止的人和車輛等;動態(tài)場景指天氣、季節(jié)、光線變化以及處于運動狀態(tài)的行人、行駛的車輛等。其中校園建筑物建模采用基于無人機傾斜攝影的三維重建技術實現,其他場景元素采用UE4中藍圖—可視化腳本和C++編程實現。

系統前端完成與用戶的交互工作,系統采用C/S和B/S混合架構,除了實現默認的本地客戶端外,還實現了一個輕量級的Web前端。用戶可以根據需求和設備情況選擇對應的客戶端。

Web前端采用UE4的像素流送技術實現,其原理是在用戶不可見的主機上運行UE4應用程序,該主機負責運行應用邏輯和渲染畫面,并將此渲染輸出編碼到一個媒體流送中,再通過一個網頁服務堆棧進行傳遞,用戶就可以在電腦或移動設備上的瀏覽器中查看直播流送[4]。

其架構如圖2所示。

使用該技術搭建系統前端具有非常明顯的優(yōu)點,用戶可以使用配置較低的主機查看原本無法顯示的高質量畫面,且?guī)缀醪粫加糜脩舯镜氐拇鎯臻g。用戶只需要保證網絡的穩(wěn)定性,就可以使用低延遲、高質量、輕量級、跨平臺的仿真系統。

本地客戶端采用UE4項目默認打包生成的應用程序實現,相比于Web端,本地客戶端的功能較為全面,如用戶可以將HTC VIVE等程序支持的VR設備連接到主機并啟動本地客戶端,就可以在VR視角下實時觀看無人機/車的行駛過程。

機器學習算法訓練器采用編程接口的方式實現?;贏irSim,系統提供了機器學習訓練的開放接口,通過實現該接口,用戶可以方便地在場景中開展基于多種目的的機器學習訓練,并且可以自由地選擇對應的機器學習算法。

3 模擬環(huán)境構建

3.1 Unreal Engine 4和Airsim概述

Unreal Engine 4是由Epic Games開發(fā)的一款游戲引擎,具有強大的畫面實時渲染能力,能夠為開發(fā)者提供多種多樣的接口,并且支持使用藍圖(Blue Prints)進行編程[5]。諸多強大、便捷的功能使其成為目前主流的游戲引擎之一。除了作為游戲開發(fā)平臺,UE4也可以用于多種3D創(chuàng)作活動,如制作虛擬實驗平臺,開發(fā)建筑可視化漫游應用等。目前UE系列的全新版本UE 5已經發(fā)布,其具有比UE4更加真實的3D渲染效果、更加優(yōu)質的畫面質量。本文使用的UE4可以方便地與UE5進行對接,便于后續(xù)進一步開發(fā)。

AirSim是由微軟開發(fā)的一個開源的、跨平臺的無人機、汽車等的模擬器。它支持使用目前流行的飛行控制器(如PX4和ArduPilot等)進行軟件在環(huán)模擬,以及使用PX4進行硬件在環(huán)仿真,從而實現物理和視覺上的模擬仿真[6]。AirSim作為UE4的插件,可以很方便地集成在UE4的項目中,為無人機/車提供仿真模擬。

3.2 自動建模

在模擬環(huán)境構建的過程中,將建筑物建模和校園整體環(huán)境構建分開進行處理。平臺中校園場景的建筑物全部是參照現實中存在的建筑物搭建而成,因此考慮采用基于無人機傾斜攝影的三維重建方法來搭建建筑物模型。

首先采用傾斜攝影技術,利用無人機拍攝目標建筑物的影像。傾斜攝影除了能夠獲得垂直拍攝的圖片以外,還可以從四個傾斜的角度獲取到同一建筑物不同視角的影像,豐富了建筑物頂部及側視的高分辨紋理,更為真實地反映建筑物及其周圍環(huán)境的真實情況[7]。

另外,對建筑物每一面進行拍攝都需要獲取到大量的圖片。圖片是還原建筑物的支撐,同一區(qū)域大量的圖片能夠減少模型出現空洞、塌陷等情況,也便于還原高精度的建筑物模型。傾斜攝影的具體操作過程是:首先確定建模區(qū)域并規(guī)劃好無人機的飛行軌跡;然后將飛行軌跡導入無人機中,設置無人機拍攝的角度和拍攝的時間間隔;接下來放飛無人機進行拍攝;最后導出無人機拍攝的圖片進行后續(xù)處理[8]。

第二個步驟是使用MetaShape軟件進行三維重建。首先導入無人機拍攝的圖片,對齊照片獲取到拍攝區(qū)域的少量點云;然后通過密集點云獲取到大量該區(qū)域的點云,此時能夠看出建筑物的整體雛形;之后生成網格,即可獲取該建筑物的灰度網格模型;最后生成紋理,生成的紋理能夠準確地附在其對應的模型面片上,使得建筑物模型按比例地還原了原建筑,此時就生成了一個真實的三維模型。生成的一個實景模型如圖3所示。但在生成的模型中除了建筑物,還有一部分多余的周圍環(huán)境模型,將該模型導入到3DMAX中進行修剪和簡單處理,即可獲得一個完整的建筑物三維模型。另外,由于建筑物模型較大,組成模型的面片高達百萬,可通過3DMAX對整體模型進行減面操作,使在不影響模型整體形象的情況下,獲得一個較高精度的建筑物模型。

由于三維重建需要大量的圖片且生成的模型所占內存較大,系統中也使用了SketchUp來手動進行建筑物模型搭建。參考建筑物圖片對建筑物進行大體上的還原,再將建筑物圖片中相應的建筑物紋理截取后,附在模型上相應的位置,使用SketchUp中的玻璃、金屬等材質完善模型,即可獲取到相應的建筑物模型。

基于傾斜攝影的三維重建可以獲取到高精度的、真實的建筑物模型,其紋理效果、模型深度等與原建筑物完全相似;使用建模軟件SketchUp得到的模型也能做到與原建筑很相似,使用其材質庫中的材質來完善模型,可以使模型在光照下展現較為真實的光照效果,且建造的模型文件占用內存較小,但模型構建的過程中會缺乏原建筑物中的細節(jié)。

3.3 環(huán)境構建

環(huán)境構建指構建出除了建筑物之外的校園環(huán)境的過程。虛擬校園環(huán)境作為模擬車輛行駛的場景,是整個自動駕駛仿真平臺的基礎。

Twinmotion是一款面向建筑需求的實時渲染軟件,多用于建筑設計、可視化領域,支持天氣、植被、地形、室內控制等多種功能[9]。使用Twinmotion可以很方便地搭建出校園環(huán)境的整體模型的雛形。另外,虛幻引擎提供了非常豐富的環(huán)境組件,可以很方便地構建出校園內的環(huán)境,如道路、草地、湖水等[10]。因此,環(huán)境構建所采用的主要工具是Twinmotion和虛幻引擎。

校園環(huán)境構建的具體操作為:

1)在Twinmotion的加載環(huán)境選項中選擇城市,在其所提供的地圖中搜索并導出吉林大學前衛(wèi)南區(qū)附近的地圖模型,此時Twinmotion可以根據選擇范圍自動生成環(huán)境模型,但自動生成的地圖模型均為灰色模型,需要后期完善。然后將該模型導入UE4中,此時就獲得了一個基礎的校園整體模型;

2)接下來使用UE4提供的datasmith插件將建造好的建筑物模型導入項目文件中,并替換掉原有的灰色建筑物模型;

3)之后用地形工具繪制地形作為校園的地面,并將地面材質更換為制作好的草地材質,同時添加兩種不同的地形圖層使材質看起來更真實;

4)參照實際地圖在地形上使用樣條線繪制馬路、泥土路徑和人行道,并分別更換樣條網格體,將其材質替換為與現實中類似的材質;

5)使用地形雕刻工具來塑造地形,并使用地形—雕刻—平滑與地形—雕刻—平整將草坡修得較為平滑;

6)使用植物工具,繪制各式樹木等植物;

7)將垃圾桶、路燈等模型加入環(huán)境,增強環(huán)境的真實性。

4 環(huán)境控制

4.1 模擬交通流

為了使得實驗場景更加真實以滿足在多種條件下的訓練需求,向環(huán)境增加具有校園特殊環(huán)境中行為模式的行人以及車輛,以模擬校園環(huán)境下的隨機交通流以及干擾交通流兩種類型的真實交通流[11]。

1)行人

利用虛幻引擎中的藍圖可視化腳本系統進行程序編寫,設計出可以按照規(guī)定路線行走或具有隨機性行為的行人AI。

行人創(chuàng)建的具體步驟如下:

①首先建立繼承虛幻第三人稱人物類的人物藍圖,通過對人物藍圖的編寫,實現對人物基本屬性如大小、方向、行走速度等設置;利用ReadyPlayerMe插件創(chuàng)造人物模型,并且利用blender進行模型修改,最后利用Mixamo對人物模型獲取模型動畫,在虛幻引擎中集成,設計出不同形象的人物模型。

②然后是行為及行走路線控制程序編寫,利用藍圖編寫AIControl控制器控制行人AI,用Spline樣條線組件進行路線規(guī)劃,在設計的路線中生成一些刺激源,在AIControl中利用虛幻AI框架下的AI感知組件,對Spline樣條線組件下的刺激源進行檢測,實現行人沿著規(guī)劃的路徑不斷地向有刺激源的點位行走,并且利用偽隨機的方法讓行人在如路口的情況下可以選擇不同點位以達到隨機交通流的效果。

③同時,對于一些特定的場景需求,引入了一些特殊的行人,通過導入不同動畫,將其綁定于模型,讓人物動作多元化,如打電話,或者交談中的兩人等;引入自行車模型與人物模型結合,搭配相應動作,使得更加符合校園場景。

2)車輛

利用虛幻引擎中的藍圖可視化腳本系統進行程序編寫,設計出可以按照規(guī)定路線行駛的車輛。

車輛創(chuàng)建的具體步驟如下:

①首先建立繼承虛幻載具類的車輛藍圖,通過繼承,可以獲得載具的基本行動功能。對藍圖進行設置,更改車輛大小、行進速度、扭矩、懸架等屬性。

②編寫車輛控制程序的藍圖,使用Spline樣條線組件規(guī)劃車輛路徑,在設計好的路線上畫出路線,然后利用AI move to函數,控制車輛沿著規(guī)劃樣條線移動。

對行人和車輛的行為控制,設計出了隨機交通流以及干擾交通流的兩種交通流模式,包括行人橫穿馬路,車輛橫穿正常駕駛,人車混雜復雜路口等多種實驗場景,充實了實驗內容,實現了具有校園環(huán)境特征的包括行人、自行車及車輛的模擬交通流。

4.2 天氣、晝夜控制

考慮到現實中天氣及晝夜變化也會對自動駕駛訓練效果產生影響,平臺構建了完善的天氣及晝夜調節(jié)系統[12]。利用虛幻引擎藍圖—可視化腳本與Airsim的天氣粒子可以實現天氣和晝夜的動態(tài)變化。

天氣控制:第一步,將Airsim的天氣粒子放入場景,并與界面藍圖綁定,在界面藍圖中添加按鈕,并通過圖像遮住和按鈕隱藏讓界面通過更好的效果來進行控制,將按鈕的點擊與天氣粒子的可視性相綁定,通過天氣粒子的是否可視達成在與不在的效果,第二步,找到player0即當前使用者位置,在每一幀均將使用者的位置傳遞給天氣粒子,并將天氣粒子的位置更改為改位置z軸加30,這樣可以使使用者始終處于天氣的覆蓋范圍,且不需要考慮對過多的粒子進行渲染時產生的問題[13]。天氣控制的實現如圖4所示。

晝夜控制:晝夜控制的核心是對場景中directlight的y軸進行轉換,在界面藍圖中,將y軸的坐標與換條組件中的滑塊進行綁定,使滑塊的移動可以實時改變y軸改變晝夜情況,在關卡藍圖中,在每一幀對場景中的skylight進行更新,保證天空的展示實時與光照情況相匹配。晝夜控制的實現如圖5所示。

5 模擬實驗

為了測試系統的仿真模擬效果,設計了兩項模擬實驗,分別使用了深度學習和強化學習算法,以便從多個角度測試系統的可用性和穩(wěn)定性。

5.1 基于深度學習的行人車輛目標檢測實驗

整體實驗步驟是利用虛擬實驗平臺進行圖像采集后獲取訓練集,對圖片進行預處理,數據增強,訓練深度學習后進行目標檢測模型,對模型進行效果檢測。

1)圖像收集。利用Airsim的視頻采集功能,將車輛實時采集的影像流實時轉化為可被分析的圖片數據,同時Airsim采集具有行人或無行人的圖像作為模型訓練的原始數據集。

2)進行圖片預處理以及數據增強。對圖片進行預處理可以消除圖像中的無用數據。目標檢測實驗過程中,重要的預處理過程就是對于圖像進行數據標注,對圖像中的人物模型所處的區(qū)域圖像框坐標進行標注,并添加標簽指出其為行人。常見的面向目標檢測的數據增強方法有對圖像的裁剪、翻轉、比例縮放、噪聲處理等,這些方法可以增加訓練的數據量,添加噪聲數據還可以增強模型的魯棒性。平臺對于收集到的圖像進行圖片裁剪、翻轉、增加噪點處理,并且將其擴充至原有的數據集中。

3)基于深度學習的目標檢測方法模型訓練,在百度飛槳云平臺上進行在線模型訓練,基于開源框架PaddlePaddle,使用行人運動數據集對YOLOv3神經網絡模型進行數據訓練。

4)最后是模型進行檢測,利用Airsim的圖像采集功能,以0.1s為時間間隔采集路況影像,將圖像輸入到模型中,輸出的預測結果是行人處于圖像位置的圖像框的坐標。利用OpenCV將輸出結果與收集圖像結合,將圖片以及標注信息以幀的形式拼接為視頻,實時顯示。實驗結果如圖6所示,可以看出,車輛成功識別出前方行人。

利用虛擬實驗平臺,可以輕松獲取大規(guī)模的數據集,同時可以設計特定的場景進行數據集的驗證。

5.2 基于強化學習的行車避障實驗

該實驗是通過對車輛曾經的相撞經歷進行強化學習,使其在行車過程中遇到相同場景時能夠自行進行避障的過程。

實驗流程包括:

1)通過Python程序對行車進行控制,使車輛在場景中行駛。利用AirSim提供的接口,在行駛過程中每隔一段時間(約0.1s)拍攝一張車輛前方的圖像,并保存最近拍攝的10張圖像,直到車輛發(fā)生碰撞,程序結束運行,并將最后10張圖片存儲為jpg文件;

2)對10張圖片應用強化學習算法進行訓練,并儲存訓練模型;

3)再次通過Python程序使車輛按照原軌跡再次行駛,在運動過程中實時拍攝車輛前方圖片,并將該圖片與之前10張圖片進行訓練后的結果進行比對, 當二者的相似度高過一定閾值時,車輛自動剎車,即表現為車輛自動避免碰撞。

6 結束語

本文針對自動駕駛測試中實車測試成本高、機制不靈活、場景限制多等局限性,使用UE4開發(fā)了一個基于校園場景的自動駕駛仿真測試系統。針對校園的特殊交通環(huán)境,系統搭建了一個真實且完整的校園仿真環(huán)境,并實現了輕量級的客戶端,同時開放了算法測試接口。系統經過測試能夠確保穩(wěn)定運行,為自動駕駛虛擬仿真測試提供了直觀、方便的實驗平臺。隨著人工智能和虛擬現實技術的發(fā)展,將來可以進一步融合這些技術來完善和擴展系統功能,從而增強系統的仿真性和實用性。

參考文獻:

[1] 王潤民,趙祥模,徐志剛,等.一種自動駕駛整車在環(huán)虛擬仿真測試平臺設計[J].汽車技術,2022(4):1-7.

[2] 上官偉,李鑫,曹越,等.基于虛實結合的自動駕駛仿真測試技術與應用[C].第十六屆中國智能交通年會科技論文集,2021:490-499.

[3] 朱冰,張培興,趙健,等.基于場景的自動駕駛汽車虛擬測試研究進展[J].中國公路學報,2019,32(6):1-19.

[4] 雷一鳴,陳雨人,汪凡.基于UE4的在線駕駛仿真系統設計與實現[J].計算機測量與控制,2022,30(2):179-185.

[5] 李浩銘,付戰(zhàn)平,王志樂,等.基于UE4引擎的虛擬訓練系統的設計與實現[J].信息技術,2022,46(1):84-89.

[6] 周游.基于AirSim仿真平臺的無人機三維避障算法研究[D].成都:電子科技大學,2020.

[7] 王宇,邢希凱,趙勝楠.基于無人機傾斜攝影三維模型構建及網頁發(fā)布[J].地理空間信息,2022,20(6):17-19,23.

[8] 曹琳.基于無人機傾斜攝影測量技術的三維建模及其精度分析[D].西安:西安科技大學,2016.

[9] 蘇醒.淺析渲染軟件在景觀規(guī)劃應用中的對比——以Lumion和Twinmotion軟件為例[J].內蒙古科技與經濟,2021(21):86-87,90.

[10] 楊文陽,孟青青.交互式數字校園虛擬漫游系統應用平臺[J].計算機系統應用,2021,30(9):92-97.

[11] 花威,史庭俊,呂強.基于模型在環(huán)仿真的自動駕駛虛擬測試平臺[J].電子技術與軟件工程,2021(8):144-148.

[12] 王曉宇,孫卡.基于osgEarth的三維虛擬校園可視化[J].計算機與現代化,2020(11):89-93.

[13] 郝孜奇,張文勝.基于Unity3D的鐵路實訓虛擬仿真系統開發(fā)[J].計算機仿真,2020,37(6):99-103,241.

【通聯編輯:謝媛媛】

猜你喜歡
自動駕駛虛擬仿真
“自動駕駛”熱潮背后的擔心和疑慮
汽車周刊(2017年5期)2017-06-06 14:02:49
汽車自動駕駛的發(fā)展
基于自動駕駛下的車道規(guī)劃對交通擁堵的改善
LTE—V車路通信技術淺析與探討
移動通信(2016年24期)2017-03-04 22:12:26
中職畜禽解剖課程虛擬仿真實訓教學資源的建設與應用
建筑基礎施工虛擬仿真實訓系統的研究
東方教育(2016年16期)2016-11-25 03:52:12
淺析虛擬仿真技術在海軍院校教學中的應用
虛實結合和科教融合的計算機實驗教學體系
計算機教育(2016年7期)2016-11-10 09:05:40
特斯拉默默更改了官網上“自動駕駛”的說明
家用汽車(2016年9期)2016-11-04 15:04:44
數字積分法插補仿真實驗教學系統開發(fā)
科技視界(2016年18期)2016-11-03 22:03:32
巨鹿县| 华安县| 镇宁| 唐海县| 台东市| 镇坪县| 新乡市| 开化县| 西林县| 怀安县| 旌德县| 噶尔县| 陈巴尔虎旗| 平定县| 夹江县| 湟中县| 平泉县| 彰化市| 宁武县| 济阳县| 水富县| 武定县| 子洲县| 景东| 华宁县| 德庆县| 东丰县| 阿瓦提县| 交口县| 仁怀市| 瑞金市| 赫章县| 浦东新区| 乌兰察布市| 怀柔区| 海南省| 湘西| 政和县| 吴川市| 临湘市| 南乐县|