遲旭然,裴 偉,朱永英,王春立,史良宇,李錦峰
1(大連海事大學(xué) 信息科學(xué)技術(shù)學(xué)院,遼寧 大連 116026)
2(大連海事大學(xué) 環(huán)境科學(xué)與工程學(xué)院,遼寧 大連 116026)
3(大連海洋大學(xué) 海洋與土木工程學(xué)院,遼寧 大連 116026)
4(北陸先端科學(xué)技術(shù)大學(xué)院大學(xué),日本 石川 9231292)
E-mail:peiwei@dlmu.edu.cn
隨著智能機器人、無人駕駛等產(chǎn)業(yè)的飛速發(fā)展[1],對環(huán)境感知技術(shù)提出了新的挑戰(zhàn)[2].激光雷達是復(fù)雜多變未知場景三維目標檢測的首選[3].但激光雷達成本高,目標識別率低,多與視覺方案融合識別目標,限制了激光雷達的應(yīng)用和普及.而以低成本、高性能為特征的基于視覺的三維目標檢測則承擔起產(chǎn)業(yè)發(fā)展的重任,引領(lǐng)產(chǎn)業(yè)變革,促建“千帆競發(fā),百舸爭流”的生態(tài).
Chen等人在2016年提出了Mono3D[4]目標檢測算法,該方法分兩步進行目標檢測,第1步根據(jù)先驗假設(shè)密集采樣,生成三維候選框.第2步三維候選框投影生成二維檢測框,F(xiàn)aster-RCNN[5]提取特征,依據(jù)語義、上下文、先驗信息計算檢測框的損失函數(shù),精確提取三維檢測框.Mono3D用復(fù)雜的先驗信息提取三維檢測框,存在損失函數(shù)誤差累計問題,平均檢測精度為2.38%.候選框密集采樣與多個先驗特征融合計算量大,檢測速度為3秒/幀.
Li等人在2019年提出了基于Faster-RCNN的Stereo-RCNN[7]三維目標檢測算法.Stereo-RCNN將雙目圖像作為網(wǎng)絡(luò)的輸入,取代了網(wǎng)絡(luò)的深度輸入,兩個FPN(Feature Pyramid Networks)[8]以及RPN(Region Proposal Network)[5]網(wǎng)絡(luò)同時對左右圖像進行候選框的生成,Mask-RCNN[9]關(guān)鍵點檢測粗略計算三維檢測框,經(jīng)由左右目標感興趣區(qū)域配準精確確定三維檢測框,在KITTI數(shù)據(jù)集上的檢測效果提升了近30%,平均檢測精度達到了40.61%,檢測速度為0.3秒/幀.
Sun等人在2020年提出了Disp-RCNN[10]算法,設(shè)計了一個實例視差估計網(wǎng)絡(luò),僅對感興趣物體上的像素進行雙目視差預(yù)測,事先要學(xué)習一個特定類別的形狀模型,以便準確估計視差.同時針對訓(xùn)練中視差標注不足的問題,用統(tǒng)計形狀模型生成密集視差來實現(xiàn)地面仿真,這種方式不需要激光雷達點云,使算法有更廣泛的適用性,同時該算法在KITTI數(shù)據(jù)集上的平均檢測精度達到了43.62%,雖然檢測精度有所提升,但由于其要對雙目視差進行預(yù)測,增加了額外的計算量,檢測速度為0.42秒/幀.
Chen等人在2020年提出了DSGN[11]算法,在平面掃描體中建立相對應(yīng)的立體約束,并轉(zhuǎn)化為三維幾何體,用于三維規(guī)則空間的預(yù)測.同時設(shè)計了一個單一的網(wǎng)絡(luò),提取用于立體匹配的像素級特征和用于目標識別的高級特征,其在KITTI上的平均檢測精度達到了57.48%,已高于一些基于激光雷達的算法,但模型較復(fù)雜,計算量大,檢測速度為0.67秒/幀.
綜上所述,在產(chǎn)業(yè)需求和科研工作者的共同推動下,基于視覺的三維目標檢測算法的性能有了大幅提升,精度從2.38%提升到57.48%,直逼激光雷達.但檢測速度離產(chǎn)業(yè)實時性需求還有較大差距,成為目前基于視覺的三維目標檢測算法瓶頸之一.鑒于此,本文提出一種基于Stereo-RCNN的Fast Stereo-RCNN算法,致力于提高檢測精度的同時大幅度提高檢測速度,為基于視覺的三維目標檢測產(chǎn)業(yè)應(yīng)用提供技術(shù)支撐.
Stereo-RCNN將左右視覺圖像分別輸入到左右兩個支路中,左支路用于目標三維關(guān)鍵點檢測,左右支路提取的特征圖融合后用于檢測車輛的二維檢測框、航向角、三維尺寸等信息.雙支路分別進行特征提取計算成本高,檢測速度慢.單支路Stereo-RCNN三維檢測算法只使用一個支路,其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示.輸入圖像經(jīng)過resnet101[12]初步特征提取,在金字塔網(wǎng)絡(luò)中特征融合,再送入?yún)^(qū)域生成網(wǎng)絡(luò)提取候選框,向特征圖像上做映射,送入關(guān)鍵點檢測分支與三維信息回歸分支,最終聯(lián)合兩個分支的三維關(guān)鍵點信息與三維尺寸、二維框、航向角等信息進行三維中心點重構(gòu).單分支網(wǎng)絡(luò)結(jié)構(gòu)會削弱特征提取能力,因此要保持原檢測精度,需提升網(wǎng)絡(luò)特征提取能力和三維關(guān)鍵點檢測能力.Fast Stereo-RCNN將從特征融合、關(guān)鍵點檢測網(wǎng)絡(luò)、區(qū)域生成網(wǎng)絡(luò)3個方面進行優(yōu)化.
圖1 單支路Stereo-RCNN三維目標檢測算法Fig.1 Single branch Stereo-RCNN three-dimensional target detection algorithm
Stereo-RCNN使用FCN(Fully Convolutional Networks for Semantic Segmentation)[13]進行車輛底盤的關(guān)鍵點檢測、車體三維中心點重構(gòu).因此關(guān)鍵點檢測精度將直接影響后續(xù)三維檢測精度.在進行關(guān)鍵點檢測時,區(qū)別于回歸方法、heatmap[14]方法,Stereo-RCNN使用分類方法,將車輛底盤關(guān)鍵點分為4個類別,如圖2所示,二維框約束可減少計算量[7].雖然質(zhì)量較高的候選框的二維坐標對關(guān)鍵點的約束會提升關(guān)鍵點提取質(zhì)量,但區(qū)域生成網(wǎng)絡(luò)會生成300個候選框,數(shù)量過多,質(zhì)量參差不齊,其中一些質(zhì)量較差的候選框,對關(guān)鍵點提取的影響較大.而過少的候選框不足以支撐車輛較多、遮擋嚴重等的復(fù)雜場景.針對這一問題需要在使用少量高質(zhì)量候選框的同時強化關(guān)鍵點檢測分支的關(guān)鍵點提取能力.
圖2 關(guān)鍵點分類Fig.2 Convolution structure
原關(guān)鍵點檢測分支使用的是全卷積網(wǎng)絡(luò)(FCN),如圖3(a)所示,沒有充分考慮像素與像素之間的關(guān)系,容易引發(fā)前景背景辨識錯誤的問題.針對該問題,引入一全連接分支對前景背景進行區(qū)分[15],銳化目標辨識能力.具體做法如圖3(b)所示,使用兩個卷積層C1_FC,C2_FC,其中第2個卷積層將通道數(shù)減半以減少計算量,在兩個卷積層后面接上全連接層FC,形成增強分支.
圖3 二分支關(guān)鍵點檢測網(wǎng)絡(luò)Fig.3 Two branch key point detection network
本節(jié)針對輕量區(qū)域生成網(wǎng)絡(luò)的候選框難以應(yīng)對復(fù)雜場景下的檢測任務(wù)的問題,對FPN進行改進.
近日,浩鯨科技攜手南京市公安局交通管理局打造的智慧交通綜合應(yīng)用平臺二期項目正式通過初驗。該平臺整合一期項目數(shù)據(jù)和“一標三實”信息采集會戰(zhàn)數(shù)據(jù),可廣泛用于開展路況擁堵態(tài)勢分析、道路擁堵分析及大隊工作監(jiān)管等,助力南京市公安局交通管理局推進以大數(shù)據(jù)研判為支撐,信息主導(dǎo)警務(wù)的智慧新交管建設(shè),幫助交警在面對日益復(fù)雜的道路狀況和出行場景時,有效提升交通管理效能。
在FPN后增加一個自底向上的金字塔(PAN),增強定位能力[15].如圖4所示,(a)為原FPN結(jié)構(gòu),(b)為新增的反向增強結(jié)構(gòu).
圖4 雙層特征融合網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Two-layer feature fusion network architecture
圖4中每一層之間的特征融合都采用卷積核大小為3×3,步長為2的卷積結(jié)構(gòu),每次卷積后圖大小都縮小為原來的一半.這種反向增強后的FPN可提供更加準確的定位信息及強語義信息.
在車輛較多、遮擋嚴重等復(fù)雜場景下,期望得到強定位信息,但進行特征融合時使用1×1的卷積核會丟失一些定位信息.因此,本文把進行3×3卷積后的N2保留,將包含底層強定位信息的P2與N2進行融合,以增強N2的定位能力.
原來的特征金字塔網(wǎng)絡(luò)最終的輸出是經(jīng)3×3卷積之后的4個特征圖.但是進入RPN網(wǎng)絡(luò)的還有池化后的P5,如圖4(c)所示,它在RPN中的作用主要是擴大網(wǎng)絡(luò)的感受野以及增加局部上下文信息.本文將圖4(a)中語義信息最強的P5與圖4(b)中語義信息最強的N5融合、池化作為RPN的感受野,進一步增加局部上下文信息.
Fast Stereo-RCNN網(wǎng)絡(luò)結(jié)構(gòu)圖5(b)與原算法圖5(a)對比如圖5所示.resnet101提取的特征進入雙層特征融合網(wǎng)絡(luò)進行高層級與低層級特征融合,得到的4種分辨率特征圖在輕量區(qū)域生成網(wǎng)絡(luò)中生成候選框.在訓(xùn)練時使用nms(Efficient non-maximum suppression)[16]取IOU(Intersectionover Union)從高到低排序的前512個候選框,而在檢測時僅取前10的候選框,經(jīng)過ROIAlign[9]層將候選框與特征圖進行映射,固定特征圖的尺寸.使用固定尺寸的特征圖分別做三維關(guān)鍵點檢測以及車體尺寸、朝向角、二維框的檢測.相較于原始網(wǎng)絡(luò),使用雙層特征融合網(wǎng)絡(luò)來縮短特征融合的傳遞路徑,避免在傳遞的過程中丟失過多的語義信息,增強定位能力,同時為輕量區(qū)域生成網(wǎng)絡(luò)提供多層級感受野;輕量區(qū)域生成網(wǎng)絡(luò)生成少量候選框,在減少檢測時間的同時固化了三維關(guān)鍵點;使用二分支關(guān)鍵點檢測網(wǎng)絡(luò)銳化目標的辨識能力.
圖5 Fast Stereo-RCNN三維目標檢測算法與原算法網(wǎng)絡(luò)結(jié)構(gòu)對比
本節(jié)共分4部分,第1部分介紹實驗環(huán)境以及評估指標;第2部分為關(guān)鍵點檢測增強分支的對比實驗,第3部分為前置網(wǎng)絡(luò)、雙層特征融合網(wǎng)絡(luò)、輕量區(qū)域生成網(wǎng)絡(luò)之間的對比實驗.第4部分為Fast Stereo-RCNN與近幾年提出的三維目標檢測算法精度速度對比.
本章節(jié)實驗運行環(huán)境中使用的CPU為Intel(R) Core(TM) i-9700k,顯卡為GeForce RTX 2080,腳本語言為Python 3.6.7.
本文使用mAP[17]作為算法的評估指標.IOU為預(yù)測的邊框與真實的邊框的交集和并集的比值,本節(jié)中的mAP值均為IOU為0.7下的預(yù)測值.
本文所用的數(shù)據(jù)集來自KITTI[18](包括行人和車輛的左右視覺圖像共24.7G),分為汽車、卡車、行人、自行車4個類別,訓(xùn)練時只針對汽車這一個類別進行訓(xùn)練,訓(xùn)練樣本如圖6所示.數(shù)據(jù)集場景分為3個難度easy,mode,hard.場景難度越高,車輛的種類、數(shù)量越多,遮擋情況越嚴重.其中訓(xùn)練樣本為6378枚,測試樣本為3769枚,隨機選取,無交集.
圖6 訓(xùn)練圖像示例Fig.6 Training image sample
為了驗證二分支關(guān)鍵點檢測網(wǎng)絡(luò)的性能,本小節(jié)分別選取了resnet18與resnet101作為前置網(wǎng)絡(luò),實驗數(shù)據(jù)如表1所示.以resnet18作為前置網(wǎng)絡(luò)時,加上增強分支后檢測精度提升近1%.以resnet101為前置網(wǎng)絡(luò)時,檢測精度提升近0.8%.實驗數(shù)據(jù)表明在關(guān)鍵點檢測分支中引入全連接層可以有效的進行像素級的前景背景區(qū)分,能夠在不增加檢測時間的前提下銳化目標辨識能力,提升三維檢測精度.
表1 關(guān)鍵點檢測增強前后檢測精度和速度對比Table 1 Comparison of detection accuracy and speed before and after key point detection enhancement
為了驗證網(wǎng)絡(luò)的特征提取能力與不同特征融合手段對三維檢測速度和精度的影響,本小節(jié)選取resnet18與resnet101作為前置網(wǎng)絡(luò),F(xiàn)PN和雙層特征融合網(wǎng)絡(luò)結(jié)構(gòu)進行特征融合,如表2所示.不同深度的前置網(wǎng)絡(luò)都會出現(xiàn)底層特征到高層特征傳遞路徑過長的問題.使用雙層特征融合網(wǎng)絡(luò)雖然會增加0.01s的檢測時間,但是可以縮短特征傳遞路徑,保留語義信息,增強定位能力,提升三維檢測精度.resnet18作為前置網(wǎng)絡(luò)時由于層數(shù)較少,特征提取能力較弱,三維檢測精度較低.
表2 不同前置網(wǎng)絡(luò)與特征融合網(wǎng)絡(luò)的三維檢測精度和速度對比Table 2 Comparison of 3D detection accuracy and speed between different front networks and feature fusion networks
為了驗證在檢測過程中區(qū)域生成網(wǎng)絡(luò)生成過多的候選框不僅會顯著增加計算量,而且大量質(zhì)量參差不齊的候選框?qū)θS關(guān)鍵點的約束有負面影響這一觀點,本小節(jié)基于上小節(jié)的實驗,分別選擇不同數(shù)量的候選框以及不同前置網(wǎng)絡(luò)和特征融合網(wǎng)絡(luò)來進行實驗.實驗結(jié)果如表3所示,使用10個候選框而不使用雙層特征融合網(wǎng)絡(luò)可大幅度縮短檢測時間,但僅在簡單場景下小幅度的提升了精度,而在中等和復(fù)雜場景下檢測精度都會下降.使用10個候選框同時使用雙層特征融合網(wǎng)絡(luò)會同時提升檢測速度以及3個場景復(fù)雜度下的檢測精度.實驗數(shù)據(jù)表明,在簡單場景下檢測時選取過多的候選框,會存在質(zhì)量較差的候選框?qū)θS關(guān)鍵點進行約束,導(dǎo)致三維檢測精度下降,使用數(shù)量較少質(zhì)量較高的候選框不僅會提升檢測速度,也會提升其在簡單場景下的三維檢測精度.復(fù)雜場景下由于車輛較多、候選框過少會導(dǎo)致檢測精度下降,此時在特征融合部分使用雙層融合特征網(wǎng)絡(luò),縮短底層特征到高層特征的傳遞路徑來保留語義信息的同時增強底層的強定位能力,使其在復(fù)雜場景下的特征融合與特征提取能力得到進一步增強.綜合數(shù)據(jù)對比,最終Fast Stereo-RCNN使用特征提取能力較強的resnet101作為前置網(wǎng)絡(luò),使用雙層特征融合網(wǎng)絡(luò)進行特征融合,檢測時選取輕量區(qū)域生成網(wǎng)絡(luò)以生成數(shù)量較少質(zhì)量較高的候選框來約束三維關(guān)鍵點,使用二分支關(guān)鍵點檢測網(wǎng)絡(luò)提升其目標辨識能力,增強三維關(guān)鍵點檢測能力.
表3 不同特征融合網(wǎng)絡(luò)與候選框數(shù)量的三維檢測精度和速度對對比
Fast Stereo-RCNN與近幾年其它三維目標檢測算法的速度與精度對比如表4所示,在提升檢測精度的同時檢測速度是Stereo-RCNN的2.72倍,F(xiàn)ast Stereo-RCNN與近幾年其它基于視覺的三維目標檢測算法相比,在同精度水平上速度占優(yōu)勢.
表4 Fast Stereo-RCNN與其他三維目標檢測算法的精度和速度對比Table 4 Comparison of accuracy and speed between F Stereo-RCNN and other 3D target detection algorithms
針對基于視覺的三維目標檢測算法實時性較差這一問題,本文在Stereo-RCNN三維目標檢測算法的基礎(chǔ)上,改用單支路的網(wǎng)絡(luò)結(jié)構(gòu)以縮短檢測時間;使用雙層特征融合網(wǎng)絡(luò)提升復(fù)雜場景下的特征融合與特征提取能力;在三維關(guān)鍵點檢測分支中引入全連接層來銳化其目標辨識能力,進一步的提升關(guān)鍵點提取能力;在區(qū)域生成網(wǎng)絡(luò)中使用更少的候選框來固化三維關(guān)鍵點.算法的平均檢測精度達到了41.82%,比Stereo-RCNN算法提高了1.21%,同時速度達到了0.11秒/幀,是Stereo-RCNN算法的2.72倍.