劉 振,王甦菁,李 擎
(1.北京信息科技大學(xué) 高動態(tài)導(dǎo)航技術(shù)北京市重點實驗室,北京 100101;2.中國科學(xué)院心理研究所 行為科學(xué)重點實驗室,北京 100101)
隨著無人駕駛技術(shù)的發(fā)展,基于外部傳感器的無人車能夠?qū)崿F(xiàn)對例如車輛、道路等周圍環(huán)境的信息感知[1]。基于3D 激光雷達(dá)和攝像機的兩種傳感器之間的信息融合可以有效解決無人車的環(huán)境感知任務(wù)[2]。3D 激光雷達(dá)可以提供物體豐富的結(jié)構(gòu)信息,攝像機可以提供物體豐富的顏色和特征信息,然后通過先進(jìn)的算法融合3D激光雷達(dá)和攝像機數(shù)據(jù)來檢測車輛等障礙物[3]。每個傳感器以互補的方式提供數(shù)據(jù),以產(chǎn)生統(tǒng)一和精確的結(jié)果,因此兩者信息的融合成為當(dāng)前研究的熱點。
激光雷達(dá)和攝像機是兩種類型不同的傳感器,使用標(biāo)準(zhǔn)的方法容易且快速標(biāo)定出兩者之間的外部參數(shù)是進(jìn)行數(shù)據(jù)融合的前提。2D 激光雷達(dá)和相機傳感器的標(biāo)定包括基于平面棋盤格的標(biāo)定方法[4-5]或采用正交三面體[6]或V 形靶標(biāo)[7]作為標(biāo)定物的標(biāo)定方法等。文獻(xiàn)[4]使用了平面棋盤格標(biāo)定板來標(biāo)定激光雷達(dá)和攝像機,將平面標(biāo)定板放置于攝像機和激光雷達(dá)的視野中,首先估計出攝像機與不同擺放位置的棋盤平面標(biāo)定板的相對姿態(tài),利用標(biāo)定平面上激光雷達(dá)掃描點與平面之間的約束以獲得線性解,但該方法至少需要5 次棋盤格標(biāo)定板的數(shù)據(jù)才能實現(xiàn)標(biāo)定。文獻(xiàn)[5]將現(xiàn)有的2D 激光雷達(dá)和攝像機的標(biāo)定方法擴展到3D 激光雷達(dá),采用類似于文獻(xiàn)[8]所描述的通過幾何約束關(guān)系來估計激光雷達(dá)與相機的外參數(shù),但該標(biāo)定過程也要求采集至少三次平面標(biāo)定板數(shù)據(jù)才能完成標(biāo)定。文獻(xiàn)[9]采用一塊直角梯形棋盤格標(biāo)定板來完成激光雷達(dá)和攝像機的標(biāo)定過程,利用黑白棋盤格得到攝像機的外部參數(shù),利用激光雷達(dá)在梯形標(biāo)定板上的掃描信息得到激光雷達(dá)在車體上的安裝高度和俯仰角度。雖然該方法只需要采集一次數(shù)據(jù)就可以完成激光雷達(dá)和相機的聯(lián)合標(biāo)定,但是其梯形標(biāo)定板不易制作。
本文在文獻(xiàn)[9]的基礎(chǔ)上結(jié)合所使用3D 激光雷達(dá)的特性改進(jìn)了標(biāo)定方法,只需要利用一塊黑白棋盤格標(biāo)定板就可以完成對激光雷達(dá)和攝像機的標(biāo)定過程。實驗中將棋盤格標(biāo)定板放置在車體的正前方視野中,采集一次數(shù)據(jù)就可以實現(xiàn)對激光雷達(dá)、攝像機和車體構(gòu)成的整個系統(tǒng)的標(biāo)定,該方法簡化了標(biāo)定操作過程,易于實現(xiàn)。
激光雷達(dá)作為無人車對車輛周圍環(huán)境進(jìn)行感知的主要傳感器,一般采用與車體剛性連接的方式。在實際安裝時不可避免會出現(xiàn)一定的俯仰角度、偏轉(zhuǎn)角度和橫滾角度。在實際安裝過程中,由于橫滾角度和偏轉(zhuǎn)角度一般情況下很小,所以本文中假定橫滾角和偏移角為0。圖1為3D 激光雷達(dá)、攝像機與車體的相對安裝位置。
圖1 安裝位置示意圖Fig.1 Schematic diagram of installation location
3D 激光雷達(dá)掃描模型的側(cè)視圖如圖2所示。圖2中激光雷達(dá)的安裝高度為h,Ols為3D 激光雷達(dá)坐標(biāo)系原點,(xveh,yveh,zveh)為車體坐標(biāo)系,Oveh為車體坐標(biāo)系原點,將3D 激光雷達(dá)內(nèi)部N個激光器從下至上依次標(biāo)號為0,1,2,…,i,…,N,φ為3D 激光雷達(dá)出廠時標(biāo)定的相鄰兩線束間隔的俯仰角。
第零束和第一束激光由于有較大的俯仰角掃描到地面的數(shù)據(jù)點可分別表示為P0(ρ0,θ0,δ0) 和P1(ρ1,θ1,δ1),ρ0和ρ1分別為兩線束的距離值,θ0和θ1分別為其水平角度,δ0,δ1分別為俯仰角度,相差φ。則將激光雷達(dá)坐標(biāo)系轉(zhuǎn)換到車體坐標(biāo)系的轉(zhuǎn)換關(guān)系為:
圖2 3D 激光雷達(dá)掃描模型側(cè)視圖Fig.2 Side view of scan model of 3D LIDAR
可將式(1)簡寫為:
式中,Rls->veh,Tls->veh分別為激光雷達(dá)坐標(biāo)系到車體坐標(biāo)系的旋轉(zhuǎn)矩陣和平移向量。
把兩束激光雷達(dá)掃描線投影至yveh-zveh平面,分別求取最大值OlsA=max(ρ0·sinθ0),OlsB=max(ρ1·sinθ1)。由幾何關(guān)系可知△AOvehOls和△BOvehOls構(gòu)成直角三角形。根據(jù)正弦定理有:
由式(3)~式(5)聯(lián)合建立約束方程,可以求解出激光雷達(dá)的安裝高度和俯仰角。在實際計算中,由多束激光掃描至地面的信息可求得多組解,使用最小二乘法減小估計誤差。
為建立攝像機坐標(biāo)系與車體坐標(biāo)系的變換關(guān)系,將棋盤格標(biāo)定板垂直地面擺放在車體正前方視野中,提高棋盤格角點提取的精度和攝像機外參數(shù)標(biāo)定的準(zhǔn)確性,棋盤格坐標(biāo)系也易于轉(zhuǎn)換為車體坐標(biāo)系。圖3顯示了棋盤格標(biāo)定板與車體的相對擺放姿態(tài)。
建立棋盤格坐標(biāo)系與車體坐標(biāo)系的旋轉(zhuǎn)矩陣為:
圖3 車體坐標(biāo)與棋盤格坐標(biāo)示意圖Fig.3 Schematic diagram of vehicle coordinates and checkerboard coordinates
得到棋盤格坐標(biāo)系中的坐標(biāo)點Ppla與車體坐標(biāo)系中的坐標(biāo)點Pveh的轉(zhuǎn)換關(guān)系為:
式中,Rpla->veh,Tpla->veh分別為攝像機坐標(biāo)系到車體坐標(biāo)系的旋轉(zhuǎn)矩陣和平移向量。
以棋盤格坐標(biāo)系作為世界坐標(biāo)系,棋盤格坐標(biāo)系與攝像機的轉(zhuǎn)換關(guān)系為:
式中,Rpla->cam,Tpla->cam分別為棋盤格坐標(biāo)系到攝像機坐標(biāo)系的旋轉(zhuǎn)矩陣和平移向量。
車輛坐標(biāo)系與攝像機坐標(biāo)系的轉(zhuǎn)換關(guān)系為:
式中,Rpla->cam,Tpla->cam分別為車輛坐標(biāo)系與攝像機坐標(biāo)系的旋轉(zhuǎn)矩陣和平移向量。Rveh->cam可由Rpla->cam和Rpla->veh得到:
為得到旋轉(zhuǎn)矩陣Rpla->cam,由攝像機的透視投影關(guān)系,可以建立棋盤格坐標(biāo)系的齊次坐標(biāo)M(x,y,z,1)和角點在圖像中的像素齊次坐標(biāo)m(u,v,1)的位置映射關(guān)系:
然后對由m和M對應(yīng)的點集合構(gòu)成的線性方程求解,得到H的最小二乘解。其中:
式中,λ為縮放因子,在攝像機選定情況下攝像機內(nèi)部參數(shù)K也就確定,由此得到外參Rpla->cam。具體求解過程參見文獻(xiàn)[8]。
綜合激光雷達(dá)與車體及攝像機與車體的標(biāo)定結(jié)果可以建立攝像機坐標(biāo)系與激光雷達(dá)坐標(biāo)系的轉(zhuǎn)換關(guān)系,實現(xiàn)攝像機與激光雷達(dá)的聯(lián)合標(biāo)定:
為了驗證本方法的標(biāo)定效果,進(jìn)一步把激光雷達(dá)數(shù)據(jù)點與圖像像素進(jìn)行融合,得到其在圖像中的位置。由攝像機坐標(biāo)系與圖像像素坐標(biāo)系的轉(zhuǎn)換關(guān)系:
可得到激光雷達(dá)坐標(biāo)系與圖像像素坐標(biāo)系的轉(zhuǎn)換關(guān)系為:
本實驗選用的3D 激光雷達(dá)為鐳神智能公司生產(chǎn)的C16 多線混合固態(tài)激光雷達(dá),雷達(dá)外殼內(nèi),安裝有16 對固定在軸承上的激光發(fā)射與激光接收裝置,通過內(nèi)部的電機旋轉(zhuǎn)以5 Hz轉(zhuǎn)速下進(jìn)行360°的全景掃描,測程范圍為0.5~120 m,測距精度為±3 cm,垂直視場角為±15°,垂直方向上角度分辨率為2°,水平方向角度分辨率為0.09°。攝像機分辨率為1920×1080。在實際場景實驗中,將激光雷達(dá)水平安裝在一輛電動車的前方正中點的位置,攝像機處于激光雷達(dá)的正上方0.2 m,標(biāo)定板擺放在車體正前方約4 m 的位置,通過Camera Calibration Toolbox for Matlab[10]標(biāo)定工具箱可以直接標(biāo)定出攝像機的內(nèi)參數(shù)K,所以采集一次數(shù)據(jù)即可實現(xiàn)激光雷達(dá)、攝像機和車體的聯(lián)合標(biāo)定。
圖4為3D 激光雷達(dá)數(shù)據(jù)點與圖像像素融合的效果圖,由距離車體的遠(yuǎn)近,將3D 激光雷達(dá)數(shù)據(jù)點以顏色漸變的方式可視化,距離越遠(yuǎn)顏色越深。
圖4 3D 激光雷達(dá)數(shù)據(jù)點與圖像像素融合的結(jié)果Fig.4 Result of fusing 3D LIDAR data points with image pixels
由圖4融合結(jié)果可以容易看出,位于障礙物板邊緣處的三維數(shù)據(jù)點由于距離發(fā)生了突變,相應(yīng)的像素點顏色也隨之發(fā)生了很大的變化,對于激光雷達(dá)探測的較遠(yuǎn)處場景也能很好地體現(xiàn)出來。3D 激光雷達(dá)數(shù)據(jù)點與圖像像素實現(xiàn)了較好的融合,標(biāo)定結(jié)果基本滿足實際情況。但從水平方向看激光雷達(dá)像素點出現(xiàn)較小右移的情況,而且越靠近垂直方向上方的激光束掃描點右移情況越明顯,這可能是激光雷達(dá)每線束在水平方向有偏轉(zhuǎn)角誤差導(dǎo)致,在接下來的研究中將尋求通過標(biāo)定的方法得到誤差角并給予補償,提高標(biāo)定精度。
為解決3D 激光雷達(dá)數(shù)據(jù)點與圖像像素信息融合的問題,本文提出一種3D 激光雷達(dá)與攝像機聯(lián)合標(biāo)定的方法。實驗結(jié)果表明所提出的標(biāo)定方法基本滿足實際情況,易于實現(xiàn)。