System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及一種應用激光雷達數據處理算法實時提取非地面數據的新方法,屬于無人駕駛與自動導航領域。
技術介紹
1、在無人駕駛與自動導航領域,為保障車輛自身與路面設施、行人的安全,無人車輛必須具備較高的環境感知能力。環境感知是獲取周遭環境信息以進行自主決策與導航控制的基礎部分,非地面數據檢測是環境感知能力的重要組成部分。
2、現有國內外涉及無人駕駛車輛的障礙物檢測手段主要包括激光雷達,因其具有受光照影響小、精度較高等優點,基于激光雷達的非學習障礙物檢測方法大致流程包括點云預處理、點云聚類、包圍框擬合和障礙物信息發布等步驟。使用激光雷達獲知的環境數據為三維空間中反射點的坐標值,地面提取算法的目的是標記出屬于非地面的點以觸發車輛避障,同時被視為地面的點則會直接刪除,但是環境數據包括有低于地面的凹坑、低矮雜物、臺階等較小障礙物通常會被混淆為地面數據,一旦被刪除就會對自動駕駛安全性帶來較大安全隱患。因此,如何進一步地提升地面檢測精度就顯得尤為重要。
3、現有地面提取算法可分為使用地面方程與不使用兩大類,計算地面方程常用算法為ransac,即先隨機采樣擬合出一個平面方程,再重復隨機過程若干次,保留最好的一個作為地面方程。此類方程計算結果僅能擬合平面,對于坡道計算精度較低。為了描述坡道等因素,gpf以及apollo的plane?fit?ground?detector等算法加入了分段思想,gpf沿著x軸將路面分成若干段,每段中用svg計算平面方程。plane?fit?ground?detector算法沿著x和y軸將點云分成柵
4、在不使用地面方程的算法中ray?ground?filter較為常見,其依據機械雷達特性以射線形式組織點云,根據雷達角分辨率將空間劃分角度極小的扇形,同一扇形中的點認為是同一線束,通過計算同掃描線中相鄰線束的兩點間坡度是否大于特定閾值判斷是否為地面點。當使用較便宜的激光雷達時,兩線束間間隔較大,難以判斷臺階和低矮障礙物,且無視了相鄰掃描線間的坡度差異信息。另外,如在先專利申請cn202011075094.0,其將點云映射至柱狀坐標系中,求每個點云與其相鄰點間的角度值,然后遍歷搜集角度值較平坦的點云作為地面坐標,這種方法對于點云稀疏的區域挑戰較大,如機械雷達兩根線束之間可能相差30cm,此時障礙物可能被檢測為平緩的坡道,且所有點計算角度開銷也比較大。又如專利申請cn202311219224.7,其在點云投影后使用分水嶺算法以確定地面邊界,但是分水嶺算法耗時較長且容易過分割,在點云稀疏的情況下容易受障礙物噪聲的干擾,同時使用凸包檢測提取地面難以處理地面凹坑和大面積街沿情形。
5、有鑒于此,特提出本專利申請。
技術實現思路
1、本申請所述的基于線束迭代的激光雷達地面提取方法,在于解決現有技術存在的實時地面算法精度較低、難以分辨10cm高度的低矮障礙物、遇到不平整地面或多段坡道時性能下降等問題,提出基于同線束內點云連續性特點、使用在線束間迭代的地面提取手段,以期充分利用激光雷達地面點云呈環狀分布的先驗特征,有效地提高針對拱橋或凹凸路面等環境地面的提取能力,從而具備在以上復雜路面準確檢測出低矮障礙物的能力、同時實現提高計算效率和降低計算開銷的設計目的。
2、為實現上述設計目的,所述基于線束迭代的激光雷達地面提取方法,先對同線束內的點云合成聚類,再實施跨線束合并處理。該方法包括有以下步驟,
3、步驟1,預處理雷達點云數據;
4、步驟2,將所有點云分成小簇;
5、步驟3,初始化地面種子;
6、步驟4,從地面種子線段依次向遠處線束迭代;
7、使用虛擬線段減少計算以提高復雜路面迭代準確度;
8、4.1、若路中間存在障礙物將地面線束遮擋,則先對近處線段進行拼接嘗試;
9、4.2、選定有可能是該種子后續地面的線段;
10、4.3.1、進行第二輪篩選;遍歷候選地面列表,依據公式dismatch_score=min(0.5-交長比,0)+15*|z(0)-z(n)|+1000*|k(0)-k(n)|計算不匹配指數;其中,z(0),k(0)是地面種子的高度和斜率;z(n),k(n)是當前候選的高度和斜率;
11、4.3.2、若無候選地面滿足dismatch_score<1.3,則認為有坡度,全部當選種子地面;否則僅當dismatch_score<1.3的才當選種子地面;
12、步驟5、搜集該線束的種子地面,按上述步驟4重復迭代計算再下一線束的線段;
13、步驟6、當所有線束迭代完畢,把所有地面種子對應的點云分類為地面,其它分類為前景障礙物。
14、進一步地,所述的步驟1中對獲取的點云數據保留xyz坐標、線束、方位角、角度(range)信息,將所有點按照線束和方位角序號存入哈希表中。
15、進一步地,所述的方位角序號計算公式為其中,azimuth為方位角,width為每個線束的點云數。
16、進一步地,所述的步驟2包括,在處理過程中不關注距離遠近,只對同一線束內的點進行聚類;對同一線束的點云依據角度(range)值做一維sobel算子邊緣檢測;在算子計算結果大于閾值處截斷,分割成若干段平滑的圓弧;采樣計算所有線段平均高度z、以及平均斜率k。
17、進一步地,所述的步驟3包括,首先選擇最下面線束0,若線段的|z+sensor_h|<0.12,則認為此線段是地面;其中,sensor_h為雷達安裝高度,z為所有線段平均高度。
18、進一步地,所述的步驟4.1包括,
19、4.1.1、對于每個線段一次性地檢查其與同線束內其它線段是否能合并;從距離近的線段開始判斷,先判斷順時針還是逆時針拼接,再用自身平均高度和斜率外推出到臨近線段的高度公式為線段間隔+z;
20、4.1.2、計算拼接閾值;使用公式0.01+min(遮擋角度/1200+0.02)計算拼接閾值,若小于該閾值,則將兩線段間遮擋補全,生成一條虛擬線段;
21、4.1.3、根據上述兩條線段點的數量加權計算虛擬線段的平均高度和斜率、線段開始結束點信息以及線段含點個數;按照此步本文檔來自技高網...
【技術保護點】
1.一種基于線束迭代的激光雷達地面提取方法,其特征在于:先對同線束內的點云合成聚類,再實施跨線束合并處理;包括有以下步驟,
2.根據權利要求1所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的步驟1中對獲取的點云數據保留xyz坐標、線束、方位角、角度(range)信息,將所有點按照線束和方位角序號存入哈希表中。
3.根據權利要求2所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的方位角序號計算公式為其中,azimuth為方位角,width為每個線束的點云數。
4.根據權利要求1所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的步驟2包括,在處理過程中不關注距離遠近,只對同一線束內的點進行聚類;
5.根據權利要求1所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的步驟3包括,首先選擇最下面線束0,若線段的|z+sensor_h|<0.12,則認為此線段是地面;其中,sensor_h為雷達安裝高度,z為所有線段平均高度。
6.根據權利要求1所述的基于線束迭代的激光雷達地面提取方法
7.根據權利要求1所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的步驟4.2,設定最大允許坡度θ,當下一線束的線段與地面種子交長比大于0且z相差小于tan(θ)*地面線束間隔,則成為該種子的候選地面;其中,交長比是指兩線段方位角重合大小與較短線段方位角范圍之比。
...【技術特征摘要】
1.一種基于線束迭代的激光雷達地面提取方法,其特征在于:先對同線束內的點云合成聚類,再實施跨線束合并處理;包括有以下步驟,
2.根據權利要求1所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的步驟1中對獲取的點云數據保留xyz坐標、線束、方位角、角度(range)信息,將所有點按照線束和方位角序號存入哈希表中。
3.根據權利要求2所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的方位角序號計算公式為其中,azimuth為方位角,width為每個線束的點云數。
4.根據權利要求1所述的基于線束迭代的激光雷達地面提取方法,其特征在于:所述的步驟2包括,在處理過程中不關注距離遠近,只對同一線束內的點進行...
【專利技術屬性】
技術研發人員:邵知會,虞家斌,
申請(專利權)人:青島螞蟻機器人有限責任公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。