高階駕駛員輔助系統(tǒng)依靠各種傳感器(雷達(dá)、激光雷達(dá)、超聲波和攝像頭)進(jìn)行場(chǎng)景理解和預(yù)測(cè)。這些傳感器通常用于檢測(cè)交通參與者和導(dǎo)航所需的場(chǎng)景元素。
視覺環(huán)境感知在自動(dòng)駕駛汽車的發(fā)展中起著關(guān)鍵作用,提供有關(guān)駕駛場(chǎng)景的基本信息,包括自由空間區(qū)域和周圍障礙物。這些感知任務(wù)可以從各種傳感器(激光雷達(dá)、相機(jī)、雷達(dá)或它們的融合)收集信息。高密度激光掃描儀能夠創(chuàng)建環(huán)境的動(dòng)態(tài)三維地圖,最適合這項(xiàng)任務(wù)。然而,將它們集成到價(jià)格合理的車輛中的成本仍然很高。在計(jì)算機(jī)視覺領(lǐng)域最新進(jìn)展的推動(dòng)下,我們建議僅使用基于相機(jī)的系統(tǒng),它有可能以更低的成本達(dá)到密集的激光掃描性能。特別是,深度學(xué)習(xí)以更快的速度推動(dòng)了經(jīng)典對(duì)象檢測(cè)和分割的準(zhǔn)確性的提高。
然而,僅靠物體檢測(cè)系統(tǒng)通常不足以實(shí)現(xiàn)自主緊急制動(dòng)和前向碰撞系統(tǒng),因?yàn)楦鞣N可能的道路障礙物(例如樹枝、小動(dòng)物)和道路結(jié)構(gòu)(例如鄉(xiāng)村道路、不同的紋理)使得在場(chǎng)景理解過程中,只訓(xùn)練典型目標(biāo)檢測(cè)網(wǎng)絡(luò)和道路分割網(wǎng)絡(luò)不切實(shí)際。
智能泊車依靠主要是基于環(huán)視攝像頭和超聲波感知的系統(tǒng),特別是環(huán)視監(jiān)控 (AVM) 系統(tǒng),可以在泊車和駕駛模式下以更低的成本實(shí)現(xiàn)對(duì)泊車環(huán)境的精確感知。魚眼圖像作為一種廣角且失真的圖像,在自動(dòng)駕駛領(lǐng)域使用魚眼攝像頭的優(yōu)勢(shì)是顯而易見的,因?yàn)樗鼈兲峁┝吮葌鹘y(tǒng)攝像頭更廣闊的視野(190°),從而捕捉到更多與汽車周圍環(huán)境(行人、障礙物等)相關(guān)的信息。四個(gè)攝像頭分別位于車輛的前、后、左、右側(cè),為駕駛員提供 360°的周圍環(huán)境視圖,以檢查車輛周圍是否有障礙物。如下圖表示了典型的智能泊車魚眼圖檢測(cè)網(wǎng)絡(luò)圖。
對(duì)于行泊車系統(tǒng)控制而言,不同的傳感器具有不同的識(shí)別性能,原則上將如果能夠利用所有傳感器在其不同階段的識(shí)別效能進(jìn)行分階段網(wǎng)絡(luò)處理,那么將在不同階段產(chǎn)生最優(yōu)的處理效果。
智能泊車感知網(wǎng)絡(luò)的基本處理流程
本系列文章將分上下兩篇分別對(duì)泊車感知處理網(wǎng)絡(luò)原理進(jìn)行闡述側(cè)重于檢測(cè)安全駕駛的基本場(chǎng)景信息:物體檢測(cè)、路緣檢測(cè)、自由駕駛區(qū)域分割、物體與相機(jī)的距離和物體方向。
首先,從基礎(chǔ)泊車可通行區(qū)域檢測(cè)網(wǎng)絡(luò)出發(fā),介紹一種新的解決方案,將障礙物檢測(cè)網(wǎng)絡(luò)集成到一個(gè)統(tǒng)一的端到端解決方案中,能夠通過障礙物底點(diǎn)估計(jì)、路緣檢測(cè)和二維多尺度目標(biāo)檢測(cè)聯(lián)合劃定自由駕駛區(qū)域,以獲得低復(fù)雜度的解決方案。這種通過底點(diǎn)估計(jì)和路緣檢測(cè)的方式可以精確的劃定駕駛車輛所有方向上最近的障礙物,也可以有效的確定每個(gè)方向上最近障礙物的準(zhǔn)確距離。
其次,場(chǎng)景理解系統(tǒng)需要高度精確的感知輸入。然而,在諸如智能駕駛汽車這類嵌入式平臺(tái)上的模型部署需要實(shí)時(shí)推理速度以實(shí)現(xiàn)快速控制,并需要較小的模型尺寸以提高能效。當(dāng)然,通過開發(fā)一種低復(fù)雜度的解決方案來滿足這些要求,對(duì)應(yīng)的解決方案是使用光編碼器網(wǎng)絡(luò),受益于提出的感知任務(wù)來共享計(jì)算編碼器以實(shí)現(xiàn)環(huán)境目標(biāo)檢測(cè)。
智能泊車感知網(wǎng)絡(luò)的處理流程主要包括對(duì)象檢測(cè)、分類、自由空間分割和 3D方向重建。
1)自由空間檢測(cè):
這類檢測(cè)過程又常常被稱之為可行駛區(qū)域檢測(cè)。顧名思義,就是通過一定的道路分割手段來檢測(cè)可行駛區(qū)域表面的最先進(jìn)方法。比如,使用全卷積網(wǎng)絡(luò) (FCN) 用于執(zhí)行空間密集預(yù)測(cè)任務(wù),例如使用轉(zhuǎn)置卷積對(duì)上采樣層進(jìn)行建模下的語義分割。后來,還引入了擴(kuò)張卷積來擴(kuò)大網(wǎng)絡(luò)的感受野?,F(xiàn)有研究通常解決像素分割網(wǎng)絡(luò)或使用立體相機(jī)的深度圖推導(dǎo),使用這些方法,未分類的像素需要復(fù)雜的后處理來處理它們。建議使用一種更簡(jiǎn)單的架構(gòu)來檢測(cè)障礙物和自由空間,方法是識(shí)別駕駛車輛各個(gè)方向上每個(gè)障礙物的底部點(diǎn)。
2)目標(biāo)檢測(cè):
用于目標(biāo)檢測(cè)的先進(jìn)的神經(jīng)網(wǎng)絡(luò)方法可分為兩類:
其一,是基于感興趣區(qū)域建議網(wǎng)絡(luò)的檢測(cè)方法前一類包括像Faster R-CNN的方法,它有一個(gè)兩步過程,首先使用 RPN(區(qū)域建議網(wǎng)絡(luò))生成區(qū)域建議,然后使用輔助模塊對(duì)它們進(jìn)行分類評(píng)分。
其二,是單發(fā)網(wǎng)絡(luò)檢測(cè)方法。在單發(fā)網(wǎng)絡(luò)方法中,區(qū)域提議和分類階段被集成到一個(gè)階段,通過使用預(yù)定義的先驗(yàn)知識(shí)(又叫錨框),通過滑動(dòng)窗口在特征圖上的移動(dòng)為每個(gè)空間位置來預(yù)測(cè)邊界框和班級(jí)置信度分?jǐn)?shù)。
與兩階段方法相比,同時(shí)執(zhí)行感興趣區(qū)域檢測(cè)和分類網(wǎng)絡(luò)可以大大增強(qiáng)網(wǎng)絡(luò)檢測(cè)速度。
3)3D 對(duì)象檢測(cè):
最近,由于 3D 對(duì)象檢測(cè)需要與現(xiàn)實(shí)世界場(chǎng)景中的對(duì)象進(jìn)行有效交互而受到廣泛關(guān)注。這個(gè)問題通過從純粹的幾何角度(例如,從單個(gè)圖像估計(jì)具有 6DoF 的物體的姿態(tài))以及使用 DCNN(深度卷積神經(jīng)網(wǎng)絡(luò))重建 3D 模型來解決相應(yīng)2D對(duì)象檢測(cè)中無法體現(xiàn)深度信息的缺陷。這類3D檢測(cè)方法主要是使用局部仿射不變圖像描述符來構(gòu)建 2D 圖像中對(duì)象實(shí)例的 3D 模型,然后將它們與圖像中的 3D 姿勢(shì)進(jìn)行匹配。實(shí)踐證明 DCNN 在估計(jì)對(duì)象從0°到 360°方向方面具備高有效性。此外,使用 DCNN 回歸穩(wěn)定的 3D 對(duì)象特征,利用立體圖像的深度信息,或使用運(yùn)動(dòng)算法的結(jié)構(gòu)組合時(shí)間信息,可以使得用 3D 信息檢測(cè)效果大大增強(qiáng)。
場(chǎng)景理解網(wǎng)絡(luò)
本節(jié)詳細(xì)描述了 AVM 場(chǎng)景理解提出的網(wǎng)絡(luò)架構(gòu),包括目標(biāo)檢測(cè)、自由/可行駛區(qū)域分割、物體距離和物體方向。通過研究標(biāo)準(zhǔn)的2D 對(duì)象檢測(cè)網(wǎng)絡(luò),例如 Faster R-CNN 和 SSD 。同時(shí),在 AVM 數(shù)據(jù)集上試驗(yàn)不同的編碼器,例如 MobileNet和 Inception-ResNet-V2,將它們插入標(biāo)準(zhǔn)目標(biāo)檢測(cè)網(wǎng)絡(luò)以評(píng)估準(zhǔn)確性和運(yùn)行時(shí)性能。自由空間檢測(cè)是通過找到圖像中每個(gè)像素列的底部點(diǎn)來實(shí)現(xiàn)的,圖像中所有底部點(diǎn)的并集表示場(chǎng)景中所有障礙物的底部邊界,其邊界外部的所有像素都被視為自由空間。到最近障礙物的距離是通過將相機(jī)幾何學(xué)應(yīng)用于物體的底部點(diǎn)通過數(shù)學(xué)公式計(jì)算得到。
結(jié)合多任務(wù)網(wǎng)絡(luò)架構(gòu)(包括底網(wǎng)、目標(biāo)檢測(cè)OD網(wǎng)絡(luò)、融合網(wǎng)絡(luò))可以有效的完成目標(biāo)檢測(cè)和低復(fù)雜度解決方案的底點(diǎn)定位,使用 3D 物體檢測(cè)網(wǎng)絡(luò)來檢測(cè)每輛車的物體方向。
1)底點(diǎn)檢測(cè)網(wǎng)Bottom-Net
我們檢測(cè)路沿和自由行駛區(qū)域的方法網(wǎng)絡(luò)是將圖像的每個(gè)垂直列作為輸入。如下圖表示,該多任務(wù)網(wǎng)絡(luò)使用的輸入列寬度為 24,重疊超過 23 個(gè)像素,對(duì)用相鄰 24 像素區(qū)域增強(qiáng)相應(yīng)像素的列方向進(jìn)行預(yù)測(cè)。
然后每一列將通過一個(gè)卷積網(wǎng)絡(luò)輸出一個(gè) k 標(biāo)簽,其中 k 是高度,將學(xué)習(xí)對(duì)應(yīng)于該列的障礙物底部像素的位置進(jìn)行分類,將所有列進(jìn)行結(jié)合就能構(gòu)建場(chǎng)景的路沿或自由行駛區(qū)域。
在如上這個(gè)架構(gòu)中,由于列之間的重疊,超過 95% 的計(jì)算是冗余的。受此觀察的啟發(fā),這里可以采用整個(gè)圖像作為輸入的端到端架構(gòu)替換陣列式網(wǎng)絡(luò)的實(shí)現(xiàn)方式。該網(wǎng)絡(luò)使用多個(gè)卷積層將圖像編碼為深度特征圖,然后使用多個(gè)上采樣層生成與輸入圖像具有相同分辨率的特征圖。受目標(biāo)檢測(cè)系統(tǒng)的感興趣區(qū)域 (ROI) 方法的啟發(fā),我們裁剪了圖像的硬編碼區(qū)域,該區(qū)域?qū)?yīng)于用 23 個(gè)像素的相鄰區(qū)域增強(qiáng)的像素列。
因此,用于裁剪上采樣特征圖的感興趣區(qū)域?yàn)?23 像素寬和 720(高度)像素高。在圖像的每個(gè) x 坐標(biāo)處水平滑動(dòng)此窗口,然后將生成結(jié)果在 ROI 池化層中調(diào)整為固定長(zhǎng)度(例如 7x7),然后分類為 k 類之一(在高精度情況下 k 為 720,即圖像的高度),形成了最終圖像預(yù)測(cè)的底部點(diǎn)。如下圖顯示了該體系結(jié)構(gòu)的圖示。
然而,由于感興趣區(qū)域的重疊,使用具有固定位置的 ROI 進(jìn)行最終分類會(huì)導(dǎo)致重復(fù)計(jì)算。這種認(rèn)識(shí)自然而然地把我們帶到了對(duì)底部預(yù)測(cè)網(wǎng)絡(luò)任務(wù)的最終分類層需要使用的單發(fā)網(wǎng)絡(luò)分析處理方法。此外,為了使網(wǎng)絡(luò)更高效,我們還將對(duì)應(yīng)于多個(gè)上采樣層的網(wǎng)絡(luò)解碼器部分替換為單個(gè)密集水平上采樣層。
如下圖描繪了底部像素預(yù)測(cè)任務(wù)的最終架構(gòu)。
在應(yīng)用步長(zhǎng) > 1 的多個(gè)卷積后,編碼器生成的結(jié)果特征圖的分辨率為 [width/16, height/16],縮小了原始圖像大小的 16 倍。與之前版本的底部預(yù)測(cè)網(wǎng)絡(luò)在水平和垂直方向使用標(biāo)準(zhǔn)上采樣層相比,最終的上采樣方法現(xiàn)在生成大小為 [width, height/16] 的輸出特征圖,其寬度乘以16,高度不變。
最后,在水平上采樣層之上添加另一個(gè)全連接層,以對(duì)每一列的輸入進(jìn)行線性組合。使用 softmax 將每個(gè)結(jié)果列分類為 k 個(gè)類別之一,其中 k 是被預(yù)測(cè)圖像的高度(在高精度情況下 720)。每個(gè)列分類子任務(wù)自動(dòng)考慮顯示在被分類中心列附近的像素,并表示為最終環(huán)境目標(biāo)的底點(diǎn)預(yù)測(cè)。
2)目標(biāo)檢測(cè)OD網(wǎng)
本文研究的初始架構(gòu)是基于 Faster R-CNN 并預(yù)測(cè)場(chǎng)景中對(duì)象的邊界框和類別。作為高精度解決方案,這種架構(gòu)與深度強(qiáng)大的編碼器(如 Inception-ResNet-V2)相結(jié)合,往往會(huì)提供環(huán)境靜態(tài)模型的準(zhǔn)確信息。但在智能汽車環(huán)境動(dòng)態(tài)目標(biāo)這類實(shí)時(shí)性要求較高的檢測(cè)場(chǎng)合表現(xiàn)卻不佳。
為了確保智能車載系統(tǒng)的低復(fù)雜度解決方案的響應(yīng)能力,我們需要一個(gè)有效的目標(biāo)檢測(cè)系統(tǒng),它可以直接輸出目標(biāo)類概率和邊界框坐標(biāo)。此時(shí),可以將單發(fā)網(wǎng)絡(luò)檢測(cè)與像 MobileNet 這樣的光編碼器結(jié)合起來進(jìn)行快速推理。
3)融合網(wǎng)絡(luò)
顧名思義,融合網(wǎng)絡(luò)就是將如上提到的動(dòng)靜檢測(cè)網(wǎng)絡(luò)在一定規(guī)則的情況下進(jìn)行有效的環(huán)境建模。
如下圖所示表示典型的融合網(wǎng)絡(luò)圖。結(jié)合底部預(yù)測(cè)和目標(biāo)檢測(cè)網(wǎng)絡(luò)的統(tǒng)一架構(gòu)通常利用網(wǎng)絡(luò)編碼器的共享計(jì)算來實(shí)現(xiàn)更好的訓(xùn)練優(yōu)化和運(yùn)行時(shí)性能。因此,我們考慮在不同層分支可以共享編碼器,以便找到運(yùn)行時(shí)性能和準(zhǔn)確性之間的最佳權(quán)衡。我們提出的統(tǒng)一架構(gòu)使用卷積網(wǎng)絡(luò)對(duì)圖像進(jìn)行編碼,并為每個(gè)任務(wù)使用多個(gè)解碼器。
輸入層的分支意味著兩個(gè)網(wǎng)絡(luò)不共享任何計(jì)算,我們將此架構(gòu)的結(jié)果報(bào)告為準(zhǔn)確性的上限。在網(wǎng)絡(luò)中,分支更高可以讓我們?cè)趦蓚€(gè)任務(wù)之間共享計(jì)算并優(yōu)化實(shí)現(xiàn)更好的推理時(shí)間。但由于兩個(gè)頭必須共享編碼器中的特征表示,則會(huì)降低輸出結(jié)果精度。卷積編碼器的高層特征對(duì)于底部預(yù)測(cè)和目標(biāo)檢測(cè)略有不同。因此,在編碼器的較低層分支可以提高準(zhǔn)確性,并分別制定編碼頭部信息表示各自的特征。
4)3D網(wǎng)
這里,我們介紹方向和尺寸問題的高精度解決方案。我們使用 ResNet-101(前 22 個(gè)殘差塊)作為底層 DCNN 架構(gòu),在具有 1000 個(gè)類的 ImageNet 子集上進(jìn)行預(yù)訓(xùn)練。最終架構(gòu)由兩個(gè)分支組成,分別用于基于角度離散化和對(duì)象尺寸回歸。對(duì)應(yīng)的網(wǎng)絡(luò)架構(gòu)如下圖 所示。3D 網(wǎng)絡(luò)將對(duì)象的裁剪作為輸入,并估計(jì)每個(gè)對(duì)象的真實(shí)世界尺寸和方向。使用 OD-net 提取 2D 作物,并將其從魚眼投影重新投影到 Lambert圓柱等積投影中。
其中Lambert 投影函數(shù)可以描述為:
其中,λl和φl是給定射線~R的緯度和經(jīng)度;Ry 是R 在 XoZ平面上的三維投影;給定一條射線的魚眼投影~p,我們可以計(jì)算~R如下:
?
為了調(diào)整相機(jī)俯仰,我們沿著 oX 旋轉(zhuǎn) -α;最后,重新投影的向量 ~q 計(jì)算如下:
我們通過將方向值離散化為 N 個(gè)唯一方向,將方向預(yù)測(cè)轉(zhuǎn)換為分類問題。我們隨后通過使用均值漂移算法恢復(fù)連續(xù)方向,從而獲得網(wǎng)絡(luò)預(yù)測(cè)對(duì)象尺寸和對(duì)象方向。
詳細(xì)多任務(wù)處理網(wǎng)絡(luò)的實(shí)施細(xì)節(jié)
在本節(jié)中,我們將描述我們?cè)诮y(tǒng)一架構(gòu)中使用的各種訓(xùn)練細(xì)節(jié)。
1)預(yù)處理階段:
作為數(shù)據(jù)集增強(qiáng),我們使用隨機(jī)顏色失真(亮度、飽和度、對(duì)比度、色調(diào))和 [0, 1] 之間的歸一化。我們還通過使用水平翻轉(zhuǎn)來擴(kuò)展訓(xùn)練集,低復(fù)雜度解決方案還執(zhí)行隨機(jī)裁剪。
2)目標(biāo)函數(shù)生成:
底網(wǎng)Bottom-Net 使用 softmax 交叉熵?fù)p失對(duì)駕駛車輛各個(gè)方向上每個(gè)障礙物的每個(gè)底部點(diǎn)進(jìn)行分類:
其中 w 和 h 是每個(gè)幀的寬度和高度。融合網(wǎng)總共總結(jié)了三個(gè)目標(biāo)函數(shù):一個(gè)用于底部像素預(yù)測(cè)的分類損失和兩個(gè)用于檢測(cè)任務(wù)、分類和邊界框回歸的損失。
對(duì)于對(duì)象檢測(cè)任務(wù)而言,我們使用經(jīng)典的平均精度 (mAP) 指標(biāo),在 0.5 交并比 (IoU) 重疊處。對(duì)于底部像素預(yù)測(cè)任務(wù),我們引入了平均絕對(duì)誤差(MAE),它表示地面實(shí)況和底部像素預(yù)測(cè)之間的平均像素位移。我們將 MAE 度量重新用于 3D-OD 任務(wù)以計(jì)算對(duì)象方向和所有 3 個(gè)軸上的對(duì)象尺寸。
3)低復(fù)雜性解決方案詳細(xì)信息:
運(yùn)行時(shí)性能和內(nèi)存占用對(duì)于實(shí)時(shí)應(yīng)用程序(如自動(dòng)駕駛或駕駛員輔助系統(tǒng)所需的應(yīng)用程序)至關(guān)重要。針對(duì)這個(gè)需求需要以嵌入式解決方案使用了MobileNet編碼器,解決物體檢測(cè)和底部像素檢測(cè)這兩個(gè)相關(guān)的任務(wù)。
對(duì)于用于快速車輛控制的實(shí)時(shí)嵌入式系統(tǒng),計(jì)算效率則更為重要,因此統(tǒng)一網(wǎng)是在編碼器更高卷積層的分支。對(duì)于目標(biāo)檢測(cè)任務(wù)而言,可以選擇使用多尺度單發(fā)網(wǎng)絡(luò),因?yàn)樗哂锌焖俚倪\(yùn)行時(shí)性能。對(duì)于編碼器,我們使用 MobileNet 的修剪版本。我們發(fā)現(xiàn),消除 MobileNet 編碼器中的最后 2 個(gè)卷積層可提供更好的準(zhǔn)確性。我們檢測(cè) 6 個(gè)尺度的對(duì)象,使用最后一個(gè)編碼器層(“conv11”)作為第一個(gè)特征圖,并創(chuàng)建剩余的 5 個(gè)作為編碼器的擴(kuò)展。每個(gè)特征圖負(fù)責(zé)檢測(cè)不同尺度的對(duì)象。統(tǒng)一網(wǎng)的訓(xùn)練過程使用 640x360 像素分辨率的圖像,每批訓(xùn)練 8 個(gè)。我們使用 7e?4 的初始學(xué)習(xí)率,并從 40000 次迭代總數(shù)中每 10000 次迭代衰減一次。
4)高精度解決方案細(xì)節(jié):
為了盡可能獲得最佳精度,這里推薦使用 Inception-ResNet V2 架構(gòu)的頂部作為編碼器,并在 ImageNet 上預(yù)訓(xùn)練權(quán)重,用于底網(wǎng)預(yù)測(cè)和對(duì)象檢測(cè)。對(duì)于目標(biāo)檢測(cè)任務(wù),可以選擇了 Faster R-CNN 架構(gòu),它提供了最好的定位和分類精度。訓(xùn)練以全尺寸分辨率進(jìn)行:1280x720,批量大小為 1,同時(shí)保持與原始實(shí)現(xiàn)相同的訓(xùn)練過程。
總結(jié)
本文介紹了一種新的端到端解決方案,通過識(shí)別駕駛車輛在每個(gè)方向上最近的障礙物來為每一幀劃定安全可行駛區(qū)域,采用這種方法來計(jì)算得到最近障礙物的距離,通過將其整合到一個(gè)統(tǒng)一的端到端架構(gòu)中,該架構(gòu)能夠進(jìn)行聯(lián)合對(duì)象檢測(cè)、路緣檢測(cè)和安全可行駛區(qū)域檢測(cè)。
此外,本文還描述了高精度解決方案和低復(fù)雜度解決方案的網(wǎng)絡(luò)系列。由于 2D 對(duì)象檢測(cè)有時(shí)無法為場(chǎng)景理解提供足夠的信息,因此本文如果能夠通過一定的方法找到環(huán)境目標(biāo)的3D 信息,同時(shí)如果增加高精度地圖信息找到 3D 世界中對(duì)象的確切姿勢(shì),作為解決方案可以很好的檢測(cè)每個(gè)對(duì)象的方向和尺寸,同時(shí)有效增強(qiáng)智能泊車過程中2D對(duì)象檢測(cè)的能力。因此,本文的基礎(chǔ)架構(gòu)通過 3D 對(duì)象檢測(cè)可以進(jìn)一步增強(qiáng)泊車感知性能。
編輯:黃飛
?
評(píng)論
查看更多