程書慧,陳凌珊,楊軍典
(1 上海工程技術大學 機械與汽車工程學院,上海 201620;2 德心智能科技(常州)有限公司,江蘇 常州 213002)
隨著無人駕駛領域的發展,單個傳感器的感知能力已不能滿足復雜的交通場景需要,多傳感器融合逐漸成為汽車環境感知主要方式。目前,毫米波雷達與相機是常用的傳感器,也是傳感器融合的重要研究對象[1]。相機可獲得目標的紋理顏色等信息,對目標分類有較高的識別能力,且對橫向位置的檢測有較高的精度。但相機性能易受工作環境與光照的影響,對深度信息的獲取能力較差。毫米波雷達對目標縱向位置的檢測有較高的精度,且由于電磁波的特性具有穿透性好、抗干擾能力強等全天候的工作能力。但毫米波雷達檢測得到稀疏點云,分類能力較差。因此,在工作特性上毫米波雷達與相機完成優劣互補,進行多傳感器融合可獲取較為可靠的目標屬性值[2-3]。
基于單一的毫米波雷達目標檢測,張暄等[3]基于雷達回波信號的距離多普勒圖像作為輸入,進行圖像處理完成雷達的目標檢測。與傳統的恒虛警目標檢測算法作為對比,較大的減少了虛警的數量。魏濤等[4]提出一種基于機器學習的毫米波雷達車輛檢測算法,對毫米波雷達目標級數據預處理,針對雷達檢測點的各個屬性構建決策樹模型進行車輛有效目標的識別?;诤撩撞ɡ走_與視覺融合的目標檢測,目前多數采用由毫米波雷達確定圖像檢測的感興趣區域(ROI,Region of interest)的方案,從而加快圖像檢測速度與準確度。趙望宇等[5]基于毫米波雷達與視覺融合,提出一種核相關的擴展卡爾曼濾波進行目標的跟蹤。利用毫米波雷達的輸出確定ROI 后,基于支持向量機(SVM,Support Vector Machine)進行車底陰影圖像檢測,完成目標的檢測任務。文獻[6]研究了一種基于毫米波雷達與視覺融合的車輛檢測系統。通過判斷雷達檢測點位置的預測值,與計算值匹配生成航跡信息,將毫米波雷達生成航跡信息與視覺檢測融合,完成目標的準確檢測。
單一的雷達檢測算法通過對雷達信號或數據處理完成目標的檢測,但不能確定目標的類別屬性。融合系統利用毫米波雷達輔助相機完成目標檢測,但未考慮某一傳感器失效時的情況,且未較好的融合雷達與相機輸出的屬性值。因而,若雷達失效則系統失去目標的精確位置,若相機失效則檢測系統將失去對目標的分類能力,且兩種檢測方法均未輸出目標的尺寸信息。針對上述問題,本文提出了一種基于多任務學習的傳感器融合目標檢測的模型。模型可輸出目標的位置、尺寸信息及預測物體的類別,提高了傳感器融合后目標屬性值的精確度,且融合結果不受一方傳感器失效時的影響。
相比于大多數機器學習模型,多任務學習在性能上更有優勢。若要得到性能優異的模型,需要數以百萬計的數據,而很多領域獲取數據集依賴高成本的人力資源[7]。多任務學習是在同一個模型中,將具有相關性的任務同時進行訓練,利用任務之間相關性提高模型性能與泛化能力,通過一個模型解決多個任務的機制,可以解決數據樣本集較少的問題[8]。多任務學習模型常用基于參數的硬共享機制和軟共享機制。硬共享機制是將所有隱藏層共享,對于不同的任務指定特定的輸出層。而軟共享機制中每個任務都具有單獨的模型,不同任務模型間同一層的信息可進行交換[9]。硬共享機制由于在每個任務中不存在獨自的模型參數,適用于強相關任務。軟共享機制由于每個任務都有獨立的模型,則對任務間的相關性不做要求,但模型個數與任務數相關會存在大量的參數[10]。本文模型通過回歸任務解決目標的位置與尺寸問題,分類任務獲得目標的類別。由于物體的位置為目標的中心點所在位置,不同類別的物體大小將影響目標位置,兩個任務具有強相關性。因此,模型使用多任務學習的硬共享機制。
本文基于多任務學習進行視覺與雷達的融合,其處理流程如圖1 所示。利用圖像檢測所得目標錨點信息與毫米波雷達所得點云作為輸入,經多任務學習網絡模型訓練得到目標的尺寸、位置與目標類別。為了解決某個傳感器失效帶來的影響,在數據集中加入單個傳感器檢測失效時的數據進行訓練。

