趙利霞,王宏濤,郭增長,管建軍
(1.河南理工大學 測繪與國土信息工程學院,河南 焦作 454000;2.河南測繪職業學院,河南 鄭州 450005)
目前,傾斜攝影測量建模方法主要是通過多視影像密集匹配生成高密度彩色點云,進而通過構建不規則三角網的方式生成特定場景的三維模型,該模型能夠真實的反映地形地貌,且具有逼真的三維效果。然而,該方法得到的僅僅是一個單一的表面模型,不能反映場景內各種目標的語義信息,難以構建真三維GIS系統[1]。因此,如何從影像匹配點云中自動識別出各種地物目標并進行自動化的三維建模,已經成為傾斜攝影測量的研究熱點。
點云分類是傾斜攝影測量影像數據處理和模型重建中關鍵的一步,其主要包括特征提取和分類兩個過程,其中,特征提取是最為重要的技術環節,決定分類效果的好壞。目前點云分類研究主要集中在對LiDAR點云的處理方面,多數方法是從LiDAR點云中提取出幾何特征、多回波特征、強度特征以及波形特征等多種不同特征進行點云分類,這些特征在用于特定場景地物分類時取得了相對不錯的分類結果。然而,在城區復雜環境下,僅僅依靠點云中提取的幾何特征進行地物分類仍然存在較大的困難。因此,一些學者開始研究將點云中提取的幾何特征與影像中提取的光譜特征進行融合來提高分類精度[2-3],然而這不但增加了數據來源的需求,并且需要將這兩種數據源進行精確配準。相比之下,傾斜影像匹配點云具有精確的幾何信息和豐富的光譜信息,不存在配準問題,有利于提高點云分類的精度和效率。針對提取的各種特征,國內外眾多學者主要采用機器學習的方法進行點云分類研究,主要包括人工神經網絡(Artificial Neural Networks,ANNs)[4]、支持向量機(Support Vector Machine,SVM)[5,6]、AdaBoost[7]以及隨機森林(Random Forest,RF)[8]等。這些方法大都通過計算盡可能多的特征以得到更好的分類結果,但是當提取大量特征時,會存在一些冗余特征,冗余特征不僅增加計算負擔、浪費內存空間,還會降低分類精度。因此,從高維數據中提取和選擇有用的特征信息是正確分類的關鍵。
傾斜影像匹配點云不需要進行點云與影像之間的精確配準,其同時包含幾何信息和光譜信息,將這兩種信息進行融合將有助于提高分類精度。隨機森林分類算法是一種高性能的分類算法,具有人工干預少、分類精度高、運算速度快等優點,可以快速處理高維數據,并且能夠估計分類過程中特征的重要性。因此,本文基于隨機森林算法進行傾斜影像匹配點云的分類研究,以期將傾斜影像匹配點云中提取的幾何和光譜特征進行有機融合,并在減少冗余特征的基礎上,有效提高傾斜影像匹配點云的分類精度和效率。
隨機森林是一種由大量決策樹作為弱分類器的集成分類器,其基本單元是決策樹。單個決策樹進行分類的主要過程是從根節點開始,測試該節點上所有屬性特征,然后選擇一個最優特征進行節點分裂,直至決策樹的葉節點,此葉節點上的類分布即為該決策樹得出的分類結果。隨機森林采用Bagging集成思想,隨機有放回選取不同的訓練子集并構建對應的決策樹,然后根據所有決策樹的分類結果進行投票以確定最終的分類。Leo Breiman結合 Bagging集成思想和隨機子空間方法[9]實現隨機森林的兩大隨機特性,即隨機生成獨立同分布的訓練子集和隨機選取分類特征,這兩種隨機性使得隨機森林算法具有較好的泛化性能,可以快速處理上千維的數據集,并且不會產生過擬合現象。
隨機森林算法的基本思想可作如下描述:①從原始訓練集中隨機有放回抽取Ntree個與原始訓練集容量相同的樣本集作為bootstrap[10]訓練集,每次抽樣均有接近37%的原始訓練集樣本未出現在新的訓練集中,這些數據被稱為袋外數據(out of bag,OOB);②根據bootstrap訓練集建立Ntree個決策樹并組成隨機森林模型。每棵決策樹的生長過程主要是從全部特征中隨機抽取Mtry個特征,然后選擇一個最具有分類能力的特征作為內部節點進行分裂,依次向下,直至決策樹的葉節點;③集合所有決策樹的分類結果,采用簡單多數投票法確定最終分類結果。該算法基本流程如圖1所示。

