亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法

文檔序號:6550842閱讀:429來源:國知局
一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法
【專利摘要】本發(fā)明公開了一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,包括步驟:一、LiDAR點云數(shù)據(jù)獲??;二、LiDAR點云數(shù)據(jù)處理:對建筑物點云數(shù)據(jù)進行處理,并提取出建筑物外邊界線;對建筑物點云數(shù)據(jù)進行處理時,過程如下:201、建筑物外輪廓點提取;202、特征點提??;203、最小二乘法直線擬合及初始邊界線獲?。?04、建筑物主方向及副方向確定;205、初始邊界線規(guī)則化:根據(jù)所確定的主方向和副方向,對初始邊界線中的多個直線段分別進行規(guī)則化處理;206、規(guī)則化邊界線獲取。本發(fā)明方法步驟簡單、設計合理且實現(xiàn)方便、使用效果好,能簡便、快速完成建筑物外邊界線的提取過程,所得到外邊界矢量規(guī)則化程度高。
【專利說明】—種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法

【技術領域】
[0001]本發(fā)明涉及一種外邊界線提取方法,尤其是涉及一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法。

【背景技術】
[0002]三維城市建模廣泛應用在數(shù)字城市規(guī)劃等GIS領域。而建筑物外邊界線的提取更是建筑物模型重建的關鍵步驟。在傳統(tǒng)攝影測量中,需要在立體相對中手工勾畫建筑物外邊界輪廓,費時費力,效率較低。
[0003]隨著機載激光掃描技術的廣泛應用,利用機載Iidar數(shù)據(jù)提取建筑物外邊界線(即輪廓線)的技術已經(jīng)有了一定的發(fā)展。目前,機載激光掃描數(shù)據(jù)提取建筑物輪廓線的方法,主要分為基于柵格化的提取方法和基于點云數(shù)據(jù)空間結構的提取方法。其中,采用點云數(shù)據(jù)柵格化的方法是在點云分割的基礎上,將建筑物點云集合柵格化處理成二值影像圖,利用像素的膨脹腐蝕原理補充填滿影像中的空洞,再利用圖像的分割算法及邊界線提取算法等圖像分析手段實現(xiàn)輪廓線提取。如吳杭彬等采用數(shù)學形態(tài)學中的膨脹和腐蝕方法進行序貫運算,再將建筑物邊緣矢量化得到每個地物所對應的矢量邊緣和數(shù)據(jù)點;尤紅建等對激光點云進行二次內(nèi)插加密生成影像數(shù)據(jù),以圖像處理的方法提取建筑物輪廓。這種方法將Iidar點云處理為灰度圖像,處理速度塊、方法簡單明了,然而柵格化的處理過程會引入新的誤差,無法得到精確的建筑物矢量邊界。
[0004]另一種基于點云數(shù)據(jù)空間的提取方法更多傾向于構建空間Tin數(shù)據(jù)結構,利用三角網(wǎng)間的空間信息對點云進行聚類分析檢測。在聚類后的點云三角網(wǎng)基礎上利用長邊限制的方法提取三角網(wǎng)外接凸包提取邊界點,或者采用經(jīng)典的Alpha Shape算法從無序點集中進行集合邊界判定提取建筑物外邊界點。例如=Maas等采用TIN構建點云空間拓撲關系,對所有三角面進行聚類分析檢測平面屋頂;曾齊紅等以屋頂Lidar的TIN的外圍三角形邊作為邊界點;Lach和沈蔚采用Alpha Shapes算法從無序點擊中提取建筑物外輪廓。這些方法都通過分析建筑物點云空間結構,建立三角網(wǎng),得到了較為精確建筑物邊界輪廓,但依舊存在以下缺點:第一、三角網(wǎng)結構較復雜,三角網(wǎng)的數(shù)量多為點云數(shù)量的2倍左右;當點云數(shù)據(jù)量較大時,三角網(wǎng)構網(wǎng)速度慢,且占用空間大。第二、利用長邊限制的方法,只能提取比閾值長度長的三角網(wǎng)邊界(當閾值無限大時,提取外接凸包);在建筑物拐角或凹邊處就會造成細節(jié)的丟失。Alpha Shape算法能很好的檢測符合建筑物外邊界的三角網(wǎng),但當建筑物內(nèi)部出現(xiàn)空洞時,無法區(qū)分是外邊界還是內(nèi)部空洞,且提取到的外邊界為離散的線段,不具有連續(xù)結構。


【發(fā)明內(nèi)容】