圖1 本文傳感器融合流程圖Fig.1 Flow chart of sensor fusion in this article
本文使用上海外高橋張楊北路實車采集的數據,對不同場景下的檢測數據進行篩選,得到15 萬條數據樣本。將數據集按8∶1∶1 的比例劃分為訓練集、驗證集與測試集。模型輸入10 個特征值數據,預測任務輸出4 維數據,分類任務對6 種類別進行分類。輸入特征為視覺檢測框坐標,4 個參數分別為:檢測框的左頂點橫縱坐標、框的高度和寬度;雷達檢測點屬性的6 個特征值分別為:檢測點距離、橫向距離x、橫向速度vx、縱向速度vy、雷達散射截面積及雷達檢測點的個數。其中,雷達散射截面積表示目標在接收方向上反射雷達信號能力的度量,其與距離有關且物體的面積越大RCS值越大,則雷達檢測點個數越多,對該目標的識別能力越強。兩種傳感器檢測結果如圖2 所示。圖2(a)表示相機的檢測結果,黃色框為雷達檢測目標的映射,其余錨點框為圖像檢測所得物體;圖2(b)為雷達檢測點部分屬性信息;圖2(c)中橫坐標為x軸,縱坐標為y軸,單位米,白色方框為靜態雷達檢測點,彩色框為動態監測點,其中實體框表示雷達處理后得到得目標。由于在復雜的道路場景中,主車分析場景中目標的類別及其運動狀態、尺寸和距離信息來判斷是否對自身造成危險,則本文對目標位置尺寸信息進行預測且對目標進行分類?;貧w任務包括目標的位置及目標的長度與寬度,分類任務輸出包括對轎車、火車、摩托車、自行車、行人及未分類的汽車6 個類別進行分類。

圖2 傳感器檢測得到數據Fig.2 The sensor detection
輸入的各特征間量綱不同,且數值差異較大,會影響模型的收斂速度,且對數值較大的特征較為依賴,而忽略數值較小的特征,造成模型的精度下降。對輸入特征數據進行線性歸一化,將數值在0 和1之間,減少特征間的相互影響,使模型均衡的學習各個特征。
模型分為共享層、分類任務與回歸任務3 部分,如圖3 所示。3 層隱藏層作為共享層,每層的神經元節點分別為10、256、128、256、64;分類任務3 層全連接層,神經元節點數分別為64、256、128、6;預測任務3 層全連接層,每層神經元節點數為64、256、64、4。歸一化指數(Softmax)函數常用于解決分類問題,如公式(1)所示。帶泄露隨機線性整流(LeakyReLU)函數可以避免梯度飽和與消失和神經元死亡的問題,如公式(2)所示,由經驗值得知公式(2)中α取0.01。本文模型中,分類任務最后一層結點激活函數使用Softmax函數,其余激活函數均使用LeakyReLU函數。

圖3 多任務學習模型結構圖Fig.3 Structure diagram of multi-task learning model

式中,xi為輸出值中第i個元素,e為自然對數。

