亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Python編程的高程異常模型解析方法

        2024-10-10 00:00:00孫躍龍
        科技創(chuàng)新與應(yīng)用 2024年29期

        摘 要:該文主要介紹高程異常的概念以及解析高程異常模型的方法。首先解釋高程異常的定義和影響因素,然后詳細(xì)描述解析高程異常模型的過(guò)程,包括文件結(jié)構(gòu)和編碼方式。接著,該文介紹利用Python編程實(shí)現(xiàn)高程異常值獲取的方法,包括讀取文件信息和插值計(jì)算。最后,該文總結(jié)使用Python編程解析Trimble GGF高程異常模型的方法,并討論插值方法的優(yōu)劣以及擬合曲面的效果。

        關(guān)鍵詞:Python編程;高程異常;插值方法;文件結(jié)構(gòu);編碼方式

        中圖分類號(hào):P224 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):2095-2945(2024)29-0158-04

        Abstract: This paper mainly introduces the concept of elevation anomaly and the method of analyzing elevation anomaly model. Firstly, the definition and influencing factors of height anomaly are explained, and then the process of analyzing the height anomaly model is described in detail, including file structure and coding method. Then, the paper introduces the method of obtaining height outliers by Python programming, including reading file information and interpolation calculation. Finally, this paper summarizes the method of using Python programming to analyze Trimble GGF height anomaly model, and discusses the advantages and disadvantages of interpolation method and the effect of fitting surface.

        Keywords: Python programming; height anomaly; interpolation method; file structure; coding mode

        高程異常指的是某一地點(diǎn)的實(shí)際高程與該地點(diǎn)處預(yù)期的標(biāo)準(zhǔn)高程之間的差異。具體來(lái)說(shuō),它表示地球表面上某一點(diǎn)的高程值與在該位置處預(yù)期的高程值之間的偏差。這里的“實(shí)際高程”是通過(guò)地理測(cè)量或遙感技術(shù)獲取的地球表面高程數(shù)據(jù),而“預(yù)期的標(biāo)準(zhǔn)高程”通常是根據(jù)地球科學(xué)、地圖制圖或其他參考數(shù)據(jù)確定的理論或基準(zhǔn)值。高程異常可以由多種因素引起,包括地形變化、地質(zhì)構(gòu)造、地殼運(yùn)動(dòng)和大氣效應(yīng)等。

        高程異常模型常應(yīng)用于地球物理領(lǐng)域,在測(cè)繪學(xué)中,用于描述地球表面或地下的高程變化與地形特征之間的關(guān)系,高程異常模型的建立方法可以根據(jù)研究問(wèn)題和目的的不同以及數(shù)據(jù)來(lái)源的不同,常見(jiàn)的方法有:基于數(shù)字高程模型(DEM)建立,使用航測(cè)、衛(wèi)星遙感等技術(shù)獲得數(shù)字高程模型數(shù)據(jù),對(duì)這些數(shù)據(jù)進(jìn)行預(yù)處理,計(jì)算每個(gè)點(diǎn)的高程異常;基于地面測(cè)量數(shù)據(jù)的方法,根據(jù)實(shí)際測(cè)量的高程數(shù)據(jù),使用數(shù)學(xué)建模的方式建立高程異常模型,需要選擇適合的擬合函數(shù)來(lái)描述高程異常的變化趨勢(shì),選擇擬合函數(shù)時(shí)應(yīng)考慮數(shù)據(jù)的特點(diǎn)和擬合的目的,通常會(huì)根據(jù)經(jīng)驗(yàn)和實(shí)際情況進(jìn)行選擇,選定擬合函數(shù)后,通常通過(guò)最小二乘法來(lái)估計(jì)擬合函數(shù)的參數(shù),擬合函數(shù)和實(shí)際測(cè)量的高程數(shù)據(jù)進(jìn)行擬合運(yùn)算來(lái)獲得高程模型,建模后通過(guò)與實(shí)際地形特征進(jìn)行校對(duì),調(diào)整模型參數(shù)提高擬合的精度。

        在實(shí)際的測(cè)量應(yīng)用中,通過(guò)GNSS測(cè)量得到的是大地高,也就是參考橢球的橢球高,在實(shí)際應(yīng)用中,需要把大地高轉(zhuǎn)換成正常高,也就是海拔高,大地高和正常高之間的差值就是高程異常值。在地球科學(xué)和地理信息系統(tǒng)(GIS)領(lǐng)域,分析和建模高程異常有助于理解地球表面的地形特征、地質(zhì)變化以及其他與地形有關(guān)的環(huán)境因素。通過(guò)識(shí)別和量化高程異常,科學(xué)家和地理信息專業(yè)人員可以進(jìn)行更深入的地理空間分析,從而支持城市規(guī)劃、資源管理、環(huán)境監(jiān)測(cè)等應(yīng)用。本文結(jié)合筆者的實(shí)際應(yīng)用論述如何利用Python編程解析高程異常模型從而得到高程異常值的方法。

        1 高程異常模型的解析

        不同國(guó)家或地區(qū)采用的高程異常模型不盡相同,不同地區(qū)會(huì)采用和實(shí)際地形擬合最好的模型以獲取更精確的高程值。高程異常模型通常是一個(gè)二進(jìn)制的文件,二進(jìn)制文件是按照某種約定編制而成,不可直接獲得文件內(nèi)容。二進(jìn)制格式的高程異常文件,是一種用于存儲(chǔ)大規(guī)模地球表面高程數(shù)據(jù)的有效方式,特定的二進(jìn)制高程異常文件,要對(duì)其進(jìn)行解析和分析,通常需要查閱相關(guān)的文檔或規(guī)范,以了解文件的結(jié)構(gòu)和編碼方式。高程異常文件里存儲(chǔ)了某區(qū)域地球表面上不同位置的高程異常值。這些異常值以二進(jìn)制形式編碼的整數(shù)或浮點(diǎn)數(shù)存在,同時(shí)在高程異常文件里也存儲(chǔ)了某區(qū)域的坐標(biāo)范圍,以經(jīng)緯度坐標(biāo)表示。高程異常值格網(wǎng)在X軸和Y軸方向的步長(zhǎng),以及整個(gè)格網(wǎng)的行數(shù)和列數(shù)。通常情況下,以上提到的信息在高程異常文件中會(huì)從文件的某個(gè)字節(jié)開(kāi)始,然后依次能得到解析高程異常文件需要的信息。

        Trimble(天寶)是全球領(lǐng)先的測(cè)量設(shè)備、定位技術(shù)和軟件服務(wù)的公司,其設(shè)備和技術(shù)在很多領(lǐng)域得到廣泛應(yīng)用,因此本文以Trimble公司的GGF(Goid Grid File)文件為例論述如何通過(guò)Python編程解析高程異常模型。Trimble公司的Grid Factory工具可以生成GGF文件,可用于Trimble公司的TBC 軟件和測(cè)量手簿操作軟件TA等。通過(guò)查詢與分析這個(gè)文件,可以從這個(gè)二進(jìn)制文件中獲得需要解析高程異常模型的信息,從文件的第48個(gè)字節(jié)開(kāi)始,每讀取8個(gè)字節(jié),即讀入到一個(gè)雙精度浮點(diǎn)數(shù)(double型)的變量,從這里開(kāi)始可以分別獲得區(qū)域的最小緯度、最大緯度、最小經(jīng)度、最大經(jīng)度、X軸(經(jīng)度)方向的步長(zhǎng)、Y軸(緯度)方向的步長(zhǎng),即每隔多長(zhǎng)距離存儲(chǔ)高程異常值,接下來(lái)可以獲得高程異常文件格網(wǎng)的行數(shù)和列數(shù)。從第146個(gè)字節(jié)開(kāi)始,每讀取4個(gè)字節(jié),即讀入到一個(gè)浮點(diǎn)數(shù)(float型)的變量,可以獲得存儲(chǔ)的高程異常值。文件中存儲(chǔ)的高程異常值數(shù)量,即網(wǎng)格節(jié)點(diǎn)的個(gè)數(shù)可以通過(guò)行數(shù)和列數(shù)相乘獲得。通過(guò)以上分析,利用程序就可以解析出高程異常值文件。

        2 Python編程實(shí)現(xiàn)方法

        對(duì)高程異常模型進(jìn)行解析涉及到諸多數(shù)學(xué)運(yùn)算和數(shù)據(jù)分析,為了高效地分析高程異常模型,選用Python作為編程語(yǔ)言來(lái)實(shí)現(xiàn)。Python中有許多強(qiáng)大的庫(kù),涵蓋了各種領(lǐng)域,包括科學(xué)計(jì)算、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析等。利用Python struct庫(kù)可以解析讀取二進(jìn)制文件,用Scipy庫(kù)和Numpy庫(kù)進(jìn)行科學(xué)計(jì)算和數(shù)據(jù)分析[1],用Matplotlib庫(kù)進(jìn)行繪圖和交互式的圖表。本文利用以上提及的庫(kù)來(lái)進(jìn)行編程獲取高程異常值。

        對(duì)高程異常值文件進(jìn)行解析,獲得文章第一節(jié)提及的信息和各個(gè)格網(wǎng)點(diǎn)的高程異常值后,需要利用插值的方法來(lái)獲得需要求取的高程異常值。比較常用的插值方法有:基于距離加權(quán)插值法、雙線性內(nèi)插法、雙二次多項(xiàng)式插值等[2]。距離加權(quán)的插值法是把格網(wǎng)當(dāng)作孤立的區(qū)域,假如插值點(diǎn)分別屬于不同的格網(wǎng),就會(huì)出現(xiàn)畸變以及錯(cuò)開(kāi)的現(xiàn)象,這不符合真實(shí)的情況,因此該方法不適合作為插值的方法。雙線性內(nèi)插的方法是認(rèn)定已知點(diǎn)和插值點(diǎn)的高程異常變化是線性的,是建立在高程異常近似遵循線性變化基礎(chǔ)上的,這是一種近似和假設(shè)的情況,不適合當(dāng)作插值的方法。雙二次多項(xiàng)式插值能夠改善以上的2種方法[3],多項(xiàng)式插值是由高程異常擬合出平滑曲面,該曲面是由一個(gè)多項(xiàng)式函數(shù)定義。

        公式為

        f(x,y)=a+bx+cy+dx2+exy+fy2,

        式中:a、b、c、d、e、f是待定系數(shù),x、y是插值點(diǎn)坐標(biāo)。

        基于此,具體實(shí)現(xiàn)方法是在高程異常模型中,求取插值點(diǎn)周邊距離近的9個(gè)已知點(diǎn),對(duì)插值點(diǎn)進(jìn)行插值。編寫程序進(jìn)行插值運(yùn)算,比較繁瑣,應(yīng)用Python中的Scipy庫(kù)則可以簡(jiǎn)化這一過(guò)程。

        首先利用Python編程讀取高程異常文件中需要的有效信息,即區(qū)域范圍的坐標(biāo),格網(wǎng)步長(zhǎng),格網(wǎng)的行和列數(shù),高程異常值等。代碼如圖1所示。

        根據(jù)步長(zhǎng)以及起始的經(jīng)緯度坐標(biāo),求取得到X軸和Y軸,X軸和Y軸上的每個(gè)坐標(biāo)對(duì)應(yīng)的網(wǎng)格節(jié)點(diǎn)的高程異常值,調(diào)用Scipy庫(kù)的內(nèi)插函數(shù)就能求取插值點(diǎn)的高程異常值。如圖2所示。

        其中kind的內(nèi)插類型可以是線性,曲面內(nèi)插,曲面內(nèi)插有Cubic和Quintic兩種,后者擬合的曲面比較平滑,這里選擇這種類型。求取距離近的9個(gè)點(diǎn),可以得到插值點(diǎn)周邊擬合的曲面,同時(shí)得到目標(biāo)點(diǎn)的高程異常值,如圖3所示。

        利用Python編程可以得到高程異常模型文件里的各個(gè)節(jié)點(diǎn)的高程異常值,圖4展示的是X軸和Y軸以及對(duì)應(yīng)的部分節(jié)點(diǎn)的高程異常值。

        當(dāng)插值點(diǎn)位于格網(wǎng)垂直剖面曲線的拐點(diǎn)時(shí),與它距離近的格網(wǎng)點(diǎn)并不唯一,因此插值曲面會(huì)有錯(cuò)開(kāi)的現(xiàn)象。原始的高程異常文件是0.05度為步長(zhǎng),可以利用雙二次多項(xiàng)式插值方法內(nèi)插得到1分為步長(zhǎng)的擬合曲面,再基于此進(jìn)行內(nèi)插,就會(huì)有效避免這種情況。

        根據(jù)1分步長(zhǎng)得到高程異常值,最終得到整個(gè)地區(qū)的擬合曲面如圖5所示。

        3 結(jié)束語(yǔ)

        本文提出了基于Trimble公司的GGF高程異常模型利用Python編程解析的方法,論述了幾種插值方法的優(yōu)劣,應(yīng)用雙二次多項(xiàng)式內(nèi)插的方法擬合曲面,結(jié)合Python科學(xué)計(jì)算和數(shù)據(jù)分析庫(kù),得到插值點(diǎn)的高程異常值。同時(shí)為分析其他高程異常模型提供了編程思路和方法,也為進(jìn)一步編程應(yīng)用高程異常模型提供了基礎(chǔ)。通過(guò)本文的介紹,了解了高程異常模型文件的解析思路以及利用Python編程進(jìn)行實(shí)現(xiàn)的具體步驟,通過(guò)Python編程,能夠更高效地解析高程異常模型并進(jìn)行數(shù)據(jù)處理,從而為地理空間分析提供更加準(zhǔn)確和可靠的數(shù)據(jù)支持。希望本文能夠?yàn)橄嚓P(guān)領(lǐng)域的研究和應(yīng)用提供一定的幫助和指導(dǎo)。

        參考文獻(xiàn):

        [1] 侯中言.多源空間數(shù)據(jù)支持下新式茶飲門店選址研究——以廣東省深圳市為例[D].贛州:江西理工大學(xué),2021.

        [2] 肖峰,李斐,張勝凱,等.聯(lián)合CryoSat-2測(cè)高數(shù)據(jù)和地面高程數(shù)據(jù)建立東南極拉斯曼丘陵地區(qū)DEM[J].武漢大學(xué)學(xué)報(bào)(信息科學(xué)版),2017,42(10):1417-1422.

        [3] 鄧興升,郭云開(kāi),花向紅.似大地水準(zhǔn)面格網(wǎng)雙二次多項(xiàng)式插值方法[J].測(cè)繪學(xué)報(bào),2009,38(1):35-40.

        一本色道久久综合亚洲精品不| 蜜桃视频一区二区在线观看| 9久久婷婷国产综合精品性色| 九九在线中文字幕无码| 亚洲av无码久久精品狠狠爱浪潮 | av在线播放中文专区| 国产片在线一区二区三区| 无码人妻精品中文字幕| 无码乱人伦一区二区亚洲一| 婷婷丁香社区| 91精品国产无码在线观看| 免费人成黄页网站在线观看国内| 小黄片免费在线播放观看| 日韩精品中文字幕一区二区| 厨房人妻hd中文字幕| 亚洲乱码国产乱码精品精| 国产md视频一区二区三区| 久久精品国产亚洲av四虎| 5级做人爱c视版免费视频| 亚洲一码二码在线观看| 全亚洲最大的私人影剧院在线看| 伊人久久大香线蕉av五月| 男人边做边吃奶头视频| 麻豆果冻传媒在线观看| 伊人久久大香线蕉在观看| 另类人妖在线观看一区二区| 国产一区二区在线中文字幕| 蜜桃18禁成人午夜免费网站| 国产网红主播无码精品| 国内少妇偷人精品视频免费| 亚洲av噜噜狠狠蜜桃| 日韩免费精品在线观看| av无码国产在线看免费网站| 天天做天天爱天天综合网2021| 无套内射蜜桃小视频| 国产成人精品日本亚洲18| 日本一级淫片免费啪啪| 精品久久中文字幕系列| 2019日韩中文字幕mv| 99久久免费精品高清特色大片| 美腿丝袜一区二区三区|