圖1 隨機森林算法基本流程
相比于其它分類算法,隨機森林可以對分類中提取特征的重要性進行評估,該過程采用變量重要性評分(Variable Importance Measure, VIM)策略實現,該策略在高維組數據生物標志物的變量篩選中有廣泛應用[11]。變量重要性評分主要有兩種計算方法,分別是根據Gini指數計算和基于OOB誤差率的置換法計算。由于置換法具有更好的非偏倚性能,因此多采用置換法進行變量篩選[12-13],該方法的基本原理是隨機置換袋外數據變量值,然后通過計算置換前后的OOB誤差率間的差異來衡量變量的重要性。對于某一變量Xj而言,采用置換法計算該變量重要性(VIMj(OOB))的算式為
(1)

本文提出的點云分類方法主要分為3個步驟:①數據預處理:對原始點云進行濾波得到地面點和非地面點云;②特征提取:提取影像匹配點云的幾何特征和光譜特征;③隨機森林分類:采用變量重要性評分策略進行特征選擇,確定一組最優特征子集,并采用隨機森林算法將非地面點云分為建筑物、樹木和低矮植被3類。文中所提方法的主要技術流程如圖2所示。

圖2 傾斜影像匹配點云自動分類技術流程
首先利用開源軟件CloudCompare對高密度的傾斜影像匹配點云進行降采樣,以提高后續數據處理效率,根據實驗需要,將采樣間隔設為0.3 m來抽稀點云。然后,利用內嵌于CloudCompare軟件中的布料模擬濾波算法[14]將原始點云分為地面點和非地面點。該算法的基本思想是通過模擬具有一定硬度的布料覆蓋于倒置點云的物理過程,得到一個近似的地表形狀,進而計算所有點云到此近似地表的距離,最終將點云分類為地面點和非地面點。
針對傾斜影像匹配點云的特性,提取以下兩個方面特征用于點云分類:
1)幾何特征,主要包括高程值、歸一化高度、高度標準差、協方差矩陣特征值、法向量、曲率、粗糙度以及點密度等。①高程值(H)反映該點真實的高程信息;②歸一化高度(NH)是指每個非地面點與其最鄰近的地面點的高度差值;③局部鄰域內高度標準差(VH)可以反映點云的垂直分布;④基于協方差矩陣的3個特征值(λ0,λ1,λ2)可以用于區分平面、邊緣和線等特征;⑤法向量的3個分量nx,ny,nz以及曲率(curvature)可以反映點云的外形和平面特征;⑥粗糙度(roughness)是指該點領域內所有點到局部擬合平面距離的平均值;⑦點密度(n)是指該點鄰域內所有點的個數。
2)光譜特征,主要包括Lab顏色特征、可見光波段差異植被指數(visible-band difference vegetation index,VDVI)以及歸一化綠藍差異指數(normalized green-blue difference index,NGBDI)[15]。①Lab顏色是由亮度(L)和有關色彩的a,b3個要素組成,將a,b兩個要素作為光譜特征可以在一定程度上消除光照不均的影響;②植被指數VDVI和NGBDI在僅有可見光波段的無人機影像植被信息提取中具有較好的適用性,能夠很好地區分植被與非植被,具體算式為
(2)
(3)
式中,R,G,B分別表示從真彩色數字航空影像上提取的紅綠藍3個通道的灰度值。
在隨機森林分類過程中,需要輸入訓練數據和測試數據,訓練數據主要用于構建隨機森林分類模型,然后利用分類模型對測試數據進行分類。首先,將實驗區主要地物類型分為建筑物、樹木和低矮植被,采用手工分類的方法從各類別點云中選取約10%的樣本作為訓練數據,其余作為測試數據,并記錄對應的類別標簽。其次,采用變量重要性評分策略進行特征選擇,并采用逆向特征消除方法[16],反復構建隨機森林模型,以減少冗余特征,選出一組最優特征子集。最后,基于最優特征子集,采用隨機森林算法將點云分為建筑物、樹木和低矮植被。
本文實驗區的傾斜影像數據由紅鵬無人機傾斜攝影測量系統AC1100獲取,試驗區域為河南理工大學測繪學院周邊區域。飛行平均航高為100 m,相機CCD大小為5 456像素×3 632像素,其對應地面影像分辨率為0.02 m。采用ContextCapture Center軟件將獲取的傾斜影像進行處理,所生成的傾斜影像密集匹配點云如圖3(a)所示。經過濾波處理后的非地面點如圖3(b)所示。
在隨機森林分類過程中,有兩個重要參數需要設置:特征數(Mtry)和決策樹數量(Ntree)。針對本文實驗數據,將Mtry取2,4,8,Ntree取100,200,300,…,1 000。在上述參數設置下,以OOB誤差率和最終分類精度為評價標準,進行兩個參數的優化選擇。圖4表示不同參數設置對分類精度的影響。
從圖4(a)可以看出,隨著Ntree不斷增加,OOB誤差率呈現下降趨勢,且當Mtry=4時OOB誤差率足夠低且穩定;從圖4(b)、(c)可以看出,當Mtry=4時,隨著Ntree不斷增加,總體精度和Kappa系數不斷增大。當Ntree=400時總體精度和Kappa系數達到較高水平,分別是95.88%和0.919 2,但隨著Ntree繼續增加,分類精度增長緩慢,并且當Ntree過大,會造成構建隨機森林的時間過長。綜合考慮,本文最終選取Mtry=4、Ntree=400作為隨機森林的最優參數。

