王海君,許捍衛(wèi),金文韜
(1.河海大學(xué) 地球科學(xué)與工程學(xué)院,江蘇 南京 211100)
基于不同地形LiDAR點(diǎn)云數(shù)據(jù)的最優(yōu)壓縮方法
王海君1,許捍衛(wèi)1,金文韜1
(1.河海大學(xué) 地球科學(xué)與工程學(xué)院,江蘇 南京 211100)
針對(duì)不同地形求解LiDAR點(diǎn)云數(shù)據(jù)在各種插值算法下不同比例尺允許的標(biāo)準(zhǔn)差內(nèi)的最佳壓縮率,以便提高數(shù)據(jù)處理的速率,為方便LiDAR數(shù)據(jù)的處理提供一種簡(jiǎn)便快捷的壓縮方法。介紹了基于ArcGIS軟件本源的最佳壓縮方法、基于Python的點(diǎn)的坡度差的壓縮方法和基于Python的坡度法向壓縮方法。
最佳壓縮率;地形插值;標(biāo)準(zhǔn)差;坡度差;坡度法向量
本文介紹了基于IDW、NaturalNeighbor、Kriging、Spline地形插值算法下,不同比例尺的LiDAR點(diǎn)云數(shù)據(jù)的最佳壓縮方法[7]。主要運(yùn)用的是ArcGIS本身的運(yùn)算方法,同時(shí)還介紹基于Python的數(shù)據(jù)點(diǎn)處坡度差的壓縮算法和基于Python的坡度法向壓縮算法。本次實(shí)驗(yàn)的技術(shù)路線如圖1所示。
圖1 技術(shù)路線圖
由于獲取的LiDAR數(shù)據(jù)是LAS格式,因此需要進(jìn)行數(shù)據(jù)轉(zhuǎn)換,可運(yùn)用自定義數(shù)據(jù)轉(zhuǎn)換工具將LAS格式數(shù)據(jù)轉(zhuǎn)換成為shp矢量點(diǎn)數(shù)據(jù)[9]。
激光掃描儀的工作原理是激光碰到阻礙物時(shí)就會(huì)返回波,獲取的地物高程并不是該地的實(shí)際高程,而是該處實(shí)際高程與地面植被高之和,直接使用會(huì)出現(xiàn)誤差,因此需要對(duì)數(shù)據(jù)進(jìn)行濾波處理[2],減少用此數(shù)據(jù)構(gòu)建DEM時(shí)對(duì)精度產(chǎn)生的影響。
將濾波完成后的shp點(diǎn)數(shù)據(jù)進(jìn)行地形分類。此處采用的是按照坡度大小的方式進(jìn)行分類,通過數(shù)據(jù)點(diǎn)構(gòu)建TIN,提取三角面的坡度。根據(jù)基于坡度的地形分類標(biāo)準(zhǔn),地形可分為平地地形、丘陵地形、山地地形、高山地形4大類,每類地形的坡度是不同的,按照坡度進(jìn)行地形分類的標(biāo)準(zhǔn)如表1所示。
表1 不同地形坡度比較
按照上表將LiDAR點(diǎn)云數(shù)據(jù)進(jìn)行分類,分類后的數(shù)據(jù)分別導(dǎo)出保存,以便后續(xù)操作處理。
根據(jù)插值情況的優(yōu)劣可采用中誤差(RMES)或者標(biāo)準(zhǔn)差(STD)來進(jìn)行檢驗(yàn)[5],本文采用標(biāo)準(zhǔn)差(STD)來進(jìn)行檢驗(yàn),具體標(biāo)準(zhǔn)如表2、3所示。
表2 不同比例尺的格網(wǎng)尺寸值
表3 不同比例尺不同地形的高程標(biāo)準(zhǔn)差
2.1 檢查點(diǎn)獲取
對(duì)不同比率的壓縮數(shù)據(jù)插值時(shí),需要對(duì)插值結(jié)果進(jìn)行檢驗(yàn),因此需要提前選取檢查點(diǎn)。檢查點(diǎn)的選取應(yīng)具有代表性且分布均勻。為了滿足這一要求,可以采用標(biāo)準(zhǔn)格網(wǎng)法采點(diǎn)[1],即按照數(shù)據(jù)的范圍劃分網(wǎng)格,從每個(gè)網(wǎng)格中選取最靠近網(wǎng)格中心點(diǎn)的數(shù)據(jù)點(diǎn)作為檢查點(diǎn)。該方法在保證均勻分布的同時(shí)也選擇了各種代表類型的點(diǎn)。檢查點(diǎn)的選取時(shí)還要考慮數(shù)量問題,數(shù)據(jù)點(diǎn)選取太少會(huì)出現(xiàn)很大的偶然性,選取太多又會(huì)降低存儲(chǔ)和操作效率。檢查點(diǎn)的選取還要考慮源數(shù)據(jù)的數(shù)量以及該范圍內(nèi)的地形狀況,比如相同數(shù)據(jù)量的平地和丘陵在選取檢查點(diǎn)時(shí)個(gè)數(shù)就會(huì)不同,明顯丘陵地形的檢查點(diǎn)數(shù)量要大于平地地形的檢查點(diǎn)數(shù)量。
2.2 數(shù)據(jù)壓縮
2.2.1 基于ArcGIS本源的壓縮算法
數(shù)據(jù)的壓縮就是按照需求按比例提取數(shù)據(jù)點(diǎn),實(shí)現(xiàn)提高操作效率的效果?;贏rcGIS本源的數(shù)據(jù)壓縮方法的具體做法是:①從源數(shù)據(jù)中剔除檢查點(diǎn),對(duì)于插值的檢核就是求檢查點(diǎn)位置的實(shí)際高程與插值后得到的高程的標(biāo)準(zhǔn)差(STD),因此必須事先將檢查點(diǎn)處的數(shù)據(jù)點(diǎn)剔除,以減少真實(shí)點(diǎn)數(shù)據(jù)的影響[7]??梢圆捎肁rcGIS中select by location工具一次性選取檢查點(diǎn)并將其刪除。特殊地形要保證特征點(diǎn)的存在,如山地的山脊線、山谷線上的點(diǎn)。②構(gòu)建TIN,將剔除檢查點(diǎn)之后的數(shù)據(jù)構(gòu)建TIN。③按比例壓縮TIN,采用Decimate TIN Node 對(duì)構(gòu)成TIN的結(jié)點(diǎn)進(jìn)行壓縮,在設(shè)置最大的結(jié)點(diǎn)數(shù)和容差值時(shí),可根據(jù)實(shí)際的需求設(shè)置參數(shù)。④提取TIN Node,提取壓縮后TIN的結(jié)點(diǎn),提取后的結(jié)點(diǎn)數(shù)量大多數(shù)情況下與設(shè)置的最大結(jié)點(diǎn)數(shù)量之間存在數(shù)量差,實(shí)際提取的節(jié)點(diǎn)數(shù)量小于設(shè)置的最大結(jié)點(diǎn)數(shù),這些數(shù)據(jù)將作為插值的數(shù)據(jù)源。
2.2.2 基于Python的坡度差以及法向壓縮算法
1)數(shù)據(jù)壓縮還可以根據(jù)該點(diǎn)處構(gòu)成TIN三角面的坡度差進(jìn)行壓縮[6],具體做法是:①從源數(shù)據(jù)中剔除檢查點(diǎn);②構(gòu)建TIN,提取TIN node和TIN triangle;③將node和triangle的Tab表建立special join鏈接,獲得一個(gè)點(diǎn)和面的關(guān)系表;④求取與點(diǎn)相關(guān)聯(lián)的面的坡度最大值與最小值之差,運(yùn)用自定義Python程序獲取與點(diǎn)相關(guān)的面的坡度最大值與最小值,并計(jì)算二者的坡度差,將其自動(dòng)添加到node數(shù)據(jù)Tab表中;⑤將node數(shù)據(jù)Tab表中的數(shù)據(jù)按其坡度差從大到小進(jìn)行排序,排序后的數(shù)據(jù)按比例進(jìn)行數(shù)據(jù)壓縮提取。
基于坡度差的數(shù)據(jù)壓縮方法存在一定弊端,即當(dāng)數(shù)據(jù)地形起伏變化快時(shí),選取的點(diǎn)不具有代表性,而且數(shù)據(jù)的均勻性也不能很好地得到保障,但是當(dāng)?shù)匦巫兓r(shí),該方法比基于ArcGIS軟件的壓縮方法更為有效。
2)數(shù)據(jù)壓縮還可以根據(jù)該點(diǎn)處構(gòu)成的TIN三角面的法向進(jìn)行壓縮,具體做法跟基于坡度差的算法相似,不同點(diǎn)在于基于坡度法向的壓縮時(shí)根據(jù)數(shù)據(jù)點(diǎn)處各坡面坡度法向的差進(jìn)行排序后,按照比例選取壓縮后的點(diǎn)。
2.3 數(shù)據(jù)點(diǎn)插值
數(shù)據(jù)插值主要根據(jù)插值方法以及比例尺進(jìn)行插值變量的設(shè)置,主要的做法如下:
1)選擇插值方法。選擇合適壓縮比例的點(diǎn),在不知道地形情況下可以從50%壓縮比例開始,按照選擇的比例尺設(shè)置參數(shù)。不同比例尺的插值做法是相同的,不同點(diǎn)是Output cell size的設(shè)置,這個(gè)主要根據(jù)不同比例尺的格網(wǎng)尺寸值設(shè)置。
2)基于檢查點(diǎn)位置高程值的提取。數(shù)據(jù)插值完成后需要提取檢查點(diǎn)位置處的插值高程,運(yùn)用ArcGIS的Extract Multi Values to Points工具提取插值高程,這樣在檢查點(diǎn)的Tab表中就會(huì)出現(xiàn)每個(gè)檢查點(diǎn)的插值高程。
3)標(biāo)準(zhǔn)差計(jì)算(STD)[4]。在檢查表中添加new field,運(yùn)用Field Caculator計(jì)算實(shí)際高程與插值后所得高程之差,再通過Summary Statistics功能計(jì)算二者的標(biāo)準(zhǔn)差(STD)。
4)將所得的標(biāo)準(zhǔn)差與該比例尺下此地形允許的標(biāo)準(zhǔn)差最大值進(jìn)行對(duì)比。若允許值比該值大則選用壓縮力度更大的壓縮點(diǎn)進(jìn)行插值比較,反之則選用壓縮力度小一點(diǎn)的壓縮點(diǎn)進(jìn)行差值。如此循環(huán)直到找到最佳壓縮率。
5)換用不同的比例尺或地形重復(fù)上述步驟,這樣就會(huì)得到不同地形不同比例尺不同插值方法下的最佳壓縮率。
經(jīng)過上述插值分析,本次實(shí)驗(yàn)以丘陵和平地為例分別根據(jù)IDW、NaturalNeighbor、Kriging、Spline算法對(duì)數(shù)據(jù)進(jìn)行最佳壓縮率求解,基于ArcGIS軟件的壓縮得到的結(jié)果見表4、5。
根據(jù)以上插值結(jié)果可以看出不同的地形壓縮率會(huì)出現(xiàn)很大的差距,平地在各種比例尺、各種插值方法下的最佳壓縮率均遠(yuǎn)小于丘陵地形。主要原因是平地地形的高程變化小,所以在插值點(diǎn)較少的情況下就可以實(shí)現(xiàn)對(duì)平地較為精確的插值;而丘陵地形的高程會(huì)出現(xiàn)不同程度上的起伏變化,使用少量的點(diǎn)插值會(huì)出現(xiàn)標(biāo)準(zhǔn)差(STD)較大的現(xiàn)象。
表4 丘陵地形不同比例尺不同插值方法的最佳壓縮率
表5 平地地形不同比例尺不同插值方法的最佳壓縮率
從丘陵地形的最佳壓縮率來看,相同插值算法下在不同比例尺的最優(yōu)壓縮率是有差異的。一般而言,比例尺越大,數(shù)據(jù)的可壓縮性越小,比例尺越小,數(shù)據(jù)的可壓縮性越大。就插值算法而言,NaturalNeighbor算法比較適合丘陵地帶的插值。IDW插值方法的壓縮率較差,因此IDW方法不適合丘陵地帶的插值。
從平地地形的最佳壓縮率來看,在各種比例尺和不同的插值方法下最佳壓縮率是相同的,主要的原因是當(dāng)TIN結(jié)點(diǎn)壓縮達(dá)到一定的值之后,就會(huì)出現(xiàn)極限結(jié)點(diǎn)數(shù),即最佳壓縮率。由于平地地形高程變化不大,插值點(diǎn)可以在較少的情況下進(jìn)行,所以會(huì)出現(xiàn)最佳壓縮率相同的情況。但從表5中可以看出大多情況下在相同壓縮率下比例尺大的標(biāo)準(zhǔn)差相對(duì)較小,相同的比例尺下Kriging插值標(biāo)準(zhǔn)差較小,而Spline插值標(biāo)準(zhǔn)差最大,但是都遠(yuǎn)遠(yuǎn)小于平地在各比例尺下的最大允許標(biāo)準(zhǔn)差值。
基于坡度差的壓縮算法在平地地形的最佳壓縮率可以達(dá)到0.01%,其效果要優(yōu)于基于ArcGIS軟件本源的壓縮方法,但丘陵地形的壓縮率IDW插值方法最佳壓縮率要在70%左右,其他插值方法的最佳壓縮率接近50%,因此在對(duì)平坦地形進(jìn)行壓縮時(shí)采用基于坡度差的壓縮方法效果較為顯著,地形起伏較大時(shí)采用ArcGIS軟件本源算法效果較好。
基于對(duì)ArcGIS地形插值的最優(yōu)壓縮方法在不同地形的最佳壓縮率有很大差距,平坦地形的最佳壓縮率明顯優(yōu)于高程差距較大的丘陵地形;除平地地形外,一般情況下相同地形、同種插值方法下不同比例尺的最佳壓縮率是不同的,平地地形在最佳壓縮率相同時(shí),不同比例尺的標(biāo)準(zhǔn)差(STD)也不同[3];基于ArcGIS本源的壓縮方法下數(shù)據(jù)點(diǎn)的壓縮會(huì)達(dá)到極限值,之后數(shù)據(jù)進(jìn)行更大程度的壓縮時(shí),結(jié)點(diǎn)的值將不再減少即壓縮率不再變化,因此,要根據(jù)不同的地形特征選擇最為合適的壓縮方法。
[1] 劉磊,張建霞,鄭作亞. LiDAR點(diǎn)云數(shù)據(jù)的柵格化重心壓縮方法[J].測(cè)繪科學(xué),2011,1(1): 90-91
[2] 周梅,鄧云凱,張志敏,等.合成孔徑雷達(dá)數(shù)據(jù)壓縮算法性能分析[J].現(xiàn)代雷達(dá),2009,11(3):44-48
[3] 劉峰,譚暢.機(jī)載LiDAR生成DEM的一些關(guān)鍵問題評(píng)述[J].中國農(nóng)學(xué)通報(bào),2013,29(1):202-206
[4] 郭寶峰,楊樹元.基于樣條插值預(yù)測(cè)的小波圖像壓縮方法[J].微計(jì)算機(jī)應(yīng)用,2000,7(2):194-198
[5] 張宏,溫永寧,劉愛利,等.地里信息系統(tǒng)算法基礎(chǔ)[M].北京:科學(xué)出版社,2006
[6] 劉學(xué)軍,王葉飛,曹志東,等.基于DEM的坡度坡向誤差空間分布特征研究[J].測(cè)繪通報(bào),2005,12(1):11-13
[7] 楊玲,劉春,吳杭彬,等.顧及矢量特征的機(jī)載LiDAR點(diǎn)云數(shù)據(jù)壓縮方法[J].地理與地理信息科學(xué),2009,25(4):25-27
[8] 王晞.DEM內(nèi)插算法與精度評(píng)定研究[J].現(xiàn)代測(cè)繪,2013,9(3): 21-23
[9] 張明希,許捍衛(wèi),于艷超,等.基于Python的多波束測(cè)深數(shù)據(jù)壓縮研究[J].地理空間信息,2014,4(1):117-119
P231
B
1672-4623(2016)10-0019-03
10.3969/j.issn.1672-4623.2016.10.005
王海君,碩士研究生,主要研究方向?yàn)榈乩硇畔⑾到y(tǒng)開發(fā)與應(yīng)用。
2015-07-28。
項(xiàng)目來源:國家自然科學(xué)基金資助項(xiàng)目(41101374 、41101374);水利部公益性行業(yè)科研專項(xiàng)經(jīng)費(fèi)資助項(xiàng)目(201201025、201201025)。