再過幾個月,MATLAB將發布2020b版本,如果現在還沒用上2020a,那你就要out啦~就著本文,咱們來了解下MATLAB R2020a的自動駕駛工具箱Automated Driving Toolbox有哪些新特性。本文主要參考自MathWorks幫助文檔和相關視頻,如有侵權,可聯繫刪除。
2020a自動駕駛工具箱的release note可謂相當豐富,足足有三十幾條,可見MathWorks目前對這個工具箱的重視程度。咱們選幾個重要的更新來加以說明。
Release Note
01
Ground Truth Labeler可同時標註代表同一場景的多個信號
之前的版本中,MathWorks的真值標註工具——Ground Truth Labeler只能標註圖像數據,而現在支持同時標註代表同一場景的多個信號,比如對圖像和雷射雷達點雲同時標註。可以加載來自單個來源(例如rosbag)的信號集合。現在也支持將標記的雷射雷達數據用作深度學習模型的訓練數據。
Ground Truth Labeler
Ground Truth Labeler可以手動標註,也可以根據內置的自動標註算法或者自定義的標註算法來進行自動標註。
MathWorks的工具鏈是比較完善的,包括標註數據、設計神經網絡、訓練深度學習模型等。不過,一般自動駕駛公司都有一套適用於本公司的採集、標註、訓練工具鏈,估計他們之中真正用MathWorks工具鏈的並不多。對於小公司、小團隊或者個人,自行去打造這樣一套工具鏈是很費工夫的,直接採用MathWorks的成熟工具鏈,不失為一個好的選擇。
02
增加了幾個自動駕駛demo:高速公路車道跟隨、高速公路車道變更和交通信號協同系統
高速公路車道跟隨
高速公路車道跟隨視頻
其他兩個demo——高速公路車道變更和交通信號協同系統,也可以在幫助文檔中查找到。
03
增加了雷射雷達傳感器模型
新版本中,可使用lidarPointCloudGenerator System object對雷射雷達傳感器建模並為drivingScenario對象中的參與者生成合成點雲數據。也就是通過編程調用雷射雷達傳感器模型函數,合成雷射雷達點雲。不過,Driving Scenario Designer軟體中暫時還沒法直接添加雷射雷達傳感器。
合成雷射雷達點雲
關於場景仿真,MathWorks提供了兩個方案,Driving Scenario Designer和Unreal Engine,這兩個方案各自的特點如下。
兩種仿真場景方案對比
下面是在2020a中關於這兩個方案的更新。
04
Driving Scenario Designer增加了3D顯示
3D Display
Driving Scenario Designer軟體構建的場景,在該軟體中運行時,可以進行3D顯示,3D場景是用Unreal Engine渲染的。
3D顯示的操作視頻
Driving Scenario Designer優點是方便易用輕量化,缺點是場景完全不逼真。Unreal Engine則反過來,所以如果能構建場景用Driving Scenario Designer,而渲染用Unreal Engine,結合兩者的優點,那簡直完美。
不過,當前這個新增的特性,僅僅是在Driving Scenario Designer中將Driving Scenario Designer和Unreal Engine的顯示進行打通,並不是在仿真運行中將兩個軟體打通。特性5在此基礎上,做了進一步的工作。
05
提供了幾個預構建場景,這幾個預構建場景在仿真運行中打通了Driving Scenario Designer和Unreal Engine
這幾個場景包括CurvedRoad、CurvedRoad、StraightRoad、USCityBlock、USHighway。
預構建的示例場景
所謂仿真運行中的打通是什麼意思?Visualize 3D Simulation Sensor Coverages and Detections示例能很好地說明。模型如下圖
Visualize 3D Simulation Sensor Coverages and Detections模型
仿真的場景數據源於Driving Scenario Designer構建場景後導出的場景數據mat文件,Unreal Engine從場景中獲取各個交通參與者的位置姿態並在3D場景中進行渲染,且可以通過MathWorks提供的與Unreal Engine交互的攝像頭、毫米波、雷射雷達等傳感器輸出圖像、目標列表、雷射雷達點雲等信息。仿真的效果如下面視頻。
Visualize 3D Simulation Sensor Coverages and Detections視頻
遺憾的是,目前只有少數幾個場景是支持上述模式的,因為只有這幾個場景的Driving Scenario Designer和Unreal Engine數據都已經被構建好而且是匹配在一起的。用戶如果想自定義場景去實現上述模式,那就需要同時構建這兩個軟體的場景並將它們匹配在一起。
順便說明一下,目前自動駕駛工具箱提供的針對Unreal Engine的傳感器模型主要有下圖這些:
針對Unreal Engine的傳感器模型
06
RoadRunner橫空出世
關於駕駛場景的構建,我們很多時候希望用如Driving Scenario Designer這樣便捷的工具去創建場景,但是用類似Unreal Engine的強大引擎去渲染出無限接近真實的場景。在之前的版本中,MATLAB無法讓用戶實現這種方式。
就在前不久,MathWorks收購了RoadRunner,這是一款非常強大的場景構建工具,能讓用戶便捷地構建場景,然後將構建好的場景導出到Unreal Engine進行渲染,之後便能藉助MATLAB的自動駕駛工具箱與Simulink實現聯合仿真。
今天就介紹到這裡,關於RoadRunner,後期我們會專門寫幾篇文章做一個詳細的介紹。