一種點(diǎn)云分割方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種點(diǎn)云分割方法及裝置,涉及三維重建【技術(shù)領(lǐng)域】,所述方法包括以下步驟:S1:通過深度傳感器對被測場景進(jìn)行逐列掃描,以獲取所述被測場景的深度信息,將所述被測場景的深度信息進(jìn)行坐標(biāo)轉(zhuǎn)換,以獲得所述被測場景在本地坐標(biāo)系下的三維信息;S2:從所述三維信息中分割出地面點(diǎn)云;S3:通過自適應(yīng)閾值的聚類分割方式對非地面點(diǎn)云進(jìn)行聚類分割,所述非地面點(diǎn)云為所述三維信息中除所述地面點(diǎn)云之外的其他點(diǎn)云。本發(fā)明通過自適應(yīng)閾值的聚類分割方式對非地面點(diǎn)云進(jìn)行聚類分割,有效避免了采用固定閾值對非地面點(diǎn)云進(jìn)行聚類分割所導(dǎo)致的欠分割和過分割問題。
【專利說明】一種點(diǎn)云分割方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及三維重建【技術(shù)領(lǐng)域】,特別涉及一種點(diǎn)云分割方法及裝置。
【背景技術(shù)】
[0002] 針對大場景的三維重建,由于其在三維城市地圖、道路維護(hù)、城市規(guī)劃等方面的重 要應(yīng)用,受到了極大關(guān)注。利用深度傳感器和位置姿態(tài)傳感器基于固定站或移動(dòng)平臺(tái)采集 周圍環(huán)境的三維信息,由于其高效、實(shí)時(shí)、高精度的特性而被廣泛采用。由于掃描的場景包 含不同類型的物體,例如地面、建筑物、樹木、車輛等,在進(jìn)行三維重建之前,需要通過點(diǎn)云 分割將不同類型的物體對應(yīng)的點(diǎn)云數(shù)據(jù)彼此分割開,以便對各個(gè)物體分別進(jìn)行點(diǎn)云建模。
[0003] 目前的大多數(shù)點(diǎn)云分割方法是對無序、離散的點(diǎn)云進(jìn)行處理,而沒有利用到數(shù)據(jù) 采集過程中深度傳感器逐列依次掃描的有序性。點(diǎn)云分割方法中,聚類分割方法尤其是基 于距離的聚類分割方法,由于其方法復(fù)雜度低、易于實(shí)現(xiàn),最常用于空間點(diǎn)云的分割。但是 由于室外大場景中地面點(diǎn)云的存在,而單獨(dú)使用基于距離的聚類方法難以有效地對地面和 非地面物體進(jìn)行分割,該方法通常與其它方法結(jié)合,先提取屬于地面的點(diǎn)云,再對非地面點(diǎn) 云進(jìn)行聚類分割。
[0004] 在非地面點(diǎn)云聚類分割部分,當(dāng)前較多采用的基于固定閾值半徑的聚類分割方 法,閾值的選取對分割的結(jié)果影響很大,如果閾值選取過大,間隔距離較近的小物體可能不 會(huì)被分開(欠分割);如果閾值選取過小,間隔距離較大的物體(如建筑物)可能被分割成 多個(gè)聚類(過分割)。
【發(fā)明內(nèi)容】
[0005] 為了避免采用固定閾值對非地面點(diǎn)云進(jìn)行聚類分割所導(dǎo)致的欠分割和過分割問 題,本發(fā)明提供了一種點(diǎn)云分割方法,所述方法包括以下步驟:
[0006] S1 :通過深度傳感器對被測場景進(jìn)行逐列掃描,以獲取所述被測場景的深度信息, 將所述被測場景的深度信息進(jìn)行坐標(biāo)轉(zhuǎn)換,以獲得所述被測場景在本地坐標(biāo)系下的三維信 息;
[0007] S2 :從所述三維信息中分割出地面點(diǎn)云;
[0008] S3:通過自適應(yīng)閾值的聚類分割方式對非地面點(diǎn)云進(jìn)行聚類分割,所述非地面點(diǎn) 云為所述三維信息中除所述地面點(diǎn)云之外的其他點(diǎn)云。
[0009] 其中,步驟S2中,從所述三維信息中分割出地面點(diǎn)云具體包括:
[0010] S201 :以列為單位遍歷所述三維信息,并將遍歷到的一列作為當(dāng)前列;
[0011] S202 :按照從下至上的方向遍歷所述當(dāng)前列的每個(gè)點(diǎn);
[0012] S203 :計(jì)算遍歷到的當(dāng)前點(diǎn)的Z軸坐標(biāo)和所述深度傳感器所在位置的地面高度之 差的絕對值,若所述絕對值小于高度閾值,則將所述當(dāng)前點(diǎn)作為第一個(gè)初始點(diǎn)Ps (1),執(zhí)行 步驟S204,否則返回步驟202 ;
[0013] S204 :檢測所述初始點(diǎn)Ps (k)之后的截止點(diǎn)Pe (k),并將所述初始點(diǎn)Ps (k)和截止 點(diǎn)Pe(k)作為一對;
[0014] S205 :檢測截止點(diǎn)Pe (k)之后的初始點(diǎn)Ps (k+1),若檢測到初始點(diǎn)Ps (k+1),則令k =k+1,并返回步驟S204,否則將每對初始點(diǎn)Ps (k)與截止點(diǎn)Pe (k)及每對初始點(diǎn)Ps (k)與 截止點(diǎn)Pe (k)之間的點(diǎn)作為地面點(diǎn)加入所述地面點(diǎn)云,并執(zhí)行步驟S206 ;
[0015] S206 :判斷所述三維信息的每一列是否均被遍歷到,若是,則執(zhí)行步驟S3,否則返 回步驟S202。
[0016] 其中,步驟S3中,通過自適應(yīng)閾值的聚類分割方式對非地面點(diǎn)云進(jìn)行聚類分割具 體包括:
[0017] S301 :采用固定的初始閾值dth(0)對所述非地面點(diǎn)云進(jìn)行聚類分割;
[0018] S302 :遍歷聚類分割所獲得的每個(gè)聚類;
[0019] S303:根據(jù)聚類體量計(jì)算遍歷到的當(dāng)前聚類的自適應(yīng)閾值dth(w),判斷所述自適 應(yīng)閾值dth (w)是否小于所述初始閾值半徑dth (0),若是,則基于所述自適應(yīng)閾值dth (w)對 所述當(dāng)前聚類進(jìn)行進(jìn)一步分割;
[0020] S304:判斷所述聚類分割所獲得到的每個(gè)聚類是否均被遍歷到,若否,則返回步驟 S303。
[0021] 其中,步驟S303中,根據(jù)聚類體量計(jì)算遍歷到的當(dāng)前聚類的自適應(yīng)閾值dth(w)具 體包括:
[0022] S3031 :遍歷所述當(dāng)前聚類中的每個(gè)點(diǎn),將遍歷到的當(dāng)前點(diǎn)結(jié)合其鄰域點(diǎn)擬合平 面,并將擬合獲得平面的法向量作為所述當(dāng)前點(diǎn)的法向量;
[0023] S3032 :計(jì)算所述當(dāng)前聚類中所有點(diǎn)的法向量的平均值,并將所述平均值作為所述 當(dāng)前聚類的法向量;
[0024] S3033:將所述當(dāng)前聚類中的所有點(diǎn)均投影至投影平面上,在所述投影平面上選取 包含所有投影點(diǎn)的最小矩形,所述投影平面為與所述當(dāng)前聚類的法向量垂直的平面;
[0025] S3034 :通過下式計(jì)算所述當(dāng)前聚類的自適應(yīng)閾值dth(w),
[0026] dth (w) = k! · L (w) +k2
[0027] 其中,L(w)為所述最小矩形的短邊長度,&和k2為常數(shù)。
[0028] 其中,步驟S3中,通過自適應(yīng)閾值的聚類分割方式對非地面點(diǎn)云進(jìn)行聚類分割具 體包括:
[0029] S311 :遍歷所述非地面點(diǎn)云中的每個(gè)點(diǎn),計(jì)算遍歷到的當(dāng)前點(diǎn)的自適應(yīng)閾值;
[0030] S312 :根據(jù)所述非地面點(diǎn)云中每個(gè)點(diǎn)的自適應(yīng)閾值對所述非地面點(diǎn)云進(jìn)行聚類分 割。
[0031] 其中,步驟S311中,通過下式計(jì)算遍歷到的當(dāng)前點(diǎn)的自適應(yīng)閾值dth,
[0032]
【權(quán)利要求】
1. 一種點(diǎn)云分割方法,其特征在于,所述方法包括以下步驟: 51 :通過深度傳感器對被測場景進(jìn)行逐列掃描,以獲取所述被測場景的深度信息,將所 述被測場景的深度信息進(jìn)行坐標(biāo)轉(zhuǎn)換,以獲得所述被測場景在本地坐標(biāo)系下的三維信息; 52 :從所述三維信息中分割出地面點(diǎn)云; S3:通過自適應(yīng)閾值的聚類分割方式對非地面點(diǎn)云進(jìn)行聚類分割,所述非地面點(diǎn)云為 所述三維信息中除所述地面點(diǎn)云之外的其他點(diǎn)云。
2. 如權(quán)利要求1所述的方法,其特征在于,步驟S2中,從所述三維信息中分割出地面點(diǎn) 云具體包括: 5201 :以列為單位遍歷所述三維信息,并將遍歷到的一列作為當(dāng)前列; 5202 :按照從下至上的方向遍歷所述當(dāng)前列的每個(gè)點(diǎn); 5203 :計(jì)算遍歷到的當(dāng)前點(diǎn)的Z軸坐標(biāo)和所述深度傳感器所在位置的地面高度之差的 絕對值,若所述絕對值小于高度閾值,則將所述當(dāng)前點(diǎn)作為第一個(gè)初始點(diǎn)Ps (1),執(zhí)行步驟 S204,否則返回步驟202 ; 5204 :檢測所述初始點(diǎn)Ps(k)之后的截止點(diǎn)Pe(k),并將所述初始點(diǎn)Ps(k)和截止點(diǎn) Pe(k)作為一對; 5205 :檢測截止點(diǎn)Pe (k)之后的初始點(diǎn)Ps (k+Ι),若檢測到初始點(diǎn)Ps (k+Ι),則令k = k+1,并返回步驟S204,否則將每對初始點(diǎn)Ps (k)與截止點(diǎn)Pe (k)及每對初始點(diǎn)Ps (k)與截 止點(diǎn)Pe (k)之間的點(diǎn)作為地面點(diǎn)加入所述地面點(diǎn)云,并執(zhí)行步驟S206 ; 5206 :判斷所述三維信息的每一列是否均被遍歷到,若是,則執(zhí)行步驟S3,否則返回步 驟 S202。
3. 如權(quán)利要求1所述的方法,其特征在于,步驟S3中,通過自適應(yīng)閾值的聚類分割方式 對非地面點(diǎn)云進(jìn)行聚類分割具體包括: 5301 :采用固定的初始閾值dth(0)對所述非地面點(diǎn)云進(jìn)行聚類分割; 5302 :遍歷聚類分割所獲得的每個(gè)聚類; S303:根據(jù)聚類體量計(jì)算遍歷到的當(dāng)前聚類的自適應(yīng)閾值dth(w),判斷所述自適應(yīng)閾 值dth (w)是否小于所述初始閾值半徑dth (0),若是,則基于所述自適應(yīng)閾值dth (w)對所述 當(dāng)前聚類進(jìn)行進(jìn)一步分割; S304:判斷所述聚類分割所獲得到的每個(gè)聚類是否均被遍歷到,若否,則返回步驟 S303。
4. 如權(quán)利要求3所述的方法,其特征在于,步驟S303中,根據(jù)聚類體量計(jì)算遍歷到的當(dāng) 前聚類的自適應(yīng)閾值dth(w)具體包括: S3031 :遍歷所述當(dāng)前聚類中的每個(gè)點(diǎn),將遍歷到的當(dāng)前點(diǎn)結(jié)合其鄰域點(diǎn)擬合平面,并 將擬合獲得平面的法向量作為所述當(dāng)前點(diǎn)的法向量; S3032:計(jì)算所述當(dāng)前聚類中所有點(diǎn)的法向量的平均值,并將所述平均值作為所述當(dāng)前 聚類的法向量; 53033 :將所述當(dāng)前聚類中的所有點(diǎn)均投影至投影平面上,在所述投影平面上選取包含 所有投影點(diǎn)的最小矩形,所述投影平面為與所述當(dāng)前聚類的法向量垂直的平面; 53034 :通過下式計(jì)算所述當(dāng)前聚類的自適應(yīng)閾值dth(w), dth (w) = · L (w) +k2 其中,L(w)為所述最小矩形的短邊長度,ki和k2為常數(shù)。
5. 如權(quán)利要求1所述的方法,其特征在于,步驟S3中,通過自適應(yīng)閾值的聚類分割方式 對非地面點(diǎn)云進(jìn)行聚類分割具體包括: 5311 :遍歷所述非地面點(diǎn)云中的每個(gè)點(diǎn),計(jì)算遍歷到的當(dāng)前點(diǎn)的自適應(yīng)閾值; 5312 :根據(jù)所述非地面點(diǎn)云中每個(gè)點(diǎn)的自適應(yīng)閾值對所述非地面點(diǎn)云進(jìn)行聚類分割。
6. 如權(quán)利要求5所述的方法,其特征在于,步驟S311中,通過下式計(jì)算遍歷到的當(dāng)前點(diǎn) 的自適應(yīng)閾值dth,
其中,L為所述當(dāng)前點(diǎn)的深度信息,A為所述深度傳感器的角分辨率,v為所述深度傳感 器在水平方向的移動(dòng)速度,f為所述深度傳感器的掃描頻率,α為掃描線所在平面與v的方 向之間的夾角,所述掃描線所在平面為所述深度傳感器的中心點(diǎn)與所述被測場景的第Τ列 所在的平面,所述第Τ列為包括所述當(dāng)前點(diǎn)的一列,β為掃描線所在平面與被測場景中被 測物體表面的夾角,Θ為所述被測場景的第Τ列與水平方向之間的夾角,A w為深度傳感器 掃描的有效角度,AL為L的誤差值,Δν為v的誤差值,Δ α為α的誤差值。
7. 如權(quán)利要求2所述的方法,其特征在于,步驟S3之后,還包括: S4 :將步驟S3所獲得的聚類中被過分割的聚類進(jìn)行合并。
8. 如權(quán)利要求7所述的方法,其特征在于,步驟S4具體包括: 5401 :遍歷聚類分割所獲得到的每個(gè)聚類; 5402 :對遍歷到的當(dāng)前聚類q中的每個(gè)點(diǎn)進(jìn)行遍歷,將遍歷到的當(dāng)前點(diǎn)結(jié)合其鄰域點(diǎn) 擬合平面,并將擬合獲得平面的法向量作為所述當(dāng)前點(diǎn)的法向量; 5403 :計(jì)算所述當(dāng)前聚類q中所有點(diǎn)的法向量的平均值,并將所述平均值作為所述當(dāng) 前聚類的法向量; 5404 :將所述當(dāng)前聚類q中的所有點(diǎn)均投影至投影平面上,計(jì)算所述當(dāng)前聚類q的投影 面積,所述投影平面為與所述當(dāng)前聚類q的法向量垂直的平面; 5405 :判斷所述投影面積是否大于預(yù)設(shè)面積,若是,則將所述當(dāng)前聚類q作為大體量聚 類; 5406 :判斷聚類分割所獲得到的每個(gè)聚類是否均被遍歷到,若是,則執(zhí)行步驟S407,否 則返回步驟S402 ; S407:若兩個(gè)大體量聚類之間的間隔距離小于預(yù)設(shè)距離,則將對應(yīng)的兩個(gè)大體量聚類 合并為一個(gè)聚類,直至任意兩個(gè)大體量聚類之間的間隔距離均大于所述預(yù)設(shè)距離,所述兩 個(gè)大體量聚類之間的間隔距離為兩個(gè)聚類中最近兩個(gè)點(diǎn)之間的距離。
9. 如權(quán)利要求8所述的方法,其特征在于,步驟S407之后還包括: 5408 :遍歷步驟S407所獲得到的每個(gè)聚類; 5409 :計(jì)算遍歷到的當(dāng)前聚類r的高度與地面高度之間的差值ΔΗ,所述當(dāng)前聚類r的 高度為所述當(dāng)前聚類r的所有點(diǎn)中Z軸坐標(biāo)的最小值,所述當(dāng)前聚類r的地面高度為所述 當(dāng)前聚類r中每個(gè)點(diǎn)所對應(yīng)列的第一個(gè)初始點(diǎn)中Z軸坐標(biāo)的最大值; 5410 :判斷所述差值Λ Η是否大于預(yù)設(shè)差值,若是,則將所述當(dāng)前聚類r作為懸浮聚 類; 5411 :判斷步驟S407所獲得到的每個(gè)聚類是否均被遍歷到,若是,則執(zhí)行步驟S412,否 則返回步驟S409 ; 5412 :將每個(gè)懸浮聚類合并至與其距離最近的聚類,直至每個(gè)懸浮聚類均合并至一個(gè) 非懸浮聚類中。
10. -種點(diǎn)云分割裝置,其特征在于,所述裝置包括: 掃描轉(zhuǎn)換模塊,用于通過深度傳感器對被測場景進(jìn)行逐列掃描,以獲取所述被測場景 的深度信息,將所述被測場景的深度信息進(jìn)行坐標(biāo)轉(zhuǎn)換,以獲得所述被測場景在本地坐標(biāo) 系下的三維信息; 地面分割模塊,用于從所述三維信息中分割出地面點(diǎn)云; 非地面分割模塊,用于通過自適應(yīng)閾值的聚類分割方式對非地面點(diǎn)云進(jìn)行聚類分割, 所述非地面點(diǎn)云為所述三維信息中除所述地面點(diǎn)云之外的其他點(diǎn)云。
【文檔編號(hào)】G06T7/00GK104143194SQ201410410469
【公開日】2014年11月12日 申請日期:2014年8月20日 優(yōu)先權(quán)日:2014年8月20日
【發(fā)明者】朱曉鑫, 周瑩, 謝翔, 王丹, 李國林, 唐維俊, 王志華 申請人:清華大學(xué)