北京交通大學(xué)計(jì)算機(jī)與信息技術(shù)學(xué)院 茍悅宬 鄧志堅(jiān) 黃成梁 周圍
三維點(diǎn)云數(shù)據(jù)作為空間信息數(shù)字化的重要表現(xiàn)應(yīng)用日益廣泛。隨著無人駕駛技術(shù)的不斷發(fā)展,三維點(diǎn)云的采集、處理、可視化等應(yīng)用技術(shù)和研究越來越多。該研究基于無人駕駛領(lǐng)域,對(duì)三維點(diǎn)云數(shù)據(jù)采集、處理、可視化的過程、行業(yè)應(yīng)用和研究進(jìn)展進(jìn)行了調(diào)研和歸納,理清整體脈絡(luò);進(jìn)而利用無人駕駛實(shí)體車輛進(jìn)行校園三維點(diǎn)云數(shù)據(jù)采集和高精度地圖的制作;最后對(duì)三維點(diǎn)云的應(yīng)用及高精度地圖的發(fā)展前景提出了展望。
點(diǎn)云是一種常見的3D形狀的表達(dá)方式,我們可以通過點(diǎn)云來表示一個(gè)物體或者一個(gè)場(chǎng)景。通過不同角度觀察,得到點(diǎn)云。我們通過人眼可以分辨出點(diǎn)云所代表的物體的類別、猜測(cè)物體可能蘊(yùn)含的功能以及通過不完整的點(diǎn)集來還原出物體本來的形狀。
三維點(diǎn)云模型因具有良好的形狀表達(dá)能力,在機(jī)器人、自動(dòng)駕駛、場(chǎng)景重建等領(lǐng)域有著廣泛的應(yīng)用[1],此外還在建筑物三維建模、文物保護(hù)、地質(zhì)災(zāi)害監(jiān)測(cè)、土木工程、設(shè)施維修、軍事農(nóng)業(yè)等領(lǐng)域起到了很大的作用[2]。
無人駕駛領(lǐng)域的三維點(diǎn)云數(shù)據(jù)主要與高精度地圖結(jié)合緊密。高精度地圖是無人駕駛領(lǐng)域的剛需,在整個(gè)無人駕駛領(lǐng)域中不可或缺,高精度地圖可以幫助汽車預(yù)先感知路面復(fù)雜信息,比如說路面的坡度、曲率、航向,結(jié)合智能路徑規(guī)劃,從而使汽車對(duì)路面狀況做出正確響應(yīng)。高精地圖是指高精度、精細(xì)化的地圖,與普通電子地圖相比,其不僅有準(zhǔn)確的坐標(biāo), 還能準(zhǔn)確的描繪道路形狀、車道線等[3]。正是因?yàn)楦呔鹊缆穼?dǎo)航地圖豐富的信息含量,使得它具有龐大的數(shù)據(jù)量,而傳統(tǒng)的集中式大數(shù)據(jù)處理模式無法滿足它的計(jì)算需求。
目前的高精度地圖,在封閉園區(qū)內(nèi)使用的居多。國(guó)內(nèi)的研究主要由清華大學(xué)、吉林大學(xué)領(lǐng)銜,成立了中國(guó)自動(dòng)駕駛地圖工作組。2015年起,各大互聯(lián)網(wǎng)企業(yè)紛紛投身到無人車的研究中來,開始推動(dòng)這一行業(yè)走向高潮[4]。
國(guó)外許多傳統(tǒng)地圖廠商,如Here、TomTom等,也投入對(duì)高精度地圖的研發(fā)和生產(chǎn)當(dāng)中[5]。國(guó)外高校對(duì)于高精度地圖也有許多研究。比如斯坦福大學(xué)專門研究高精度地圖的項(xiàng)目Civil Maps。
作為自動(dòng)駕駛產(chǎn)業(yè)鏈中重要的一環(huán),高精度地圖的作用十分關(guān)鍵。高精度地圖可為自動(dòng)駕駛汽車提供精準(zhǔn)的定位、輔助環(huán)境感知,并幫助實(shí)現(xiàn)決策規(guī)劃,提高自動(dòng)駕駛安全性。自動(dòng)駕駛提供完備的周邊環(huán)境信息,為定位和路徑規(guī)劃提供重要依據(jù)。
隨著無人駕駛技術(shù)的不斷發(fā)展,其對(duì)環(huán)境感知的要求也越來越高,在這種背景下,高精度地圖就顯得愈發(fā)重要。使用高精度地圖配合傳感器是目前自動(dòng)駕駛應(yīng)對(duì)復(fù)雜交通環(huán)境最有效的方案[6]。
就目前看來,高精度地圖只是做了初步研究,與真正實(shí)現(xiàn)無人駕駛還是有很長(zhǎng)的距離。本研究基于無人駕駛實(shí)體車采集校園真實(shí)點(diǎn)云數(shù)據(jù),由于點(diǎn)云數(shù)據(jù)標(biāo)準(zhǔn)和軟件繁多,本研究基于開源軟件進(jìn)行數(shù)據(jù)處理和制作,反復(fù)測(cè)試整理,以期為案例稀缺的校園點(diǎn)云地圖應(yīng)用提供案例。
三維點(diǎn)云數(shù)據(jù)處理過程如圖1所示。
圖1 三維點(diǎn)云數(shù)據(jù)處理過程Fig.1 3D point cloud data processing
1.1.1 采集設(shè)備
高精度地圖的數(shù)據(jù)采集主要有兩種形式:其一是激光雷達(dá)和攝像頭配合GPS,其二是攝像頭和GPS配合計(jì)算距離算法。也就是需要一些傳感器來采集數(shù)據(jù)。
激光雷達(dá)主要用來采集點(diǎn)云數(shù)據(jù),因?yàn)榧す饫走_(dá)可以精確的反應(yīng)出位置信息,所以激光雷達(dá)可以知道路面的寬度,紅綠燈的高度,以及一些其他的信息。可裝載于無人車、遙控機(jī)、普通汽車等載體上,主要使用Velodyne的新款VLP-16傳感器[7]。攝像頭主要是來采集一些路面的標(biāo)志、車道線等,因?yàn)閳D像的像素信息更多,而位置信息不太精確,所以采用攝像頭來識(shí)別車道線,路面的一些標(biāo)志等。此外還有GNSS(全球?qū)Ш叫l(wèi)星系統(tǒng))可以記錄車輛的位置信息,IMU(慣性測(cè)量單元)可以用來捕獲車輛的角度和加速度信息,并校正車輛的位置和角度。
實(shí)驗(yàn)中將激光雷達(dá)等工具搭載在百度Apollo等無人車上使用。
1.1.2 操作系統(tǒng)與相關(guān)軟件
Linux在點(diǎn)云處理的方面要比其他操作系統(tǒng)更為成熟,相關(guān)的pcl環(huán)境配置簡(jiǎn)便快捷。并且Linux擁有相對(duì)較少的系統(tǒng)資源占用,安裝便捷,且所有組件的源代碼都是自由的,這里選用Linux作為主要使用的操作系統(tǒng)。
Robot Operating System (ROS)是一個(gè)得到廣泛應(yīng)用的機(jī)器人系統(tǒng)的軟件框架,它包含了一系列的軟件庫(kù)和工具用于構(gòu)建機(jī)器人應(yīng)用[8]。Rviz是ROS中一款三維可視化平臺(tái),能夠?qū)崿F(xiàn)對(duì)外部信息的圖形化顯示。
此外還有Cloud Compare、BCAL LiDAR Tools等一些軟件可以實(shí)現(xiàn)點(diǎn)云數(shù)據(jù)可視化處理。
1.1.3 開源數(shù)據(jù)
關(guān)于三維點(diǎn)云數(shù)據(jù)的開源數(shù)據(jù)有很多,比如悉尼城市目標(biāo)數(shù)據(jù)集、斯坦福大學(xué)的3D掃描存儲(chǔ)庫(kù)、ASL數(shù)據(jù)集等。國(guó)內(nèi)在此方面的發(fā)展比較薄弱,還需要進(jìn)行相關(guān)開源點(diǎn)云數(shù)據(jù)方面的發(fā)展。
1.2.1 數(shù)據(jù)的濾波處理
管理點(diǎn)云數(shù)據(jù)常見的方式是使用PCL,PCL(Point Cloud Library)是一個(gè)大型跨平臺(tái)開源C++編程庫(kù)。點(diǎn)云文件PCD(Point Cloud Data)是PCL中的數(shù)據(jù)存儲(chǔ)類型。
實(shí)際中,由于點(diǎn)云數(shù)據(jù)密度不規(guī)則、離群點(diǎn)或噪聲數(shù)據(jù)等原因,需要對(duì)點(diǎn)云數(shù)據(jù)進(jìn)行濾波處理。常見的濾波方法見表1。
1.2.2 泊松分布的濾波處理
傳統(tǒng)雙邊濾波存在一個(gè)很大的問題即:兩個(gè)高斯核函數(shù)的參數(shù)σs(空間相似性的高斯標(biāo)準(zhǔn)差)和σr(灰度相似性的高斯核標(biāo)準(zhǔn)差)必須根據(jù)經(jīng)驗(yàn)來選取,其工作量很大,且必須調(diào)整兩個(gè)參數(shù),不具有一定的適應(yīng)性。這里嘗試用不同的分布函數(shù)來實(shí)現(xiàn)權(quán)值的分配,這里嘗試使用泊松分布[10]。
由泊松分布的分布函數(shù)應(yīng)用到圖像中,使用中心像素點(diǎn)(i,j)的灰度值作為泊松分布參數(shù)λ,p(i,j)(x=k)為對(duì)應(yīng)像素點(diǎn)(i,j)對(duì)應(yīng)的泊松分布函數(shù),由泊松分布的性質(zhì)可知,分布函數(shù)會(huì)隨著灰度值k的變化而改變,并且灰度值達(dá)到一定值時(shí)近似于高斯分布,因此具有一定的自適應(yīng)性[10]。
1.2.3 數(shù)據(jù)格式及轉(zhuǎn)換
一般以.bag文件或以.pcap文件的方式記錄數(shù)據(jù),可以對(duì)記錄下的數(shù)據(jù)進(jìn)行各種優(yōu)化處理與回放演示。關(guān)于點(diǎn)云顯示的直接文件是.pcd文件,這里對(duì)于這三種文件的格式和轉(zhuǎn)換作一些說明,為后面實(shí)驗(yàn)中的方案選擇作一個(gè)指導(dǎo)。
由表2可見,Linux下這些三維點(diǎn)云處理過程中常用的數(shù)據(jù)格式的轉(zhuǎn)換是非常方便的,其他操作系統(tǒng)也有很多轉(zhuǎn)換方法,但都不如Linux的實(shí)用性強(qiáng)。
表2 數(shù)據(jù)格式及轉(zhuǎn)換Tab.2 Data format and conversion
一個(gè)標(biāo)準(zhǔn)的高清地圖創(chuàng)建系統(tǒng)包括兩個(gè)核心組件:3D點(diǎn)云拼接和語義特征提取。3D點(diǎn)云拼接通常采用基于圖的SLAM進(jìn)行分層細(xì)化,其中的關(guān)鍵組件是位姿圖,可以對(duì)LiDAR位姿之間的關(guān)系進(jìn)行建模[12]。語義特征提取包含機(jī)器學(xué)習(xí)和人工監(jiān)督的迭代過程。
最終輸出包括一個(gè)點(diǎn)云地圖,它是一個(gè)密集的3D點(diǎn)云。其中點(diǎn)云是某個(gè)坐標(biāo)系下的點(diǎn)的數(shù)據(jù)集。點(diǎn)包含了豐富的信息,包括三維坐標(biāo)X,Y,Z、顏色、分類值、強(qiáng)度值、時(shí)間等,不一一列舉[13]。
所用的主要數(shù)據(jù)格式為.bag文件與.pcd文件。
.bag文件是用于存儲(chǔ)ROS相關(guān)文件格式信息的數(shù)據(jù)袋,.bag擴(kuò)展名因此而得名。.bag文件在ROS中起著重要作用,并且ROS編寫了各種工具來允許存儲(chǔ),處理,分析和可視化它們。
BAG文件格式如下:
#ROSBAG V2.0
每條記錄的格式如下:
記錄的數(shù)據(jù)格式見表3。
表3 記錄的數(shù)據(jù)格式Tab.3 Record data format
每條記錄的標(biāo)頭包含一系列name=value的字段,如下
標(biāo)頭記錄的數(shù)據(jù)格式見表4。
表4 標(biāo)頭記錄的數(shù)據(jù)格式Tab.4 Data format of header record
點(diǎn)云顯示的直接文件是.pcd文件,支持由PCL庫(kù)引進(jìn)n維點(diǎn)類型機(jī)制處理過程中的某些擴(kuò)展,是一種較為通用的點(diǎn)云數(shù)據(jù)處理類型,其格式見圖2所示。
圖2 .pcd格式說明Fig.2 .pcd format description
2.2.1 繪制方案
總體流程見圖3。
圖3 地圖繪制流程Fig.3 Map drawing process
我們繪制地圖時(shí)有以下三種方案。
(1)使用了linux系統(tǒng)下的ROS。通過Rviz平臺(tái)讀取事先采集的.bag數(shù)據(jù)包,呈現(xiàn)點(diǎn)云化的校園場(chǎng)景。
(2)使用與VLP-16激光雷達(dá)相配套的可視化軟件VeloView,顯示錄制好的.pcap數(shù)據(jù)包。
(3)使用開源軟件Cloud Compare讀取.pcd數(shù)據(jù)包實(shí)現(xiàn)可視化。
2.2.2 實(shí)際展示
校園一角(俯視圖)見圖4。
圖4 繪制地圖(俯視圖)Fig.4 Mapping (top view)
校園一角(主視圖)見圖5。
圖5 繪制地圖(主視圖)Fig.5 Mapping (main view)
目前為止,我國(guó)在無人駕駛領(lǐng)域還處于研發(fā)的初級(jí)階段,2015年政府才將自動(dòng)駕駛技術(shù)納入國(guó)家頂層規(guī)劃中,各種關(guān)于封閉園區(qū)內(nèi)與封閉園區(qū)外的實(shí)驗(yàn)實(shí)例數(shù)量很少。
本次北京交通大學(xué)園區(qū)內(nèi)點(diǎn)云地圖的掃描、繪制實(shí)驗(yàn)為當(dāng)今我國(guó)封閉園區(qū)內(nèi)無人駕駛的實(shí)例作了補(bǔ)充,并研究了常用的三維點(diǎn)云采集方法、數(shù)據(jù)格式及其轉(zhuǎn)換,為無人駕駛領(lǐng)域的數(shù)據(jù)處理提出了優(yōu)化方法,并對(duì)通用的點(diǎn)云數(shù)據(jù)采集、處理流程做了總結(jié)。
引用
[1] 張溯,楊軍.利用空間結(jié)構(gòu)信息的三維點(diǎn)云模型分類[J].小型微型計(jì)算機(jī)系統(tǒng),2021,42(4):779-784.
[2] 張亞,山鋒,王濤.三維激光掃描技術(shù)點(diǎn)云數(shù)據(jù)采集與配準(zhǔn)研究[J].地理空間信息,2021,19(3):24-27+6.
[3] 陳宗娟,孫二鑫,李丹丹,等.高精地圖現(xiàn)狀分析與實(shí)現(xiàn)方案研究[J].電腦知識(shí)與技術(shù),2018,14(22):270-272.
[4] 常昊.無人駕駛汽車現(xiàn)狀的分析和意見建議[J].內(nèi)燃機(jī)與配件,2018(9):240.
[5] 李鑫慧,郭蓬,戎輝,等.高精度地圖技術(shù)研究現(xiàn)狀及其應(yīng)用[J].汽車電器,2019(6):1-3.
[6] 潘霞,張慶余,朱強(qiáng).高精度地圖在自動(dòng)駕駛領(lǐng)域的作用及意義解析[J].時(shí)代汽車,2019(4):49-50+53.
[7] 許毅,郭際明,方孟元,等.基于VLP-16激光雷達(dá)的360°全站式激光掃描儀設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪通報(bào),2016(S2):186-189.
[8] 金志熙,王宏遠(yuǎn),勾尤旭,等.基于ROS目標(biāo)跟蹤移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)驗(yàn)[J].電腦知識(shí)與技術(shù),2021,17(2):1-3.
[9] 石野,王曉凱,劉慧鋒.基于局部濾波模板的雙邊濾波算法研究[J].測(cè)試技術(shù)學(xué)報(bào),2021,35(1):49-53.
[10] 楊贊偉,鄭亮亮,曲宏松,等.聯(lián)合均值濾波與泊松核雙邊濾波降噪算法研究[J].計(jì)算機(jī)仿真,2020,37(9):460-463+468.
[11] 洪霄.基于激光雷達(dá)的3D點(diǎn)云目標(biāo)識(shí)別[D].哈爾濱:哈爾濱工程大學(xué),2020.
[12] 譚毅瀅,魏拾其,宋健洪,等.地基LiDAR技術(shù)在活動(dòng)斷層三維場(chǎng)景建模中的關(guān)鍵技術(shù)與應(yīng)用[J].中山大學(xué)學(xué)報(bào)(自然科學(xué)版),2021,60(3):78-87.
[13] 焦宏偉,秦石喬,胡春生,等.一種脈沖激光雷達(dá)與攝像機(jī)標(biāo)定方法的研究[J].中國(guó)激光,2011,38(1):221-225.