陳妍妍,王 海,蔡英鳳,陳 龍,李祎承
(1.江蘇大學(xué)汽車與交通工程學(xué)院,鎮(zhèn)江 212013;2.江蘇大學(xué)汽車工程研究院,鎮(zhèn)江 212013)
近年來,基于圖形數(shù)據(jù)的并行計算技術(shù)和傳感器的快速迭代直接推動了基于深度學(xué)習(xí)的實例分割算法的發(fā)展,并在智能醫(yī)療、機器人控制、地理信息系統(tǒng)(GIS)和自動駕駛等領(lǐng)域取得了巨大的進步。實例分割本質(zhì)上是一項更具細粒度的視覺感知任務(wù),其結(jié)合了兩項經(jīng)典的計算機視覺環(huán)境理解子任務(wù):目標檢測[1]和語義分割[2-3]。目標檢測需要以邊界框的形式正確回歸圖像中目標位置和所屬類別,而語義分割需要對每個像素分類。因此實例分割不僅需要區(qū)分像素類別,還需要準確分割屬于同一語義類別下不同實例對象,從而為下游決策規(guī)劃等任務(wù)提供豐富的感知信息[4]。
基于深度學(xué)習(xí)的實例分割算法主要可以分為4種主流的技術(shù)路線[5-6]:基于語義分割的自底向上方法、基于檢測的方法、直接的實例分割方法和基于查詢的方法。基于語義分割的方法[7-9]首先通過逐像素分類生成具有固定語義類別的分割掩碼,然后通過聚類、度量學(xué)習(xí)等手段將像素分組到單個實例中。該類方法可以更好地保留淺層的細粒度特征和幾何形狀信息,但其后處理操作較為繁瑣,且在對象規(guī)模較大且類別較多的復(fù)雜工況中準確率較低,因此不太適用于自動駕駛場景。為了不依賴于邊界框或像素嵌入等手段,直接的實例分割法[10-11]通過直接預(yù)測實例掩碼和語義類別?;趯嵗龑ο蟮闹行奈恢煤统叽绮煌@一基本直覺,SOLO 系列[12-13]按照圖像位置分割掩碼。具體來說,將輸入圖像劃分成若干個網(wǎng)格,實例中心所在網(wǎng)格單元負責為該實例的每個像素分配類別。但是當多個物體中心落在同一個網(wǎng)格時,預(yù)測的掩碼和類別會出現(xiàn)混淆,進而影響智能汽車的行駛安全性?;跈z測的方法首先通過強大的檢測器[14-17]定位先驗實例,然后在所得的感興趣區(qū)域內(nèi)進行分割[18-23]。得益于目標檢測的發(fā)展,該類方法通常精確度更高,因此本文工作仍然遵循基于檢測的實例分割范式。而基于查詢的方法[11]利用自然語言處理中的Transformer 機制,并通過查詢表示感興趣對象。ISTR[24]是首個使用低維掩碼嵌入進行端對端的實例分割。而Queryinst[25]以級聯(lián)結(jié)構(gòu)為基礎(chǔ),通過并行的動態(tài)掩碼頭構(gòu)建檢測和分割的多任務(wù)框架。該類方法的核心部件是多頭注意力,其可顯著提升模型性能,但計算資源昂貴。
根據(jù)目標定位和掩碼生成所需的階數(shù),目前基于檢測的實例分割方法可以分為單階段方法和二階段方法兩種[26]?;趨^(qū)域候選網(wǎng)絡(luò)[27]的二階段算法精度較高,但是模型的小批量訓(xùn)練會消耗大量顯存資源并占據(jù)較長推理時間,如Mask-RCNN[19]和Cascade Mask R-CNN[28]。而YoLACT[22]、Blend Mask[29]和CondInst[18]等同時進行定位和分割的單階段算法速度較快,遠遠滿足自動駕駛所需的實時性需求,但是精度有所欠缺。Orienmask[30]是一種典型的基于錨框的單階段實時性實例分割算法,其能夠以較快速度運行,但準確率遠低于常見的二階段算法。這種以犧牲精度追求高速度的分割方法對于智能汽車的安全行駛是不可接受的。鑒于此,本文以該網(wǎng)絡(luò)為基準進行算法的改進優(yōu)化工作,使之能夠適用于復(fù)雜的交通情況。
實例分割算法的準確率也會受到應(yīng)用場景的限制。在港口和高速公路這樣的單一封閉場景,分割算法通常具有較好的精確度,而在人類活動密集的城市場景,模型性能會顯著下降,尤其針對嵌入式部署所設(shè)計的輕量級分割模型。為了應(yīng)對現(xiàn)實交通場景的高精度需求,本文使用Cspdarknet53[16]取代原始骨干網(wǎng)絡(luò),通過跨階段的連接方式擴大感受野并進行特征融合生成更密集的特征圖,從而提高網(wǎng)絡(luò)的特征提取能力。此外,為了產(chǎn)生更具判別性的特征 表 達,本 文 在 特 征 金 字 塔[31](feature pyramid network,F(xiàn)PN)的基礎(chǔ)上,通過引入自校正卷積[32](self-calibrated convolutions,Sconv),并 優(yōu) 化 基 于PANet 網(wǎng)絡(luò)[33]的多條語義信息傳播路徑和池化模塊,提出了一個全新的雙路自校正金字塔池化模塊。其中Sconv 可以為每個像素位置建立空間和通道維度的上下文關(guān)系,并通過多尺度信息編碼實現(xiàn)長距離依賴建模。同時添加的語義信息傳播路徑可以自底向上地傳播淺層的細節(jié)信息,恢復(fù)實例分割所需的邊緣信息。
事實上,真實的城市交通場景還存在大量具有不同尺寸且像素分布差異較大的實例對象。大尺寸物體由于其像素占比大且特征豐富,通常較容易識別。而類似行人、騎行者等小目標,由于其特征的稀疏性,分割任務(wù)通常較為困難。此外,由于實例對象距離相機的深度不同,同一類別的不同對象之間也會存在尺寸的顯著差異[34]。針對上述交通場景中明顯的多尺度目標實例分割問題,本文提出了一種用于街景解析的多頭掩碼構(gòu)建模塊。根據(jù)目標的尺寸范圍,該模塊被細分成4 個尺度下的邊界框檢測和方向圖生成,這極大地優(yōu)化了大小目標的分割邊緣細粒度。為了進一步減少參數(shù)量,本文只在第4 層預(yù)測全部尺度下的方向圖,每一層下基于錨框的方向圖和邊界框一一配對進而生成最后的掩碼。本文在開源的交通場景數(shù)據(jù)集BDD100k[35]上進行大量實驗來驗證所提模型的有效性,并在鎮(zhèn)江的交通道路中開展實車驗證工作。
基于錨框的單階段實例分割網(wǎng)絡(luò)通常由骨干網(wǎng)絡(luò)、特征融合模塊和最后的預(yù)測模塊組成?;贠rienmask 網(wǎng)絡(luò),本文對該算法的3 種模塊分別進行了優(yōu)化。具體來說,所提框架采用Cspdarknet53 替代原始的骨干網(wǎng)絡(luò)(backbone),并提出一種雙路自校正金字塔池化模塊進行特征融合并充分挖掘相鄰像素間關(guān)系。此外,考慮到自動駕駛交通場景目標的多樣性和復(fù)雜性,本文提出一種多頭掩碼構(gòu)建模塊以充分提高對大小交通對象的檢測和分割性能,所提框架如圖1所示。圖中CBM 和CBL分別代表使用不同激活函數(shù)的卷積塊,Neck表示瓶頸模塊。
圖1 本文所提算法的整體架構(gòu)圖
以Darknet53為骨干網(wǎng)絡(luò)的Orienmask 算法在通用的MS-COCO 數(shù)據(jù)集可以同時實現(xiàn)目標定位和掩碼生成,并在速度和精度之間取得較好的平衡。為了應(yīng)對復(fù)雜的城市道路場景并增強網(wǎng)絡(luò)的特征提取能力,本文使用Cspdarknet53 代替原始的骨干網(wǎng)絡(luò)。該網(wǎng)絡(luò)最早在Yolov4[16]中提出,通過引入跨階段部分模塊(cross stage paritial module,CSP),利用其大殘差邊擴大感受野并整合局部上下文信息,從而在減少計算量的同時獲得豐富的梯度組合信息。由于良好的表征學(xué)習(xí)能力,該網(wǎng)絡(luò)可以滿足大部分分割場景的特征提取任務(wù)需求,改進前后的階段模塊對比如圖2所示。優(yōu)化后的骨干網(wǎng)絡(luò)全部采取Mish激活函數(shù),即使用CBM 卷積塊代替原始的CBL 卷積塊,從而得到4 倍、8 倍、16 倍和32 倍下采樣后的高層強語義特征。
圖2 骨干網(wǎng)絡(luò)對比結(jié)果(數(shù)字按順序依次代表卷積核大小、步幅以及相應(yīng)的填充數(shù))
卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNNs)通過疊加多個卷積核擴寬網(wǎng)絡(luò)深度以此獲得豐富的語義信息。然而,隨著網(wǎng)絡(luò)層數(shù)的增加,淺層特征圖上的紋理特征愈發(fā)稀少,如對象邊界和位置信息,甚至小目標的細節(jié)信息會在多層映射后完全消失。事實上,在實際交通場景中,由于攝像頭距離和廣角范圍的限制,不可避免地會出現(xiàn)各種數(shù)量巨大的小目標,這進一步影響著圖像的整體分割性能。而應(yīng)用于目標檢測中的FPN則利用橫向連接提取圖像的多層次特征,從而較好地提高小目標的檢測性能。該模塊首先通過融合淺層的定位細節(jié)和高層的強語義,然后利用一個3×3 卷積核對相加后的特征進行再次融合以消除上采樣所帶來的重疊效應(yīng)。Orienmask[30]仍遵循FPN 范式,但僅使用拼接替代簡單的相加操作。
為進一步改善多尺度問題且獲得更具判別性的特征表達,本文提出了一種雙路自校正金字塔池化模塊來重新構(gòu)建特征融合,如圖3 所示。與只定位邊框的目標檢測不同,實例分割不僅需要網(wǎng)絡(luò)深處的高層語義信息,還需要圖像的淺層定位信息,來分別匹配實例級的檢測和像素級的分割任務(wù),這僅僅依賴于自頂向下傳播較強語義特征的單路FPN是遠遠不夠的。因此本文使用雙路金字塔[33]優(yōu)化信息傳播路徑。具體來說,通過在自頂向下的路徑基礎(chǔ)上增加自底向上的融合模塊,將淺層的紋理、結(jié)構(gòu)等細節(jié)信息進一步傳播到高層的強語義特征圖上。此外,為了獲得多樣性的局部特征,本文還使用Sconv[32]替換基本的卷積特征變換操作,從而在每個像素位置建立遠程空間和通道間的依賴關(guān)系。圖4顯示了該模塊的詳細結(jié)構(gòu),即通過4 次卷積運算,從原始尺寸和下采樣之后的潛在空間映射角度進行多尺度信息編碼,從而在擴大局部感受野的同時獲得更準確的差異性區(qū)域。其中潛在空間映射主要通過下采樣后的低維嵌入校準另一部分卷積核的卷積變換。同時為了減少參數(shù)量,本文僅在第2 層進行替換。為了聚合同層之間不同尺度的特征,進一步使用 金 字 塔 池 化 模 塊[36](pyramid pooling module,PPM)保證該層特征的完整性和多樣性。
圖3 特征融合模塊的整體架構(gòu)圖
圖4 自校正卷積結(jié)構(gòu)圖
Orienmask 通過添加一個并行的掩碼分支預(yù)測像素方向圖,并結(jié)合邊界框分支預(yù)測的回歸參數(shù)構(gòu)建實例掩碼。本文算法中仍然保留掩碼部分來預(yù)測邊界框中前景和背景像素的空間偏移。為了同時對不同尺寸目標構(gòu)建更為細粒度的掩碼,該模塊被重新設(shè)計成4 個尺度下的邊界框和方向圖預(yù)測。每個尺度下生成的邊界框都將與該層預(yù)設(shè)定的錨框相匹配,而每個錨框大小又與方向圖相關(guān)聯(lián)。這樣就建立了邊界框和方向圖的對應(yīng)關(guān)系,進而生成多尺度實例掩碼。由于卷積在獲得高層強語義特征的同時會伴隨著細節(jié)信息的丟失,這對于像素級方向圖是不可接受的,因此該算法只使用最淺層的高分辨率特征預(yù)測所有尺度的方向圖,然后利用雙線性插值恢復(fù)到其余3 個尺度下的分辨率大小,如圖1 所示。其中淺層掩碼構(gòu)建的詳細結(jié)構(gòu)如圖5所示。
圖5 多頭掩碼構(gòu)建模塊結(jié)構(gòu)圖
本文算法的邊界框分支僅使用兩個大小分別為3×3 和1×1 的卷積核,而掩碼分支的設(shè)計也非常簡潔,由6 個3×3 卷積核和1×1 卷積核交替組成,用于最終的方向圖預(yù)測。此外,本文將帶注釋的邊界框內(nèi)前景像素方向偏移定義為指向基準位置的向量。實際上,邊界框質(zhì)心就是可選取的最佳基準位置。而背景像素的方向偏移,即不被實例掩碼所覆蓋的負樣本,則定義為指向邊界框的相反位置。因此,前景和背景像素的方向偏移在數(shù)學(xué)上表示為
式中:b代表基準位置;pf和pb分別代表前景像素和背景像素;αb代表背景像素方向偏移同邊界框4 個頂點位置遠離基準的方向偏移量比值的最大值的倒數(shù),數(shù)學(xué)上可以表示為
由于實例掩碼標簽的固定性,正樣本數(shù)量因而也是確定的。為了訓(xùn)練時高效的平衡正負樣本,本文使用成比例擴大邊界框真值的策略以形成有效的訓(xùn)練區(qū)域。因此最終形成的掩碼可表示為
式中:Pxy為每個像素的坐標;sxy和τ分別表示邊界框的尺寸和區(qū)域的縮放因子。
為了讓網(wǎng)絡(luò)能夠有效分割,本文使用一系列損失函數(shù),主要包括檢測損失和方向偏移損失。
1.5.1 檢測損失
檢測損失是針對目標檢測所提出的,主要包括目標置信度損失Lobj、分類損失Lcls和邊界框回歸損失Lbox。Orienmask 使用Yolov3[15]中帶有MSE Ioss 的回歸損失,但是該損失函數(shù)會割裂邊界框中心坐標和寬高之間的聯(lián)系。因此本文使用CIoU Ioss[16],該公式被定義如下:
式中:IoU為預(yù)測框和真實框的交并比;ρ2、c2和ν分別為兩個矩形框中心點距離的平方、外接最小矩形對角線距離的平方和兩個矩形框?qū)捀弑认嗨贫?;α為ν的影響因子,?ν/(ν-IoU+eps),其中eps為一常量,防止分母為0;同時Lcls和Lobj則保持不變。
最后,結(jié)合所有的3 種損失函數(shù),本文的檢測損失函數(shù)定義為
式中:Lcls和Lbox針對所有的正樣本;Lobj針對所有的正負樣本。
1.5.2 方向偏移損失
方向偏移損失是針對實例掩碼所提出的,即分別計算訓(xùn)練區(qū)域中前景和背景像素的偏移損失并根據(jù)實例數(shù)量Nins占比進行加權(quán)處理,數(shù)學(xué)上表示為
因此,總的損失函數(shù)定義為
式中λ設(shè)置為0.15。
本文實驗所使用的公開數(shù)據(jù)集為最新公開的自動駕駛道路場景BDD100k 數(shù)據(jù)集[35],其以大規(guī)模和多樣性而聞名,包括100k不同的視頻片段、6個不同的場景類型和天氣狀況以及3 個不同的時間段。該數(shù)據(jù)集共采集了10k 圖片并應(yīng)用到像素級的實例分割任務(wù)中,其中訓(xùn)練集總共8k 張,分辨率大小均為720×1280。此外,該數(shù)據(jù)集包含駕駛場景中常見的8 個類別,即行人、騎行者、汽車、貨車、公共汽車、火車、摩托車和自行車。與基于多邊形注釋的其他開源分割數(shù)據(jù)集不同,其標簽以位掩碼格式存儲,并且分割掩碼中不允許存在重疊,即每個像素僅分配一個類別標簽。
遵循Yolov3,Orienmask 采用K-means[37]聚類算法對通用分割數(shù)據(jù)集MS-COCO 的標簽信息進行聚類并生成9 個錨框。由于不同場景間的差異性,針對通用場景所設(shè)計的錨框是不能夠通用的。由于道路交通場景通常包含大量具有不同對象尺寸的目標,因此針對BDD100k數(shù)據(jù)集設(shè)計了12種具有不同高寬比的錨框,如表1所示。圖6為該數(shù)據(jù)集上不同對象的邊界框像素分布結(jié)果,不同的顏色代表聚類所生成的不同簇,[×]表示某一簇的聚類中心。觀察發(fā)現(xiàn)大部分物體集中在圖像的左下角,即具有長尾分布現(xiàn)象。
圖6 BDD100k數(shù)據(jù)集的像素分布圖
表1 錨框尺寸信息
深度學(xué)習(xí)模型在訓(xùn)練過程中需要使用大量復(fù)雜的矩陣運算和浮點運算,并通過不斷的迭代從數(shù)千個變量中尋找最優(yōu)解,本文所提出的實例分割模型在Ubuntu18.04 操作系統(tǒng)和2 張Nvidia RTX 1080Ti顯卡上使用Pytorch 深度學(xué)習(xí)框架進行分布式并行訓(xùn)練和同步批處理歸一化,并使用SGD 作為優(yōu)化器,其動量和權(quán)重衰減率分別設(shè)置為0.9 和5×10-4。為了提高分割性能,訓(xùn)練過程中還使用了在ImageNet[38]預(yù)先訓(xùn)練的模型和數(shù)據(jù)增強策略,包括顏色抖動、隨機水平翻轉(zhuǎn)以及隨機裁剪。
學(xué)習(xí)率、批處理大小和損失函數(shù)的選擇都會影響模型的訓(xùn)練速度和最終的分割精度。較大的學(xué)習(xí)率在提高訓(xùn)練速度的同時會造成損失的急劇增大,因此更加適用于訓(xùn)練的初始階段。然而神經(jīng)網(wǎng)絡(luò)訓(xùn)練初期嚴重的不穩(wěn)定性又需要極低的學(xué)習(xí)率。學(xué)習(xí)率若是設(shè)置過小則模型的收斂速度變慢,更易找到模型的最優(yōu)解但可能產(chǎn)生過擬合問題,因此更加適用于訓(xùn)練的后期。鑒于以上特性,本文使用多階段學(xué)習(xí)策略,首先使用warm-up 策略,使學(xué)習(xí)率隨著迭代次數(shù)增加不斷變大并達到初始訓(xùn)練值,隨后使用Poly自適應(yīng)學(xué)習(xí)率,使之平穩(wěn)的下降,公式如下:
式中:In_lr為初始學(xué)習(xí)率,設(shè)置為0.001;it和max_it分別為當前迭代次數(shù)和訓(xùn)練最大迭代次數(shù);r為影響因子,設(shè)置為0.1;power為衰減指數(shù),設(shè)置為1。同樣,批處理若是設(shè)置過大則模型會越穩(wěn)定,訓(xùn)練速度會明顯加快,但可能需要消耗更多顯存以及影響泛化性能;批處理設(shè)置過小,訓(xùn)練速度會變慢。受限于實驗室的硬件配置,批處理大小設(shè)置為4。
本節(jié)中,對所提模型在開源實例分割數(shù)據(jù)集BDD100k 上的結(jié)果同一些先進方法對比,主要包括Mask R-CNN[19]、Cascade Mask R-CNN[28]、GCNet[39]、YoLACT[22]和Solov2-Lite[13]。本文選擇 Orienmask[30]作為基線模型(baseline)。前3種方法均為基于兩階段框架的實例分割方法,其位置掩碼的生成質(zhì)量高度依賴于目標定位網(wǎng)絡(luò),且獲得的精度均來自該數(shù)據(jù)集公開的官方基準。此外,與基于檢測的單階段方法不同,Solov2 依據(jù)每個對象中心不同的特性直接恢復(fù)實例掩碼,因而沒有邊界框結(jié)果。上述所有算法的推理速度均遵循默認配置并在單張1080Ti顯卡得出,對比結(jié)果如表2所示。
表2 在BDD100k驗證集與主流方案的對比結(jié)果
觀察發(fā)現(xiàn)二階段算法的檢測和分割效果整體上比單階段方法更好,但也伴隨著速度較慢等缺陷。與原始baseline相比,所提方法在邊界框和分割掩碼上分別獲得了5.2%和2.2%的mAP@0.5:0.95 改進,但速度有所降低。具體來說,行人、轎車、貨車、巴士和火車類別的性能均有所提升,其中交通場景中最為常見的兩個重點類別,行人和轎車分別獲得了2.9%和4.9%的改進。但是騎行者、自行車的精度略微下降,摩托的精度下降較為明顯。對于這些復(fù)雜的弱勢交通參與者性能不佳,猜測這是由于人-車一體的形狀復(fù)雜性,即實例間的重疊遮擋問題,造成了網(wǎng)絡(luò)的混淆。與最好的二階段架構(gòu)[28]相比,所提算法獲得了0.8%的略微提升,但是速度上有著更大的優(yōu)勢。為了進一步證明所提方法的有效性,選擇了驗證集上的5張圖片進行可視化,結(jié)果如圖7所示。從上至下依次為原始結(jié)果,改進后結(jié)果以及相應(yīng)的真值。定性結(jié)果表明所提方法顯著改善了大尺寸物體的性能,且一定程度上緩解了遠景區(qū)域小目標的漏檢率,小尺寸物體的邊緣也變得更加清晰平滑,尤其是在行人的姿態(tài)分割中。
圖7 BDDI00k驗證集上可視化結(jié)果對比圖
為了驗證所提方法各組成部分的有效性,本文測試了在BDD100k 驗證集上所獲得的各種模型變體,性能結(jié)果如表3 所示。以Darknet53 為骨干網(wǎng)絡(luò)的原始模型作為baseline。通過添加的雙路自校正金字塔池化模塊,邊界框和實例掩碼的準確度分別提高了2.6%和1.2%的 mAP@0.5:0.95。為了更清晰地闡述該模塊,本文還對該模塊進行了組件拆分,主要包括FPN(Sconv)和PANet(Sconv)??梢杂^察到后者的改進效果最明顯,這進一步證明了本文的猜測即僅依賴單路自頂向下傳播較強語義特征對實例分割是遠遠不夠的。此外,設(shè)計的多頭掩碼構(gòu)建模塊通過產(chǎn)生更細致的尺度空間區(qū)分微小物體進一步改善了性能,在掩碼上獲得了1%的提升,在邊界框上更是獲得了2.5%的提升。最后,結(jié)合所有的部件,本文所得模型在該數(shù)據(jù)集的邊界框上和掩碼最終獲得了41.0%和36.0%,分別獲得了5.7 %和4.1 %的mAP@0.5改進。
表3 在BDD100k驗證集上的消融實驗
圖8 顯示了雙路自校正金字塔池化模塊在包含和不包含自校正卷積中所學(xué)到的特征可視化對比示例。第1 列是原圖,第2 列和第3 列分別表示不加自校正和加入自校正卷積后的 FPN 模塊最底層的輸出特征??梢杂^察到,自校正卷積可以學(xué)習(xí)像素所在目標區(qū)域的上下文信息,通過引入小尺度低維空間信息擴大高維空間的局部感受野并產(chǎn)生更具判別性的特征,從而更準確地定位目標對象。圖8 中的最后一行遠景圖像的熱力圖展示了對多尺度信息的編碼能夠使網(wǎng)絡(luò)更加關(guān)注小尺寸物體的學(xué)習(xí)。
圖8 特征的可視化結(jié)果圖
針對復(fù)雜的道路交通場景BDD100k 數(shù)據(jù)集,本文主要針對Orienmask算法從錨框設(shè)計,網(wǎng)絡(luò)架構(gòu)設(shè)計和監(jiān)督學(xué)習(xí)損失函數(shù)這3 部分進行了相應(yīng)的優(yōu)化改進工作。為了進一步驗證所提出模型的適用性,本文使用Arrizo-5E 自動駕駛實驗車在中國城市鎮(zhèn)江的3 個不同真實測試場景中進行了實車實驗,主要包括城區(qū)、高架和校園,實驗車輛如圖9 所示。此外,本文進行實車實驗環(huán)境配置時還考慮了不同的天氣條件,主要包括3 種工況:白天、夜間和雨天。本文實車實驗全部使用魔客仕攝像頭來采集分辨率為480×640的圖像。
圖9 本文實車實驗所采用的Arriz0-5E實驗車
所提算法在現(xiàn)實場景上的定量結(jié)果如圖10 所示,從上至下依次為晴天、夜間和雨天工況下的檢測和分割結(jié)果。其中前兩列為城區(qū)場景的分割性能,中間一列和最后兩列分別為高架和校園的實驗結(jié)果。整體上,所得模型對于大尺寸物體具有較好的性能,這可能是由于其特征密集的天然優(yōu)勢。相對來說,小目標的性能有所欠缺,但在場景的有效距離范圍內(nèi),該算法仍然可以實現(xiàn)對小目標的精準定位和分類。與校園工況相比,高架和城區(qū)的預(yù)測結(jié)果相對更好,這可能是校園場景的狹小封閉和人-車交通無序所導(dǎo)致的。此外,隨著天氣工況的愈發(fā)惡劣,目標對象的邊界框和分割邊緣愈發(fā)粗糙。
圖10 實車實驗結(jié)果圖
本文以O(shè)rienmask算法為基礎(chǔ),并針對復(fù)雜的交通場景,提出了一種基于單階段檢測算法的多頭實例分割框架,其主要包括骨干網(wǎng)絡(luò)、特征融合模塊和多頭掩碼構(gòu)建模塊。為了獲取判別性特征,本文通過引入殘差網(wǎng)絡(luò)、自校正卷積和改善信息傳播路徑等方式優(yōu)化網(wǎng)絡(luò)的特征提取能力。同時針對交通場景下道路目標尺寸的多樣性和復(fù)雜性,所提的多頭掩碼構(gòu)建模塊被設(shè)計成4 個尺度下的邊界框和方向預(yù)測分支,以適應(yīng)不同尺度物體并生成更具細粒度的實例掩碼。此外,本文還優(yōu)化了損失函數(shù)。
在開源數(shù)據(jù)集BDD100k 上的結(jié)果表明所提算法要顯著優(yōu)于原始方法,在邊界框定位和掩碼生成上分別獲得了5.7%和4.1% mAP@0.5 改進,同時滿足實時性要求。最后真實場景的實車實驗也證明了所提算法具有更好的精度和魯棒性,且對不同的場景也有較好的適應(yīng)能力。但是也觀察到部分弱勢交通參與者的性能有所下降,未來將著重從實例間的遮擋角度優(yōu)化模型算法,并進一步提高推理速度。