式中,x為激活函數輸入值,α一般取0.01。
為了避免全連接層過多將造成梯度飽和或消失問題,對分類和預測任務每一層都加入批量歸一化(Batch Normalization,BN)處理和殘差結構。利用BN 將某一層的輸入分布變為均值為0 方差為1 的正態分布,使各輸入分布保持一致,避免梯度飽和或消失問題,經過縮放平移還原數據自身的表達能力,使輸入保持同一分布的同時,不喪失網絡的表達能力,避免輸入間的分布差異造成梯度問題。殘差結構(residual)將不同層學習到的信息組合,讓模型學習到更多的特征信息,避免全連接層過多帶來的梯度問題同時加快了模型的收斂速度與穩定性。殘差結構如圖4 所示。

圖4 殘差結構圖Fig.4 Residual structure diagram
分類任務使用交叉熵損失函數(Cross Entropy Loss,CEL)如公式(3)所示。預測任務使用均方誤差損失函數(MSE,Mean Squared Error)如公式(4)所示。

式中,c為類別;i為樣本數量;yic表示預測是否與真值相同(相同為1 不同為0);pic表示類別c的預測概率。

式中,xi表示預測值;yi表示真值;N表示樣本數量。
對任務模型需考慮任務間收斂速度,使每個任務都能收斂至最優。若對分類與回歸任務采用相同的學習率,會使訓練過程中兩個任務模型后向傳播的更新速度不同,造成其中一個任務收斂很快,另外一個任務收斂很慢的情況。對模型損失函數增加超參數α與β,模型后向傳播時,對學習率增加權值,使兩個任務具有不同的學習率,從而達到較為接近的收斂速度。
本文算法在Windows10 64 位操作系統上實現,使用設備為Intel(R)Core(TM)i7-10700CPU、16GB內存、顯卡為NVIDIA GeForce RTX2060、PyCharm2020 社區版、PyTorch 深度學習網絡框架。
模型的參數設置為:初始學習率為0.001、批大小為256、循環次數為500。通過多次實驗,對分類任務的損失設定權重0.8,對回歸任務的損失設置權重10。使用自適應矩估計(Adam)優化器,該優化器具有自動調節學習率,加快模型訓練過程,減少模型參數調整等優點。
若對損失函數不做處理,即任務間使用相同的學習率時,模型中分類任務較回歸任務收斂快。對各個任務損失函數加權重,使任務具有不同的學習率?;貧w任務中相同與不同學習率的損失收斂對比如圖5(a)所示。由圖可見,模型分類任務使用不同學習率的收斂速度更快。
模型分類任務中使用BN與殘差結構與不做處理訓練得到的準確率對比結果如圖5(b)所示,使用殘差結構與BN 的模型得到的分類任務的準確度與模型穩定性較好。

圖5 處理前后模型對比Fig.5 Comparison of models before and after processing
回歸任務使用均方根誤差作為評價指標,如公式(5)所示;分類任務使用準確率(Accuracy)與召回率(Recall)作為各個類別的評價指標,如公式(6)和公式(7)所示。對測試集數據樣本測試,得到回歸任務的各屬性均方根誤差值,見表1。傳感器融合后對于目標的長度預測效果更好。分類任務的整體準確率為94.62%,召回率為92.27%,各類別的準確率(Accuracy)與召回率(Recall)見表2。對于汽車、火車、行人預測較好,對于機動性較強的小目標物體分類能力有進步空間。

表1 回歸任務的評價指標Tab.1 Evaluation metrics of regression task

表2 分類任務的評價指標Tab.2 Evaluation metrics for classification tasks

式中,N為樣本數量;xi表示預測值;yi表示真值。

式中,TPc表示c類的預測值與真實值匹配數量;表示樣本中實際為c類的樣本數量;表示預測為c的數量。
本文提出了一種基于多任務學習的多傳感器模型,對相機與毫米波雷達數據的目標級融合,同時提高單個傳感器工作時的可靠性。利用兩任務間強相關性,通過竊聽機制得到單任務模型訓練所不能得到的信息;引入BN 和殘差結構進一步優化模型,完成目標的分類與目標尺寸的預測。通過改善模型的結構與雷達檢測系統,對小目標的檢測效果還有進步空間。