圖3 試驗區傾斜影像匹配點云

圖4 不同參數設置下的分類精度
本文首先采用變量重要性評分策略進行特征的重要性評估。圖5(a)為全局變量重要性評分,表示在整個分類過程中每個特征的VIM值;圖5(b)為各類別變量重要性評分,表示在不同地物類別分類過程中每個特征的VIM值;VIM值越大表示該特征在分類中作用越大,即貢獻量越大。
從圖5(a)可以看出,對整個分類模型貢獻最大的特征依次是VDVI,H,NH,這說明這些特征對于點云分類具有非常重要的意義,其中,VDVI可以很好地識別樹木和低矮植被, 而H,NH能夠區分高程不同的地物類別;roughness,λ1,ny這3個特征的貢獻量最小,表明這些特征在整個分類過程中作用相對較小。從圖5(b)看出,對于建筑物和樹木而言,VIM值最大的是H,VDVI,NH,但對低矮植被來說,卻是H,VH,NH,出現這種差異的原因有兩個方面:一是VH能夠更好地識別表面平緩的低矮植被;二是VDVI雖然對植被有很好的分類能力,但是難以將具有類似植被特征的樹木和低矮植被區分開。此外,值得注意的是,VDVI和a的VIM值較高,這說明兩種光譜特征在三維彩色傾斜影像匹配點云中有很好的分類效果。

圖5 變量重要性評分
在上述特征重要性評估的基礎上,選擇VDVI,H,NH和a作為后續主要分類特征,不參與特征冗余性分析,其余特征按照全局變量重要性評分進行重要性排序,然后采用逆向特征消除法依次減少冗余特征,并根據最終分類精度確定一組最優特征子集。特征選擇的實驗結果如圖6所示,圖中橫軸從左至右為按照重要性由弱到強依次減少的特征,縱軸為分類精度。

圖6 特征選擇對分類精度的影響
從圖6可以看出,依次去除ny,λ1,roughness,λ0,nx,nz,curvature等7個特征時,總體精度和Kappa系數雖然呈現緩慢下降趨勢,但總體維持在相對較高的水平,表明這些特征對于本文試驗數據分類而言屬于冗余信息,去掉這些冗余特征對分類精度影響不大。但從效率上講,去掉冗余特征之后分類計算的時間從145 s減少到112 s,分類效率明顯。綜上所述,確定最優特征子集為{VDVI,H,NH,a,λ2,VH,NGBDI,b,n}。
本文按照上述方法,采用隨機森林算法將非地面點分為建筑物、樹木和低矮植被3類,該實驗的分類結果如圖7所示。

圖7 實驗區分類結果
從圖7可以看出,本文提出的影像匹配點云分類方法具有較好的分類效果,能夠正確地區分點云中建筑物、樹木和低矮植被;但圖中也存在少數錯分現象,主要是建筑物立面上隆起部分和門頂凸起部分被錯分成樹木,樹冠和低矮植被的平緩部分被錯分成建筑物。
除了上述定性分析之外,本文采用計算分類結果混淆矩陣的方法對分類結果進行定量分析,如表1所示。
從表1可知,該實驗區傾斜影像匹配點云分類的總體精度為95.72%,Kappa系數為 0.916 1。建筑物和樹木的分類精度較高,其制圖精度和用戶精度均在94%以上,而低矮植被的用戶精度較低,這是由于低矮植被的點云數量明顯小于其他類別的點云數量,這種類間不平衡數據[17]影響分類器對小類別的分類性能。另從算法效率上考慮,該方法對實驗區約80萬個點云數據進行分類僅花費了112 s的時間。由此可見,本文提出的基于隨機森林的點云分類方法具有較高的分類精度和效率。

表1 混淆矩陣
注:總體精度:95.72%,Kappa系數:0.916 1
本文根據傾斜影像匹配點云的特性,提出一種基于隨機森林的點云分類方法。所提方法首先從點云中提取多種幾何與光譜特征構成多維特征向量;然后,采取變量重要性評分策略對分類中的特征進行重要性評估,以減少冗余特征,從而確定一組最優特征子集;最后,采用隨機森林算法進行點云自動化分類,并取得了較好的分類效果。通過對實驗結果的分析可以得到以下結論:1)融合傾斜影像匹配點云的幾何特征和光譜特征能夠有效提高點云分類精度;2)采取變量重要性評分策略進行特征選擇,可以減少冗余特征,有利于提高分類精度和效率。目前,本文所提方法僅實現了對傾斜影像匹配點云中建筑物、樹木和低矮植被的分類,未來研究將側重于采用面向對象的分類方法實現對多種地物目標的自動識別。