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