唐麗玉 張 浩 黃洪宇 陳崇成
(1.福州大學(xué)空間數(shù)據(jù)挖掘與信息共享教育部重點(diǎn)實(shí)驗(yàn)室, 福州 350002;2.福州大學(xué)地理空間信息技術(shù)國(guó)家地方聯(lián)合工程研究中心, 福州 350002)
基于點(diǎn)云數(shù)據(jù)的樹(shù)木三維重建方法改進(jìn)
唐麗玉1,2張 浩1,2黃洪宇1,2陳崇成1,2
(1.福州大學(xué)空間數(shù)據(jù)挖掘與信息共享教育部重點(diǎn)實(shí)驗(yàn)室, 福州 350002;2.福州大學(xué)地理空間信息技術(shù)國(guó)家地方聯(lián)合工程研究中心, 福州 350002)
激光點(diǎn)云數(shù)據(jù)以其詳盡、高精度的三維信息,在森林參數(shù)估算、精確重建植物形態(tài)結(jié)構(gòu)三維模型方面具有特殊優(yōu)勢(shì)。為進(jìn)一步提高三維模型精度,綜合集成多種算法,在改進(jìn)現(xiàn)有PC2Tree軟件基礎(chǔ)上,基于點(diǎn)云數(shù)據(jù)進(jìn)行樹(shù)木三維重建。首先根據(jù)樹(shù)木局部點(diǎn)云的主方向相似度和局部點(diǎn)云軸向分布密度分離枝干與樹(shù)葉;其次采取水平集和最小二乘法提取枝干部分的骨架點(diǎn),通過(guò)下采樣方法提取冠層部分的特征點(diǎn);最后根據(jù)骨架點(diǎn)和特征點(diǎn)拓?fù)浣Y(jié)構(gòu)重構(gòu)樹(shù)木三維模型。以樟樹(shù)為例,分析枝葉分割精度,自動(dòng)分割與手動(dòng)分割結(jié)果相近;以無(wú)葉的雞蛋花樹(shù)為例,分析重建模型精度,模型主枝長(zhǎng)度相對(duì)誤差范圍集中在0~8.0%,半徑相對(duì)誤差范圍集中在0~10%;枝條重建過(guò)程避免了噪聲點(diǎn)的干擾,對(duì)噪聲點(diǎn)具有一定的不敏感性;重建三維模型與原始點(diǎn)云吻合度高,基本解決了冠層內(nèi)部枝干遮擋嚴(yán)重帶來(lái)的三維建模困難的問(wèn)題;依據(jù)模型提取樹(shù)高、冠幅、胸徑、體積等參數(shù),增加了重建模型的應(yīng)用范圍。
樹(shù)木; 三維重建; 激光點(diǎn)云; 主方向; 分割; 骨架點(diǎn)
虛擬植物已被認(rèn)為是一種潛在的有利于理解、表達(dá)和模擬植物形態(tài)結(jié)構(gòu)生長(zhǎng)發(fā)育的有效工具[1]?;谥参镄螒B(tài)結(jié)構(gòu)的精確模擬使虛擬植物實(shí)現(xiàn)了面向多層次、多方面的應(yīng)用,如植物生長(zhǎng)對(duì)資源的競(jìng)爭(zhēng)、光輻射模擬研究[2]等。三維激光掃描技術(shù)在非破壞性的前提下能夠自動(dòng)、快速、準(zhǔn)確、高密度地獲取物體表面的三維采樣點(diǎn)(亦稱點(diǎn)云),其優(yōu)點(diǎn)受到廣泛關(guān)注,在農(nóng)林業(yè)資源調(diào)查中有著很大的應(yīng)用潛能,如林分結(jié)構(gòu)研究[3]、樹(shù)木三維建模[4]等。
骨架點(diǎn)提取是直接利用點(diǎn)云數(shù)據(jù)構(gòu)建三維樹(shù)木模型的關(guān)鍵環(huán)節(jié)。骨架點(diǎn)的提取方法大多利用點(diǎn)云的鄰域信息,可歸納為基于水平集、拉普拉斯、聚類和圖論的方法[5]。VERROUST等[6]較早提出基于水平集的方法,具有一定的健壯性、簡(jiǎn)單易實(shí)現(xiàn),但以質(zhì)心表示骨架導(dǎo)致骨架半徑精度較低?;诶绽沟乃惴ㄔ从赗OSA(Rotational symmetry axis)方法[7],可以處理不完整點(diǎn)云數(shù)據(jù),但在確定ROSA點(diǎn)時(shí),要求點(diǎn)云呈類圓柱體分布。近年來(lái),出現(xiàn)了不依賴于鄰域信息提取骨架的方法,骨架直接以枝干結(jié)構(gòu)圖(Branch-structure graph, BSG)的形式表示[8],但比較依賴于點(diǎn)云數(shù)據(jù)的密度,重建模型中的枝干生長(zhǎng)方向容易沿著樹(shù)冠表面前進(jìn)生長(zhǎng)。王曉輝等[9-10]基于水平集的算法提取骨架點(diǎn),根據(jù)骨架點(diǎn)的分級(jí)和訪問(wèn)次數(shù)計(jì)算枝條半徑,實(shí)現(xiàn)了樹(shù)木骨架點(diǎn)的提取和枝條的模擬,并研發(fā)了單株木建模軟件原型PC2Tree,適用于多次或單次掃描的點(diǎn)云樹(shù)木三維重建,模型真實(shí)感強(qiáng);不足之處在于部分枝條半徑擬合精度低,局部重建枝條與原始點(diǎn)云的吻合度稍差。
基于點(diǎn)云幾何屬性的分割方法大致分為:①模型擬合法,典型代表為RANSAC (Random sample consensus)算法[11-12]。②區(qū)域增長(zhǎng)法,如GORTE[13]利用TIN模型結(jié)合區(qū)域增長(zhǎng)法用于點(diǎn)云分割。③聚類法,常見(jiàn)的有模糊C均值法[14]、K-means法[15]等,與區(qū)域增長(zhǎng)算法不同,聚類算法不需要指定種子點(diǎn)。以上3種算法對(duì)室內(nèi)小部件或建筑等比較規(guī)則的物體具有較好的分割效果,而對(duì)結(jié)構(gòu)復(fù)雜、千姿百態(tài)的樹(shù)木難以實(shí)現(xiàn)枝葉分割。代明睿等[16]利用點(diǎn)云深度圖像計(jì)算主方向,并以主方向?yàn)橐罁?jù),將樹(shù)木的總體點(diǎn)云分割為枝干和葉子2部分;之后出現(xiàn)了直接計(jì)算點(diǎn)云主方向的方法[17-18],即法截線擬合法(Chord and normal vectors, CAN),與3次曲面擬合法[19]和基于網(wǎng)格化的估算方法[20]相比,抗噪能力更強(qiáng),更適用于樹(shù)木點(diǎn)云的主方向計(jì)算。隨后,ZHANG等[21]利用移動(dòng)圓柱體提取枝干骨架點(diǎn),以冠層特征點(diǎn)作為冠層的骨架點(diǎn),利用分級(jí)粒子流連接骨架點(diǎn),所建模型比LIVNY等[8]的枝條重建效果好,但細(xì)枝模擬真實(shí)感差。AITEANU等[22]在文獻(xiàn)[21]的基礎(chǔ)上采用圓柱主方向思想,計(jì)算點(diǎn)云密集區(qū)枝干的中心點(diǎn),并作為主干部分的骨架點(diǎn),該方法優(yōu)點(diǎn)是可以忽略點(diǎn)云密集區(qū)小比例的數(shù)據(jù)缺失,重建后的枝條半徑精度相對(duì)較高,但重建枝條模型時(shí)需進(jìn)行橢圓調(diào)整,其判斷條件較繁瑣。
根據(jù)現(xiàn)有技術(shù),利用點(diǎn)云數(shù)據(jù)重建植物三維模型大致分為2類,即基于分割技術(shù)的植物建模法和直接建模法。直接建模法是將采集得到的所有點(diǎn)云統(tǒng)一處理、建模,該方法的好處是減少了分割枝葉的操作,缺點(diǎn)是重建模型精度低。本文針對(duì)PC2Tree采用直接建模法的不足,集成分割等多種算法,提高樹(shù)木三維自動(dòng)重建精度。
綜合集成多種算法的優(yōu)勢(shì),形成基于點(diǎn)云數(shù)據(jù)進(jìn)行樹(shù)木自動(dòng)三維建模的方案。根據(jù)局部點(diǎn)云主方向的相似度和局部點(diǎn)云軸向分布密度進(jìn)行樹(shù)木枝干和樹(shù)冠的分割;基于水平集的方法提取樹(shù)干骨架點(diǎn),采用最小二乘法擬合枝干骨架點(diǎn)半徑;通過(guò)下采樣[23]技術(shù)對(duì)樹(shù)冠點(diǎn)云進(jìn)行抽稀,獲得冠層部分的特征點(diǎn),通過(guò)Prim算法[24]確定特征點(diǎn)拓?fù)浣Y(jié)構(gòu),根據(jù)半徑傳遞思想給特征點(diǎn)半徑賦值;根據(jù)骨架點(diǎn)和特征點(diǎn)拓?fù)浣Y(jié)構(gòu),利用廣義圓柱體模擬樹(shù)木枝條;最后,映射相應(yīng)紋理,形成樹(shù)木的三維模型。總體流程如圖1所示。
圖1 點(diǎn)云樹(shù)木三維重建過(guò)程 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)、樟樹(shù)(CinnamomumcamphoraPresl,CcP)和校園外附近的雞蛋花樹(shù)(Plumeriarubra‘Acutifolia’,PrA)為例進(jìn)行研究。赤松為常綠喬木,樹(shù)皮成不規(guī)則鱗片狀,樹(shù)枝平展成傘狀樹(shù)冠,針葉長(zhǎng)8~12 cm,徑約1 mm。陰香為常綠喬木,樹(shù)皮光滑呈灰褐色,葉互生或近對(duì)生,長(zhǎng)5~12 cm。樟樹(shù)為常綠大喬木,樹(shù)皮黃褐色有不規(guī)則縱裂,葉互生成卵狀橢圓形。雞蛋花樹(shù)為落葉灌木,枝條粗壯、肉質(zhì)莖,落葉后枝條光禿,樹(shù)干彎曲自然。
圖3 雞蛋花樹(shù)去除噪聲點(diǎn)結(jié)果對(duì)比(紅色為噪聲點(diǎn))Fig.3 Comparison for removing noise of PrA (noise was shown in red)
本研究使用2種地面激光掃描儀進(jìn)行數(shù)據(jù)采集,儀器參數(shù)如表1所示。在距離目標(biāo)樹(shù)木10 m范圍內(nèi)架設(shè)掃描儀進(jìn)行數(shù)據(jù)采集,具體實(shí)施方案如下:①利用RIEGL VZ-400型三維激光掃描儀對(duì)陰香樹(shù)、樟樹(shù)進(jìn)行掃描,掃描角分辨率為0.08°。由于掃描儀設(shè)備自身的限制(垂直視野范圍只有100°),為獲取垂直方向上更多枝干細(xì)節(jié),分別以豎直模式(圖2a)圍繞樹(shù)木掃描一周后(3站),再借助云臺(tái)以水平模式(圖2b)從冠層下面垂直掃描(1站);采用RIEGL配套軟件RiSCAN PRO,手動(dòng)選取同名點(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站)、雞蛋花樹(shù)(4站)分別進(jìn)行掃描;采用軟件FARO SCENE進(jìn)行多站數(shù)據(jù)拼接。③使用卷尺實(shí)地測(cè)量雞蛋花樹(shù)枝條長(zhǎng)度、周長(zhǎng),測(cè)量赤松、陰香1.3 m處的胸徑(圖2c)。④借助全站儀(南方NTS-332R型)測(cè)量赤松、陰香、樟樹(shù)樹(shù)高及冠幅。
表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)。具體過(guò)程為:首先利用kD-tree中的鄰域查詢功能,對(duì)原始點(diǎn)云中的每個(gè)點(diǎn)查找相應(yīng)的K個(gè)近鄰點(diǎn);其次計(jì)算所有點(diǎn)到其對(duì)應(yīng)K個(gè)近鄰點(diǎn)的平均距離d;然后計(jì)算得到所有平均距離d的均值μ和標(biāo)準(zhǔn)差σ;最終若一點(diǎn)的平均距離d在標(biāo)準(zhǔn)范圍(μ±ασ)之外,則該點(diǎn)被定義為離群點(diǎn)并去除,α值根據(jù)點(diǎn)云密度而定。該濾波器對(duì)于不同研究對(duì)象,參數(shù)選擇略有不同,如圖3所示,當(dāng)α=0.5時(shí)部分枝干點(diǎn)云被作為噪聲點(diǎn)去除;α=1.0、K=100時(shí)部分噪聲點(diǎn)未被去除(圖3c橢圓內(nèi)點(diǎn)云與圖3a比較),α=1.0、K=60時(shí)噪聲點(diǎn)去除情況最佳。
此外,Statistical Outlier Removal濾波器對(duì)樹(shù)木冠層部分的點(diǎn)云具有不同程度的去除功能。根據(jù)研究目的,被去除的點(diǎn)云對(duì)主枝的重建影響不大,在保留枝干點(diǎn)云前提下可以去除較多冠層部分的點(diǎn)云。
1.2 點(diǎn)云主方向計(jì)算
在微分幾何中,曲面上任意一點(diǎn)的最大和最小曲率反映了曲面在該點(diǎn)處最大和最小2個(gè)不同方向上的彎曲程度,且2個(gè)方向所對(duì)應(yīng)的法平面方向垂直,這2個(gè)方向即為主方向[26]。本研究采用最小曲率對(duì)應(yīng)的方向作為樹(shù)木點(diǎn)云的主方向,并作為樹(shù)木點(diǎn)云的分割依據(jù)。
圖4 法截線擬合法流程圖Fig.4 Flow chart of chord and normal vector calculation
每個(gè)點(diǎn)云數(shù)據(jù)主方向的估算過(guò)程如圖4所示。計(jì)算表面上一確定點(diǎn)P的法向量近似于估計(jì)表面上過(guò)P點(diǎn)的相切面的法線,采用主成分分析法 (Principal component analysis, PCA) ,利用協(xié)方差矩陣的最小特征值的特征向量作為點(diǎn)P的法向量,計(jì)算公式為
(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個(gè)坐標(biāo)軸表示為
(2)
圖5 樟樹(shù)枝葉分割示意圖Fig.5 Segmentation of branches and leaves of CcP
在局部坐標(biāo)系下,根據(jù)文獻(xiàn)[17-18]提出的法截線擬合法計(jì)算P點(diǎn)主方向,再將P點(diǎn)主方向從局部坐標(biāo)系下轉(zhuǎn)換到全局坐標(biāo)系。重復(fù)以上步驟計(jì)算所有點(diǎn)云的主方向,以樟樹(shù)為例,計(jì)算出的點(diǎn)云主方向如圖5中紅線所示。
1.3 樹(shù)木枝葉分割
根據(jù)樹(shù)木點(diǎn)云的分布情況,位于枝干部位的點(diǎn)云分布規(guī)律大致呈圓柱狀態(tài),這些點(diǎn)的主方向幾乎一致,葉子部分的點(diǎn)云及其對(duì)應(yīng)的主方向雜亂無(wú)章。以點(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)計(jì)投影點(diǎn)所在的分段,這些分段的總數(shù)與n的比值作為圓柱體內(nèi)點(diǎn)云的軸向分布密度,其密度大于閾值?1時(shí)進(jìn)行下一步操作;判斷圓柱體C內(nèi)的每一個(gè)點(diǎn),將其主方向與點(diǎn)P的主方向夾角小于一定閾值?2的點(diǎn)數(shù)記為Nsame,Nsame與S內(nèi)總點(diǎn)數(shù)Nall的比值大于閾值?3時(shí),圓柱體C內(nèi)的點(diǎn)標(biāo)記為枝干點(diǎn)。
這種方法對(duì)樹(shù)木的主干部分分割效果較好,對(duì)于樹(shù)木枝條末端處,枝條半徑較小且掃描的點(diǎn)云密度較小,會(huì)造成過(guò)分割現(xiàn)象,同時(shí),分割過(guò)程對(duì)噪聲點(diǎn)有一定的去除功能。分割后較小的點(diǎn)云簇,對(duì)后續(xù)骨架點(diǎn)的提取作用不大,采用Radius Outlier Removal濾波器[27]將其去除。
1.4 枝干骨架點(diǎn)與冠層特征點(diǎn)提取
骨架點(diǎn)位于枝干幾何中心 ,能夠有效表征樹(shù)木的幾何形態(tài)。經(jīng)過(guò)樹(shù)木點(diǎn)云的枝葉分割,點(diǎn)云整體分割成葉子部分和枝干部分,為重建樹(shù)木枝干三維模型,對(duì)屬于枝干部分的點(diǎn)云需要提取骨架點(diǎn)。文獻(xiàn)[10]中骨架點(diǎn)位置用水平集的質(zhì)心表示,枝條半徑根據(jù)骨架點(diǎn)訪問(wèn)次數(shù)利用經(jīng)驗(yàn)公式計(jì)算,精度較低。針對(duì)該不足,提出改進(jìn)方法,具體分為以下7個(gè)步驟:
(1)查找每個(gè)點(diǎn)的K個(gè)最近鄰點(diǎn)。
(2)在K個(gè)最近鄰點(diǎn)中構(gòu)造無(wú)向鄰域圖,鄰域圖中連接邊的權(quán)重為2點(diǎn)的歐氏距離。
(3)指定樹(shù)木根節(jié)點(diǎn),根據(jù)Dijkstra算法計(jì)算枝干中所有點(diǎn)到根節(jié)點(diǎn)的最短路徑,從而構(gòu)成測(cè)地圖。
(4)根據(jù)測(cè)地圖中每個(gè)點(diǎn)到根節(jié)點(diǎn)的測(cè)地距離,將點(diǎn)云數(shù)據(jù)分層生成水平集,分層間隔由用戶指定。
(5)同一分層的點(diǎn)集按歐氏距離進(jìn)行聚類,將不同枝條的點(diǎn)云分開(kāi)。
圖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)并生成骨架線。
相對(duì)于枝干部分,隸屬于葉子部分的點(diǎn)云分布無(wú)規(guī)律,成離散狀態(tài),沒(méi)有相應(yīng)的骨架點(diǎn)支撐其幾何形態(tài)。為表達(dá)樹(shù)冠輪廓,重建逼真樹(shù)木三維模型,采用VoxelGrid[23]點(diǎn)云抽稀方法(即下采樣)提取葉子部分的特征點(diǎn),然后引導(dǎo)特征點(diǎn)生長(zhǎng)形成枝條。該方法具體描述為:設(shè)定體素大小Ω,對(duì)分割出來(lái)的葉子部分進(jìn)行體素剖分,計(jì)算每個(gè)體素的質(zhì)心,該質(zhì)心即為相應(yīng)的特征點(diǎn);用K-means聚類算法[15]判斷特征點(diǎn)中每一點(diǎn)所屬的主枝骨架點(diǎn),即:主枝骨架點(diǎn)作為初始種子點(diǎn),K-means聚類算法迭代一次,獲得不同的點(diǎn)簇;然后對(duì)每個(gè)點(diǎn)簇分別用Prim算法獲得相應(yīng)的最小生成樹(shù),剔除路徑較短的細(xì)枝并平滑保留的細(xì)枝,從而確定冠層特征點(diǎn)中各點(diǎn)的拓?fù)浣Y(jié)構(gòu)。由于不能精確計(jì)算由特征點(diǎn)引導(dǎo)生成的細(xì)枝半徑,采用半徑傳遞的思想,將細(xì)枝的半徑設(shè)定為其父節(jié)點(diǎn)對(duì)應(yīng)枝條半徑的0.8倍,初始值由位于主枝上的父骨架點(diǎn)決定;為避免冠層末端細(xì)枝半徑過(guò)小,設(shè)定細(xì)枝最小半徑為0.005 m。Ω對(duì)重建結(jié)果的影響如圖7所示,Ω=1.0 m時(shí)重建細(xì)枝比較僵硬;Ω=0.5 m時(shí)重建枝條平滑且接近真實(shí)枝條數(shù)量,效果最佳;Ω=0.3 m時(shí)細(xì)枝個(gè)數(shù)急劇增加,與目標(biāo)陰香樹(shù)枝條數(shù)量明顯不符。
圖7 體素大小Ω對(duì)陰香樹(shù)重建模型的影響Fig.7 Influence of voxel size Ω on 3D tree model of CbB
采用Visual Studio 2010 C++集成開(kāi)發(fā)環(huán)境、OpenGL圖形標(biāo)準(zhǔn)庫(kù)、開(kāi)源庫(kù)Point Cloud Library(PCL)實(shí)現(xiàn)基于點(diǎn)云的植物三維自動(dòng)建模。為驗(yàn)證本文方法的可行性,選取多種不同樹(shù)種進(jìn)行試驗(yàn)。試驗(yàn)1為單株四季長(zhǎng)青的樟樹(shù),用本文改進(jìn)分割方法獲取的結(jié)果與手動(dòng)分割枝葉的結(jié)果作對(duì)比;試驗(yàn)2為落葉的雞蛋花樹(shù),用重建模型參數(shù)與現(xiàn)場(chǎng)實(shí)測(cè)數(shù)據(jù)進(jìn)行比較,目的是在以往目視檢查的基礎(chǔ)上,用數(shù)據(jù)的形式定量分析重建模型的精度;試驗(yàn)3綜合展示3種非落葉樹(shù)木的重建過(guò)程及結(jié)果,同時(shí)目視檢查其精度,并根據(jù)模型進(jìn)行樹(shù)木參數(shù)提取。
2.1 試驗(yàn)1
在本試驗(yàn)中,采用2種方法進(jìn)行樟樹(shù)點(diǎn)云的枝葉分割,即基于點(diǎn)云主方向的自動(dòng)分割法和手動(dòng)分割法,目的是評(píng)價(jià)改進(jìn)分割方法的精確度。手動(dòng)分割使用RiSCAN PRO完成;通過(guò)對(duì)不同參數(shù)組合分割結(jié)果的對(duì)比,自動(dòng)分割時(shí)閾值?1設(shè)為0.7,閾值?2設(shè)為30°,閾值?3設(shè)為0.8,其結(jié)果較好。2種方法的分割結(jié)果如圖8所示,由圖可知,自動(dòng)分割方法能較好的分割出屬于枝干部分的樹(shù)木點(diǎn)云,但部分枝條斷裂為若干段。部分枝條分割有誤,這些問(wèn)題主要由掃描點(diǎn)稀疏、分布不均勻和噪聲點(diǎn)去除不干凈造成。
2.2 試驗(yàn)2
以雞蛋花樹(shù)(圖9)為對(duì)象,采用改進(jìn)的建模方法,建立三維模型。通過(guò)與原始點(diǎn)云對(duì)比,可以定性、直觀地看出,對(duì)于大多數(shù)枝條,創(chuàng)建的模型與點(diǎn)云數(shù)據(jù)的重疊或吻合度較高; 在一些枝干的分叉處和末梢,模型和點(diǎn)云存在微小的分歧。
圖8 樟樹(shù)點(diǎn)云枝葉分割結(jié)果Fig.8 Segmentation results of CcP
圖9 雞蛋花樹(shù)模型及點(diǎn)云對(duì)照Fig.9 Model and point cloud of PrA
為定量驗(yàn)證重建的各枝條模型長(zhǎng)度和半徑精度,利用卷尺,實(shí)地測(cè)量雞蛋花樹(shù)的每一節(jié)枝條長(zhǎng)度和周長(zhǎng),以測(cè)量值作為基準(zhǔn)值(測(cè)量值的長(zhǎng)度誤差為±5 mm,周長(zhǎng)誤差為±2 mm),實(shí)測(cè)值與模型值的比較見(jiàn)圖10。 由圖可知,模型枝條長(zhǎng)度與實(shí)測(cè)長(zhǎng)度的均方根誤差為0.013 m,模型枝條半徑與實(shí)測(cè)半徑的均方根誤差為0.001 m。根據(jù)統(tǒng)計(jì)可得知:長(zhǎng)度誤差范圍為0~12.38%,大部分介于0~8%之間,半徑誤差范圍為0~18.18%,大部分介于0~10%之間,重建模型的精度比較高,可以直接反映非落葉樹(shù)木枝干的重建精度。
圖10 雞蛋花樹(shù)模型精度分析Fig.10 Precision analysis of reconstructed model of PrA
2.3 試驗(yàn)3
利用改進(jìn)的基于點(diǎn)云數(shù)據(jù)的樹(shù)木重建方法,對(duì)赤松、陰香、樟樹(shù)3種樹(shù)木進(jìn)行重建,重建各階段結(jié)果如圖11所示。首先根據(jù)法截線擬合法計(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所示;最后,對(duì)枝條三維模型映射紋理,生成最終樹(shù)木模型,結(jié)果如圖11f所示。圖12~14為目視檢查的方法比較重建后的枝條模型與最終模型的效果,其中各圖圖a為重建枝條模型與分割后的枝干點(diǎn)云進(jìn)行疊加展示,圖b為重建后的完整模型與原始點(diǎn)云疊加展示,圖c為重建后的樹(shù)木三維完整模型。根據(jù)本研究改進(jìn)的方法對(duì)樹(shù)木重建后的三維模型提取樹(shù)高、胸徑、冠幅和體積,并以實(shí)測(cè)數(shù)據(jù)為真值統(tǒng)計(jì)相對(duì)誤差,如表2所示(樟樹(shù)在1.3 m處分成3枝,其胸徑為平均值)。
圖15為根據(jù)相同點(diǎn)云數(shù)據(jù)重建出的三維模型,其中圖15a為利用文獻(xiàn)[10]描述的方法對(duì)陰香樹(shù)進(jìn)行重建的效果圖,能體現(xiàn)樹(shù)木的形態(tài)結(jié)構(gòu)特征,但部分枝條扭曲,而本文改進(jìn)的方法枝條重建效果良好(圖14a)。從圖15b與圖14a對(duì)比可以看出,由于未進(jìn)行枝葉分割,枝干附近的葉子點(diǎn)云影響骨架點(diǎn)位置,PC2Tree重建后的枝條明顯偏離枝干點(diǎn)云;從圖15c看出,枝條半徑根據(jù)骨架點(diǎn)訪問(wèn)次數(shù)計(jì)算獲得,精度相對(duì)較低,其中圖15c上方的圖來(lái)自于圖14a。
圖11 樹(shù)木模型重建Fig.11 Three examples of 3D tree reconstruction from point cloud
圖12 赤松重建模型比較Fig.12 Comparison of 3D reconstruction from PdS point cloud
圖13 樟樹(shù)重建模型比較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
樹(shù)種樹(shù)高/m提取值實(shí)測(cè)值樹(shù)高誤差/%冠幅/m提取值實(shí)測(cè)值冠幅誤差/%胸徑/m提取值實(shí)測(cè)值胸徑誤差/%體積/m3提取值赤松11.2410.8453.6411.5211.9543.630.3010.3154.440.721陰香8.067.8243.0213.0013.3432.570.2750.2832.830.573樟樹(shù)8.698.2375.5010.3410.0602.780.1370.1498.050.676
綜合集成多種算法的優(yōu)勢(shì),形成基于地面激光點(diǎn)云數(shù)據(jù)進(jìn)行三維樹(shù)木自動(dòng)建模的方法,以自動(dòng)化的方式實(shí)現(xiàn)樹(shù)木點(diǎn)云枝葉分割與三維模型重建。首先基于樹(shù)木局部點(diǎn)云的主方向相似度和局部點(diǎn)云軸向分布密度對(duì)單株樹(shù)木點(diǎn)云進(jìn)行分割以分離枝干與樹(shù)葉。其次分別提取枝干部分的骨架點(diǎn)和冠層部分的特征點(diǎn)。最后根據(jù)骨架點(diǎn)和特征點(diǎn)拓?fù)浣Y(jié)構(gòu)對(duì)樹(shù)木進(jìn)行三維重建。通過(guò)對(duì)比分析,采用最小二乘法擬合枝條半徑,提高了基于點(diǎn)云數(shù)據(jù)重建樹(shù)木模型時(shí)主枝半徑的精度;弱化冠層部分細(xì)小枝條的重建效果,一定程度上解決了冠層細(xì)枝重建困難的問(wèn)題;重建模型以適量枝條恰當(dāng)表現(xiàn)樹(shù)木輪廓的凹凸特征,層級(jí)分明。此外,主枝重建過(guò)程對(duì)噪聲點(diǎn)具有一定的免疫力:預(yù)處理階段去噪處理;法截線擬合法具有抗噪性;點(diǎn)云分割過(guò)程剔除部分噪聲點(diǎn)。用重建模型的參數(shù)與現(xiàn)場(chǎng)實(shí)測(cè)數(shù)據(jù)進(jìn)行比較,目的是在以往目視檢查的基礎(chǔ)上,用數(shù)據(jù)的形式定量分析重建模型的精度。試驗(yàn)表明,本文方法對(duì)基于地面激光雷達(dá)掃描獲取的樹(shù)木點(diǎn)云具有良好的分割效果;三維重建方法適用性較廣且模型精度較高;重建后的枝條舒展靈動(dòng),視覺(jué)效果良好;根據(jù)重建模型可以進(jìn)行樹(shù)高、冠幅、胸徑、體積等參數(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 趙陽(yáng),余新曉,信忠保,等. 地面三維激光掃描技術(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)云的樹(shù)木三維幾何建模系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 福州大學(xué)學(xué)報(bào):自然科學(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)云的單樹(shù)三維幾何建模研究[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 代明睿,張曉鵬,李紅軍. 基于高噪聲深度圖像的樹(shù)木模型重建[J]. 中國(guó)體視學(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語(yǔ)言版)[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
國(guó)家自然科學(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á)和無(wú)人機(jī)三維數(shù)字化研究,E-mail: hhy1@fzu.edu.cn
TN958.58; TP391.9
A
1000-1298(2017)02-0186-09