邵哲欽,黃影平,郭志陽
(上海理工大學(xué) 光電信息與計算機工程學(xué)院,上海 200093)
交通場景感知是智能汽車環(huán)境感知的基本任務(wù),汽車只有自主感知交通道路場景環(huán)境后,才能進行車的移動控制決策。無人駕駛汽車主要通過激光雷達、相機、毫米波雷達、GPS 全球定位系統(tǒng)等探測車輛周圍的環(huán)境信息。其中,相機和激光雷達是智能汽車中運用最廣泛的2 類傳感器,能準(zhǔn)確地感知物體的三維信息,相機則能夠獲取環(huán)境豐富的紋理信息?,F(xiàn)有的研究表明,將相機與激光雷達兩種傳感器數(shù)據(jù)進行融合,可以提高道路檢測精度。因此,相機與激光雷達融合是目前無人駕駛領(lǐng)域的熱點和難點問題之一。
Shinzato 等人提出了一種基于傳感器融合的魯棒方法。該方法基于單目相機和3D 雷達的空間關(guān)系將雷達點云投影至相機圖像之上,使用一種障礙物分類方法,將雷達點云分為障礙物點和非障礙物點,進而處理圖像得到可行駛區(qū)域。Ren 等人于2003 年首次提出了超像素的概念,超像素是指具有相似紋理、顏色、亮度等特征的相鄰像素構(gòu)成的有一定視覺意義的不規(guī)則像素塊。Achanta 等人于2010 年提出了SLIC 超像素算法、即簡單的線性迭代聚類,首先將彩色圖像轉(zhuǎn)化為CIELAB 顏色空間和XY 坐標(biāo)下的5 維特征向量,對5 維特征向量構(gòu)造距離度量標(biāo)準(zhǔn),對圖像像素進行局部聚類。SLIC 算法能生成緊湊、近似均勻的超像素,在運算速度、物體輪廓保持、超像素形狀方面的綜合性能上都獲得較高評價。
本文先將雷達點云投影至圖像中,對點云進行德洛內(nèi)三角剖分;其次,用兩點之間的角度閾值區(qū)分障礙物與地面點;最后,使用超像素聚類,對點云分類結(jié)果在圖像中進行補全,完成圖像中可行駛區(qū)域檢測。
本文基于稀疏非結(jié)構(gòu)化的三維激光雷達點云與相機圖像融合,首先利用相機坐標(biāo)與激光雷達的空間關(guān)系,進行雷達到圖像的投影;其次,對投影至圖像中離散無序的點云構(gòu)建局部空間關(guān)系,并結(jié)合點云的三維度量來判斷該點是否為障礙物;最后,在圖像中以點云為核心,對圖像所有像素點進行聚類,完成可行駛區(qū)域的劃分。該方法包括5 個處理步驟:
(1)傳感器融合。將三維空間中的雷達點云數(shù)據(jù)投影至相機坐標(biāo)系中。
(2)構(gòu)造離散點云的局部空間關(guān)系。通過德洛內(nèi)三角剖分,構(gòu)建德洛內(nèi)三角網(wǎng)絡(luò),找出點云中最接近的點,并以直線連接,構(gòu)成三角網(wǎng)絡(luò)。
(3)點云分類。通過三角網(wǎng)絡(luò)中點的空間關(guān)系,將點云分類為障礙物與非障礙物。
(4)聚類。借鑒SLIC 超像素算法中的聚類算法,在圖像中以分類后的點云為中心進行聚類,將圖像中所有像素點分為障礙物點與非障礙物點,對圖像的分割結(jié)果進行補全。
(5)可行駛區(qū)域的提取。以視覺中心點、即圖像最底部的中點為基準(zhǔn)點,對可行駛區(qū)域做進一步分割。
不同傳感器有著不同的獨立坐標(biāo)系,必須把不同坐標(biāo)系的數(shù)據(jù)變換到同一坐標(biāo)系,找到同一時刻點云數(shù)據(jù)和圖像中對應(yīng)的像素點,才能實現(xiàn)融合。坐標(biāo)變換主要分為2 個步驟,擬做分述如下。
(1)根據(jù)相機的內(nèi)參和外參,將雷達坐標(biāo)系下的點云P= (X,Y,Z,1)通過坐標(biāo)變換到相機坐標(biāo)系,得到P= (X,Y,Z,1),對此可表示為:
(2)為了得到像素坐標(biāo)(,),將所有P代入公式(3):
其中,P為矯正后的相機坐標(biāo)系至像素坐標(biāo)系的投影矩陣。
由于激光雷達的探測視野較大,有些點云會投影至圖像外,直接剔除這部分圖像外的點云,投影結(jié)果如圖1 所示。圖1 中,顏色越紅,表示離激光雷達越近,越藍則表示越遠,將像素坐標(biāo)(,)與(X,Y,Z)組成新的集合(X,Y,Z,,)。
圖1 激光雷達點云投影至圖像上的結(jié)果Fig.1 Results of LIDAR point cloud projection on images
利用得到的點的(,)坐標(biāo)構(gòu)造一個德洛內(nèi)三角網(wǎng),這是一系列相連但不重疊的三角形集合,以最近3 個點形成一個三角形。這種網(wǎng)絡(luò)擁有以下特性:
(1)最接近性。以最近的3 個點形成一個三角形,且各三角形的邊皆不相交。
(2)唯一性。無論從區(qū)域何處開始構(gòu)建,最終都將得到一致的網(wǎng)絡(luò)結(jié)果。利用這兩點特性,可以保證所有點云都被包含在網(wǎng)絡(luò)中,并能找出兩兩之間距離最接近的點云,將其作為三角形的頂點。利用德洛內(nèi)三角網(wǎng)絡(luò)將原本非結(jié)構(gòu)化的離散點云數(shù)據(jù)結(jié)構(gòu)化,其網(wǎng)絡(luò)結(jié)構(gòu)良好,數(shù)據(jù)冗余度小,大大減少障礙物分類的運行時間,其中所有小三角形頂點是上一步中投影得來的所有點,如圖2 所示。
圖2 德洛內(nèi)三角網(wǎng)絡(luò)Fig.2 Delaunay triangle network
本文采用基于點云三維坐標(biāo)的障礙物分類方法,該方法簡單高效,僅利用點的(X,Y,Z) 數(shù)據(jù),即可完成分類,達到可行駛區(qū)域的初步分割。利用德洛內(nèi)三角網(wǎng),取所有三角形的每條邊所連接的2 個點和為一對,使用公式(4)即可將障礙物與非障礙物節(jié)點區(qū)分開。此方法不用設(shè)定任何高度閾值,便可將點分類為障礙物與非障礙物點。函數(shù)() 在公式(4)中定義,如果函數(shù)() 返回正值1,則將節(jié)點分類為障礙物;如果函數(shù)返回0,則將其分類為非障礙物。這里用到的數(shù)學(xué)公式可寫為:
其中,[y][y] 為這兩點之間的高度差;是一個閾值,Shinzato 等人使用該方法得到77°、為最優(yōu)分類角度閾值,故直接取77°;‖‖ 是向量()長度,即,兩點的距離。
分類結(jié)果如圖3 所示,該方法將鐵軌、汽車、樹木上的點云都分類為障礙物點,而道路、2 條鐵軌之間、以及草坪等比較平坦的地方分類為非障礙物點。
圖3 障礙物點分類結(jié)果Fig.3 Obstacle points classification results
超像素是由一系列位置相鄰,且顏色、亮度紋理等特征相似的像素點組成的小區(qū)域,可將一個小區(qū)域內(nèi)具有相似特性的像素聚集起來,形成一個大元素、即一個超像素。使用超像素算法總能將原有物體的邊界分割出來,利用該算法,對可行駛區(qū)域的檢測結(jié)果進行補全,進一步細化障礙物的邊界。常規(guī)超像素算法初始時,通過人為設(shè)置需要將圖像分割成的超像素個數(shù),并將聚類中心均勻置于圖像中。若設(shè)置太小,則分割結(jié)果不一定能夠覆蓋物體所有的邊界;若設(shè)置過大,雖然能更好地將物體輪廓覆蓋,但會加深過分割的程度,一個物體會被分成許多區(qū)域,故而就要在后期合并相似區(qū)域來消除過分割的影響。
本文借鑒了SLIC 算法中用到的聚類方法,在其基礎(chǔ)上進行改動,取消了迭代過程。本文的方法無需設(shè)定超像素的個數(shù),而是直接將圖像中所有分類后的點云作為聚類中心,以點云的數(shù)量作為值。此外,由于只將圖像分為障礙物與非障礙物兩類,故只要將同一類區(qū)域合并,即可很好地消除過分割的負面影響,同時又能夠?qū)⒄系K物邊界精準(zhǔn)地分割出來,簡單又高效。具體步驟如下:
(1)初始化聚類中心(種子點)。將分類后的點云對應(yīng)的圖像位置的點設(shè)為聚類中心點(種子點)。
(2)計算距離度量。在每個種子點的22范圍內(nèi)搜索所有像素點,對于每個搜索到的像素點,分別計算這個像素點和該種子點的顏色距離與空間距離,推導(dǎo)得到的數(shù)學(xué)公式分別如下:
結(jié)合顏色距離與空間距離,得到距離度量,計算方法見式(7):
式(5)~式(7)中,D表示顏色距離;D表示空間距離;N是類內(nèi)最大空間距離。
進一步,研究給出的數(shù)學(xué)定義表示式為:
其中,為圖片被點云覆蓋區(qū)域的面積,如圖4所示。為圖像上點云個數(shù),也是超像素的個數(shù)。最大顏色距離N隨圖片不同而不同,也隨聚類不同而不同,取一個固定常數(shù),取值范圍[1,40],一般取10。
圖4 點云覆蓋區(qū)域Fig.4 Point cloud coverage area
由于每個像素點都會被多個種子點搜索到,所以每個像素點都會有一個與附近不同種子點的距離,取距離度量最小值對應(yīng)的種子點作為該像素點的聚類中心。
(3)分配類標(biāo)簽。在每個種子點周圍的22鄰域內(nèi)為每個像素點分配類標(biāo)簽。
(4)后處理。使用中值濾波以及平滑濾波對聚類結(jié)果進行處理,將障礙物邊界提取出來,覆蓋于原圖中,得到圖5。圖5(a)中綠色區(qū)域代表非障礙物區(qū)域,紅色代表了障礙物區(qū)域,圖5(b)中藍線為障礙物邊界。
圖5 障礙區(qū)域及其邊界Fig.5 Obstacle area and boundary
以視覺中心位置,即圖片底部的中間位置的像素點為起始點,向兩邊延伸,若遇到障礙物邊界,則停止延伸,并將沿途經(jīng)過的像素點標(biāo)記為0;此后,再以底部所有標(biāo)記為0 的像素點為起始點,向上延伸遇到障礙物邊界,則停止;最終得到可行駛區(qū)域邊界,如圖6 所示。
圖6 可行駛區(qū)域邊界Fig.6 Boundary of drivable region
Kitti 數(shù)據(jù)集是目前國際上最大的自動駕駛場景下的計算機視覺算法評測數(shù)據(jù)集。該數(shù)據(jù)集用于評測立體圖像(stereo)、光流(optical flow)、視覺測距(visual odometry)、道路(road)、3D 物體檢測(object detection)和3D 跟蹤(tracking)等計算機視覺技術(shù)在車載環(huán)境下的性能。KITTI 包含市區(qū)、鄉(xiāng)村和高速公路等場景采集的真實圖像數(shù)據(jù),每張圖像中最多達15 輛車和30 個行人,還有各種程度的遮擋與截斷。KITTI 數(shù)據(jù)集中道路又分為urban marked(um)城市有標(biāo)線、urban unmarked(uu)城市無標(biāo)線和urban multiple marked(umm)城市多標(biāo)線場景,共包含289 張訓(xùn)練圖片和290 張測試圖片,圖像分辨率為1 240×375。定量評價時,需要將道路分割結(jié)果以二值形式的800×400 像素鳥瞰圖(bev)上傳至官網(wǎng),進行評估。
主要評價指標(biāo)由KITTI 數(shù)據(jù)集官方指定,即加權(quán)調(diào)和平均作為最終的評價指標(biāo),計算方式見式(8):
其中,為準(zhǔn)確度(),即正確預(yù)測為正的像素點,占所有預(yù)測為正的像素點的比例;為召回率(),即正確預(yù)測為正的像素點占所有正樣本的比例。
此外該數(shù)據(jù)集也提供平均準(zhǔn)確率()、假陽性率()、假陰性率()指標(biāo)的評估。
2.3.1 典型場景的可視化結(jié)果
從Kitti 公共數(shù)據(jù)集road 中選擇uu 場景作為實驗數(shù)據(jù),得到可行駛區(qū)域的邊界結(jié)果如圖7 所示,綠線為可行駛區(qū)域邊界。將實驗結(jié)果上傳至Kitti 官網(wǎng)評估,得到的部分評估結(jié)果如圖8 所示。圖8 中,綠色區(qū)域為正確分割像素,藍色為假陽性像素,紅色為假陰性像素。不難看出,本文的方法可以將可行駛區(qū)域與明顯高出地面的障礙物,如草坪、汽車、路沿石等很好地分割出來。本文的算法不會因為道路中陰影部分與正常道路之間的紋理區(qū)別,而造成誤分割。對于一些高度不明顯的路緣石,以及禁止行駛的標(biāo)記區(qū)域,本文不能很好地將其識別出來。
圖7 實驗結(jié)果Fig.7 Experimental results
圖8 評估結(jié)果Fig.8 Evaluation results
2.3.2 與其他方法的比較
本文選取了Shinzato等人的方法以及基于條件隨機場CRF 的方法進行檢測結(jié)果對比,對比結(jié)果見表1。本文的達到了84.96,平均準(zhǔn)確率達到了74.43%,分別超過了Shinzato 的方法將近3%和4%;本文與一些CRF 的方法對比,在指標(biāo)上相差不大,但是在運行速度上,本文的速度比FusedCRF 和MixedCRF 這2 個方法提升了許多。
表1 Kitti 數(shù)據(jù)集評估與比較Tab.1 Kitti dataset evaluation and comparison
總的來說,本文提出的方法在檢測精度和速度方面,展現(xiàn)出了更加全面的優(yōu)勢。但本文采用的思想對于高出地面的障礙物檢測效果很好,對于一些地勢平坦、但禁止行駛的區(qū)域不能很好地識別出來。
本文融合了單目相機圖像的顏色信息和激光雷達的三維空間關(guān)系,結(jié)合了兩者的優(yōu)勢,同時借鑒了超像素的思想,提出了一種新穎簡單的可行駛區(qū)域檢測方法,并取得了較好的檢測效果。采用Kitti 數(shù)據(jù)集進行驗證,結(jié)果表明,該方法可以有效地檢測出可行駛區(qū)域,具有運行速度和精度的綜合優(yōu)勢。