周欽坤,岳建平,李子寬,楊 恒
(河海大學(xué)地球科學(xué)與工程學(xué)院, 江蘇 南京 211100)
機(jī)載激光雷達(dá)(LiDAR,light detection and ranging)技術(shù)可快速獲取大范圍的空間三維坐標(biāo)數(shù)據(jù),目前已被廣泛應(yīng)用于城市三維建模、DEM快速生成、森林資源調(diào)查。經(jīng)過多年其發(fā)展成熟,但數(shù)據(jù)后處理還相對(duì)滯后,針對(duì)如何從點(diǎn)云中區(qū)分地面點(diǎn)與非地面點(diǎn),國(guó)內(nèi)外眾多學(xué)者提出了多種算法。其中Vosselman[1]提出了基于坡度的濾波算法,通過比較兩臨近激光腳點(diǎn)間高差與閾值的大小關(guān)系來(lái)確定點(diǎn)云屬性;張小紅等[2]提出了移動(dòng)曲面擬合濾波算法,用一個(gè)簡(jiǎn)單的二次曲面去過濾整個(gè)點(diǎn)云表面;文獻(xiàn)[3-4]中通過融合多種方法,也取得了較好的效果;Lindenberger[5]提出了形態(tài)學(xué)濾波算法,對(duì)某一固定窗口內(nèi)的點(diǎn)云進(jìn)行開運(yùn)算,通過計(jì)算運(yùn)算前后高差變化來(lái)確定點(diǎn)云屬性。由于采用固定窗口,該算法僅能去除固定大小的地物,為此,Zhang等[6]在原算法基礎(chǔ)上進(jìn)行了改進(jìn),通過逐步改變窗口大小,并設(shè)置與窗口大小相適應(yīng)的高差閾值以提高濾波精度。
Zhang等[6]提出的漸進(jìn)形態(tài)學(xué)濾波能去除不同尺寸的地物,但是需要用戶預(yù)設(shè)的參數(shù)過多,嚴(yán)重影響了算法的自適應(yīng)性。另外,在一個(gè)標(biāo)記網(wǎng)格中往往有多個(gè)高程不同的激光點(diǎn)云,如果簡(jiǎn)單的將這些激光點(diǎn)云歸為同一類,那么點(diǎn)云的誤判率會(huì)很高?;诖?眾多學(xué)者對(duì)該算法進(jìn)行了改進(jìn)[7-10]。研究通過增加迭代終止條件,免除最大窗口尺寸閾值的預(yù)設(shè)工作,減少算法設(shè)置參數(shù)的個(gè)數(shù),并進(jìn)一步對(duì)網(wǎng)格中的點(diǎn)進(jìn)行精分類以降低格網(wǎng)內(nèi)點(diǎn)云的分類誤差。
漸進(jìn)形態(tài)學(xué)濾波算法基于集合運(yùn)算,腐蝕與膨脹是最基本的2個(gè)算子。在進(jìn)行數(shù)據(jù)處理時(shí),常用2種算子的組合,一般有開運(yùn)算和閉運(yùn)算,運(yùn)算可表達(dá)成如下形式:
開運(yùn)算:(f°g)=(f?g)⊕g,
閉運(yùn)算:(f·g)=(f⊕g)?g,
其中:°為開運(yùn)算符號(hào);·為閉運(yùn)算符號(hào);?為腐蝕符號(hào);⊕為膨脹符號(hào)。
在用形態(tài)學(xué)對(duì)機(jī)載激光雷達(dá)點(diǎn)云進(jìn)行濾波時(shí),主要使用開運(yùn)算,可以去除比窗口尺寸小的地物,而保留比窗口尺寸大的地物。
漸進(jìn)形態(tài)學(xué)濾波的基本思想是,逐步增大濾波窗口對(duì)LiDAR數(shù)據(jù)進(jìn)行開運(yùn)算,以去除LiDAR數(shù)據(jù)中的不同大小的樹木及建筑物等,如圖1所示。
圖1 漸進(jìn)形態(tài)學(xué)濾波Fig.1 Progressive morphological filtering
通過變化窗口大小,地物點(diǎn)均被去除,但部分地面特征點(diǎn)也被濾除,為了在濾除非地面點(diǎn)的同時(shí),保留地面點(diǎn),引入了高程差閾值。對(duì)于任一點(diǎn)p,設(shè)dhp為前后2次濾波p點(diǎn)處的高程差,dhT為此次過濾的高差閾值,若dhp 在傳統(tǒng)漸進(jìn)形態(tài)學(xué)濾波算法中,最大窗口尺寸閾值控制著整個(gè)算法的迭代,當(dāng)窗口增大到大于窗口尺寸最大閾值時(shí),迭代停止,點(diǎn)云被分為地面點(diǎn)與非地面點(diǎn)2類。窗口閾值過大或過小,都會(huì)影響濾波精度,并且窗口大小一般為3、5、7、9……這樣的離散數(shù)列,當(dāng)設(shè)置的最大窗口閾值恰好不等于這些數(shù)時(shí),傳統(tǒng)漸進(jìn)形態(tài)學(xué)濾波算法將以小于該閾值的窗口大小進(jìn)行最后迭代,地面點(diǎn)就會(huì)殘存大量非地面點(diǎn)。鑒于上述問題,依據(jù)當(dāng)窗口達(dá)到最大建筑物尺寸時(shí),能最大程度的去除非地面點(diǎn),繼續(xù)增大窗口,本窗口下的地面點(diǎn)數(shù)將近乎不變的思想,對(duì)傳統(tǒng)算法進(jìn)行改進(jìn),根據(jù)前后2次迭代地面點(diǎn)比率大小來(lái)判斷迭代是否終止,免去最大窗口尺寸設(shè)置工作。具體步驟如下: (1) 原始點(diǎn)云預(yù)處理,剔除點(diǎn)云噪聲點(diǎn)與點(diǎn)云格網(wǎng)化。 (2) 進(jìn)行迭代,以較小窗口過濾點(diǎn)云數(shù)據(jù),統(tǒng)計(jì)迭代過后的地面點(diǎn)數(shù)量c1。 (3) 增加迭代次數(shù),以更大的窗口過濾點(diǎn)云數(shù)據(jù),統(tǒng)計(jì)此次迭代過后的地面點(diǎn)數(shù)量,記為c2。 為了驗(yàn)證迭代處理的效果,選取ISPRS提供的Samp12進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖2所示,在原始圖像2(a)中,黑色區(qū)域?yàn)榈孛纥c(diǎn)集,白色點(diǎn)云為建筑物、植被等非地面點(diǎn);圖像2(b)、圖像2(c)和圖像2(d)中,白色點(diǎn)云為地面點(diǎn),黑色區(qū)域?yàn)闉V除的非地面點(diǎn)。明顯看出圖像2(c)框內(nèi)存在未濾除的非地面點(diǎn),2(d)中框內(nèi)的部分地面點(diǎn)被錯(cuò)誤濾除,而依據(jù)迭代終止條件停止迭代的效果較好,從而說明在此次迭代停止是恰當(dāng)?shù)?即根據(jù)迭代終止條件而非最大窗口尺寸來(lái)判斷算法是否停止是有效的。 圖2 迭代處理濾波結(jié)果Fig.2 Iterative processing filtering results 如前所述,地面點(diǎn)網(wǎng)格中點(diǎn)的歸屬問題需進(jìn)一步討論。若地面點(diǎn)網(wǎng)格內(nèi)僅有一點(diǎn)落入,該點(diǎn)毫無(wú)疑問為地面點(diǎn),如若多個(gè)點(diǎn)落入同一地面點(diǎn)網(wǎng)格,除去最低點(diǎn),其余點(diǎn)應(yīng)根據(jù)判別條件進(jìn)行精確分類。通過坡度閾值來(lái)判別這類網(wǎng)格內(nèi)點(diǎn)的類別,以網(wǎng)格內(nèi)最低點(diǎn)為參考點(diǎn),計(jì)算參考點(diǎn)與該網(wǎng)格中其他點(diǎn)的坡度,認(rèn)為大于坡度閾值的為非地面點(diǎn)而小于坡度閾值的為地面點(diǎn)??紤]到同一屬性點(diǎn)云的空間連續(xù)性,相鄰?fù)瑢冱c(diǎn)間的坡度較小,坡度閾值ths可在0.8~1.2中取值,ths即為同一屬性相鄰點(diǎn)的最大坡度,不同屬性相鄰點(diǎn)的最小坡度,某點(diǎn)的坡度計(jì)算公式為 (1) 其中:x、y、z為某點(diǎn)的空間三維坐標(biāo);xmin、ymin、zmin為當(dāng)前網(wǎng)格中最低點(diǎn)坐標(biāo)。 利用ISPRS提供的Samp21數(shù)據(jù)驗(yàn)證坡度閾值設(shè)置效果,點(diǎn)云分類效果對(duì)比見圖3。圖3(a)為Samp21原始點(diǎn)云數(shù)據(jù),其中有橋梁、房屋、植被等非地面點(diǎn)云。圖3(b)框中懸浮點(diǎn)云應(yīng)為非地面點(diǎn)卻被誤判為地面點(diǎn),主要原因?yàn)樵撎廃c(diǎn)云密度較大,網(wǎng)格中往往存在多個(gè)激光點(diǎn),其中最低點(diǎn)為地面點(diǎn),其余點(diǎn)大部分為植被點(diǎn),未設(shè)置坡度閾值的傳統(tǒng)漸進(jìn)形態(tài)學(xué)濾波將這些點(diǎn)均視為地面點(diǎn)。而設(shè)置坡度閾值的改進(jìn)算法將這些點(diǎn)進(jìn)一步分類,濾除了非地面點(diǎn),濾波效果見圖3(c)。 為驗(yàn)證改進(jìn)算法對(duì)各種類型地物去除的有效性,使用ISPRS網(wǎng)站提供的LiDAR點(diǎn)云數(shù)據(jù)對(duì)該算法進(jìn)行測(cè)試,該網(wǎng)站提供了城市與鄉(xiāng)村點(diǎn)云數(shù)據(jù)各4景,并選取樣本進(jìn)行了人工判讀,點(diǎn)云被精確分為地面點(diǎn)與非地面點(diǎn)。研究選取了Samp12、Samp24、Samp31、Samp42、Samp52、Samp53以代表各類地物,并采用ISPRS提出的誤差評(píng)判標(biāo)準(zhǔn)對(duì)濾波結(jié)果定量分析,濾波誤差定義見表1。 圖3 點(diǎn)云分類效果對(duì)比Fig.3 Comparison of point cloud classification effect 表1 濾波誤差定義 在表1中,a為地面點(diǎn)被正確分類的個(gè)數(shù);b為地面點(diǎn)被誤判為非地面點(diǎn)的個(gè)數(shù);c為非地面點(diǎn)被誤判為地面點(diǎn)的個(gè)數(shù);d為非地面點(diǎn)被正確分類的個(gè)數(shù)。 統(tǒng)計(jì)上述Samp12、Samp24、Samp31、Samp42、Samp52、Samp53樣本的分類結(jié)果,計(jì)算各自第Ⅰ類誤差、第Ⅱ類誤差和總誤差,具體分析見表2,其中G表示地面點(diǎn);N表示非地面點(diǎn);E代表誤差大小。并將該算法的誤差與ISPRS提供的8種經(jīng)典點(diǎn)云濾波算法的誤差進(jìn)行比較,各種算法第Ⅰ類誤差、第Ⅱ類誤差和總誤差見圖4。 表2 濾波結(jié)果定量分析 由圖4可見,新算法在第Ⅰ類誤差和總誤差方面表現(xiàn)較好,與Axelsson算法和Pfeifer算法接近,而第Ⅱ類誤差較大,但3類誤差均在10%左右,具有較好的魯棒性。根據(jù)經(jīng)驗(yàn),被誤分為地面點(diǎn)的非地面點(diǎn)云往往高于真實(shí)地面點(diǎn)云,在后續(xù)處理中,可人工干預(yù)去除這種分類錯(cuò)誤,所以可適當(dāng)增加第Ⅱ類誤差以減少第Ⅰ類誤差。 研究在分析漸進(jìn)形態(tài)學(xué)濾波的基礎(chǔ)上,提出了一種不用設(shè)置最大窗口閾值的濾波方法,并進(jìn)一步對(duì)網(wǎng)格內(nèi)點(diǎn)云精確分類。該方法減少了參數(shù)的設(shè)置工作,不用根據(jù)不同的研究區(qū)域來(lái)設(shè)置不同的窗口閾值,具有一定的自適應(yīng)性,提高了濾波算法的自動(dòng)化程度,且通過去除地面點(diǎn)網(wǎng)格內(nèi)的懸浮地物點(diǎn),在一定程度上提高了點(diǎn)云分類精度,在第Ⅰ類誤差和總誤差方面精度較高,但第Ⅱ類誤差依然較大。在后續(xù)工作中,會(huì)嘗試通過改進(jìn)高差閾值進(jìn)一步減小第Ⅱ類分類誤差。2 改進(jìn)的漸進(jìn)形態(tài)學(xué)濾波
2.1 免預(yù)設(shè)最大窗口尺寸的迭代處理
2.2 網(wǎng)格內(nèi)點(diǎn)云精分類
3 實(shí)驗(yàn)結(jié)果與分析
3.1 實(shí)驗(yàn)數(shù)據(jù)與評(píng)判手段
3.2 濾波結(jié)果與定量分析
4 結(jié)論