唐麗玉 張 浩 黃洪宇 陳崇成
(1.福州大學(xué)空間數(shù)據(jù)挖掘與信息共享教育部重點(diǎn)實(shí)驗(yàn)室, 福州 350002;2.福州大學(xué)地理空間信息技術(shù)國家地方聯(lián)合工程研究中心, 福州 350002)
基于點(diǎn)云數(shù)據(jù)的樹木三維重建方法改進(jìn)
唐麗玉1,2張 浩1,2黃洪宇1,2陳崇成1,2
(1.福州大學(xué)空間數(shù)據(jù)挖掘與信息共享教育部重點(diǎn)實(shí)驗(yàn)室, 福州 350002;2.福州大學(xué)地理空間信息技術(shù)國家地方聯(lián)合工程研究中心, 福州 350002)
激光點(diǎn)云數(shù)據(jù)以其詳盡、高精度的三維信息,在森林參數(shù)估算、精確重建植物形態(tài)結(jié)構(gòu)三維模型方面具有特殊優(yōu)勢。為進(jìn)一步提高三維模型精度,綜合集成多種算法,在改進(jìn)現(xiàn)有PC2Tree軟件基礎(chǔ)上,基于點(diǎn)云數(shù)據(jù)進(jìn)行樹木三維重建。首先根據(jù)樹木局部點(diǎn)云的主方向相似度和局部點(diǎn)云軸向分布密度分離枝干與樹葉;其次采取水平集和最小二乘法提取枝干部分的骨架點(diǎn),通過下采樣方法提取冠層部分的特征點(diǎn);最后根據(jù)骨架點(diǎn)和特征點(diǎn)拓?fù)浣Y(jié)構(gòu)重構(gòu)樹木三維模型。以樟樹為例,分析枝葉分割精度,自動分割與手動分割結(jié)果相近;以無葉的雞蛋花樹為例,分析重建模型精度,模型主枝長度相對誤差范圍集中在0~8.0%,半徑相對誤差范圍集中在0~10%;枝條重建過程避免了噪聲點(diǎn)的干擾,對噪聲點(diǎn)具有一定的不敏感性;重建三維模型與原始點(diǎn)云吻合度高,基本解決了冠層內(nèi)部枝干遮擋嚴(yán)重帶來的三維建模困難的問題;依據(jù)模型提取樹高、冠幅、胸徑、體積等參數(shù),增加了重建模型的應(yīng)用范圍。
樹木; 三維重建; 激光點(diǎn)云; 主方向; 分割; 骨架點(diǎn)
虛擬植物已被認(rèn)為是一種潛在的有利于理解、表達(dá)和模擬植物形態(tài)結(jié)構(gòu)生長發(fā)育的有效工具[1]?;谥参镄螒B(tài)結(jié)構(gòu)的精確模擬使虛擬植物實(shí)現(xiàn)了面向多層次、多方面的應(yīng)用,如植物生長對資源的競爭、光輻射模擬研究[2]等。三維激光掃描技術(shù)在非破壞性的前提下能夠自動、快速、準(zhǔn)確、高密度地獲取物體表面的三維采樣點(diǎn)(亦稱點(diǎn)云),其優(yōu)點(diǎn)受到廣泛關(guān)注,在農(nóng)林業(yè)資源調(diào)查中有著很大的應(yīng)用潛能,如林分結(jié)構(gòu)研究[3]、樹木三維建模[4]等。
骨架點(diǎn)提取是直接利用點(diǎn)云數(shù)據(jù)構(gòu)建三維樹木模型的關(guān)鍵環(huán)節(jié)。骨架點(diǎn)的提取方法大多利用點(diǎn)云的鄰域信息,可歸納為基于水平集、拉普拉斯、聚類和圖論的方法[5]。VERROUST等[6]較早提出基于水平集的方法,具有一定的健壯性、簡單易實(shí)現(xiàn),但以質(zhì)心表示骨架導(dǎo)致骨架半徑精度較低?;诶绽沟乃惴ㄔ从赗OSA(Rotational symmetry axis)方法[7],可以處理不完整點(diǎn)云數(shù)據(jù),但在確定ROSA點(diǎn)時,要求點(diǎn)云呈類圓柱體分布。近年來,出現(xiàn)了不依賴于鄰域信息提取骨架的方法,骨架直接以枝干結(jié)構(gòu)圖(Branch-structure graph, BSG)的形式表示[8],但比較依賴于點(diǎn)云數(shù)據(jù)的密度,重建模型中的枝干生長方向容易沿著樹冠表面前進(jìn)生長。王曉輝等[9-10]基于水平集的算法提取骨架點(diǎn),根據(jù)骨架點(diǎn)的分級和訪問次數(shù)計算枝條半徑,實(shí)現(xiàn)了樹木骨架點(diǎn)的提取和枝條的模擬,并研發(fā)了單株木建模軟件原型PC2Tree,適用于多次或單次掃描的點(diǎn)云樹木三維重建,模型真實(shí)感強(qiáng);不足之處在于部分枝條半徑擬合精度低,局部重建枝條與原始點(diǎn)云的吻合度稍差。
基于點(diǎn)云幾何屬性的分割方法大致分為:①模型擬合法,典型代表為RANSAC (Random sample consensus)算法[11-12]。②區(qū)域增長法,如GORTE[13]利用TIN模型結(jié)合區(qū)域增長法用于點(diǎn)云分割。③聚類法,常見的有模糊C均值法[14]、K-means法[15]等,與區(qū)域增長算法不同,聚類算法不需要指定種子點(diǎn)。以上3種算法對室內(nèi)小部件或建筑等比較規(guī)則的物體具有較好的分割效果,而對結(jié)構(gòu)復(fù)雜、千姿百態(tài)的樹木難以實(shí)現(xiàn)枝葉分割。代明睿等[16]利用點(diǎn)云深度圖像計算主方向,并以主方向?yàn)橐罁?jù),將樹木的總體點(diǎn)云分割為枝干和葉子2部分;之后出現(xiàn)了直接計算點(diǎn)云主方向的方法[17-18],即法截線擬合法(Chord and normal vectors, CAN),與3次曲面擬合法[19]和基于網(wǎng)格化的估算方法[20]相比,抗噪能力更強(qiáng),更適用于樹木點(diǎn)云的主方向計算。隨后,ZHANG等[21]利用移動圓柱體提取枝干骨架點(diǎn),以冠層特征點(diǎn)作為冠層的骨架點(diǎn),利用分級粒子流連接骨架點(diǎn),所建模型比LIVNY等[8]的枝條重建效果好,但細(xì)枝模擬真實(shí)感差。AITEANU等[22]在文獻(xiàn)[21]的基礎(chǔ)上采用圓柱主方向思想,計算點(diǎn)云密集區(qū)枝干的中心點(diǎn),并作為主干部分的骨架點(diǎn),該方法優(yōu)點(diǎn)是可以忽略點(diǎn)云密集區(qū)小比例的數(shù)據(jù)缺失,重建后的枝條半徑精度相對較高,但重建枝條模型時需進(jìn)行橢圓調(diào)整,其判斷條件較繁瑣。
根據(jù)現(xiàn)有技術(shù),利用點(diǎn)云數(shù)據(jù)重建植物三維模型大致分為2類,即基于分割技術(shù)的植物建模法和直接建模法。直接建模法是將采集得到的所有點(diǎn)云統(tǒng)一處理、建模,該方法的好處是減少了分割枝葉的操作,缺點(diǎn)是重建模型精度低。本文針對PC2Tree采用直接建模法的不足,集成分割等多種算法,提高樹木三維自動重建精度。
綜合集成多種算法的優(yōu)勢,形成基于點(diǎn)云數(shù)據(jù)進(jìn)行樹木自動三維建模的方案。根據(jù)局部點(diǎn)云主方向的相似度和局部點(diǎn)云軸向分布密度進(jìn)行樹木枝干和樹冠的分割;基于水平集的方法提取樹干骨架點(diǎn),采用最小二乘法擬合枝干骨架點(diǎn)半徑;通過下采樣[23]技術(shù)對樹冠點(diǎn)云進(jìn)行抽稀,獲得冠層部分的特征點(diǎn),通過Prim算法[24]確定特征點(diǎn)拓?fù)浣Y(jié)構(gòu),根據(jù)半徑傳遞思想給特征點(diǎn)半徑賦值;根據(jù)骨架點(diǎn)和特征點(diǎn)拓?fù)浣Y(jié)構(gòu),利用廣義圓柱體模擬樹木枝條;最后,映射相應(yīng)紋理,形成樹木的三維模型??傮w流程如圖1所示。
圖1 點(diǎn)云樹木三維重建過程 Fig.1 3D single tree reconstruction process based on point cloud data
1.1 數(shù)據(jù)獲取與預(yù)處理
以福州大學(xué)怡山校區(qū)(119°16′E、26°4′N)內(nèi)的赤松(PinusdensifloraSieb. et Zucc.,PdS)、陰香(CinnamomumburmanniBlume,CbB)、樟樹(CinnamomumcamphoraPresl,CcP)和校園外附近的雞蛋花樹(Plumeriarubra‘Acutifolia’,PrA)為例進(jìn)行研究。赤松為常綠喬木,樹皮成不規(guī)則鱗片狀,樹枝平展成傘狀樹冠,針葉長8~12 cm,徑約1 mm。陰香為常綠喬木,樹皮光滑呈灰褐色,葉互生或近對生,長5~12 cm。樟樹為常綠大喬木,樹皮黃褐色有不規(guī)則縱裂,葉互生成卵狀橢圓形。雞蛋花樹為落葉灌木,枝條粗壯、肉質(zhì)莖,落葉后枝條光禿,樹干彎曲自然。
圖3 雞蛋花樹去除噪聲點(diǎn)結(jié)果對比(紅色為噪聲點(diǎn))Fig.3 Comparison for removing noise of PrA (noise was shown in red)
本研究使用2種地面激光掃描儀進(jìn)行數(shù)據(jù)采集,儀器參數(shù)如表1所示。在距離目標(biāo)樹木10 m范圍內(nèi)架設(shè)掃描儀進(jìn)行數(shù)據(jù)采集,具體實(shí)施方案如下:①利用RIEGL VZ-400型三維激光掃描儀對陰香樹、樟樹進(jìn)行掃描,掃描角分辨率為0.08°。由于掃描儀設(shè)備自身的限制(垂直視野范圍只有100°),為獲取垂直方向上更多枝干細(xì)節(jié),分別以豎直模式(圖2a)圍繞樹木掃描一周后(3站),再借助云臺以水平模式(圖2b)從冠層下面垂直掃描(1站);采用RIEGL配套軟件RiSCAN PRO,手動選取同名點(diǎn)云,以第一站數(shù)據(jù)為基準(zhǔn)進(jìn)行多站數(shù)據(jù)的配準(zhǔn)、拼接,拼接精度控制在0.005 m。②使用FARO Focus3D X130型三維激光掃描儀,參數(shù)設(shè)置為10 m內(nèi),點(diǎn)間隔7.67 mm,借助靶球?qū)Τ嗨?3站)、雞蛋花樹(4站)分別進(jìn)行掃描;采用軟件FARO SCENE進(jìn)行多站數(shù)據(jù)拼接。③使用卷尺實(shí)地測量雞蛋花樹枝條長度、周長,測量赤松、陰香1.3 m處的胸徑(圖2c)。④借助全站儀(南方NTS-332R型)測量赤松、陰香、樟樹樹高及冠幅。
表1 三維激光掃描儀參數(shù)Tab.1 Parameters of terrestrial laser scanners
圖2 數(shù)據(jù)采集策略示意圖Fig.2 Data collection by terrestrial laser scanners and tree measurement
由于獲得的數(shù)據(jù)夾雜大量噪聲點(diǎn),需要去噪。根據(jù)離散噪聲點(diǎn)密度比較稀疏的特性,采用Statistical Outlier Removal濾波器[25]去除噪聲點(diǎn)。具體過程為:首先利用kD-tree中的鄰域查詢功能,對原始點(diǎn)云中的每個點(diǎn)查找相應(yīng)的K個近鄰點(diǎn);其次計算所有點(diǎn)到其對應(yīng)K個近鄰點(diǎn)的平均距離d;然后計算得到所有平均距離d的均值μ和標(biāo)準(zhǔn)差σ;最終若一點(diǎn)的平均距離d在標(biāo)準(zhǔn)范圍(μ±ασ)之外,則該點(diǎn)被定義為離群點(diǎn)并去除,α值根據(jù)點(diǎn)云密度而定。該濾波器對于不同研究對象,參數(shù)選擇略有不同,如圖3所示,當(dāng)α=0.5時部分枝干點(diǎn)云被作為噪聲點(diǎn)去除;α=1.0、K=100時部分噪聲點(diǎn)未被去除(圖3c橢圓內(nèi)點(diǎn)云與圖3a比較),α=1.0、K=60時噪聲點(diǎn)去除情況最佳。
此外,Statistical Outlier Removal濾波器對樹木冠層部分的點(diǎn)云具有不同程度的去除功能。根據(jù)研究目的,被去除的點(diǎn)云對主枝的重建影響不大,在保留枝干點(diǎn)云前提下可以去除較多冠層部分的點(diǎn)云。
1.2 點(diǎn)云主方向計算
在微分幾何中,曲面上任意一點(diǎn)的最大和最小曲率反映了曲面在該點(diǎn)處最大和最小2個不同方向上的彎曲程度,且2個方向所對應(yīng)的法平面方向垂直,這2個方向即為主方向[26]。本研究采用最小曲率對應(yīng)的方向作為樹木點(diǎn)云的主方向,并作為樹木點(diǎn)云的分割依據(jù)。
圖4 法截線擬合法流程圖Fig.4 Flow chart of chord and normal vector calculation
每個點(diǎn)云數(shù)據(jù)主方向的估算過程如圖4所示。計算表面上一確定點(diǎn)P的法向量近似于估計表面上過P點(diǎn)的相切面的法線,采用主成分分析法 (Principal component analysis, PCA) ,利用協(xié)方差矩陣的最小特征值的特征向量作為點(diǎn)P的法向量,計算公式為
(1)
將點(diǎn)P及其近鄰點(diǎn)的坐標(biāo)和法向量從全局坐標(biāo)系轉(zhuǎn)到局部坐標(biāo)系,局部坐標(biāo)系原點(diǎn)為P點(diǎn),記P點(diǎn)的法向量為(nx,ny,nz),3個坐標(biāo)軸表示為
(2)
圖5 樟樹枝葉分割示意圖Fig.5 Segmentation of branches and leaves of CcP
在局部坐標(biāo)系下,根據(jù)文獻(xiàn)[17-18]提出的法截線擬合法計算P點(diǎn)主方向,再將P點(diǎn)主方向從局部坐標(biāo)系下轉(zhuǎn)換到全局坐標(biāo)系。重復(fù)以上步驟計算所有點(diǎn)云的主方向,以樟樹為例,計算出的點(diǎn)云主方向如圖5中紅線所示。
1.3 樹木枝葉分割
根據(jù)樹木點(diǎn)云的分布情況,位于枝干部位的點(diǎn)云分布規(guī)律大致呈圓柱狀態(tài),這些點(diǎn)的主方向幾乎一致,葉子部分的點(diǎn)云及其對應(yīng)的主方向雜亂無章。以點(diǎn)P為中心(圖5b),以點(diǎn)P的主方向(圖5b黃色矢量)為軸向構(gòu)建圓柱體C(圖5黃色圓柱),位于該圓柱體C內(nèi)的其他點(diǎn)構(gòu)成點(diǎn)集S={Pj},(j=1,2,…),為判斷點(diǎn)集S在圓柱內(nèi)沿軸線均勻分布,將點(diǎn)集S內(nèi)的點(diǎn)投影到圓柱體C的軸線上,再將圓柱體C的軸線分為n段,統(tǒng)計投影點(diǎn)所在的分段,這些分段的總數(shù)與n的比值作為圓柱體內(nèi)點(diǎn)云的軸向分布密度,其密度大于閾值?1時進(jìn)行下一步操作;判斷圓柱體C內(nèi)的每一個點(diǎn),將其主方向與點(diǎn)P的主方向夾角小于一定閾值?2的點(diǎn)數(shù)記為Nsame,Nsame與S內(nèi)總點(diǎn)數(shù)Nall的比值大于閾值?3時,圓柱體C內(nèi)的點(diǎn)標(biāo)記為枝干點(diǎn)。
這種方法對樹木的主干部分分割效果較好,對于樹木枝條末端處,枝條半徑較小且掃描的點(diǎn)云密度較小,會造成過分割現(xiàn)象,同時,分割過程對噪聲點(diǎn)有一定的去除功能。分割后較小的點(diǎn)云簇,對后續(xù)骨架點(diǎn)的提取作用不大,采用Radius Outlier Removal濾波器[27]將其去除。
1.4 枝干骨架點(diǎn)與冠層特征點(diǎn)提取
骨架點(diǎn)位于枝干幾何中心 ,能夠有效表征樹木的幾何形態(tài)。經(jīng)過樹木點(diǎn)云的枝葉分割,點(diǎn)云整體分割成葉子部分和枝干部分,為重建樹木枝干三維模型,對屬于枝干部分的點(diǎn)云需要提取骨架點(diǎn)。文獻(xiàn)[10]中骨架點(diǎn)位置用水平集的質(zhì)心表示,枝條半徑根據(jù)骨架點(diǎn)訪問次數(shù)利用經(jīng)驗(yàn)公式計算,精度較低。針對該不足,提出改進(jìn)方法,具體分為以下7個步驟:
(1)查找每個點(diǎn)的K個最近鄰點(diǎn)。
(2)在K個最近鄰點(diǎn)中構(gòu)造無向鄰域圖,鄰域圖中連接邊的權(quán)重為2點(diǎn)的歐氏距離。
(3)指定樹木根節(jié)點(diǎn),根據(jù)Dijkstra算法計算枝干中所有點(diǎn)到根節(jié)點(diǎn)的最短路徑,從而構(gòu)成測地圖。
(4)根據(jù)測地圖中每個點(diǎn)到根節(jié)點(diǎn)的測地距離,將點(diǎn)云數(shù)據(jù)分層生成水平集,分層間隔由用戶指定。
(5)同一分層的點(diǎn)集按歐氏距離進(jìn)行聚類,將不同枝條的點(diǎn)云分開。
圖6 枝干骨架點(diǎn)提取Fig.6 Extracting stem skeleton from point cloud
(6)根據(jù)聚類后點(diǎn)集中所有點(diǎn)云主方向的平均值和聚類后點(diǎn)集的質(zhì)心構(gòu)造最優(yōu)切平面S,將點(diǎn)集投影到該平面S并采用最小二乘法進(jìn)行圓擬合(圖6),圓半徑r即為枝條半徑,圓心O即為骨架點(diǎn)。
(7)根據(jù)骨架點(diǎn)所處的水平集不同,按照空間近鄰的方法,利用上層骨架點(diǎn)尋找處于下層的骨架點(diǎn),建立骨架點(diǎn)拓?fù)浣Y(jié)構(gòu)并生成骨架線。
相對于枝干部分,隸屬于葉子部分的點(diǎn)云分布無規(guī)律,成離散狀態(tài),沒有相應(yīng)的骨架點(diǎn)支撐其幾何形態(tài)。為表達(dá)樹冠輪廓,重建逼真樹木三維模型,采用VoxelGrid[23]點(diǎn)云抽稀方法(即下采樣)提取葉子部分的特征點(diǎn),然后引導(dǎo)特征點(diǎn)生長形成枝條。該方法具體描述為:設(shè)定體素大小Ω,對分割出來的葉子部分進(jìn)行體素剖分,計算每個體素的質(zhì)心,該質(zhì)心即為相應(yīng)的特征點(diǎn);用K-means聚類算法[15]判斷特征點(diǎn)中每一點(diǎn)所屬的主枝骨架點(diǎn),即:主枝骨架點(diǎn)作為初始種子點(diǎn),K-means聚類算法迭代一次,獲得不同的點(diǎn)簇;然后對每個點(diǎn)簇分別用Prim算法獲得相應(yīng)的最小生成樹,剔除路徑較短的細(xì)枝并平滑保留的細(xì)枝,從而確定冠層特征點(diǎn)中各點(diǎn)的拓?fù)浣Y(jié)構(gòu)。由于不能精確計算由特征點(diǎn)引導(dǎo)生成的細(xì)枝半徑,采用半徑傳遞的思想,將細(xì)枝的半徑設(shè)定為其父節(jié)點(diǎn)對應(yīng)枝條半徑的0.8倍,初始值由位于主枝上的父骨架點(diǎn)決定;為避免冠層末端細(xì)枝半徑過小,設(shè)定細(xì)枝最小半徑為0.005 m。Ω對重建結(jié)果的影響如圖7所示,Ω=1.0 m時重建細(xì)枝比較僵硬;Ω=0.5 m時重建枝條平滑且接近真實(shí)枝條數(shù)量,效果最佳;Ω=0.3 m時細(xì)枝個數(shù)急劇增加,與目標(biāo)陰香樹枝條數(shù)量明顯不符。
圖7 體素大小Ω對陰香樹重建模型的影響Fig.7 Influence of voxel size Ω on 3D tree model of CbB
采用Visual Studio 2010 C++集成開發(fā)環(huán)境、OpenGL圖形標(biāo)準(zhǔn)庫、開源庫Point Cloud Library(PCL)實(shí)現(xiàn)基于點(diǎn)云的植物三維自動建模。為驗(yàn)證本文方法的可行性,選取多種不同樹種進(jìn)行試驗(yàn)。試驗(yàn)1為單株四季長青的樟樹,用本文改進(jìn)分割方法獲取的結(jié)果與手動分割枝葉的結(jié)果作對比;試驗(yàn)2為落葉的雞蛋花樹,用重建模型參數(shù)與現(xiàn)場實(shí)測數(shù)據(jù)進(jìn)行比較,目的是在以往目視檢查的基礎(chǔ)上,用數(shù)據(jù)的形式定量分析重建模型的精度;試驗(yàn)3綜合展示3種非落葉樹木的重建過程及結(jié)果,同時目視檢查其精度,并根據(jù)模型進(jìn)行樹木參數(shù)提取。
2.1 試驗(yàn)1
在本試驗(yàn)中,采用2種方法進(jìn)行樟樹點(diǎn)云的枝葉分割,即基于點(diǎn)云主方向的自動分割法和手動分割法,目的是評價改進(jìn)分割方法的精確度。手動分割使用RiSCAN PRO完成;通過對不同參數(shù)組合分割結(jié)果的對比,自動分割時閾值?1設(shè)為0.7,閾值?2設(shè)為30°,閾值?3設(shè)為0.8,其結(jié)果較好。2種方法的分割結(jié)果如圖8所示,由圖可知,自動分割方法能較好的分割出屬于枝干部分的樹木點(diǎn)云,但部分枝條斷裂為若干段。部分枝條分割有誤,這些問題主要由掃描點(diǎn)稀疏、分布不均勻和噪聲點(diǎn)去除不干凈造成。
2.2 試驗(yàn)2
以雞蛋花樹(圖9)為對象,采用改進(jìn)的建模方法,建立三維模型。通過與原始點(diǎn)云對比,可以定性、直觀地看出,對于大多數(shù)枝條,創(chuàng)建的模型與點(diǎn)云數(shù)據(jù)的重疊或吻合度較高; 在一些枝干的分叉處和末梢,模型和點(diǎn)云存在微小的分歧。
圖8 樟樹點(diǎn)云枝葉分割結(jié)果Fig.8 Segmentation results of CcP
圖9 雞蛋花樹模型及點(diǎn)云對照Fig.9 Model and point cloud of PrA
為定量驗(yàn)證重建的各枝條模型長度和半徑精度,利用卷尺,實(shí)地測量雞蛋花樹的每一節(jié)枝條長度和周長,以測量值作為基準(zhǔn)值(測量值的長度誤差為±5 mm,周長誤差為±2 mm),實(shí)測值與模型值的比較見圖10。 由圖可知,模型枝條長度與實(shí)測長度的均方根誤差為0.013 m,模型枝條半徑與實(shí)測半徑的均方根誤差為0.001 m。根據(jù)統(tǒng)計可得知:長度誤差范圍為0~12.38%,大部分介于0~8%之間,半徑誤差范圍為0~18.18%,大部分介于0~10%之間,重建模型的精度比較高,可以直接反映非落葉樹木枝干的重建精度。
圖10 雞蛋花樹模型精度分析Fig.10 Precision analysis of reconstructed model of PrA
2.3 試驗(yàn)3
利用改進(jìn)的基于點(diǎn)云數(shù)據(jù)的樹木重建方法,對赤松、陰香、樟樹3種樹木進(jìn)行重建,重建各階段結(jié)果如圖11所示。首先根據(jù)法截線擬合法計算預(yù)處理后的原始點(diǎn)云的主方向,以各點(diǎn)及其相應(yīng)的主方向構(gòu)建圓柱,圓柱半徑均為2倍掃描間距,圓柱高度均為10倍掃描間距,主枝分割結(jié)果如圖11b所示;其次,提取主枝的骨架點(diǎn),下采樣冠層部分獲取冠層特征點(diǎn)(圖11d);然后根據(jù)骨架點(diǎn)和特征點(diǎn)重建枝條三維模型,結(jié)果如圖11e所示;最后,對枝條三維模型映射紋理,生成最終樹木模型,結(jié)果如圖11f所示。圖12~14為目視檢查的方法比較重建后的枝條模型與最終模型的效果,其中各圖圖a為重建枝條模型與分割后的枝干點(diǎn)云進(jìn)行疊加展示,圖b為重建后的完整模型與原始點(diǎn)云疊加展示,圖c為重建后的樹木三維完整模型。根據(jù)本研究改進(jìn)的方法對樹木重建后的三維模型提取樹高、胸徑、冠幅和體積,并以實(shí)測數(shù)據(jù)為真值統(tǒng)計相對誤差,如表2所示(樟樹在1.3 m處分成3枝,其胸徑為平均值)。
圖15為根據(jù)相同點(diǎn)云數(shù)據(jù)重建出的三維模型,其中圖15a為利用文獻(xiàn)[10]描述的方法對陰香樹進(jìn)行重建的效果圖,能體現(xiàn)樹木的形態(tài)結(jié)構(gòu)特征,但部分枝條扭曲,而本文改進(jìn)的方法枝條重建效果良好(圖14a)。從圖15b與圖14a對比可以看出,由于未進(jìn)行枝葉分割,枝干附近的葉子點(diǎn)云影響骨架點(diǎn)位置,PC2Tree重建后的枝條明顯偏離枝干點(diǎn)云;從圖15c看出,枝條半徑根據(jù)骨架點(diǎn)訪問次數(shù)計算獲得,精度相對較低,其中圖15c上方的圖來自于圖14a。
圖11 樹木模型重建Fig.11 Three examples of 3D tree reconstruction from point cloud
圖12 赤松重建模型比較Fig.12 Comparison of 3D reconstruction from PdS point cloud
圖13 樟樹重建模型比較Fig.13 Comparison of 3D reconstruction from CcP point cloud
圖14 陰香重建模型比較Fig.14 Comparison of 3D reconstruction from CbB point cloud
圖15 PC2Tree重建陰香枝干模型Fig.15 3D reconstruction branch model of CbB using PC2Tree
樹種樹高/m提取值實(shí)測值樹高誤差/%冠幅/m提取值實(shí)測值冠幅誤差/%胸徑/m提取值實(shí)測值胸徑誤差/%體積/m3提取值赤松11.2410.8453.6411.5211.9543.630.3010.3154.440.721陰香8.067.8243.0213.0013.3432.570.2750.2832.830.573樟樹8.698.2375.5010.3410.0602.780.1370.1498.050.676
綜合集成多種算法的優(yōu)勢,形成基于地面激光點(diǎn)云數(shù)據(jù)進(jìn)行三維樹木自動建模的方法,以自動化的方式實(shí)現(xiàn)樹木點(diǎn)云枝葉分割與三維模型重建。首先基于樹木局部點(diǎn)云的主方向相似度和局部點(diǎn)云軸向分布密度對單株樹木點(diǎn)云進(jìn)行分割以分離枝干與樹葉。其次分別提取枝干部分的骨架點(diǎn)和冠層部分的特征點(diǎn)。最后根據(jù)骨架點(diǎn)和特征點(diǎn)拓?fù)浣Y(jié)構(gòu)對樹木進(jìn)行三維重建。通過對比分析,采用最小二乘法擬合枝條半徑,提高了基于點(diǎn)云數(shù)據(jù)重建樹木模型時主枝半徑的精度;弱化冠層部分細(xì)小枝條的重建效果,一定程度上解決了冠層細(xì)枝重建困難的問題;重建模型以適量枝條恰當(dāng)表現(xiàn)樹木輪廓的凹凸特征,層級分明。此外,主枝重建過程對噪聲點(diǎn)具有一定的免疫力:預(yù)處理階段去噪處理;法截線擬合法具有抗噪性;點(diǎn)云分割過程剔除部分噪聲點(diǎn)。用重建模型的參數(shù)與現(xiàn)場實(shí)測數(shù)據(jù)進(jìn)行比較,目的是在以往目視檢查的基礎(chǔ)上,用數(shù)據(jù)的形式定量分析重建模型的精度。試驗(yàn)表明,本文方法對基于地面激光雷達(dá)掃描獲取的樹木點(diǎn)云具有良好的分割效果;三維重建方法適用性較廣且模型精度較高;重建后的枝條舒展靈動,視覺效果良好;根據(jù)重建模型可以進(jìn)行樹高、冠幅、胸徑、體積等參數(shù)的提取,增加了模型的應(yīng)用范圍。
1 VOS J, EVERS J B, BUCKSORLIN G H, et al. Functional-structural plant modelling: a new versatile tool in crop science[J]. Journal of Experimental Botany, 2010, 61(8): 2101-2115.
2 TANG L, HOU C, HUANG H, et al. Light interception efficiency analysis based on three-dimensional peach canopy models[J]. Ecological Informatics, 2015, 30: 60-67.
3 趙陽,余新曉,信忠保,等. 地面三維激光掃描技術(shù)在林業(yè)中的應(yīng)用與展望[J]. 世界林業(yè)研究, 2010, 23(4): 41-45. ZHAO Y, YU X X, XIN Z B, et al. Application and outlook of terrestrial 3D laser scanning technology in forestry[J]. World Forestry Research, 2010, 23(4): 41-45. (in Chinese)
4 MENDEZ V, ROSELL-POLO J R, SANZ R, et al. Deciduous tree reconstruction algorithm based on cylinder fitting from mobile terrestrial laser scanned point clouds[J]. Biosystems Engineering, 2014, 124(4): 78-88.
5 黃洪宇,陳崇成,鄒杰,等. 基于地面激光雷達(dá)點(diǎn)云數(shù)據(jù)的單木三維建模綜述[J]. 林業(yè)科學(xué), 2013, 49(4): 123-130. HUANG H Y, CHEN C C, ZOU J, et al. Tree geometrical 3D modeling from terrestrial laser scanned point clouds: a review[J]. Scientia Silvae Sinicae, 2013, 49(4): 123-130. (in Chinese)
6 VERROUST A, LAZARUS F. Extracting skeletal curves from 3D scattered data[J]. Visual Computer, 2000, 16(1): 15-25.
7 TAGLIASACCHI A, ZHANG H, COHEN-OR D. Curve skeleton extraction from incomplete point cloud[J]. ACM Transactions on Graphics, 2009, 28(3): 341-352.
8 LIVNY Y, YAN F, OLSON M, et al. Automatic reconstruction of tree skeletal structures from point clouds[J]. ACM Transactions on Graphics, 2010, 29(6): 81-95.
9 王曉輝,黃洪宇,陳崇成,等. 基于激光點(diǎn)云的樹木三維幾何建模系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J]. 福州大學(xué)學(xué)報:自然科學(xué)版, 2014, 42(5): 705-712. WANG X H, HUANG H Y, CHEN C C, et al. Design and implementation of 3D geometrical tree modeling system based on terrestrial laser scanned point cloud data[J]. Journal of Fuzhou University:Natural Science Edition, 2014, 42(5): 705-712. (in Chinese)
10 王曉輝. 基于地面激光雷達(dá)點(diǎn)云的單樹三維幾何建模研究[D]. 福州: 福州大學(xué), 2014. WANG X H. Three dimensional geometrical modeling of individual tree from terrestrial LiDAR scanner point cloud[D].Fuzhou: Fuzhou University, 2014.(in Chinese)
11 FISCHLER M A, BOLLES R C. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography[J]. Communications of the Association for Computing Machinery, 1981, 24(6): 381-395.
12 CHEN D, ZHANG Z, MATHIOPOULOS P, et al. A methodology for automated segmentation and reconstruction of urban 3D buildings from ALS point clouds[J]. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing, 2014, 7(10): 4199-4217.
13 GORTE B. Segmentation of TIN-structured surface models[J]. International Archives of Photogrammetry Remote Sensing and Spatial Information Sciences, 2002, 34(4): 465-469.
14 KRINIDIS S, CHATZIS V. A robust fuzzy local information c-means clustering algorithm[J]. IEEE Transactions on Image Processing, 2010, 19(5): 1328-1337.
15 LIOYD S P. Least squares quantization in PCM[J]. IEEE Transactions on Information Theory, 1982, 28(2): 129-137.
16 代明睿,張曉鵬,李紅軍. 基于高噪聲深度圖像的樹木模型重建[J]. 中國體視學(xué)與圖像分析, 2010, 15(2): 109-114. DAI M R, ZHANG X P, LI H P. Tree reconstruction based on range image with strong noise[J]. Chinese Journal of Stereology and Image Analysis, 2010, 15(2): 109-114. (in Chinese)
17 ZHANG X, LI H, CHENG Z. Curvature estimation of 3D point cloud surfaces through the fitting of normal section curvatures[C]∥Proceedings of Asia Graph,2008:72-79.
18 ZHANG X, LI H, CHENG Z, et al. Robust curvature estimation and geometry analysis of 3D point cloud surfaces[J]. Journal of Information and Computational Science, 2009, 6(5): 1983-1990.
19 GOLDFEATHER J, INTERRANTE V. A novel cubic-order algorithm for approximating principal direction vectors[J]. ACM Transactions on Graphics, 2004, 23(1): 45-63.
20 TAUBIN G. Estimating the tensor of curvature of a surface from a polyhedral approximation[C]∥Proceedings of the 5th International Conference on Computer Vision,1995: 902-907.
21 ZHANG X, LI H, DAI M, et al. Data-driven synthetic modeling of trees[J]. IEEE Transactions on Visualization and Computer Graphics, 2014, 20(9): 1214-1226.
22 AITCANU F, KLEIN R. Hybrid tree reconstruction from inhomogeneous point clouds[J]. The Visual Computer, 2014, 30(6-8): 763-771.
23 Point Cloud Library Documentation: Downsampling a PointCloud using a VoxelGrid filter[EB/OL][2016-05-18]. http:∥pointclouds.org/documentation/tutorials/voxel_grid.php#voxelgrid.
24 嚴(yán)蔚敏,吳偉民. 數(shù)據(jù)結(jié)構(gòu)(C語言版)[M]. 北京: 清華大學(xué)出版社, 2007.
25 RUSU R B, MARTON Z C, BLODOW N, et al. Towards 3D point cloud based object maps for household environments[J]. Robotics and Autonomous Systems, 2008, 56(11): 927-941.
26 周哲波. 工程微分幾何[M]. 北京: 北京大學(xué)出版社, 2014.
27 Point Cloud Library Documentation: Removing outliers using a Conditional or RadiusOutlier removal[EB/OL][2016-05-18]. http:∥pointclouds.org/documentation/tutorials/remove_outliers.php#remove-outliers.
Improved Method for 3D Reconstruction of Tree Model Based on Point Cloud Data
TANG Liyu1,2ZHANG Hao1,2HUANG Hongyu1,2CHEN Chongcheng1,2
(1.KeyLaboratoryofSpatialDataMiningandInformationSharing,MinistryofEducation,FuzhouUniversity,Fuzhou350002,China2.NationalEngineeringResearchCentreofGeospatialInformationTechnology,FuzhouUniversity,Fuzhou350002,China)
Point cloud obtained from terrestrial laser scanner contains detailed, high precision three-dimensional (3D) surface coordinates, which is of special importance for forest parameter estimation and accurate reconstruction of plant model. An improved method for tree branching structure reconstruction was proposed based on the fact that a clean partition of branches and leaves form tree point cloud was very difficult if it was not impossible. Firstly, principal direction at each point was estimated with chord and normal vectors (CAN), and point cloud from the branches and leaves was separated by using both the similarity of principal direction between neighboring points and distribution density of points. Secondly, skeleton nodes and corresponding radii were computed from main branches by using level sets and least square method. For the leaves, the crown volume was divided into equal-sized voxels, all the points in a voxel were represented by the voxel’s centroid, and all centroid points formed feature points of the crown. Finally, tree model was reconstructed by cylinder fitting based on the topology of skeleton nodes and feature points. Segmentation results accuracy analysis and four different tree species model reconstruction examples were introduced. Segmentation accuracy analysis and model reconstruction quality evaluation showed that the approach was robust and insensitive to noise; the reconstructed tree models were in good agreement with the point cloud. The method was also able to extract structural parameters, including tree height, diameter at breast height (DBH) and volume parameters.
tree; 3D reconstruction; laser point cloud; principal direction; segmentation; skeleton
10.6041/j.issn.1000-1298.2017.02.025
2016-05-26
2016-07-11
國家自然科學(xué)基金項(xiàng)目(41471334)、福建省科技引導(dǎo)性項(xiàng)目(2016Y0058)和福建省自然科學(xué)基金項(xiàng)目(2014J01125)
唐麗玉(1972—),女,研究員,博士,主要從事地學(xué)可視化、虛擬地理環(huán)境和虛擬植物研究,E-mail: tangly@fzu.edu.cn
黃洪宇(1971—),男,副研究員,主要從事激光雷達(dá)和無人機(jī)三維數(shù)字化研究,E-mail: hhy1@fzu.edu.cn
TN958.58; TP391.9
A
1000-1298(2017)02-0186-09