[0005]本發(fā)明所要解決的技術問題在于針對上述現(xiàn)有技術中的不足,提供一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其方法步驟簡單、設計合理且實現(xiàn)方便、使用效果好,能簡便、快速完成建筑物外邊界線的提取過程。
[0006]為解決上述技術問題,本發(fā)明采用的技術方案是:一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于該方法包括以下步驟:
[0007]步驟一、LiDAR點云數(shù)據(jù)獲取:采用機載LiDAR測量系統(tǒng)獲取待測區(qū)域的點云數(shù)據(jù),并將所獲取的點云數(shù)據(jù)傳送至數(shù)據(jù)處理設備;所述點云數(shù)據(jù)中包括待測區(qū)域內(nèi)多個建筑物的點云數(shù)據(jù),每個建筑物的點云數(shù)據(jù)均包括該建筑物頂部的多個測點及各測點的三維坐標;
[0008]步驟二、LiDAR點云數(shù)據(jù)處理:采用所述數(shù)據(jù)處理設備分別對多個建筑物的點云數(shù)據(jù)進行處理,并提取出各建筑物的外邊界線;多個建筑物的點云數(shù)據(jù)處理過程均相同;對待測區(qū)域內(nèi)的任一個建筑物的點云數(shù)據(jù)進行處理時,過程如下:
[0009]步驟201、建筑物外輪廓點提取:調(diào)用外輪廓點提取模塊,從當前所處理建筑物的二維數(shù)據(jù)集中,提取當前所處理建筑物的外輪廓點,并獲得外輪廓點集合;所提取外輪廓點的數(shù)量為N個,所述外輪廓點集合中包含N個外輪廓點的二維數(shù)據(jù),N個所述外輪廓點連接形成當前所處理建筑物的外輪廓線;
[0010]所述二維數(shù)據(jù)集包括當前所處理建筑物的點云數(shù)據(jù)中多個測點在X-Y平面直角坐標系上的二維坐標;
[0011]步驟202、特征點提取:采用道格拉斯-普撲克算法對步驟201中所述外輪廓線進行特征點提取,并從所述外輪廓點集合提取出S個特征點,S個特征點分別記作Sp s2、…、
Ss;
[0012]步驟203、最小二乘法直線擬合及初始邊界線獲取:對S個特征點中相鄰兩個特征點所在的直線分別進行擬合,并獲得S條擬合直線;s條擬合直線相交形成的封閉曲線為當前所處理建筑物的初始邊界線,所述初始邊界線由多個直線段連接而成;
[0013]對S個特征點中相鄰兩個特征點Sa和Sb進行直線擬合時,先將特征點Sa和Sb以及步驟201中所述外輪廓點集合中特征點&和Sb之間的所有外輪廓點組成直線點集,再利用最小二乘法對所述直線點集進行直線擬合,獲得特征點Sa和Sb所在的擬合直線;其中,a和 b 均為正整數(shù)且 a 關 b,a= 1、2、...、S,b = l、2、...、S;
[0014]步驟204、建筑物主方向及副方向確定:先對步驟203中所述初始邊界線中的多個直線段的方向向量進行確定,再對多個直線段的方向向量的權重分別進行計算,并將權重最大的直線段的方向向量作為當前所處理建筑物的主方向,將當前所處理建筑物的主方向的正交向量作為當前所處理建筑物的副方向;
[0015]步驟205、初始邊界線規(guī)則化:對步驟203中所述初始邊界線中的多個直線段分別進行規(guī)則化處理;
[0016]對所述初始邊界線中任一個直線段進行規(guī)則化處理時,過程如下:
[0017]步驟2051、規(guī)則化方向確定:根據(jù)步驟204中所確定的主方向和副方向以及當前所處理直線段的方向向量,對當前所處理直線段的規(guī)則化方向進行確定:當當前所處理直線段的方向向量更靠近主方向時,以主方向作為規(guī)則化方向;反之,當當前所處理直線段的方向向量更靠近副方向時,以副方向作為規(guī)則化方向;
[0018]步驟2052、是否需進行規(guī)則化判斷:計算當前所處理直線段在步驟2051中所確定規(guī)則化方向上的投影長度L,并根據(jù)投影長度L對當前所處理直線段是否需進行規(guī)則化進行判斷:當投影長度L < Ltl時,進入步驟2053 ;否則,無需進行規(guī)則化處理,將當前所處理直線段所在的直線作為其規(guī)則化直線;其中,L0 = 0.5m?Im ;
[0019]步驟2053、規(guī)則化處理:以當前所處理直線段的中點為起點,且以步驟2051中所確定的規(guī)則化方向為方向向量,生成當前所處理直線段的規(guī)則化直線;
[0020]步驟206、規(guī)則化邊界線獲取:步驟205中所述初始邊界線中的多個直線段均規(guī)則化處理完成后,多個直線段的規(guī)則化直線相交形成的封閉曲線為當前所處理建筑物的規(guī)劃化邊界線。
[0021]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟202中采用道格拉斯-普撲克算法對所述外輪廓線進行特征點提取后,所提取的特征點數(shù)量為M個,其中M為正整數(shù)且M彡S ;M個特征點組成特征點集合,S個特征點分別記作SpS2、…、SM,特征點S1又記作特征點SM+1 ;
[0022]特征點提取完成后,還需對所提取的M個特征點分別進行判定;其中,對M個特征點中任一個特征點Sh進行判定時,判斷特征點Sh與直線SlriSw之間的距離dh是否大于do:當dh > do時,在所述特征點集合中保留特征點Sh ;否則,從所述特征點集合中刪除特征點sh,并將特征點Sh標記為非特征點;
[0023]直線SlriSw為特征點Slri和Sh+1所在的直線,特征點Slri和Sh+1為與特征點Sh相鄰的兩個特征點;其中,h為正整數(shù)且h = 1、2、…、M;
[0024]對M個特征點分別進行判定后,所述特征點集合中特征點的數(shù)量為S個。
[0025]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟201中N個所述外輪廓點,分別記作A。、Ap A2、…、An_i ;
[0026]步驟201中進行建筑物外輪廓點提取時,過程如下:
[0027]步驟2011、構建kd樹:將當前所處理建筑物的點云數(shù)據(jù)中,多個測點在X-Y平面直角坐標系上的二維坐標構建kd樹;
[0028]步驟2012、鄰域搜索:利用步驟2011中所構建的kd樹在X-Y平面上進行鄰域搜索,找出當前所處理建筑物的所有外輪廓點,X-Y平面為X-Y平面直角坐標系所在的水平面;鄰域搜索過程如下:
[0029]步驟20121、第一次搜索:以極值點Atl作為本次搜索的搜索點O1且以X坐標軸的負半軸作為基準向量進行鄰域搜索,并在當前搜索點O1的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為第一次搜索出的外輪廓點A1 ;
[0030]當前搜索點的鄰域內(nèi)任一測點Ci的旋轉(zhuǎn)角度為由基準向量逆時針旋轉(zhuǎn)至向量W,的旋轉(zhuǎn)角度;極值點Atl為當前所處理建筑物的點云數(shù)據(jù)中X軸坐標值最大、X軸坐標值最小、Y軸坐標值最大或Y軸坐標值最小的測點;
[0031]步驟20122、第j次搜索:以第j-ι次搜索出的外輪廓點A^1作為本次搜索的搜索點Oj且以向量為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為第j次搜索出的外輪廓點
aJ ;
[0032]其中,j為正整數(shù)且j彡2 ;當j = 2時,A」_2 = Atl ;當j > 2時,Α」_2為第j_2次搜索出的外輪廓點;
[0033]步驟20123、多次重復步驟20122,直至搜索出的外輪廓點為Atl時,完成鄰域搜索過程。
[0034]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟2012中進行鄰域搜索過程中,將極值點Atl和各次搜索到的外輪廓點均標記為已用點;
[0035]步驟20123中,多次重復步驟20122且完成第η次搜索后,獲得第η次搜索出的外輪廓點An,并將外輪廓點An標記為已用點;之后,按照步驟20122中所述的方法,將An作為搜索點,進行第η+1次搜索,且當?shù)讦?1次搜索過程中搜索到的外輪廓點為標記的已用點時,將外輪廓點AnS記為不可用點;然后,按照Am、Αη_2、…、A1順序,由先至后對標記為有用點的外輪廓點進行回滾搜索,過程如下:
[0036]步驟1、第一次回滾搜索:對第(η-l)次搜索出的外輪廓點Alri進行回滾搜索,過程如下:
[0037]步驟1-1、第一次鄰域搜索:按照步驟20121中所述的方法,以外輪廓點Alri作為本次搜索的搜索點O11且以向量4^4^為基準向量進行鄰域搜索;
[0038]步驟1-2、第一次鄰域搜索結果處理:步驟1-1中搜索完成后,當在當前搜索點O11的鄰域測點集合S’ (η-l)中不能找出旋轉(zhuǎn)角度最小的測點時,將外輪廓點Alri標記為不可用點,并進入步驟II,進行下一次回滾搜索;
[0039]反之,當在鄰域測點集合S’ (η-l)中找出旋轉(zhuǎn)角度最小的測點時,將所找出的測點作為回滾搜索過程中第一次搜索出的外輪廓點A11,且將外輪廓點A11標記為已用點,并判斷外輪廓點A11是否為極值點A0:當外輪廓點A11為極值點A0時,完成回滾搜索過程;否則,進入步驟I _3,進行下一次鄰域搜索;
[0040]步驟2012中進行鄰域搜索過程中,第(η-l)次搜索時,當前搜索點Olri的鄰域內(nèi)所有測點組成鄰域測點集合S(η-l);所述鄰域測點集合S(n-l)中的所有未標記的測點組成鄰域測點集合S’ (n-1);
[0041]步驟1-3、第k次鄰域搜索:以回滾搜索過程中第(k-Ι)次搜索出的外輪廓點
A1(H)作為本次搜索的搜索點Olk且以向量為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點Olk的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為回滾搜索過程中第k次搜索出的外輪廓點Alk ;
[0042]其中,k為正整數(shù)且 k 彡 2 ;當 k = 2 時,A1(k_2) = O11, A1(H) = A11 ;當 j > 2 時,A1(k-2)為回滾搜索過程中第(k-2)次搜索出的外輪廓點;
[0043]步驟1-3、第k次鄰域搜索:以回滾搜索過程中第(k-Ι)次搜索出的外輪廓點
A1(^1)作為本次搜索的搜索點Olk且以向量4(i—為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點Olk的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為回滾搜索過程中第k次搜索出的外輪廓點Alk,并將外輪廓點Alk標記為已用點;
[0044]其中,k為正整數(shù)且 k 彡 2 ;當 k = 2 時,A1(k_2) = O11, A1(H) = A11 ;當 j > 2 時,A1(k-2)為回滾搜索過程中第(k-2)次搜索出的外輪廓點;
[0045]步驟1-4、第k次鄰域搜索結果處理:步驟1-3中搜索完成后,判斷第k次搜索出的外輪廓點Alk是否為極值點A0:當外輪廓點Alk為極值點A0時,完成回滾搜索過程;否則,返回步驟I _3,進行下一次鄰域搜索;
[0046]步驟I1、第h次回滾搜索:按照步驟I中所述的方法,對步驟2012中第(η-h+l)次搜索出的外輪廓點An_h+1進行回滾搜索,直至完成回滾搜索過程;其中,h為正整數(shù)且h > 2 ;
[0047]步驟2012中完成回滾搜索過程后,當前狀態(tài)下所有標記為已用點的測點組成步驟201中所述外輪廓點集合,并且所有標記為已用點的測點總數(shù)量為N個。
[0048]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟20121中當前搜索點O1的鄰域內(nèi)任一測點Ci的旋轉(zhuǎn)角度記作Z aei,測點Ci的二維坐標為(Xei,Ya);第一次搜索時的基準向量為T1,且T1 = (-1,0);對2&^進行計算時,先根據(jù)公式aCi=XciX (-1)+Yci X O = -XCi,計算得出 aC1:當 aCi 彡 O 時,根據(jù)公式Z aCi = arccos (aCi), if算得出Z aCi ;當aCi < O時,根據(jù)公式Z aCi = 90° -arccos (aCi),計算得出Z aCi ;
[0049]步驟20122中當前搜索點Oj的鄰域內(nèi)任一測點Cp的旋轉(zhuǎn)角度記作Z aCp,測點Cp的二維坐標為(xcp, Ycp),第j次搜索時的基準向量^;記作(XrYj) JiZa05進行計算時,先根據(jù)公式aep = XepXXj-YeiXYj,計算得出aep:當aCp彡O時,根據(jù)公式Z aCp = arccos (aCp),計算得出Z aCi ;當aCp < O時,根據(jù)公式Z aCp = 90° -arccos (aCp),計算得出廣aCi ;
[0050]步驟2012中進行鄰域搜索過程中,將極值點Atl和各次搜索到的外輪廓點由先至后放入外輪廓點集合堆棧中,并將放入所述外輪廓點集合堆棧中的極值點Atl和所有外輪廓點均標記為已用點;
[0051]步驟20123中,將外輪廓點An#記為不可用點的同時,還需將外輪廓點An從所述外輪廓點集合堆棧中彈出;
[0052]步驟1-2中將外輪廓點A11標記為已用點的同時,還需將外輪廓點A11放入所述外輪廓點集合堆棧中;
[0053]步驟1-3中將外輪廓點Alk標記為已用點的同時,還需將外輪廓點Alk所述外輪廓點集合堆棧中;
[0054]步驟2012中完成回滾搜索過程后,當前狀態(tài)下所述外輪廓點集合堆棧內(nèi)的所有測點組成所述外輪廓點集合。
[0055]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟201中N個所述外輪廓點,分別記作A。、Ap A2、…、An_i ;
[0056]步驟202中采用道格拉斯-普撲克算法對所述外輪廓線進行特征點提取時,過程如下:
[0057]步驟2021、特征點指定:將步驟201中N個所述外輪廓點中任意相鄰兩個外輪廓點Ad和Af指定為特征點,并將外輪廓點Ad和Af均標記為特征點;其中D和F均為正整數(shù)且D 關 F,D = 1、2、...、N,F(xiàn)=1、2、...、N;
[0058]步驟2022、中間特征點獲取:將外輪廓點Ad和Af作為一個特征點對,從步驟201中所述外輪廓點集合中找出一個與特征點對Ad與Af所在的直線AdAf的距離最遠且未標記的外輪廓點,并將所找出的外輪廓點作為特征點對Ad與Af的中間特征點,記作Ae,且將外輪廓點Ae標記為特征點;
[0059]步驟2023、特征點對獲取:以步驟2022中獲取的中間特征點Ae重新組建特征點對;
[0060]以中間特征點Ae重新組建特征點對時,將中間特征點Ae分別與特征點Ad和Af組成兩個特征點對,兩個特征點對分別為特征點對Ad與Ae和特征點對Ae與Af ;
[0061]步驟2024、中間特征點獲取及判斷處理:對步驟2023中組成的兩個特征點對分別進行中間特征點獲取及判斷處理,且兩個特征點對的中間特征點獲取及判斷處理方法均相同;
[0062]其中,對一個特征點對進行中間特征點獲取及判斷時,從步驟201中所述外輪廓點集合中找出一個與當前所處理特征點對所在的直線的距離最遠且未標記的外輪廓點,并判斷所找出的外輪廓點與當前所處理特征點對所在直線的距離d是否大于dO:當d > dO時,將所找出的外輪廓點作為當前所處理特征點對的中間特征點,并將該中間特征點標記為特征點,并進入步驟2025 ;否則,完成當前所處理特征點對的特征點提取過程;
[0063]其中,dO= 30cm ?50cm ;
[0064]步驟2025、特征點對獲取與中間特征點獲取及判斷處理:先按照步驟2023中所述的特征點對獲取方法,以步驟2024中所獲取的中間特征點重新組建特征點對;之后,按照步驟2024中所述的方法,對本步驟中所組建的所有特征點對分別進行中間特征點獲取及判斷處理;
[0065]步驟2026、多次重復步驟2025,直至完成所組建的所有特征點對的特征點提取過程。
[0066]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟203中對相鄰兩個特征點Sa和Sb進行直線擬合時,先將所述直線點集中所有測點的X軸坐標值組成X軸坐標集合,并將所述直線點集中所有測點的X軸坐標值組成Y軸坐標集合;之后,計算X軸坐標集合中多個X軸坐標值的方差,記作σ x ;同時,計算Y軸坐標集合中多個Y軸坐標值的方差,記作σγ;然后,根據(jù)計算得出的0)(和Oy,選取擬合用的直線模型:當
σγ時,所選取的直線模型為y = kX+b;否則,當σχ < σ γ時,所選取的直線模型為X = ky+b ;最后,根據(jù)所述直線點集中所有測點的二維坐標,并利用所選取的直線模型進行直線擬合。
[0067]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟204中對多個直線段的方向向量進行確定時,多個所述直線段的方向向量確定方法均相同;對任


X — Y
一個直線段Iq的方向向量Vq進行確定時,根據(jù)公式Vc?J = Lv J2xl \ fv v、2和公




^(Ag2 — A ) +( YfJ2 — Iyj )

I一 F
式 V=-τ-y--:-^■IT;—:;—;■■進行計算,方向向量Vq = (VQ.X,Vq.Y);式中,直線?Iq
^\Λοι Λ gi / +(? ^
的兩端點的二維坐標分別為(xQ1,YQ1)和(xQ2,YQ2);
[0068]對直線段Iq的方向向量的權重進行計算時,由先至后將直線段Iq的方向向量Vq,分別與所述初始邊界線中其它各直線段的方向向量疊加后,獲得直線段Iq的權重向量WQ,過程如下:
[0069]步驟2041、疊加順序確定及角度差閾值Ctl設定:按照疊加先后順序,對所述初始邊界線中其它各直線段的方向向量進行排序;其中,角度差閾值C(l = 5°?10°,c± =90。 -C0 ;
[0070]步驟2042、第一次疊加:將直線段Iq的方向向量Vq作為基準方向向量,先計算得出本次疊加的直線段的方向向量與基準方向向量之間的角度差△ Zqi ;再結合步驟2041中所設定的Ctl和Cl,并根據(jù)計算得出的Λ Zqi確定疊加方式:當Λ Zqi更接近Ctl時,將基準方向向量與本次疊加的直線段的方向向量疊加;當△ Zqi更接近cI時,將基準方向向量與本次疊加直線段的方向向量的正交向量疊加;之后,按照所確定的疊加方式進行疊加,并將疊加后的向量作為下一次疊加的基準疊加向量;
[0071]步驟2043、第t次疊加:將第t-Ι次疊加后的向量作為本次疊加的基準疊加向量,先計算得出本次疊加直線段的方向向量與當前狀態(tài)下的的基準疊加向量之間的角度差Δ Z Qt;再結合步驟2041中所設定的Ctl和Cp并根據(jù)計算得出的Λ Z Qt確定疊加方式:當Λ Z Qt更接近Ctl時,將當前狀態(tài)下的基準疊加向量與本次疊加的直線段的方向向量疊力口 ;當△ Z Qt更接近cI時,將當前狀態(tài)下的基準疊加向量與本次疊加直線段的方向向量的正交向量疊加;之后,按照所確定的疊加方式進行疊加,并將疊加后的向量作為下一次疊加的基準置加向量;
[0072]步驟2044、多次重復步驟2043,直至完成方向向量Vq與所述初始邊界線中其它各直線段的方向向量的全部疊加過程,且疊加過程完成后所得的向量為直線段Iq的權重向量Wq;
[0073]步驟204中權重最大的直線段為權重向量的長度最大的直線段。
[0074]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟2042中對本次疊加的直線段的方向向量與基準方向向量之間的角度差△ Zqi進行計算時,根據(jù)公式Λ Zqi = arccos (I Vu.XXVQ.X+Vu.Y XVQ.Υ|)進行計算;本次疊加的直線段的方向向量為(V X,V Y),基準方向向量為(VQ.X,Vq.Y);
[0075]步驟2043中對本次疊加的直線段的方向向量與當前狀態(tài)下的基準疊加向量之間的角度差Δ Zet進行計算時,根據(jù)公式Δ ZQt = arcc0S(|Vu.XXVt.X+Vu.YXVt.Y|)進行計算;本次疊加的直線段的方向向量為(Vu.X,Vu.Y),當前狀態(tài)下的基準方向向量為(Vt.X, Vt.Y);
[0076]步驟2042中疊加后的向量記作(VQ’.X,V;.Y);將基準方向向量與本次疊加直線段的方向向量疊加時,VQ’.X = VL1.X+Vq.X,Vq’.Y = Vu.Y+VQ.Y ;將基準方向向量與本次疊加直線段的方向向量的正交向量疊加時,VQ’.X = Vu 1.X+VQ.X,V;.Y = Vli ±.Y+VQ.Y ;本次疊加直線段的方向向量的正交向量為(Vu 1.X,Vu 1.Y);
[0077]步驟2043中疊加后的向量記作(Vt’.X,Vt’.Y);將當前狀態(tài)下的基準疊加向量與本次疊加的直線段的方向向量疊加時,Vt’.X = Vu.X+Vt.X,Vt’.Y = VLt.Y+Vt.Y ;將當前狀態(tài)下的基準疊加向量與本次疊加直線段的方向向量的正交向量疊加時,Vt’.X = VLt±.X+Vt.X,V;.Y = VLt丄.Y+Vt.Y ;本次疊加直線段的方向向量的正交向量為(Vu丄.X,VLt丄.Y)。
[0078]上述一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征是:步驟2052中對當前所處理直線段在步驟2051中所確定規(guī)則化方向上的投影長度L進行計算時,先根據(jù)公式Λ Z Θ = arcc0S(|VH.XXV主.Χ+νΗ.ΥΧν主.Υ|)進行計算,當前所處理直線段的方向向量為(VH.X,Vh.Y),主方向為(V±.X,V±.Y);之后,根據(jù)計算得出的Λ Z Θ,對




A/ff
投影長度L進行計算:當步驟2051中所確定規(guī)則化方向為主方向時,L=Sitl(Y) X
抑u.X — V,.Xf + (VH;當步驟2051中所確定規(guī)則化方向為副方向時, QO0^AZff -1-
L=s!n (^^) X J(vy-v, “Y):+(v?.r-v,.η.<,
2
[0079]本發(fā)明與現(xiàn)有技術相比具有以下優(yōu)點:
[0080]1、方法步驟簡單、設計合理且實現(xiàn)方便。
[0081]2、使用操作簡便且易于掌握,具體過程如下:首先,對濾波處理后的建筑物點云數(shù)據(jù)建立kd樹,利用鄰域搜索加逆時針旋轉(zhuǎn)查找旋轉(zhuǎn)角度最小的外部點,得到建筑物外輪廓點云;其次,根據(jù)外輪廓點云集合,用道格拉斯-普克算法提取拐點點云,拐點通過二次判定去除誤差點;之后,對連續(xù)拐點間的點最小二乘擬合直線,連接相鄰直線交點得到原始的外邊界;然后,以外邊界線段的方向向量為基準,計算出所有外邊界線段與基準方向基準的角度,角度小于閾值時基準向量疊加外邊界線段的方向向量,否則疊加外邊界線段的方向向量的正交向量,這樣通過計算,權重向量長度最長的向量的方向為建筑物的主方向,垂直方向為副方向;計算原始外邊界與主方向或副方向的投影長度,小于長度閾值則按主方向或副方向規(guī)則化外邊界線。
[0082]3、不借助傳統(tǒng)遙感圖像處理方法,避免了從點云內(nèi)插成二值圖像過程中帶來的誤差。在不構建三角網(wǎng)結構的基礎上,直接分析點云的三維空間信息,降低了計算過程的復雜度和占用的空間,計算過程中只分析了一部分符合空間結構的點云,無需對所有點云數(shù)據(jù)進行分析、處理,因而處理效率高、速度快。
[0083]4、邊界點搜索過程(即建筑物外輪廓點提取過程)中加入了回滾搜索方式,當認為某一外輪廓點提取錯誤時,會回滾到上一個外輪廓點重新搜索,增強了算法的魯棒性。與傳統(tǒng)回滾方式不同,在回滾過程中會標記檢測錯誤的點,在后面的分析中不再考慮,這樣保證了提取過程一定會得到唯一確定的結果。
[0084]5、改進了傳統(tǒng)道格拉斯-普克拐點提取的方法,在二次判斷檢查的過程中,剔除了錯誤的拐點。同時,利用最小二乘法保證了拐點間的點也被考慮進邊界提取的過程中,因而本發(fā)明為一種多種提取方式組合的組合式外邊界提取方法,這種組合式提取方法最大程度地保證了邊界點云的特征。
[0085]6、在不構建三角網(wǎng)的基礎上,直接分析點云空間坐標,提取建筑物外輪廓點云,生成矢量邊界線。
[0086]7、使用效果好,采用的主方向提取方法,利用長度作為權重,保證在最小程度改變外邊界方向的前提下,規(guī)則化矢量邊界,使生成的矢量邊界線能最大程度地與點云套合。綜上,本發(fā)明利用點云數(shù)據(jù)集合,解決了無法精確、快速提取建筑物外邊界的問題,不需要構建三角網(wǎng)或者內(nèi)插格網(wǎng),運行效率高、速度快、占用空間小,并且得到的外邊界矢量規(guī)則化程度高,符合建筑建模需求。
[0087]綜上所述,本發(fā)明方法步驟簡單、設計合理且實現(xiàn)方便、使用效果好,能簡便、快速完成建筑物外邊界線的提取過程,并且所得到的外邊界矢量規(guī)則化程度高。
[0088]下面通過附圖和實施例,對本發(fā)明的技術方案做進一步的詳細描述。

【專利附圖】

【附圖說明】
[0089]圖1為本發(fā)明的裝配示意圖。
[0090]圖2為所獲取的建筑物點云圖。
[0091]圖3為采用本發(fā)明所提取的建筑物外輪廓點的點云圖。
[0092]圖4為采用本發(fā)明規(guī)則化的建筑物外邊界線的結構示意圖;
[0093]圖5為將本發(fā)明規(guī)則化的建筑物外邊界線與所獲取點云疊加后的示意圖。

【具體實施方式】
[0094]如圖1所示的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,包括以下步驟:
[0095]步驟一、LiDAR點云數(shù)據(jù)獲取:采用機載LiDAR測量系統(tǒng)獲取待測區(qū)域的點云數(shù)據(jù),并將所獲取的點云數(shù)據(jù)傳送至數(shù)據(jù)處理設備。所述點云數(shù)據(jù)中包括待測區(qū)域內(nèi)多個建筑物的點云數(shù)據(jù),每個建筑物的點云數(shù)據(jù)均包括該建筑物頂部的多個測點及各測點的三維坐標。
[0096]步驟二、LiDAR點云數(shù)據(jù)處理:采用所述數(shù)據(jù)處理設備分別對多個建筑物的點云數(shù)據(jù)進行處理,并提取出各建筑物的外邊界線;多個建筑物的點云數(shù)據(jù)處理過程均相同。
[0097]本實施例中,實際進行外邊界線提取之前;先通過設置高程閾值對所述點云數(shù)據(jù)進行濾波,去除所述點云數(shù)據(jù)中需處理建筑物之外的其它地物的點云數(shù)據(jù)。同時,還需對濾波后的點云數(shù)據(jù)進行分類,找出待測區(qū)域內(nèi)各建筑物的點云數(shù)據(jù)。
[0098]實際使用時,待測區(qū)域內(nèi)的建筑物可以為一個整體式建筑物(如樓宇),也可以為一個整體式建筑物上的一個建筑部件(如樓宇的一個屋面)。本實施例中,如圖2所示,所獲取的點云數(shù)據(jù)為一個住宅小區(qū)的點云數(shù)據(jù),點云密度為30點/m2,點間距約20cm。
[0099]對待測區(qū)域內(nèi)的任一個建筑物的點云數(shù)據(jù)進行處理時,過程如下:
[0100]步驟201、建筑物外輪廓點提取:調(diào)用外輪廓點提取模塊,從當前所處理建筑物的二維數(shù)據(jù)集中,提取當前所處理建筑物的外輪廓點,并獲得外輪廓點集合。所提取外輪廓點的數(shù)量為N個,所述外輪廓點集合中包含N個外輪廓點的二維數(shù)據(jù),N個所述外輪廓點連接形成當前所處理建筑物的外輪廓線,詳見圖3。
[0101]所述二維數(shù)據(jù)集包括當前所處理建筑物的點云數(shù)據(jù)中多個測點在X-Y平面直角坐標系上的二維坐標。
[0102]本實施例中,步驟201中N個所述外輪廓點,分別記作ApApAy…、AN_lt)
[0103]本實施例中,步驟201中進行建筑物外輪廓點提取時,過程如下:
[0104]步驟2011、構建kd樹:將當前所處理建筑物的點云數(shù)據(jù)中,多個測點在X-Y平面直角坐標系上的二維坐標構建kd樹。
[0105]所構建的kd樹是基于整個建筑物點云數(shù)據(jù)的二維坐標構建的數(shù)據(jù)結構,該數(shù)據(jù)結構根據(jù)輸入的單個二維坐標能快速搜索到鄰近的點集及距離,是一種二維平面的搜索機制。
[0106]步驟2012、鄰域搜索:利用步驟2011中所構建的kd樹在X-Y平面上進行鄰域搜索,找出當前所處理建筑物的所有外輪廓點,X-Y平面為X-Y平面直角坐標系所在的水平面;鄰域搜索過程如下:
[0107]步驟20121、第一次搜索:以極值點Atl作為本次搜索的搜索點O1且以X坐標軸的負半軸作為基準向量進行鄰域搜索,并在當前搜索點O1的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為第一次搜索出的外輪廓點4。
[0108]當前搜索點的鄰域內(nèi)任一測點Ci的旋轉(zhuǎn)角度為由基準向量逆時針旋轉(zhuǎn)至向量 ';的旋轉(zhuǎn)角度;極值點Atl為當前所處理建筑物的點云數(shù)據(jù)中X軸坐標值最大、X軸坐標值最小、Y軸坐標值最大或Y軸坐標值最小的測點。
[0109]步驟20122、第j次搜索:以第j-ι次搜索出的外輪廓點A^1作為本次搜索的搜索點Oj且以向量57^7為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為第j次搜索出的外輪廓點A」。
[0110]其中,j為正整數(shù)且j彡2 ;當j = 2時,A」_2 = Atl ;當j > 2時,Α」_2為第j_2次搜索出的外輪廓點。
[0111]步驟20123、多次重復步驟20122,直至搜索出的外輪廓點為Atl時,完成鄰域搜索過程。
[0112]綜上,步驟201中進行建筑物外輪廓點提取時,先構建當前所處理建筑物的二分查找樹(即kd樹);再以極值點Atl作為搜索點,以水平副方向作為基準方向,利用所構建的kd樹逆時針搜索鄰近點云,兩測點間的方向與基準方向的逆時針旋轉(zhuǎn)角度最小的測點作為第二個外輪廓點;之后,繼續(xù)以第二個外輪廓點作為搜索點,與上一個外輪廓點之間的方向向量作為基準方向,搜索第三個外輪廓點;如此不斷重復,直到搜回到起始點(極值點Aci),這樣形成由建筑物的多個外輪廓點組成的閉合線段,即建筑物的外輪廓線。
[0113]步驟20121和步驟20122中進行搜索時,當前搜索點的鄰域均為以當前搜索點為中心且以R為搜索半徑的圓形區(qū)域;其中,R = 2d?3d,d為步驟一中所述點云數(shù)據(jù)的點間距。本實施例中,R = 50cm,實際使用時,可以根據(jù)u具體需要,對R的取值大小進行相應調(diào)難
iF.0
[0114]本實施例中,步驟20121中當前搜索點O1的鄰域內(nèi)任一測點Ci的旋轉(zhuǎn)角度記作Zaci,測點Ci的二維坐標為(XCi,Yci);第一次搜索時的基準向量為T1,且T1 = (-1,0);對Z aCi進行計算時,先根據(jù)公式aCi = XciX (-1)+Yci X O = -Xci,計算得出aC1:當aCi彡O時,根據(jù)公式Z aCi = arccos (aCi),計算得出Z aCi ;當aCi < O時,根據(jù)公式Z aCi =90° -arccos (aCi),計算得出廣 aCi。
[0115]步驟20122中當前搜索點Oj的鄰域內(nèi)任一測點Cp的旋轉(zhuǎn)角度記作廣aCp,測點Cp的二維坐標為(XCp,Yqj),第j次搜索時的基準向量(),為2記作(X」,Yj) -JtZ aCp進行計算時,
先根據(jù)公式aep = XCpXXj+YCiXYj,計算得出aep:當aep彡O時,根據(jù)公式Z aCp = arccos (aCp),計算得出Z aCi ;當aCp < O時,根據(jù)公式Z aCp = 90° -arccos (aCp),計算得出Z aCi。
[0116]本實施例中,步驟2012中進行鄰域搜索過程中,將極值點Atl和各次搜索到的外輪廓點均標記為已用點;
[0117]步驟20123中,多次重復步驟20122且完成第η次搜索后,獲得第η次搜索出的外輪廓點An,并將外輪廓點An標記為已用點;之后,按照步驟20122中所述的方法,將An作為搜索點,進行第η+1次搜索,且當?shù)讦?1次搜索過程中搜索到的外輪廓點為標記的已用點時,將外輪廓點AnS記為不可用點;然后,按照Am、Αη_2、…、A1順序,由先至后對標記為有用點的外輪廓點進行回滾搜索,過程如下:
[0118]步驟1、第一次回滾搜索:對第(η-l)次搜索出的外輪廓點Alri進行回滾搜索,過程如下:
[0119]步驟1-1、第一次鄰域搜索:按照步驟20121中所述的方法,以外輪廓點Alri作為本次搜索的搜索點O11且以向量4 ?4 2為基準向量進行鄰域搜索。
[0120]步驟1-2、第一次鄰域搜索結果處理:步驟1-1中搜索完成后,當在當前搜索點O11的鄰域測點集合S’ (η-l)中不能找出旋轉(zhuǎn)角度最小的測點時,將外輪廓點Alri標記為不可用點,并進入步驟II,進行下一次回滾搜索;
[0121]反之,當在鄰域測點集合S’ (η-l)中找出旋轉(zhuǎn)角度最小的測點時,將所找出的測點作為回滾搜索過程中第一次搜索出的外輪廓點A11,且將外輪廓點A11標記為已用點,并判斷外輪廓點A11是否為極值點A0:當外輪廓點A11為極值點A0時,完成回滾搜索過程;否則,進入步驟I _3,進行下一次鄰域搜索。
[0122]步驟2012中進行鄰域搜索過程中,第(η-l)次搜索時,當前搜索點Olri的鄰域內(nèi)所有測點組成鄰域測點集合S(η-l);所述鄰域測點集合S(η-l)中的所有未標記的測點組成鄰域測點集合S’ (η-l)。
[0123]步驟1-3、第k次鄰域搜索:以回滾搜索過程中第(k-Ι)次搜索出的外輪廓點
A1(^1)作為本次搜索的搜索點Olk且以向量4α ηΑ{1 I為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點Olk的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為回滾搜索過程中第k次搜索出的外輪廓點Alk。
[0124]其中,k為正整數(shù)且 k 彡 2 ;當 k = 2 時,A1(k_2) = O11, A1(H) = A11 ;當 j > 2 時,A1(k-2)為回滾搜索過程中第(k-2)次搜索出的外輪廓點。
[0125]步驟1-3、第k次鄰域搜索:以回滾搜索過程中第(k-Ι)次搜索出的外輪廓點
A1(^1)作為本次搜索的搜索點Olk且以向量2)為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點Olk的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為回滾搜索過程中第k次搜索出的外輪廓點Alk,并將外輪廓點Alk標記為已用點。
[0126]其中,k為正整數(shù)且 k 彡 2 ;當 k = 2 時,A1(k_2) = O11, A1(H) = A11 ;當 j > 2 時,A1(k-2)為回滾搜索過程中第(k-2)次搜索出的外輪廓點。
[0127]步驟1-4、第k次鄰域搜索結果處理:步驟1-3中搜索完成后,判斷第k次搜索出的外輪廓點Alk是否為極值點A0:當外輪廓點Alk為極值點A0時,完成回滾搜索過程;否則,返回步驟I _3,進行下一次鄰域搜索。
[0128]步驟I1、第h次回滾搜索:按照步驟I中所述的方法,對步驟2012中第(n_h+l)次搜索出的外輪廓點An_h+1進行回滾搜索,直至完成回滾搜索過程;其中,h為正整數(shù)且h > 2。
[0129]步驟2012中完成回滾搜索過程后,當前狀態(tài)下所有標記為已用點的測點組成步驟201中所述外輪廓點集合,并且所有標記為已用點的測點總數(shù)量為N個。
[0130]綜上所述,步驟201中進行建筑物外輪廓點提取時,增設回滾搜索機制,因而能有效確保所提取外邊界線的準確性和可操作性。
[0131]本實施例中,步驟2012中進行鄰域搜索過程中,將極值點Atl和各次搜索到的外輪廓點由先至后放入外輪廓點集合堆棧中,并將放入所述外輪廓點集合堆棧中的極值點A0和所有外輪廓點均標記為已用點。
[0132]步驟20123中,將外輪廓點An標記為不可用點的同時,還需將外輪廓點An從所述外輪廓點集合堆棧中彈出。
[0133]步驟1-2中將外輪廓點A11標記為已用點的同時,還需將外輪廓點A11放入所述外輪廓點集合堆棧中。
[0134]步驟1-3中將外輪廓點Alk標記為已用點的同時,還需將外輪廓點Alk所述外輪廓點集合堆棧中。
[0135]步驟2012中完成回滾搜索過程后,當前狀態(tài)下所述外輪廓點集合堆棧內(nèi)的所有測點組成所述外輪廓點集合。
[0136]步驟202、特征點提取:采用道格拉斯-普撲克算法對步驟201中所述外輪廓線進行特征點提取,并從所述外輪廓點集合提取出S個特征點,S個特征點分別記作Sp s2、…、Ss。
[0137]本實施例中,步驟201中獲得當前所處理建筑物的外輪廓線后,所獲得N個外輪廓點A0、A1, A2>…、An^1沿逆時針方向由前至后進行排列;之后,將外輪廓點A0和Aim分別作為起始點和終止點,將步驟201中所得到的外輪廓線分割成一條折線段,之后再采用道格拉斯-普撲克算法對該折線段進行特征點提取,所提取的特征點為突變的測點,即拐點。
[0138]本實施例中,步驟202中采用道格拉斯-普撲克算法對所述外輪廓線進行特征點提取時,過程如下:
[0139]步驟2021、特征點指定:將步驟201中N個所述外輪廓點中任意相鄰兩個外輪廓點Ad和Af指定為特征點,并將外輪廓點Ad和Af均標記為特征點;其中D和F均為正整數(shù)且D 關 F,D = 1、2、...、N,F(xiàn)=1、2、...、N。
[0140]本實施例中,Ad= A。,Af = An^1。
[0141]步驟2022、中間特征點獲取:將外輪廓點Ad和Af作為一個特征點對,從步驟201中所述外輪廓點集合中找出一個與特征點對Ad與Af所在的直線AdAf的距離最遠且未標記的外輪廓點,并將所找出的外輪廓點作為特征點對Ad與Af的中間特征點,記作Ae,且將外輪廓點Ae標記為特征點。
[0142]步驟2023、特征點對獲取:以步驟2022中獲取的中間特征點Ae重新組建特征點對。
[0143]以中間特征點Ae重新組建特征點對時,將中間特征點Ae分別與特征點Ad和Af組成兩個特征點對,兩個特征點對分別為特征點對Ad與Ae和特征點對Ae與Af。
[0144]步驟2024、中間特征點獲取及判斷處理:對步驟2023中組成的兩個特征點對分別進行中間特征點獲取及判斷處理,且兩個特征點對的中間特征點獲取及判斷處理方法均相同。
[0145]其中,對一個特征點對進行中間特征點獲取及判斷時,從步驟201中所述外輪廓點集合中找出一個與當前所處理特征點對所在的直線的距離最遠且未標記的外輪廓點,并判斷所找出的外輪廓點與當前所處理特征點對所在直線的距離d是否大于dO:當d > dO時,將所找出的外輪廓點作為當前所處理特征點對的中間特征點,并將該中間特征點標記為特征點,并進入步驟2025 ;否則,完成當前所處理特征點對的特征點提取過程。
[0146]其中,dO= 30cm ?50cm。
[0147]步驟2025、特征點對獲取與中間特征點獲取及判斷處理:先按照步驟2023中所述的特征點對獲取方法,以步驟2024中所獲取的中間特征點重新組建特征點對;之后,按照步驟2024中所述的方法,對本步驟中所組建的所有特征點對分別進行中間特征點獲取及判斷處理。
[0148]步驟2026、多次重復步驟2025,直至完成所組建的所有特征點對的特征點提取過程。
[0149]本實施例中,步驟2024中對所找出的外輪廓點與當前所處理特征點對所在直線的距離 d 進行計算時,根據(jù)公式d=( L'l K A8.X+L’2 X An.y+L3) /^LlxLl + L2xL2 ?
其中所找出的外輪廓點的二維坐標為(An.1,An.y),當前所處理特征點對的兩個特征點的二維坐標分別為(At.X, At.y)和(Af.X, Af.y),其中 L’ I = Af.y-At.y, L' 2 = At.x_Af.x, L’ 3 =Af.X X At.y-At.X X Af.y o
[0150]步驟202中采用道格拉斯-普撲克算法對所述外輪廓線進行特征點提取后,所提取的特征點數(shù)量為M個,其中M為正整數(shù)且M > S ;M個特征點組成特征點集合,S個特征點分別記作S1^ S2>…、Sm,特征點S1又記作特征點SM+1 ;
[0151]本實施例中,特征點提取完成后,還需對所提取的M個特征點分別進行判定;其中,對M個特征點中任一個特征點Sh進行判定時,判斷特征點Sh與直線SlriSw之間的距離dh是否大于dO:當dh > dO時,在所述特征點集合中保留特征點Sh ;否則,從所述特征點集合中刪除特征點Sh,并將特征點Sh標記為非特征點。
[0152]直線SlriSw為特征點Slri和Sh+1所在的直線,特征點Slri和Sh+1為與特征點Sh相鄰的兩個特征點;其中,h為正整數(shù)且h = 1、2、…、M。
[0153]對M個特征點分別進行判定后,所述特征點集合中特征點的數(shù)量為S個。
[0154]綜上,步驟202中進行特征點提取時,先從外輪廓點集合中的第一個外輪廓點和最后一個外輪廓點作為特征點對,使外輪廓線形成一條折線段;之后,分別計算特征點對中的兩個特征點之間的所有外輪廓點到兩個特征點連線的距離,將距離最大且大于dO外輪廓點作為中間特征點,并將中間特征點分別與特征點對中的兩個特征點組成兩個特征點對;然后,對組成的特征點對再進行中間特征點獲取,當中間特征點到特征點對中兩個特征點連線的距離小于dO時結束。
[0155]由于道格拉斯-普撲克算法存在一定的限制性,主要原因在于外輪廓點集合中的第一個外輪廓點和最后一個外輪廓點(即指定的特征點)要求都不能為拐點,因而提取出的特征點并不都是拐點,因而需對提取出的特征點進行二次確認,即判定。實際進行判定時,根據(jù)所判斷特征點的前后相鄰兩個特征點進行驗證。
[0156]步驟203、最小二乘法直線擬合及初始邊界線獲取:對S個特征點中相鄰兩個特征點所在的直線分別進行擬合,并獲得S條擬合直線;s條擬合直線相交形成的封閉曲線為當前所處理建筑物的初始邊界線,所述初始邊界線由多個直線段連接而成。
[0157]對S個特征點中相鄰兩個特征點Sa和Sb進行直線擬合時,先將特征點Sa和Sb以及步驟201中所述外輪廓點集合中特征點&和Sb之間的所有外輪廓點組成直線點集,再利用最小二乘法對所述直線點集進行直線擬合,獲得特征點Sa和Sb所在的擬合直線;其中,a和 b 均為正整數(shù)且 a 關 b,a= 1、2、...、S,b = l、2、...、S。
[0158]本實施例中,步驟203中對相鄰兩個特征點&和Sb進行直線擬合時,先將所述直線點集中所有測點的X軸坐標值組成X軸坐標集合,并將所述直線點集中所有測點的X軸坐標值組成Y軸坐標集合;之后,計算X軸坐標集合中多個X軸坐標值的方差,記作σ x ;同時,計算Y軸坐標集合中多個Y軸坐標值的方差,記作σγ;然后,根據(jù)計算得出的0)(和σγ,選取擬合用的直線模型:當σχ> %時,所選取的直線模型為7 = 1?+13;否則,當σχ< σγ時,所選取的直線模型為X = ky+b ;最后,根據(jù)所述直線點集中所有測點的二維坐標,并利用所選取的直線模型進行直線擬合。
[0159]本實施例中,采用直線模型y = kx+b進行直線擬合時,k =[η*Σ (XgXyg)-Z XgX Σγ8]/[ηΧ Xyg2-Zyg X 2yg],式中η為所述直線點集中的測點總數(shù)量,Σ (XgXyg)為所述直線點集中所有測點的X軸與Y軸坐標值的乘積之和,Σχβ為所述直線點集中所有測點的X軸坐標值之和,Σ yg為所述直線點集中所有測點的Y軸坐標值之和,Syg2為所述直線點集中所有測點的Y軸坐標值的平方之和。
[0160]步驟204、建筑物主方向及副方向確定:先對步驟203中所述初始邊界線中的多個直線段的方向向量進行確定,再對多個直線段的方向向量的權重分別進行計算,并將權重最大的直線段的方向向量作為當前所處理建筑物的主方向,將當前所處理建筑物的主方向的正交向量作為當前所處理建筑物的副方向。
[0161]本實施例中,對步驟203中所述初始邊界線中的多個直線段的方向向量進行確定時,沿逆時針方向由先至后對各直線段的方向向量進行確定。
[0162]本實施例中,步驟203中所述初始邊界線由P個直線段組成,所述初始邊界線中有P個頂點,P個頂點分別為S條擬合直線相交后的交點,P個頂點沿逆時針方向由先至后分另Ij記作!\、T2、…、ΤΡ,P個直線段沿逆時針方向由先至后排列,其中P個直線段中第S條直線段記作直線段TSTS+1,其中S為正整數(shù)且S = 1、2、…、P,其中頂點!\又記作TP+1,個直線段中第s條直線段的方向方向為TSTS+1。
[0163]本實施例中,步驟204中對多個直線段的方向向量進行確定時,多個所述直線段的方向向量確定方法均相同。對任一個直線段1(J的方向向量Vq進行確定時,根據(jù)公
V__ γ"γ _ γ
" tJ- ^ QSQ2 Qi
式^-;Γ:萬一P-和公式V- ! ^ 2"進行計算,方向向量Vq= (Vq.X,Vq.Y);式中,直線段Iq的兩端點的二維坐標分別為(XQ1,YQ1)和(Xq2,Yq2)。
[0164]對直線段Iq的方向向量的權重進行計算時,由先至后將直線段Iq的方向向量Vq,分別與所述初始邊界線中其它各直線段的方向向量疊加后,獲得直線段Iq的權重向量WQ,過程如下:
[0165]步驟2041、疊加順序確定及角度差閾值Ctl設定:按照疊加先后順序,對所述初始邊界線中其它各直線段的方向向量進行排序;其中,角度差閾值C(l = 5°?10°,c± =90。-c0。
[0166]步驟2042、第一次疊加:將直線段Iq的方向向量Vq作為基準方向向量,先計算得出本次疊加的直線段的方向向量與基準方向向量之間的角度差△ Zqi ;再結合步驟2041中所設定的Ctl和Cp并根據(jù)計算得出的Λ Zqi確定疊加方式:當Λ Zqi更接近Ctl時,將基準方向向量與本次疊加的直線段的方向向量疊加;當△ Zqi更接近cI時,將基準方向向量與本次疊加直線段的方向向量的正交向量疊加;之后,按照所確定的疊加方式進行疊加,并將疊加后的向量作為下一次疊加的基準疊加向量。
[0167]步驟2043、第t次疊加:將第t-Ι次疊加后的向量作為本次疊加的基準疊加向量,先計算得出本次疊加直線段的方向向量與當前狀態(tài)下的的基準疊加向量之間的角度差Δ Z Qt;再結合步驟2041中所設定的Ctl和Cp并根據(jù)計算得出的Λ Z Qt確定疊加方式:當Λ Z Qt更接近Ctl時,將當前狀態(tài)下的基準疊加向量與本次疊加的直線段的方向向量疊力口 ;當△ Z Qt更接近cI時,將當前狀態(tài)下的基準疊加向量與本次疊加直線段的方向向量的正交向量疊加;之后,按照所確定的疊加方式進行疊加,并將疊加后的向量作為下一次疊加的基準疊加向量。
[0168]步驟2044、多次重復步驟2043,直至完成方向向量Vq與所述初始邊界線中其它各直線段的方向向量的全部疊加過程,且疊加過程完成后所得的向量為直線段Iq的權重向量
V
[0169]步驟204中權重最大的直線段為權重向量的長度最大的直線段。
[0170]本實施例中,步驟2042中對本次疊加的直線段的方向向量與基準方向向量之間的角度差Λ Zqi進行計算時,根據(jù)公式Λ Zqi = arccos (I Vu.XXVQ.X+Vu.YXVQ.Υ|)進行計算;本次疊加的直線段的方向向量為(Vu.X,Vu.Y),基準方向向量為(VQ.X,Vq.Y);
[0171]步驟2043中對本次疊加的直線段的方向向量與當前狀態(tài)下的基準疊加向量之間的角度差Δ Zet進行計算時,根據(jù)公式Δ ZQt = arcc0S(|Vu.XXVt.X+Vu.YXVt.Y|)進行計算;本次疊加的直線段的方向向量為(Vu.X,Vu.Y),當前狀態(tài)下的基準方向向量為(Vt.X,Vt.Y)。
[0172]本實施例中,步驟2042中疊加后的向量記作(VQ’.X,VQ’.Y);將基準方向向量與本次疊加直線段的方向向量疊加時,V;.X = VL1.X+Vq.X,V;.Y = VL1.Y+Vq.Y ;將基準方向向量與本次疊加直線段的方向向量的正交向量疊加時,V;.X = Vli ±.X+VQ.X, V;.Y = Vu 1.Y+VQ.Y;本次疊加直線段的方向向量的正交向量為(Vu 1.X,Vu 1.Y);
[0173]步驟2043中疊加后的向量記作(Vt’.X,Vt’.Y);將當前狀態(tài)下的基準疊加向量與本次疊加的直線段的方向向量疊加時,vt’.X = Vu.X+Vt.X,Vt’.Y = VLt.Y+Vt.Y ;將當前狀態(tài)下的基準疊加向量與本次疊加直線段的方向向量的正交向量疊加時,Vt’.X = VLt±.X+Vt.X,V;.Y = VLt丄.Y+Vt.Y ;本次疊加直線段的方向向量的正交向量為(Vu丄.X,VLt丄.Y)。
[0174]步驟205、初始邊界線規(guī)則化:對步驟203中所述初始邊界線中的多個直線段分別進行規(guī)則化處理。
[0175]對所述初始邊界線中任一個直線段進行規(guī)則化處理時,過程如下:
[0176]步驟2051、規(guī)則化方向確定:根據(jù)步驟204中所確定的主方向和副方向以及當前所處理直線段的方向向量,對當前所處理直線段的規(guī)則化方向進行確定:當當前所處理直線段的方向向量更靠近主方向時,以主方向作為規(guī)則化方向;反之,當當前所處理直線段的方向向量更靠近副方向時,以副方向作為規(guī)則化方向。
[0177]步驟2052、是否需進行規(guī)則化判斷:計算當前所處理直線段在步驟2051中所確定規(guī)則化方向上的投影長度L,并根據(jù)投影長度L對當前所處理直線段是否需進行規(guī)則化進行判斷:當投影長度L < Ltl時,進入步驟2053 ;否則,無需進行規(guī)則化處理,將當前所處理直線段所在的直線作為其規(guī)則化直線。其中,Ltl = 0.5m?lm。
[0178]步驟2053、規(guī)則化處理:以當前所處理直線段的中點為起點,且以步驟2051中所確定的規(guī)則化方向為方向向量,生成當前所處理直線段的規(guī)則化直線。
[0179]本實施例中,步驟205中進行初始邊界線規(guī)則化之前,先找出步驟203中所述初始邊界線中方向向量相同的所有直線段,并將方向向量相同的所有直線段合并為一條直線;進行規(guī)則化處理時,僅需對合并后的直線進行規(guī)則化處理。實際進行規(guī)則化處理時,合并后直線的中點坐標為取方向向量相同的所有直線段的平均值。
[0180]本實施例中,步驟2052中對當前所處理直線段在步驟2051中所確定規(guī)則化方向上的投影長度L進行計算時,先根據(jù)公式Λ Z Θ = arccos(|VH.XXV±.X+VH.YXV±.Y|)進行計算,當前所處理直線段的方向向量為(VH.X,Vh.Y),主方向為(V±.X,V±.Y);之后,根據(jù)計算得出的△ Z Θ,對投影長度L進行計算:當步驟2051中所確定規(guī)則化方向為主方
Ayffi
向時,L=Sin (^r) K抑+(VH1-V主Tf ;當步驟2051中所確定規(guī)則化

Jm
Qf1 — AXff.-
方向為副方向時,L=sin(—^^) % ^j(yu.x r:,xf+(VuJβ
[0181]綜上,實際進行規(guī)劃化處理時,當前所處理直線段的中點坐標保持不變,方向向量改為主方向或副方向。
[0182]步驟206、規(guī)則化邊界線獲取:步驟205中所述初始邊界線中的多個直線段均規(guī)則化處理完成后,多個直線段的規(guī)則化直線相交形成的封閉曲線為當前所處理建筑物的規(guī)劃化邊界線,詳見圖4。
[0183]結合圖5,可以看出,除部分弧線或者大角度的線段外,本發(fā)明得到的建筑物外邊界線在規(guī)則化的前提下,覆蓋了全部點云的外邊界,使用效果非常好。
[0184]以上所述,僅是本發(fā)明的較佳實施例,并非對本發(fā)明作任何限制,凡是根據(jù)本發(fā)明技術實質(zhì)對以上實施例所作的任何簡單修改、變更以及等效結構變化,均仍屬于本發(fā)明技術方案的保護范圍內(nèi)。
【權利要求】
1.一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于該方法包括以下步驟: 步驟一、LiDAR點云數(shù)據(jù)獲取:采用機載LiDAR測量系統(tǒng)獲取待測區(qū)域的點云數(shù)據(jù),并將所獲取的點云數(shù)據(jù)傳送至數(shù)據(jù)處理設備;所述點云數(shù)據(jù)中包括待測區(qū)域內(nèi)多個建筑物的點云數(shù)據(jù),每個建筑物的點云數(shù)據(jù)均包括該建筑物頂部的多個測點及各測點的三維坐標;步驟二、LiDAR點云數(shù)據(jù)處理:采用所述數(shù)據(jù)處理設備分別對多個建筑物的點云數(shù)據(jù)進行處理,并提取出各建筑物的外邊界線;多個建筑物的點云數(shù)據(jù)處理過程均相同;對待測區(qū)域內(nèi)的任一個建筑物的點云數(shù)據(jù)進行處理時,過程如下: 步驟201、建筑物外輪廓點提取:調(diào)用外輪廓點提取模塊,從當前所處理建筑物的二維數(shù)據(jù)集中,提取當前所處理建筑物的外輪廓點,并獲得外輪廓點集合;所提取外輪廓點的數(shù)量為N個,所述外輪廓點集合中包含N個外輪廓點的二維數(shù)據(jù),N個所述外輪廓點連接形成當前所處理建筑物的外輪廓線; 所述二維數(shù)據(jù)集包括當前所處理建筑物的點云數(shù)據(jù)中多個測點在X-Y平面直角坐標系上的二維坐標;步驟202、特征點提取:采用道格拉斯-普撲克算法對步驟201中所述外輪廓線進行特征點提取,并從所述外輪廓點集合提取出S個特征點,S個特征點分別記作Sp S2>…、Ss ;步驟203、最小二乘法直線擬合及初始邊界線獲取:對S個特征點中相鄰兩個特征點所在的直線分別進行擬合,并獲得S條擬合直線;S條擬合直線相交形成的封閉曲線為當前所處理建筑物的初始邊界線,所述初始邊界線由多個直線段連接而成; 對S個特征點中相鄰兩個特征點Sa和Sb進行直線擬合時,先將特征點Sa和Sb以及步驟201中所述外輪廓點集合中特征點&和Sb之間的所有外輪廓點組成直線點集,再利用最小二乘法對所述直線點集進行直線擬合,獲得特征點Sa和Sb所在的擬合直線;其中,a和b均為正整數(shù)且 a 關 b,a = 1、2、...、S,b = l、2、...、S; 步驟204、建筑物主方向及副方向確定:先對步驟203中所述初始邊界線中的多個直線段的方向向量進行確定,再對多個直線段的方向向量的權重分別進行計算,并將權重最大的直線段的方向向量作為當前所處理建筑物的主方向,將當前所處理建筑物的主方向的正交向量作為當前所處理建筑物的副方向; 步驟205、初始邊界線規(guī)則化:對步驟203中所述初始邊界線中的多個直線段分別進行規(guī)則化處理; 對所述初始邊界線中任一個直線段進行規(guī)則化處理時,過程如下: 步驟2051、規(guī)則化方向確定:根據(jù)步驟204中所確定的主方向和副方向以及當前所處理直線段的方向向量,對當前所處理直線段的規(guī)則化方向進行確定:當當前所處理直線段的方向向量更靠近主方向時,以主方向作為規(guī)則化方向;反之,當當前所處理直線段的方向向量更靠近副方向時,以副方向作為規(guī)則化方向; 步驟2052、是否需進行規(guī)則化判斷:計算當前所處理直線段在步驟2051中所確定規(guī)則化方向上的投影長度L,并根據(jù)投影長度L對當前所處理直線段是否需進行規(guī)則化進行判斷:當投影長度L < Ltl時,進入步驟2053 ;否則,無需進行規(guī)則化處理,將當前所處理直線段所在的直線作為其規(guī)則化直線;其中,L0 = 0.5m?Im ; 步驟2053、規(guī)則化處理:以當前所處理直線段的中點為起點,且以步驟2051中所確定的規(guī)則化方向為方向向量,生成當前所處理直線段的規(guī)則化直線; 步驟206、規(guī)則化邊界線獲取:步驟205中所述初始邊界線中的多個直線段均規(guī)則化處理完成后,多個直線段的規(guī)則化直線相交形成的封閉曲線為當前所處理建筑物的規(guī)劃化邊界線。
2.按照權利要求1所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟202中采用道格拉斯-普撲克算法對所述外輪廓線進行特征點提取后,所提取的特征點數(shù)量為M個,其中M為正整數(shù)且M > S ;M個特征點組成特征點集合,S個特征點分別記作S1' S2,…、SM,特征點S1又記作特征點SM+1 ; 特征點提取完成后,還需對所提取的M個特征點分別進行判定;其中,對M個特征點中任一個特征點Sh進行判定時,判斷特征點Sh與直線SlriSlri之間的距離dh是否大于d0:當dh > d0時,在所述特征點集合中保留特征點Sh ;否則,從所述特征點集合中刪除特征點Sh,并將特征點Sh標記為非特征點; 直線SlriSlrt為特征點Slri和Sh+1所在的直線,特征點Slri和Sh+1為與特征點Sh相鄰的兩個特征點;其中,h為正整數(shù)且h = 1、2、…、M; 對M個特征點分別進行判定后,所述特征點集合中特征點的數(shù)量為S個。
3.按照權利要求1或2所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟201中N個所述外輪廓點,分別記作m…、An_i ; 步驟201中進行建筑物外輪廓點提取時,過程如下: 步驟2011、構建kd樹:將當前所處理建筑物的點云數(shù)據(jù)中,多個測點在X-Y平面直角坐標系上的二維坐標構建kd樹; 步驟2012、鄰域搜索:利用步驟2011中所構建的kd樹在X-Y平面上進行鄰域搜索,找出當前所處理建筑物的所有外輪廓點,X-Y平面為X-Y平面直角坐標系所在的水平面;鄰域搜索過程如下: 步驟20121、第一次搜索:以極值點Atl作為本次搜索的搜索點O1且以X坐標軸的負半軸作為基準向量進行鄰域搜索,并在當前搜索點O1的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為第一次搜索出的外輪廓點A1 ; 當前搜索點的鄰域內(nèi)任一測點Ci的旋轉(zhuǎn)角度為由基準向量逆時針旋轉(zhuǎn)至向量OfC,.的旋轉(zhuǎn)角度;極值點Atl為當前所處理建筑物的點云數(shù)據(jù)中X軸坐標值最大、X軸坐標值最小、Y軸坐標值最大或Y軸坐標值最小的測點;步驟20122、第j次搜索:以第j-Ι次搜索出的外輪廓點Ap1作為本次搜索的搜索點Oj且以向量:為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為第j次搜索出的外輪廓點Aj ;其中,j為正整數(shù)且j彡2 ;當j = 2時,A」_2 = Atl ;當j > 2時,Α」_2為第j-2次搜索出的外輪廓點; 步驟20123、多次重復步驟20122,直至搜索出的外輪廓點為A0時,完成鄰域搜索過程。
4.按照權利要求3所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟2012中進行鄰域搜索過程中,將極值點Atl和各次搜索到的外輪廓點均標記為已用點; 步驟20123中,多次重復步驟20122且完成第η次搜索后,獲得第η次搜索出的外輪廓點Αη,并將外輪廓點An標記為已用點;之后,按照步驟20122中所述的方法,將An作為搜索點,進行第η+1次搜索,且當?shù)讦?1次搜索過程中搜索到的外輪廓點為標記的已用點時,將外輪廓點AnS記為不可用點;然后,按照A1^AnI…、A1順序,由先至后對標記為有用點的外輪廓點進行回滾搜索,過程如下: 步驟1、第一次回滾搜索:對第(η-l)次搜索出的外輪廓點Alri進行回滾搜索,過程如下: 步驟1-1、第一次鄰域搜索:按照步驟20121中所述的方法,以外輪廓點Alri作為本次搜索的搜索點O11且以向量:為基準向量進行鄰域搜索; 步驟I _2、第一次鄰域搜索結果處理:步驟1-1中搜索完成后,當在當前搜索點O11的鄰域測點集合S’ (η-l)中不能找出旋轉(zhuǎn)角度最小的測點時,將外輪廓點Alri標記為不可用點,并進入步驟II,進行下一次回滾搜索; 反之,當在鄰域測點集合S’ (η-l)中找出旋轉(zhuǎn)角度最小的測點時,將所找出的測點作為回滾搜索過程中第一次搜索出的外輪廓點A11,且將外輪廓點A11標記為已用點,并判斷外輪廓點A11是否為極值點A0:當外輪廓點A11為極值點A0時,完成回滾搜索過程;否則,進入步驟1-3,進行下一次鄰域搜索; 步驟2012中進行鄰域搜索過程中,第(η-l)次搜索時,當前搜索點Olri的鄰域內(nèi)所有測點組成鄰域測點集合S(n-l);所述鄰域測點集合S(n-l)中的所有未標記的測點組成鄰域測點集合S’ (η-1); 步驟1-3、第k次鄰域搜索:以回滾搜索過程中第(k-Ι)次搜索出的外輪廓點Aiari)作為本次搜索的搜索點Olk且以向量為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點Olk的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為回滾搜索過程中第k次搜索出的外輪廓點Alk ; 其中,k為正整數(shù)且k彡2 ;當k = 2時,A1(k_2) = OinA1(H) = A11 ;當j > 2時,A制為回滾搜索過程中第(k-2)次搜索出的外輪廓點; 步驟1-3、第k次鄰域搜索:以回滾搜索過程中第(k-Ι)次搜索出的外輪廓點Aiari)作為本次搜索的搜索點011;且以向量ιΑα 2i為基準向量進行鄰域搜索,并按照步驟20121中所述的方法,在當前搜索點Olk的鄰域內(nèi)找出旋轉(zhuǎn)角度最小的測點,所找出的測點為回滾搜索過程中第k次搜索出的外輪廓點Alk,并將外輪廓點Alk標記為已用點; 其中,k為正整數(shù)且k彡2 ;當k = 2時,A1(k_2) = OinA1(H) = A11 ;當j > 2時,A制為回滾搜索過程中第(k-2)次搜索出的外輪廓點; 步驟I _4、第k次鄰域搜索結果處理:步驟1-3中搜索完成后,判斷第k次搜索出的外輪廓點Alk是否為極值點A0:當外輪廓點Alk為極值點A0時,完成回滾搜索過程;否則,返回步驟I _3,進行下一次鄰域搜索; 步驟I1、第h次回滾搜索:按照步驟I中所述的方法,對步驟2012中第(η-h+l)次搜索出的外輪廓點An_h+1進行回滾搜索,直至完成回滾搜索過程;其中,h為正整數(shù)且h > 2 ;步驟2012中完成回滾搜索過程后,當前狀態(tài)下所有標記為已用點的測點組成步驟201中所述外輪廓點集合,并且所有標記為已用點的測點總數(shù)量為N個。
5.按照權利要求4所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟20121中當前搜索點O1的鄰域內(nèi)任一測點Ci的旋轉(zhuǎn)角度記作Z aei,測點Ci的二維坐標為(Χα,Υα);第一次搜索時的基準向量為T1,且T1 = (-1,0);對2&^進行計算時,先根據(jù)公式aa = XciX (-1)+Yci X O = -Xei,計算得出aC1:當aCi彡O時,根據(jù)公式Z aCi=arccos (aCi),計算得出 Z aCi ;當 aCi < O 時,根據(jù)公式Z aCi = 90° -arccos (aCi),計算得出 Z aCi ; 步驟20122中當前搜索點的鄰域內(nèi)任一測點Cp的旋轉(zhuǎn)角度記作Z aep,測點Cp的二維坐標為(XCp,Yqj),第j次搜索時的基準向量記作(X」,Yj);對2 aep進行計算時,先根據(jù)公式aep = XepXXj-YeiXYj,計算得出aep:當aCp彡O時,根據(jù)公式Z aCp = arccos (aCp),計算得出Z aCi ;當aCp < O時,根據(jù)公式Z aCp = 90° -arccos (aCp),計算得出廣aCi ; 步驟2012中進行鄰域搜索過程中,將極值點Atl和各次搜索到的外輪廓點由先至后放入外輪廓點集合堆棧中,并將放入所述外輪廓點集合堆棧中的極值點Atl和所有外輪廓點均標記為已用點; 步驟20123中,將外輪廓點AnS記為不可用點的同時,還需將外輪廓點An從所述外輪廓點集合堆棧中彈出; 步驟1-2中將外輪廓點A11標記為已用點的同時,還需將外輪廓點A11放入所述外輪廓點集合堆棧中; 步驟1-3中將外輪廓點Alk標記為已用點的同時,還需將外輪廓點Alk所述外輪廓點集合堆棧中; 步驟2012中完成回滾搜索過程后,當前狀態(tài)下所述外輪廓點集合堆棧內(nèi)的所有測點組成所述外輪廓點集合。
6.按照權利要求1或2所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟201中N個所述外輪廓點,分別記作m…、An_i ;步驟202中采用道格拉斯-普撲克算法對所述外輪廓線進行特征點提取時,過程如下: 步驟2021、特征點指定:將步驟201中N個所述外輪廓點中任意相鄰兩個外輪廓點Ad和Af指定為特征點,并將外輪廓點Ad和標記為特征點;其中D和F均為正整數(shù)且D古F,D = 1、2、-..、N,F(xiàn) = 1、2、...、Ν ; 步驟2022、中間特征點獲取:將外輪廓點Ad和Af作為一個特征點對,從步驟201中所述外輪廓點集合中找出一個與特征點對Ad與Af所在的直線AdAf的距離最遠且未標記的外輪廓點,并將所找出的外輪廓點作為特征點對Ad與Af的中間特征點,記作Ae,且將外輪廓點Ae標記為特征點; 步驟2023、特征點對獲取:以步驟2022中獲取的中間特征點Ae重新組建特征點對; 以中間特征點Ae重新組建特征點對時,將中間特征點Ae分別與特征點Ad和Af組成兩個特征點對,兩個特征點對分別為特征點對Ad與Ae和特征點對Ae與Af ;步驟2024、中間特征點獲取及判斷處理:對步驟2023中組成的兩個特征點對分別進行中間特征點獲取及判斷處理,且兩個特征點對的中間特征點獲取及判斷處理方法均相同; 其中,對一個特征點對進行中間特征點獲取及判斷時,從步驟201中所述外輪廓點集合中找出一個與當前所處理特征點對所在的直線的距離最遠且未標記的外輪廓點,并判斷所找出的外輪廓點與當前所處理特征點對所在直線的距離d是否大于dO:當d > dO時,將所找出的外輪廓點作為當前所處理特征點對的中間特征點,并將該中間特征點標記為特征點,并進入步驟2025 ;否則,完成當前所處理特征點對的特征點提取過程; 其中,dO = 30cm ?50cm ; 步驟2025、特征點對獲取與中間特征點獲取及判斷處理:先按照步驟2023中所述的特征點對獲取方法,以步驟2024中所獲取的中間特征點重新組建特征點對;之后,按照步驟2024中所述的方法,對本步驟中所組建的所有特征點對分別進行中間特征點獲取及判斷處理; 步驟2026、多次重復步驟2025,直至完成所組建的所有特征點對的特征點提取過程。
7.按照權利要求1或2所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟203中對相鄰兩個特征點Sa和Sb進行直線擬合時,先將所述直線點集中所有測點的X軸坐標值組成X軸坐標集合,并將所述直線點集中所有測點的X軸坐標值組成Y軸坐標集合;之后,計算X軸坐標集合中多個X軸坐標值的方差,記作σ x ;同時,計算Y軸坐標集合中多個Y軸坐標值的方差,記作σγ;然后,根據(jù)計算得出的0)(和Oy,選取擬合用的直線模型:當σχ> %時,所選取的直線模型為7 = 1?+13;否則,當σχ< %時,所選取的直線模型為X = ky+b ;最后,根據(jù)所述直線點集中所有測點的二維坐標,并利用所選取的直線模型進行直線擬合。
8.按照權利要求1或2所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟204中對多個直線段的方向向量進行確定時,多個所述直線段的方向向量確定方法均相同;對任一個直線段的方向向量Vq進行確定時,根據(jù)公式 Y _ Yγ _ γ = mm,'1---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------和 AV 式 V0J=^j=-------------------------------------------------------'ML=M-------------------------------------------------------------------------------------------------------講行計筧美-;)2+%-D2 “式 β ^(χ?^χ?1γ+(γ?2^γ?1γ 進仃計算,方向向量Vq= (Vq.X,Vq.Y);式中,直線段Iq的兩端點的二維坐標分別為(XQ1,YQ1)和(Xq2,Yq2); 對直線段Iq的方向向量的權重進行計算時,由先至后將直線段Iq的方向向量Vq,分別與所述初始邊界線中其它各直線段的方向向量疊加后,獲得直線段Iq的權重向量Wq,過程如下: 步驟2041、疊加順序確定及角度差閾值Ctl設定:按照疊加先后順序,對所述初始邊界線中其它各直線段的方向向量進行排序;其中,角度差閾值Ctl = 5°?10°,c± =90。 -C0 ; 步驟2042、第一次疊加:將直線段Iq的方向向量Vq作為基準方向向量,先計算得出本次疊加的直線段的方向向量與基準方向向量之間的角度差△ Zqi ;再結合步驟2041中所設定的Ctl和Cp并根據(jù)計算得出的Λ Zqi確定疊加方式:當Λ Zqi更接近Ctl時,將基準方向向量與本次疊加的直線段的方向向量疊加;當△ Zqi更接近Ci時,將基準方向向量與本次疊加直線段的方向向量的正交向量疊加;之后,按照所確定的疊加方式進行疊加,并將疊加后的向量作為下一次疊加的基準疊加向量; 步驟2043、第t次疊加:將第t-Ι次疊加后的向量作為本次疊加的基準疊加向量,先計算得出本次疊加直線段的方向向量與當前狀態(tài)下的的基準疊加向量之間的角度差△ zQt;再結合步驟2041中所設定的Ctl和Cl,并根據(jù)計算得出的Λ ZQt確定疊加方式:當Λ Zet更接近Ctl時,將當前狀態(tài)下的基準疊加向量與本次疊加的直線段的方向向量疊加;當Δ Zgt更接近c ±時,將當前狀態(tài)下的基準疊加向量與本次疊加直線段的方向向量的正交向量疊加;之后,按照所確定的疊加方式進行疊加,并將疊加后的向量作為下一次疊加的基準疊加向量; 步驟2044、多次重復步驟2043,直至完成方向向量Vq與所述初始邊界線中其它各直線段的方向向量的全部疊加過程,且疊加過程完成后所得的向量為直線段Iq的權重向量Wq ;步驟204中權重最大的直線段為權重向量的長度最大的直線段。
9.按照權利要求8所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟2042中對本次疊加的直線段的方向向量與基準方向向量之間的角度差Δ Zqi進行計算時,根據(jù)公式Λ Z Q1 = arccos (IVL1.XXVQ.X+VL1.YXVQ.Y|)進行計算;本次疊加的直線段的方向向量為(Vu.X,Vu.Y),基準方向向量為(VQ.X,Vq.Y); 步驟2043中對本次疊加的直線段的方向向量與當前狀態(tài)下的基準疊加向量之間的角度差Λ ZQt進行計算時,根據(jù)公式Λ Z Qt = arccos (I Vu.XXVt.X+Vu.Y XVt.Υ|)進行計算;本次疊加的直線段的方向向量為(Vu.X,Vu.Y),當前狀態(tài)下的基準方向向量為(Vt.X,Vt.Y); 步驟2042中疊加后的向量記作(VQ’.X,VQ’.Y);將基準方向向量與本次疊加直線段的方向向量疊加時,VQ’.X = VL1.X+Vq.X,Vq’.Y = Vu.Y+VQ.Y ;將基準方向向量與本次疊加直線段的方向向量的正交向量疊加時,VQ’.X = Vu 1.X+VQ.X,V;.Y = Vli ±.Y+VQ.Y ;本次疊加直線段的方向向量的正交向量為(Vli丄.X,Vli丄.Y); 步驟2043中疊加后的向量記作(Vt’.X,Vt’.Y);將當前狀態(tài)下的基準疊加向量與本次疊加的直線段的方向向量疊加時,Vt’.X = Vu.X+Vt.X,Vt’.Y = VLt.Y+Vt.Y ;將當前狀態(tài)下的基準疊加向量與本次疊加直線段的方向向量的正交向量疊加時,vt’.X = vLt±.x+vt.x,vt’.Y= Vu 1.Y+Vt.Y ;本次疊加直線段的方向向量的正交向量為(Vu 1.X,Vu 1.Y)。
10.按照權利要求1或2所述的一種基于機載LiDAR數(shù)據(jù)的建筑物外邊界線提取方法,其特征在于:步驟2052中對當前所處理直線段在步驟2051中所確定規(guī)則化方向上的投影長度L進行計算時,先根據(jù)公式Λ Z Θ = arcc0S(|VH.XXV主.Χ+νΗ.ΥΧν主.Υ|)進行計算,當前所處理直線段的方向向量為(VH.X,Vh.Y),主方向為(V±.X,V±.Y);之后,根據(jù)計算得出的Λ Z Θ,對投影長度L進行計算:當步驟2051中所確定規(guī)則化方向為主方向時,L=sin(^) X.當步驟2051中所確定規(guī)則化方向為副方向時,L=sin() X

2
【文檔編號】G06K9/46GK104200212SQ201410290126
【公開日】2014年12月10日 申請日期:2014年6月25日 優(yōu)先權日:2014年6月25日
【發(fā)明者】彭桂輝, 段夢琦, 楊培義, 宋袁龍 申請人:西安煤航信息產(chǎn)業(yè)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1