張 均,孫洪斌,邵秋銘
(重慶市勘測院,重慶 400020)
機(jī)載雷達(dá)測量技術(shù)是一種主動式、快速、精確的新型遙感測量方法,所獲取的數(shù)據(jù)通過一系列的坐標(biāo)轉(zhuǎn)換求得地面點三維坐標(biāo)。目前,國內(nèi)外已研制出多種機(jī)載激光掃描測高系統(tǒng),同時出現(xiàn)一些較為成熟的機(jī)載LiDAR數(shù)據(jù)處理軟件,但其功能算法均由生產(chǎn)廠家單獨封裝保密提供,用戶看不到其具體的算法步驟,因此,無法根據(jù)自身的應(yīng)用需求對數(shù)據(jù)做出更精確的操作。本文針對點云數(shù)據(jù)后處理過程,嘗試尋找合理而高效的處理海量點云數(shù)據(jù)的算法來完成點云的自動濾波過程,實驗操作是基于Terrasolid軟件下完成的,通過不同的算法來實現(xiàn)粗差剔除以及濾波分類參數(shù)設(shè)計實驗,給出了最佳的濾波效果和精度分析。
機(jī)載LiDAR數(shù)據(jù)后處理主要進(jìn)行濾波和分類兩個操作。從激光腳點數(shù)據(jù)點云中提取數(shù)字地面高程模型(DEM/DTM)需要將其中的地物數(shù)據(jù)腳點去掉,這就是所謂的激光雷達(dá)數(shù)據(jù)的濾波[1]。而若要進(jìn)行地物提取以及三維重建等操作,還需對激光點云數(shù)據(jù)進(jìn)行分類(分割),區(qū)分植被數(shù)據(jù)點、人工地物點。
當(dāng)前國內(nèi)外對機(jī)載LiDAR點云數(shù)據(jù)處理算法還在研究發(fā)展階段,現(xiàn)有的用于機(jī)載LiDAR測量數(shù)據(jù)的濾波算法都是基于三維激光腳點數(shù)據(jù)的高程突變等信息進(jìn)行的。主要方法分為移動窗口法[1],數(shù)學(xué)形態(tài)濾波法[2],迭代線性最小二乘內(nèi)插法[3],基于地形坡度濾波法[3],移動曲面擬合法[1]等幾種。每種方法都存在其自身的缺陷,仍有待改善。
Terrasolid軟件是以Microstaion為平臺開發(fā)使用的。實驗所采用的數(shù)據(jù)是ISPRS第三工作組提供的一組森林地區(qū)的機(jī)載LiDAR數(shù)據(jù)。其濾波方法是Axelsson于2000年提出的一種基于不規(guī)則三角網(wǎng)[1](TIN)的漸進(jìn)加密,該方法尋找到每個格網(wǎng)中的最低點,并將其作為初始種子點,去生成一個稀疏的TIN,再對其他各點進(jìn)行判斷。算法的關(guān)鍵性在于濾波閾值的選取,主要的濾波參數(shù)有地形坡度角、迭代角、迭代距離,需根據(jù)經(jīng)驗選擇合適的參考值。本算法最大的一個優(yōu)勢是可以有效地保留地面斷裂特征,處理曲面不連續(xù)的情況,適用于密集分布的城區(qū)。
常見的噪聲包括低位粗差和高位粗差。低位粗差是由于測量中多路徑誤差導(dǎo)致的極低點,而高位誤差則受到低空飛行物影響提前反射信號產(chǎn)生較大誤差。該算法是用一個點(即中心點)的高程值與給定距離范圍內(nèi)每一個點的高程值比較,如果中心點明顯低于其他點,這個點將被分離出來。如圖1所示,左圖設(shè)定參數(shù)剔除的是距離該點5m之內(nèi)低于一般地面高度0.5m的點,右圖設(shè)定的參數(shù)剔除的是半徑在5m內(nèi)高位誤差大于5倍標(biāo)準(zhǔn)差的點。
圖1 分離低點算法以及剔除高位點的算法
一般情況下粗差剔除前后對地形變化的影響是很大的。對于本實驗結(jié)果,低位點受多路徑影響較嚴(yán)重,剔除粗差后地形高程整體提高了。實際上,粗差對后期形成TIN的影響非常大,它是后期數(shù)據(jù)濾波的必要保障[4]。
在Microstation環(huán)境下打開Terrascan。在實用工具菜單下選擇MDL應(yīng)用,在打開的窗口中選中TSCAN,安裝并在TerraScan界面下點擊File菜單,讀入數(shù)據(jù)。在主菜單中選擇Classify菜單下的Routine選項→Ground項。
通過選取不同的參數(shù)值,可以得到如表1所示的實驗總結(jié)。利用不同的顏色可以區(qū)別哪些是地面點,哪些是地物點。
表1 不同參數(shù)下的點云濾波
通常情況下,人們要將植被劃分為3種:即低矮植被,中等高度植被,高度植被。植被的分類算法使用的By height from算法,低矮植被距離地面0~2m,中等植被一般距離地面2~5m,高植被距離地面常為5~15m。前面對原始激光腳點進(jìn)行了濾波,基于它的基礎(chǔ),就可利用此算法把符合要求的點分類出來,如圖2所示。
圖2顯示的是從低植被層到中植被層的參數(shù)設(shè)置,由本算法得到了其最終的植被分層渲染效果如圖3所示。
圖2 利用height from ground算法分類植被層
圖3 植被分層效果圖
可以看出植被點高程是由矮到高逐步遞增的。藍(lán)色區(qū)域表達(dá)了地面點層,綠色代表了低矮植被層,黃色代表中度植被層,紅色代表高植被層。這樣的分層可以直觀感受到地形變化和特征,為更好的使用地形提供有利參靠。
通過設(shè)定不同的閾值參數(shù),可以得到不同的濾波分類效果。此時需要對不同參數(shù)的濾波結(jié)果進(jìn)行精度評定。評價精度的指標(biāo),是通過判斷兩類分類誤差的大小體現(xiàn)的。第Ⅰ類誤差是指拒絕了本屬于地形表面的激光腳點,第Ⅱ類誤差是指接受了不屬于地形表面的激光腳點。具體計算式如表2所示。
表2 誤差計算公式
總誤差=(B+C)/(A+B+C+D)×100%。
本文使用C#語言,編程比較實驗所得地面點點云與真實地面點點云數(shù)據(jù)間相應(yīng)點的個數(shù),看哪個參數(shù)閾值得到的真實點個數(shù)最多,與真實情況最符合,那么此后的設(shè)置就可以將所得閾值作為經(jīng)驗值使用。下面是部分比較程序:class Point//點云數(shù)據(jù)基本結(jié)構(gòu)
{
public double X;
public double Y;
public double Z;
}
static void Compute()
{
//讀取真實地面點數(shù)據(jù)文件,并轉(zhuǎn)化成Point類型列表
var RGP=File.ReadAllLines("RealGroundP-oint.txt").Select(p=>
{
var Pstr=p.Split('').Cast<double>().ToList();
return new Point(){
X=Pstr[0],
Y=Pstr[1],
Z=Pstr[2]};
}).ToList();
……
……
同理讀取真實地物點數(shù)據(jù)RFP,實驗地面點數(shù)據(jù)TGP,實驗地物點數(shù)據(jù)TFP
//計算真實地面點同實驗地物點交集(共同數(shù)據(jù)),得到第一類錯誤
var FirstTypeError=TFP.Intersect(RGP).Count()/(double)RGP.Count();
//計算真實地物點同實驗地面點交集(共同數(shù)據(jù)),得到第二類錯誤
var SecondTypeError=TGP.Intersect(RFP).Count()/(double)RFP.Count();
實驗得到的兩類錯誤統(tǒng)計如表3所示。
表3 誤差結(jié)果
從表3中可看出,最大建筑物尺寸、最大地形角、迭代角的選擇對地表面構(gòu)建有著很重要的參考價值。實驗1中的參數(shù),常作為人們長期實踐得到的適應(yīng)地形條件的標(biāo)準(zhǔn)參數(shù)而使用,選擇稍大一點的迭代角和迭代距離可以有效地保存真實地形特征。其次再進(jìn)行程序的比較和篩選,就可將真實地面展現(xiàn)出來,減少了兩類錯誤的發(fā)生。
本文的3個實驗是基于深度理解濾波分類原理后,利用軟件進(jìn)行算法操作的過程,主要進(jìn)行了以下幾項操作:粗差剔除,地面點濾波,植被點分類處理。從圖像上來看,每個算法都能夠基本符合現(xiàn)實的情況,把大部分的點分類到相應(yīng)的層中。但由于Terrasolid軟件源代碼不公開,所以對于數(shù)據(jù)的準(zhǔn)確性和真實度還有待商榷。本文基于該軟件開發(fā)了一個精度估算的功能,將實驗結(jié)果與參考數(shù)據(jù)比較,為實驗參數(shù)的設(shè)置提供了一個很大的技術(shù)參考。機(jī)載LiDAR是攝影測量技術(shù)的一種有力補(bǔ)充,未來若能融合其他數(shù)據(jù)源進(jìn)行地物識別,提出更加完美的濾波算法,必將是機(jī)載LiDAR技術(shù)的一個革命性轉(zhuǎn)折。
[1]張小紅.機(jī)載激光雷達(dá)測量技術(shù)理論與方法[M].武漢:武漢大學(xué)出版社,2007.
[2]KRAUS K,PFEIFER N.Determination of Terrain Models in Wooded Areas with Airborne Laser Scanner Data[J].ISPRS Journal of Photogrammetry and Remote Sensing,1998,53(4):193-203.
[3]VOSSELMAN G.Slope based filtering of laser altimetry data[A].In:International Archives of Photogrammetry and Remote sensing,vol.XXXIII,Part B3,Amsterdam,2000:935-942.
[4]劉瑤,王健,彭福國,等.基于機(jī)載LiDAR點云的島礁提取方法[J].測繪工程,2012,21(6):36-38.
[5]龔亮,李正國,包全福.融合航空影像的LiDAR地物點云分類[J].測繪工程,2012,21(1):38-42.
[6]賴旭東.機(jī)載激光雷達(dá)數(shù)據(jù)處理中若干關(guān)鍵技術(shù)的研究[D].武漢:武漢大學(xué),2006.
[7]劉經(jīng)南,張小紅.激光掃描測高技術(shù)的發(fā)展與現(xiàn)狀[J].武漢大學(xué)學(xué)報:信息科學(xué)版,2003,28(2):132-137.
[8]劉經(jīng)南,張小紅.機(jī)載激光雷達(dá)測高數(shù)據(jù)濾波[J].測繪科學(xué),2004,29(6):158-160.