章又文,邢艷秋
(東北林業(yè)大學森林作業(yè)與環(huán)境研究中心,黑龍江哈爾濱 150040)
在林業(yè)測量中,三維激光雷達能夠準確、快速地提取樹木表面三維信息,因此被廣泛運用在林木的垂直結(jié)構(gòu)[1-2]、葉面積指數(shù)提取[3-4]以及單木三維建??梢暬痆5-6]中。林木枝葉分類識別的研究是林木參數(shù)提取及三維重建的重要內(nèi)容。Li等[7]利用單木樹葉與枝干點云的法向分布特征的不同,采用法線差分算子進行單木枝葉點云的分類識別,以達到分割樹葉點云的目的,從而減小了枝干點云對葉面積密度提取精度的影響。LU等[8]直接利用林木樣方點云數(shù)據(jù),作徑向半球點云切片計算有效葉面積指數(shù)。王洪蜀等[9]將激光雷達設備與CCD相機同步采集林木樣方數(shù)據(jù),利用監(jiān)督學習將CCD相機拍攝的彩色影像中的枝葉分類,再將枝葉中的像素信息賦給點云數(shù)據(jù),從而達到枝葉點云分類識別的效果。上述文獻中,在冠層部分的葉面積信息提取上,沒有綜合利用局部枝葉點云的形狀、法向分布、反射強度等特征研究枝葉點云的分類識別。喻垚慎等[10]利用點云的局部切平面分布特征,融合多種空間結(jié)構(gòu)特征分離枝干與樹葉點云,然而細小的枝干與樹葉點云數(shù)據(jù)冗雜在一起,空間特征不突出。顏色是區(qū)分枝干與樹葉的重要自然屬性,在枝干與樹葉的空間結(jié)構(gòu)特征的基礎上,增加色彩特征進行研究,能夠使分類更為準確。
三維點云數(shù)據(jù)信息量大,因此在分類算法的選擇上,筆者采用極限學習機(extreme learning machine,ELM)來進行枝葉點云的分類識別。2004年有研究人員提出,ELM算法主要應用于回歸以及分類問題當中。程東生等[11]將ELM算法應用在中文文本分類中,證明ELM能夠有效的平衡學習效率以及分類精度。王明常等[12]運用ELM進行GF-2高光譜遙感影像的分類,并將其與SVM、最大似然法的分類結(jié)果進行比較,法線ELM比其他2種算法分類準確度高、算法運行時間快,因此具有一定的推廣價值。ELM具有良好的泛化性能,能夠搜索全局最優(yōu)解,不需要重復的迭代運算,因此縮短了分類時間,提高了分類效率。單木枝葉點云分類是冠層葉面積參數(shù)提取前提,能否準確地進行枝葉點云分類、提取樹葉點云數(shù)據(jù)是亟待解決的關鍵問題,筆者采用機器學習算法進行枝葉點云分類研究,為準確高效提取葉面積指數(shù)提供了參考依據(jù)。
1.1數(shù)據(jù)采集試驗在東北林業(yè)大學城市林業(yè)示范基地進行。利用法如X330激光掃描設備,獲取1株高6.14 m的生長期胡桃楸的三維點云數(shù)據(jù)。掃描時,以胡桃楸為中心,每隔120°設置1個站點,掃描水平視場120°,垂直視場0~90°,共掃描得到3站數(shù)據(jù),數(shù)據(jù)采集現(xiàn)場示意圖如圖1所示。
圖1 數(shù)據(jù)采集現(xiàn)場示意圖Fig.1 The diagrammatic sketch of data acquisition scene
1.2數(shù)據(jù)預處理將掃描得到的3站數(shù)據(jù),利用法如配套的軟件SCENE將數(shù)據(jù)格式轉(zhuǎn)換為通用PCD格式后,利用CloudCompare軟件進行3站數(shù)據(jù)的配準融合,再進行點云抽稀、去噪。得到完整的待分類單木點云數(shù)據(jù)如圖2所示。
圖2 單木點云數(shù)據(jù)Fig.2 Point cloud data of single tree
采用的點云分類算法為監(jiān)督學習,因此需要提前選取一定數(shù)量的樹葉和枝干點云作為訓練樣本數(shù)據(jù),并加上標簽作為標記,樹葉點云標記為“2”,枝干點云標記為“1”。選取的訓練樣本數(shù)據(jù)如圖3所示。
圖3 訓練樣本數(shù)據(jù)Fig.3 Training sample of single tree
局部區(qū)域的枝干與樹葉點云在空間結(jié)構(gòu)上存在差異,樹木的枝干點云聚集呈現(xiàn)近似圓柱狀,法線方向向四周分散,而樹葉點云在鄰域范圍內(nèi)呈現(xiàn)近似平面或曲率較小曲面的分布,法線方向較集中、差別不大,因此筆者通過K均值聚類法,設置固定的k值50,尋找離當前點xi=(x,y,z)T∈R3(i=1,2,3…)距離最近的50個點作為一個鄰域Nk(xi)。
2.1三維形狀特征為進一步求得點云的三維形狀特征,先求取各個鄰域內(nèi)的點集的協(xié)方差矩陣,當前點xi的協(xié)方差矩陣為
(1)
(2)
鄰域內(nèi)的三維形狀特征表示為
(3)
2.2法向分布特征
根據(jù)穩(wěn)健平面擬合方法[13],當前點xi的鄰域Nk(xi)的擬合平面函數(shù)為
z=f(x,y)=ax+by+c
(4)
則根據(jù)最小二乘法,求下式最小值
(5)
由上式,分別對系數(shù)求導聯(lián)立方程可得到系數(shù)的值,則當前點的法向量即可表示為
n=[a,b,c]
(6)
同樣,領域內(nèi)其他點的法向量也可求得,則鄰域內(nèi)各點法向量集合的協(xié)方差矩陣對應的特征值為λn=[λn1,λn2,λn3],鄰域散點的法向分布特征為
Fnormal=[n,λn]
(7)
2.3局部曲率特征同樣,對于鄰域Nk(xi)內(nèi)的點集擬合曲面方程,通過最小二乘法求解曲面方程系數(shù)[14],根據(jù)曲面方程系數(shù)求解曲面法向量nc,以及高斯曲率K和平均曲率H。則鄰域散點的曲率特征為
Fcurve=[nc,K,H]
(8)
2.4基于隨機森林的特征降維將以上步驟得到的特征(6)、(7)、(8)以及Fcolor=[r,g,b]和Fintensity=I進行多維特征融合,得到總的用來分類的局部點云特征Forigin,[r,g,b]分別為紅、綠、藍3個通道的顏色值,F(xiàn)intensity=I為激光反射強度信息。
采用隨機森林算法[15]進行特征降維處理。將隨機森林算法得到的特征重要指標由大到小進行排序,篩選出前7個對分類貢獻率較大的分類指標,組成新的分類特征Fnew
(10)
采用極限學習機(ELM)[16]進行單木點云枝葉分類識別研究。ELM是一種單隱含層前饋神經(jīng)網(wǎng)絡算法,與傳統(tǒng)的BP神經(jīng)網(wǎng)絡算法相比,不需要迭代重新計算連接層的權值與隱含層的閾值,可以快速、準確地進行全局優(yōu)化,找到全局最優(yōu)解,因此被廣泛應用于分類、回歸分析中。
極限學習機的原理:
設訓練樣本為xi=[x1i,x2i,x3i,…,xni]T∈Rn,yi={1,2}∈Rn,其中i=1,2,3,…,q,q為樣本個數(shù),xi為訓練樣本特征,即為輸入矩陣值,yi為訓練樣本分類標簽值,即為輸出矩陣值,1表示該訓練樣本點為枝干類,2表示該訓練點為樹葉類。
設置神經(jīng)網(wǎng)絡的隱含層個數(shù)為l,則輸入權值矩陣為
(11)
隱含層與輸出層的連接權值矩陣為
(12)
其中m為輸出層神經(jīng)元個數(shù)。
隱含層神經(jīng)元的閾值為
(13)
該研究中隱含層神經(jīng)元的激活函數(shù)G(x)為Sigmoid函數(shù),則由式(11)、(12)、(13)可得,神經(jīng)網(wǎng)絡的輸出值為
O=[t1,t2,…,tq]m×q
(14)
則單個樣本值的網(wǎng)絡輸出值為
(15)
其中,wi1=[wi1,wi2,…,win]T,xj=[x1j,x2j,…,xnj]T
由式(15)可知,網(wǎng)絡輸出可以表示為
Gβ=OT
(16)
其中,網(wǎng)絡輸出矩陣G即為
(17)
由式(16)和(17)可得到隱含層與輸出層的連接權值矩陣為
β=G-OT
(18)
其中,G-為網(wǎng)絡輸出G矩陣的廣義逆矩陣,訓練樣本中的網(wǎng)絡期望輸出為yi,目標為使網(wǎng)絡輸出值oj無限接近于yi。則可根據(jù)最小二乘法,求解出β的值,帶入式(16)中,從而得到網(wǎng)絡輸出值oj。
根據(jù)算法思路,分類步驟如下:
①ELM網(wǎng)絡學習訓練前,先確定隱含層神經(jīng)元數(shù)目,該研究設置為50,隱含層激活函數(shù)為Sigmoid函數(shù)。同時隨機產(chǎn)生上述過程中的連接權值矩陣w以及閾值b。
②輸入手動提取的訓練樣本數(shù)據(jù),xi=[x1i,x2i,x3i,…,xni]T∈Rn,數(shù)據(jù)中包含了式(10)中的分類特征信息,根據(jù)式(17)計算出網(wǎng)絡輸出矩陣G。
③將步驟②計算出的輸出矩陣G以及訓練樣本數(shù)據(jù)中的分類類別,帶入式(18)中,計算出隱含層與輸出層的連接權值矩陣β,則ELM網(wǎng)絡訓練結(jié)束。
④將待分類的測試數(shù)據(jù)集輸入步驟③中訓練好的ELM網(wǎng)絡中,計算得到分類結(jié)果。
則單木枝干與樹葉點云分類識別的流程如圖4所示。
圖4 點云分類識別算法流程Fig.4 The process of cloud point recognition
為了更好的評價極限學習機的分類效果,將其與BP神經(jīng)網(wǎng)絡、LVQ神經(jīng)網(wǎng)絡、決策樹、支持向量機以及樸素貝葉斯算法進行比較,圖5為這6種算法的分類正確率。從圖5可以看出,極限學習機、BP神經(jīng)網(wǎng)絡、LVQ神經(jīng)網(wǎng)絡、決策樹、支持向量機以及樸素貝葉斯算法的分類正確率分別為98.99%、94.30%、91.26%、96.95%、98.16%、85.67%。在試驗條件下,極限學習機的單木點云樹葉和枝干分類識別效果較好。表1為這6種算法的訓練和分類的耗時。從表1可以看出,樸素貝葉斯方法的分類時間最短,但分類正確率最低,極限學習機的訓練時間最短,測試時間耗時較少,正確率最高。
由圖6可知,6種算法的分類效果圖更直觀地顯示了樹葉點云與整株單木點云的識別效果。與圖1中的原始單木點云數(shù)據(jù)比較,圖6a極限學習機算法的分類效果較好,基本把枝干分離出去,其次是支持向量機,分類效果最差的為圖7f樸素貝葉斯算法,不僅沒有把枝干完整分割開,而且部分樹葉也被錯分類為枝干數(shù)據(jù)分割出去。
圖5 6種算法的分類正確率Fig.5 Classification accuracy using six algorithms
序號Code算法Algorithm訓練時間Training time∥s測試時間Detection time∥s1極限學習機0.652.132BP神經(jīng)網(wǎng)絡8.577.383LVQ神經(jīng)網(wǎng)絡266.62206.734決策樹2.612.275支持向量機54.85376.816樸素貝葉斯0.900.46
圖7 6種算法的分類效果圖Fig.7 Classification effects of six algorithms
單木點云枝葉分類識別,對于單木三維重建以及葉面積指數(shù)提取具有重要意義。該研究結(jié)果表明,結(jié)合點云的局部特征,如點云的形狀、曲面曲率、法向分布、反射強度以及色彩特征能夠有效提高樹葉與枝干分類識別效果。利用極限學習機能夠快速、準確的進行分類。在點云數(shù)據(jù)量較大的情況下,支持向量機、BP神經(jīng)網(wǎng)絡等算法、隱含層閾值以及輸入權重矩陣的選取需要梯度下降法等優(yōu)化算法進行多次迭代,學習率的選取對于迭代效果影響較大,容易陷入局部最小值,造成分類結(jié)果的不準確。與BP神經(jīng)網(wǎng)絡、LVQ神經(jīng)網(wǎng)絡等算法比較,極限學習機不需要梯度下降法等優(yōu)化算法進行多次迭代,能夠提高分類效率,具有良好的泛化性能,算法穩(wěn)定性好。
在點云的分類識別中采用監(jiān)督分類方法,訓練樣本的選擇對于分類結(jié)果的準確性有較大的影響,因此如何在訓練樣本的選取上實現(xiàn)自動選取具有代表性的樣本是進一步研究的方向。在此基礎上減少人工干預,實現(xiàn)全自動枝葉分離,也是后續(xù)研究方向之一。