吳瓊 時利 謝欣燕 岳麗姣
(安徽江淮汽車集團股份有限公司技術中心,汽車智能網(wǎng)聯(lián)技術安徽省重點實驗室,合肥 230601)
主題詞:激光雷達 相機 在線自動標定 無人駕駛車輛
激光雷達和相機是當前無人駕駛汽車環(huán)境感知使用的最主要的兩類傳感器,但二者獲取的不同形態(tài)的信息單獨利用通常會引發(fā)沖突,故相機和激光雷達的置信融合是當前無人駕駛汽車環(huán)境感知領域的重要研究方向[1-4]。信息的置信融合不僅可以避免沖突問題,還可以提高環(huán)境要素感知的置信度。其中,相機和激光雷達間的外部參數(shù)標定是實現(xiàn)信息魯棒融合的一個重要環(huán)節(jié)。
國內(nèi)外科研工作者針對相機與激光雷達信息融合問題,提出了大量的自動或半自動外部參數(shù)標定方法。Ranjith Unnikrishnan等[5]在Zhang等[6]提出的相機與二維激光雷達標定方法的基礎上,提出了三維激光雷達與相機外部參數(shù)標定方法。A.Sergio等[7]提出一種利用圓形目標物求解相機與四線激光雷達間坐標映射關系的方法,該方法能夠準確估計圓形目標物的位姿。Scaramuzza等[8]提出了一種基于自然環(huán)境特征的激光雷達與相機外部參數(shù)在線標定方法,但需要手動選擇兩類傳感器的配準點。Gaurav Pandey[9]提出一種共有信息最大化的無目標外部參數(shù)標定方法,該方法通過場景反射率使共有區(qū)域最大化,并通過克拉美羅下界(Cramer-Rao Lower Bound,CRLB)消除標定誤差,但是該方法過度依賴反射率信息。
目前,相機與激光雷達外部參數(shù)標定方法大都為手動或半自動化標定,不僅過程繁瑣,而且人為因素對標定誤差的影響較大。針對上述問題,本文提出一種面向無人駕駛汽車車載激光雷達與相機的在線快速自動標定方法,以安裝視覺標定板的試驗車為標定目標,從圖形和三維激光雷達數(shù)據(jù)中快速識別試驗車,進而求解相機與激光雷達之間的外部參數(shù)矩陣。
相機和激光雷達之間的外部參數(shù)標定問題實際上是相機坐標系與激光雷達坐標系之間的剛性轉(zhuǎn)換問題。在無人駕駛平臺上,相機以一定的傾斜角度安裝在前部,將前方的三維物體映射到二維圖像中,64線激光雷達水平安裝在平臺頂端,二者相對位置和姿態(tài)關系固定不變,故在相機和激光雷達的視場公共區(qū)域內(nèi),每個三維激光點在圖像中始終存在一個像素點與之對應。因此,相機和激光雷達之間的外部參數(shù)標定問題即三維激光點與二維圖像像素點之間的映射矩陣求解問題:
式中,(x,y,z)為三維激光點的坐標;(u,v)為三維激光點對應的二維圖像像素坐標;T為3×4矩陣,即所求的映射關系矩陣。
根據(jù)相機的小孔成像原理可知:
式中,fx、fy分別為相機在x方向和y方向的焦距;(cx,cy)為相機的主點位置;γ為相機的畸變參數(shù),可以通過MATLAB相機標定工具標定得到;R為世界坐標系到相機坐標系的旋轉(zhuǎn)矩陣;t為世界坐標系原點在相機坐標系中的位置矩陣。
因此,可認為相機的內(nèi)部參數(shù)為已知條件,三維激光點和圖像像素之間的映射關系求解問題可以轉(zhuǎn)換為相機與激光雷達之間的旋轉(zhuǎn)和平移關系求解問題。通過對若干對一致點構成的線性方程進行求解,可以獲得其最小二乘解。
考慮到在線標定的動態(tài)性和目標的唯一性要求,本文利用視覺標記板代替?zhèn)鹘y(tǒng)標定中的棋盤格,以便于視覺識別。同時,相機和激光雷達采集數(shù)據(jù)存在異步性,所以對t1時刻采集的圖像數(shù)據(jù)和t2時刻采集的激光點云數(shù)據(jù)分開進行處理。當試驗車輛和標記板(Marker)均成功識別后,輸出標記板相對于相機坐標系的位姿和試驗車輛相對于激光雷達的位姿,可認為這兩個位姿在世界坐標系中是等價的,因此提取一致點構成線性方程組,求解后通過評價函數(shù)判斷是否滿足收斂條件,若滿足,則終止,否則將一致點帶入方程組迭代求解,直至滿足最優(yōu)條件。算法流程如圖1所示。
圖1 在線標定算法流程
受虛擬現(xiàn)實技術啟發(fā),已知幾何尺寸的共面4個點可以確定該面在相機坐標系中的位置和姿態(tài)[6]。本文通過識別標記板,利用坐標轉(zhuǎn)換快速獲取試驗車輛在相機坐標系下的位姿關系,避免了基于深度學習方法的車輛識別在時間上的消耗問題與傳統(tǒng)雙面測量的誤檢問題。以標記板中心為坐標原點,標記板平面為X-Y面,則標記板4個頂點在標記板坐標系中的坐標分別為(l/2,l/2,0)、(-l/2,l/2,0)、(l/2,-l/2,0)、(-l/2,-l/2,0)。其中,l為標記板的物理邊長。標記板坐標系與相機坐標系之間的坐標轉(zhuǎn)換關系如圖2所示。
圖2 標記板坐標系與相機坐標系的轉(zhuǎn)換關系
根據(jù)小孔成像原理,空間坐標和圖像坐標之間的映射關系為:
式中,(xc,yc)為標記板頂點在圖像坐標系中的坐標;(xm,ym,zm)為頂點在標記板坐標系中的坐標,通常取zm=0;A為相機的內(nèi)部參數(shù)矩陣;M為透視投影變換矩陣;Tcm為相機坐標系到標記板坐標系的轉(zhuǎn)換矩陣,可以通過OpenCV 開源庫[10]中的solvePnP 函數(shù)求解得到;r11=cosβcosθ;r12=cosβsinθ;r13=-sinβ;r21=-cosαsinθ+sinφsinβcosθ;r22=cosφcosθ+sinαsinβsinθ;r23=sinφcosβ;r31=sinφsinθ+cosαsinβcosθ;r32=-sinαcosθ+cosφsinβsinθ;r33=cosαcosβ;φ、β、θ分別為相機坐標系與標記板坐標系之間的偏航角、俯仰角和翻滾角;tx、ty、tz分別為相機在標記板坐標系中x軸、y軸及z軸的空間坐標。
激光雷達能否正確識別試驗車輛的位姿是標定試驗成敗的關鍵因素,以最小外包立方體中的姿態(tài)表示,主要通過分割、聚類、車輛識別、試驗車輛跟蹤等幾個關鍵步驟實現(xiàn)。
3.3.1 分割
由于標定試驗在城區(qū)結(jié)構化環(huán)境下進行,本文采用文獻[11]中提出的基于線段擬合的快速路面分割算法,建立了三維點云數(shù)據(jù)的極坐標柵格圖,將數(shù)據(jù)點從三維空間(x,y,z)映射到二維空間(,z),然后在每個柵格中選擇高度最低的點作為地面候選點,對同屬于一個扇區(qū)的所有柵格的候選點進行線段擬合,將擬合線段作為候選地面,計算所有數(shù)據(jù)點到擬合線段的距離,根據(jù)距離大小和線段斜率區(qū)分障礙物點與地面點。
3.3.2 聚類
得到當前場景的路面信息之后,本文通過K-means[12]聚類算法對濾除地面激光點后的三維點云數(shù)據(jù)進行聚類。
3.3.3 車輛識別
車輛目標識別主要是在激光雷達點云數(shù)據(jù)中將其區(qū)別開來,以提高相機與激光雷達的識別一致性,如圖3 所示。得到聚類結(jié)果后,利用1 個面與地面重合的外接立方體近似車輛,該立方體的姿態(tài)即為當前聚類的姿態(tài)。車輛識別過程遵從以下原則:由于小型車輛的幾何尺寸可視為已知,故外接立方體的高度應在1.4~2.0 m 范圍內(nèi),寬度應小于2.0 m,長度不大于5.0 m;車輛在激光雷達的側(cè)前方,其三維點云數(shù)據(jù)投影到二維地面,通常都呈現(xiàn)L 型[13]。
圖3 前方的車輛目標識別
3.3.4 試驗車輛跟蹤
在得到當前場景中的車輛目標信息后,創(chuàng)建車輛目標動態(tài)狀態(tài)列表來存儲識別到的信息[13-14]。車輛狀態(tài)用六元組s={編號,位置,時間,姿態(tài),加速度,置信度}表示,并且根據(jù)識別結(jié)果實時更新狀態(tài)列表。由于標定試驗車的狀態(tài)在上一時刻已知,故可以利用最大關聯(lián)法將上一幀的試驗車狀態(tài)信息與當前識別的車輛狀態(tài)列表進行關聯(lián)匹配,從而在包含眾多車輛目標的雷達數(shù)據(jù)中精準聚類。在關聯(lián)匹配的過程中需要考慮試驗車輛本身的運動學特性:
式中,Kmax為最大曲率;φmax為最大轉(zhuǎn)向角;rmin為最小轉(zhuǎn)彎半徑;L為車輛軸距;k為車輛當前運行軌跡曲率;φ為標定對象車輛的當前轉(zhuǎn)角;xt、yt分別為t時刻前方車輛在試驗本車坐標系中的橫向坐標和縱向坐標;vmax為車輛允許的最大行駛速度;t為試驗本車識別的時間間隔;θ為標定對象車輛的航向角。
為實現(xiàn)平移和轉(zhuǎn)換矩陣最優(yōu)化,即標記板和試驗車三維激光雷達聚類外包立方體的后部共面,通過評估函數(shù)[1]實現(xiàn)外部參數(shù)的優(yōu)化評價:
式中,pi為第i個標記板在相機坐標系中的位置;O為選擇矩陣;T(x,y,z)為平移矩陣;qi,j為第i個位置的標記板中心點在第j幀激光雷達數(shù)據(jù)中的坐標;ni為第i個標記板位置的標記板面法向量。
采用自主研發(fā)的“智能先鋒”系列無人駕駛汽車平臺,以正后方配置視覺標記板的車輛為標定對象,試驗本車上安裝有Velodyne HDL 64E 激光雷達與映美精高清相機,即為待標定的兩類傳感器,如圖4所示。
圖4 試驗平臺
標定試驗在開放式的城區(qū)道路環(huán)境中進行,首先將本文提出的方法與開源軟件Autoware[4]庫中基于棋盤格的激光雷達與相機靜態(tài)手動標定方法進行對比分析,結(jié)果如表1 所示。表1 中,α、β、γ分別為相機與雷達之間的俯仰角、側(cè)傾角及橫擺角,x、y、z分別為相機與激光雷達之間的空間位移關系。從表中可以看出,本文方法產(chǎn)生結(jié)果與Autoware中標定方法的標定結(jié)果非常接近,平均誤差雖然略大于Autoware中方法,但對最終信息融合結(jié)果影響不大,且本文方法的主要優(yōu)勢在于自動化和節(jié)約時間。為了直觀地驗證和顯示標定結(jié)果,選擇不同位置的三維激光點云數(shù)據(jù)映射到高清相機圖像中,如圖5所示。從圖5中可以看出,車輛及其邊緣得到了較好匹配,雖然周圍存在少數(shù)誤差點,但不影響整體的融合效果,可見,標定結(jié)果能夠較好地滿足無人車激光雷達與相機之間的信息融合要求。
表1 相機與激光雷達的外參標定結(jié)果
圖5 激光雷達數(shù)據(jù)與圖像映射結(jié)果
本文提出了一種面向無人駕駛汽車車載激光雷達與相機的外部參數(shù)快速自動標定方法。以配置有視覺標記板的車輛為標定目標,本車上相機與激光雷達之間的外部參數(shù)可以通過本文提出的標定算法自動完成。試驗結(jié)果表明,本文提出的標定方法可靠,但是車輛在行駛過程中,受顛簸等因素影響,可能會增大標定誤差。如何克服或補償顛簸或檢測精度等因素導致的標定誤差累積問題是下一步研究的重點內(nèi)容。