【導讀】因此自2008年后,學術界已經很少研究基于視覺系統(tǒng)的車道線檢測,轉而利用激光雷達檢測車道線,激光雷達可以解決基于視覺系統(tǒng)的車道線檢測有諸多缺陷,包括車道線被水覆蓋,激光雷達最大可穿越70米的水深。
基于視覺系統(tǒng)的車道線檢測有諸多缺陷。
首先,視覺系統(tǒng)對背景光線很敏感,諸如陽光強烈的林蔭道,車道線被光線分割成碎片,致使無法提取出車道線。
其次,視覺系統(tǒng)需要車道線的標識完整,有些年久失修的道路,車道線標記不明顯,不完整,有些剛開通幾年的道路也是如此。
第三,視覺系統(tǒng)需要車道線的格式統(tǒng)一,這對按照模型庫識別車道線的系統(tǒng)尤其重要,有些車道線格式很奇特,比如藍顏色的車道線,很窄的車道線,模型庫必須走遍全國將這些奇特的車道線一一收錄,才能保證順利檢測。
再次,視覺系統(tǒng)無法對應低照度環(huán)境,尤其是沒有路燈的黑夜。一般LKW要求時速在72公里以上才啟動,原因之一是速度比較高時人不會輕易換道,另一個原因就是比較低的車速意味著視覺系統(tǒng)的取樣點不足,擬合的車道線準確度較低。而激光雷達的有效距離一般是視覺系統(tǒng)的4-5倍,有效的采樣點比較多,車速較低時檢測準確度遠高于視覺系統(tǒng)。
最后,如果車道線表面被水覆蓋,視覺系統(tǒng)會完全無效。視覺系統(tǒng)最大的優(yōu)點就是成本低。因此自2008年后,學術界已經很少研究基于視覺系統(tǒng)的車道線檢測,轉而利用激光雷達檢測車道線,激光雷達可以解決上述所有問題,包括車道線被水覆蓋,激光雷達最大可穿越70米的水深。
激光雷達唯一的缺點就是成本太高。
基于雷達掃描點密度的車道線檢測
早期激光雷達檢測車道線是基于雷達掃描點密度的車道線檢測方法,該方法通過獲取雷達掃描點的坐標并轉換成柵格圖,用原始數據映射柵格圖,可以是直接坐標柵格圖也可以是極坐標柵格圖。
按照后期處理需要進行選擇,極坐標柵格圖被直接用于車道線識別,即有多個點映射的柵格就被認為是車道線點,該識別方法對特征提取的要求很高,且受距離影響嚴重,因為極坐標柵格距離越近柵格精度越高,車道線識別的精度越高,距離越遠柵格精度越低導致識別車道線的精度就越低然后利用柵格圖中點的密度提取車道線。
對于點密度的求取可以采用直方圖統(tǒng)計的方式,通過直方圖統(tǒng)計點密度快捷直觀,容易理解。由于基于掃描點密度的檢測方法沒有很復雜的中間過程,所以實時性高,在快速檢測中受到大家的青睞。
但是該方法只獲取了掃描點的位置信息,對于雷達反饋的其他信息都沒有進一步分析,容易把一些與車道線掃描點密度類似的道路信息混進車道線檢測結果中;或者在車道線與其他障礙物靠近或重合時,無法區(qū)分出障礙物和車道線,他們只能被當作一個整體保留或剔除。
所以此方法的抗干擾能力差,容易出現誤檢。這種方法目前已經不常使用。
激光雷達檢測車道線的四種方法
目前激光雷達檢測車道線主要有四種方法:
- 基于激光雷達回波寬度;
- 基于激光雷達反射強度信息形成的灰度圖,或者根據強度信息與高程信息配合,過濾出無效信息;
- 激光雷達SLAM與高精度地圖配合,不僅檢測車道線還進行自車定位;
- 利用激光雷達能夠獲取路沿高度信息或物理反射信息不同的特性,先檢測出路沿,因為道路寬度是已知,根據距離再推算出車道線位置。對于某些路沿與路面高度相差低于3厘米的道路,這種方法無法使用。
后三種方法需要多線激光雷達,最少也是16線激光雷達。前者可以使用4線或單線激光雷達,考慮到奧迪A8已經開始使用4線激光雷達,4線激光雷達已經進入實用階段。
當然,這四種方法也可以混合使用。
車道線檢測兩步走
車道線檢測基本分兩部走:提取幾何或物理特征,利用離散數據擬合成車道線。無論是視覺還是激光雷達,通常都是用最小二乘法擬合車道線。
離散數據擬合車道線
Ibeo是最適合第一種方法的激光雷達。Ibeo的激光雷達特有三次回波技術。每點激光返回三個回波,返回信息能夠更加可靠地還原被測物體,同時能夠精確分析相關物體數據,并能識別雨、霧、雪等不相關物體的數據。
如圖所示,其中W表示回波脈沖寬度,d表示掃描目標的距離。反射率作為物體的固有屬性,受物體材質、顏色等的影響,能夠很好地反映物體特征,不同顏色。
密度的物體的反射率都有一定的差異,物體反射率決定Ibeo回波脈沖寬度特性,路面和車道線有著明顯的差異,所以可以利用回波脈沖寬度的差異對目標進行區(qū)分。
上圖為典型的車道線標識
回波寬度
很明顯,路面的回波寬度在2米左右,車道線的回波寬度在4米左右。
根據Ibeo的特性知道其垂直方向上的掃描角度為3.2度,共分四層掃描,即每層0.8度,在Ibeo水平安裝的情況下,并考慮到實際情況一一Ibeo的高度受車體的限制,其下面兩層(一、二層)主要返回道路表面的信息,而上面兩層(三、四層)主要返回有一定高度的道路信息。
根據激光雷達的特性知道激光束掃描到物體會立即產生回波,一二兩層的掃描距離遠小于三四兩層。
通過理論分析和實驗驗證可知一二兩層返回的信息主要包括路面、車道線、少量障礙物和邊界數據;三四兩層主要返回道路邊界、障礙物和少量路表信息,所以在特征種子點提取階段需要重點分析一二兩層的雷達數據,這部分數據中對于車道線檢測最大的干擾在于路面,提取車道線種子點特征的重點就是分離車道線特征與路面特征。
最小二乘法擬合車道線
通過最小類內方差算法找到路面與車道線的分割閾值,利用誤差分析原理剔除車道線集合范圍內的粗大誤差,即剔除干擾信息,提取出車道線特征種子點。然后再擬合成車道線。
最小類內方差是一種自適應閾值的求取方法,也是一種模糊聚類方法。其基本思想是使用一個閾值將整體數據分成兩個類,因為方差是數值分布是否均勻的度量,兩個類的內部的方差和越小則每一類內部的差別就越小,那么兩個類之間的差別就越大。
如果存在一個閾值使得類內方差和最小則說明這個閾值就是劃分兩類的最佳閡值,使用最佳閾值劃分意味著劃分兩類出現偏差的概率最小。
通過回波脈沖寬度利用最小類內方差算法建模分割車道線特征與路面特征,剔除車道線特征提取的最大干擾。對回波脈沖寬度進行統(tǒng)計分析,并劃分脈沖寬度級別,因為直接使用脈沖寬度值其分布不利于統(tǒng)計,采用對脈沖寬度平均區(qū)域劃分即脈沖寬度級,統(tǒng)計各級內的點數,從而得到回波脈沖寬度分布直方圖。再利用諸如模糊聚類分析方法剔除干擾值。
最小二乘法近似求解不斷優(yōu)化靠近真實值的數學方法,它可以利用己知數據簡便地求得未知數據,并不斷優(yōu)化保證求得的數據與真實數據問的誤差的平方和最小。
利用最小二乘法擬合曲線,就是不斷優(yōu)化求取某條曲線使其最能體現已有數據點的變化趨勢,具體過程是利用已知的數據點優(yōu)化求取最優(yōu)的未知數據合成一條最佳的曲線,并保證已有數據點到曲線的距離的平方和最小。
也就是說,曲線擬合不要求近似曲線過所有數據點,只需要己知的數據點都距離在這條曲線的不遠處,即這條曲線能反映數據點的整體分布,又不至于出現較大的局部波動,已知數據與曲線的偏差的平方和達到最小就能有效控制波動。
簡而言之,最小二乘法擬合就是利用最小化誤差的平方和求取數據的最佳函數匹配。
基于激光雷達反射強度信息
根據反射強度值做的車道線檢測,在車載激光雷達獲取的道路周圍環(huán)境點云數中,可以輕松區(qū)分出道路與車道線。
具體到車載激光雷達獲取的道路周圍環(huán)境三維點云數據中,可以看作一個局部均值變點模型,每一激光層采集的可行駛區(qū)域內回波強度值就是一組輸出序列,其回波強度值變化的點就是所要求的車道標線點集。
現在只須在每一激光層采集的可行駛區(qū)域內回波強度值輸出序列中檢測是否有變化點,若存在則標記并提取這些變點。基于車載雷達獲取的智能車感興趣區(qū)域內海量點云數據中的T坐標值有一定高程特點進行濾波,確定可行駛區(qū)域進而剔除與車道標線回波強度值相近的障礙物。
上圖為簡單濾波后粗提取的車道線回波強度值投影圖(全局圖)
由于車載激光雷達獲取的道路周圍環(huán)境點云數據是分層存儲的,不同激光層獲取的道路周圍環(huán)境點云數據相鄰兩點間距與到雷達坐標系原點的距離有關。
距離越遠間距越大,考慮到安裝在正常行駛上的激光雷達獲取的車道標線曲率變較小,所以利用文獻提出的基于車道標線方向的EM最大期望聚類算法對粗提取車道標線點云數據進行聚類。
通過在聚類過程中估計車道標線方向來對粗提取的車道標線點云數據集進行分類去噪。然后再利用最小二乘法進行車道線擬合。
再來看先檢測路沿,再根據路寬推測車道線的方法。
激光雷達通過以太網與計算機連接,點云數據以 UDP 的方式進行發(fā)送。激光雷達的數據通過兩個端口發(fā)送出來,端口 2368 負責發(fā)送點云數據,端口 8308 發(fā)送 GPS 數據還有位置數據。根據廠商提供的數據包格式說明,每個數據包包含有效數據的載荷以及狀態(tài)數據。
一個數據包集合 12 次發(fā)射接收到的所有數據,接收到的距離以及強度信息是按照錯開的順序進行接收的( 0, 16, 1, 17, 2, 18...15,31)。
根據數據包的格式,進行相應的接收和存儲。點云數據包含到一束激光點達到反射點反饋到的距離信息、強度信息以及偏轉角度,由此可以得到反射點到激光雷達中心的距離、垂直平面上的角度以及水平面上的角度。
若使用車輪與地面接觸的四個點所在的平面作為空間直角坐標系的 xOy 平面,通過激光雷達中心所在位置并且垂直于 xOy 平面的一條直線作為 z 軸,由此便構成了如圖的空間坐標系。
利用點云數據, distance 表示激光點到激光雷達中心的直線距離,α是垂直方向上的夾角, β是水平方向上的夾角。
由于雷達內部發(fā)射器之間存在偏差(如圖 3-(b)),需要進行內部校 正 , calibration_x 、 calibration_y 以 及calibration_z 分別為在 xyz 方向上所對應的內部校正參數,通過公式求得每個點在空間中的坐標( x, y, z)。
依次遍歷每一個數據點,就可以完成對激光雷達數據的解析,利用接收到的數據重構出 3D點云。多線激光雷達采集到的 3D 點云數據能夠提供了大量的信息,但是處理這些數據也帶來了巨大的運算量,這是造成許多基于多線激光雷達的算法實時性比較差的重要原因。
劃分網格提升激光雷達實用性與可用性
因此,減少運算量是提升多線激光雷達的實時性與可用性的關鍵。對于這個問題,通過劃分網格的方法,減少運算量。
一種網格是方框型,一種是扇形。
方形網格是以激光雷達的位置(或者說車體位置為)地圖中心,將激光雷達周圍的環(huán)境劃分為大小相等的網格。進行方形網格劃分之后,將解析雷達數據得到的 3D點云投影到網格當中。扇形網格是以激光雷達的位置為圓心,用不同的半徑的同心圓將激光雷達周圍的環(huán)境進行劃分。
一個網格是由同心圓以及從圓心出發(fā)的射線組成如圖中的紅色部分。因為激光雷達可以測量的最大范圍可以到達 80 米到 100 米,所以設置最大的一個同心圓的半徑為 80 米,最小的同心圓的半徑為 0.5米, 相鄰同心圓半徑差作為一個參數,將 3D點云中的每個點投影到網格當中。
基于方形網格的劃分,將全圖分割為大小相同的網格,對于遠近的障礙物處理比較公平;缺點是運算量大?;谏刃尉W格進行劃分,呈現近處網格小而密集,從圓心開始越往外,網格越大。
扇形網格的優(yōu)勢在于對于近處的障礙物有良好的精度,能夠分辨較小的障礙物,在減少運算量的同時對障礙物的處理有所側重,缺點在于可能無法識別遠處的較小的障礙物。
利用激光雷達獲取路沿高度信息或物理反射信息
常見的路沿有人行道的路沿石、綠化帶、隔離柵欄、雪糕桶等,除此之外,道路環(huán)境中,常見的障礙物還有路燈、行道樹、消防栓、垃圾桶等。因此,路沿識別,需要找到人行道、綠化帶、隔離柵欄、雪糕桶這類物體。
道路環(huán)境中的物體的高度大致可以分為三個層次,路燈、行道樹等物體高度分類為高,綠化帶、隔離柵欄、雪糕桶、消防栓等物體高度分類為中,人行道旁邊的路沿石的高度則劃分為低。
因此將高度作為篩選路沿的第一個特征但是,如果直接使用每個點的高度信息,接下來做聚類處理時會產生巨大的運算量,因此在上一步進行網格劃分之后,就可以將點的聚類轉為對網格的聚類。
由于網格的數量遠遠小于點的數量,因而可以大大減少聚類所需要的運算量。因此要將點的高度信息映射為網格的高度信息。
完成高程信息統(tǒng)計以后, 會出現一個明顯的問題:行道樹會有一些樹枝延伸到道路上,此時,高程信息會顯示路上有障礙物,實質上由于樹枝是懸空的,并不會阻礙汽車的正常的行駛,因此,需要對這一類誤判的障礙物進行中空識別,并將這一部分重新劃分為可行駛區(qū)域。
算法的思路是,遍歷每個標定為障礙物的網格,檢測網格內的點的高度分布, 如果在地面以上 10cm(障礙物高度) 至地面以上 2.4 米(激光雷達的頂端距離地面的高度)之內的點進行統(tǒng)計,如果數量少于 10%,則認為該網格是中空的障礙物網格,車輛能夠正常通過,因此重新將該網格歸為可通行區(qū)域。
在高度信息統(tǒng)計,給每一個網格維護一個標志位,該標志位用來指示網格是否符合常見路沿的高度限制要求。
如果滿足,則該標志位為真,否則為假。完成了所有的障礙物高度信息統(tǒng)計以后,也就是對所有的網格都進行了標記,此時考慮路沿的第二個特征:在一段距離內維持相似高度。
只滿足路沿的第一特征的物體可能會是消防栓、路過的小孩和垃圾箱等物品,因此需要路沿的第二個特征進行進一步區(qū)分,將鄰近網格聚類成群落,當群落中的網格的數量大于路沿的連續(xù)閾值時,才能認為是路沿。
聚類流程如圖所示,遞歸地搜索所有網格, 直到周圍沒有新的可聚類網格就終止。 如果一個標志位為真的網格的鄰近網格的標志位同樣為真,就將它放入集群當中。進行群落檢查的時候,如果群落中的網格數大于設定的閾值,則可認為是路沿。
我國高速公路設計標準為, 車道寬度 3.75米,應急車道為 2.5 米。如圖所示, L1 為激光雷達檢測的車體到左側路沿的距離, L2 為激光雷達檢測的車體到右側激光雷達的距離,
設道面總寬度 L, 則 L 可由公式得到:L = L1 + L2 ??紤]到并非所有的所有道路均設置緊急車道,使用求模運算進行估計,設余數為 M,則余數M 可由公式得到:M = L % 3.75。
如果 M 約等于 2.5,則認為存在應急車道,否則認為不存在。若存在時,路面寬度由公式L = L − 2.5,設車道數為 N,使用路面寬度除以 3.75,并向下取整,因為在道路設計中,路面與路沿之間存在一小段距離,則車道數可有公式N = ⌊L⁄3.75⌋計算出,根據車道數即可劃分出車道線,車道線的寬度一般為15-20厘米。
由于車道與路沿的距離長短不一,因此這種方法在非標準道路上準確度不高,倒是路沿的檢測準確度比較高。
小結
未來固態(tài)激光雷達也很適合檢測車道線,固態(tài)激光雷達的FOV比較窄反而是個優(yōu)勢,等于過濾掉了很多無關數據。
不過單光子激光雷達通常采用計數器的方式讀出數據,不能檢測回波強度或回波寬度,不能檢測車道線。線性APD固態(tài)激光雷達就很合適。
(本文轉載自雷鋒網,作者系佐思產研研究總監(jiān)周彥武)
推薦閱讀: