版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 南陽師范學(xué)院20XX屆畢業(yè)生</p><p><b> 畢業(yè)論文(設(shè)計(jì))</b></p><p> 題 目: 基于移動(dòng)曲面擬合的DEM粗差探測(cè)算法 </p><p> 完 成 人: </p><p> 班
2、 級(jí): </p><p> 學(xué) 制: </p><p> 專 業(yè): 測(cè)繪工程 </p><p> 指導(dǎo)教師:
3、 </p><p> 完成日期: </p><p><b> 目 錄</b></p><p><b> 摘要(1)</b></p><p><b&
4、gt; 1 緒論(1)</b></p><p> 1.1 DEM的研究現(xiàn)狀(1)</p><p> 1.1.1 地形的表達(dá)(1)</p><p> 1.1.2 數(shù)字地形的表達(dá)(2)</p><p> 1.1.3 DEM的主要研究領(lǐng)域(3)</p><p> 1.2 論文研究的基本思路
5、(3)</p><p> 2 DEM粗差探測(cè)方法研究(4)</p><p> 3 基于移動(dòng)曲面擬合的DEM粗差探測(cè)算法(4)</p><p> 3.1 移動(dòng)曲面移動(dòng)擬合法剔除DEM粗差的原理(4)</p><p> 3.2 程序設(shè)計(jì)(6)</p><p> 3.2.1 系統(tǒng)框架(6)</p&g
6、t;<p> 3.2.2 詳細(xì)程序(6)</p><p> 4 實(shí)驗(yàn)分析(13)</p><p><b> 5 結(jié)論(14)</b></p><p><b> 參考文獻(xiàn)(15)</b></p><p> Abstract (15)</p><p&
7、gt; 基于移動(dòng)曲面擬合的DEM粗差探測(cè)算法</p><p> 摘要:數(shù)字高程模型作為地理信息系統(tǒng)的主要數(shù)據(jù)來源,它的數(shù)據(jù)質(zhì)量問題成為人們關(guān)注的焦點(diǎn)。對(duì)于任何一個(gè)DEM項(xiàng)目,精度都是最重要的因素。粗差的存在會(huì)造成數(shù)字高程模型(DEM)空間上的嚴(yán)重扭曲,有時(shí)能導(dǎo)致DEM及其產(chǎn)品嚴(yán)重失真,甚至完全不能使用。本文在對(duì)現(xiàn)有的粗差探測(cè)算法分析的基礎(chǔ)上,提出了基于移動(dòng)曲面擬合的DEM粗差探測(cè)算法,編輯相應(yīng)的程序來處理DE
8、M數(shù)據(jù),并采用實(shí)測(cè)的若干數(shù)據(jù)DEM數(shù)據(jù)對(duì)該算法進(jìn)行檢驗(yàn),試驗(yàn)結(jié)果證實(shí),該算法對(duì)DEM粗差的探測(cè)有效實(shí)用,證明該算法的可行性。</p><p> 關(guān)鍵詞:移動(dòng)曲面擬合;數(shù)字高程模型;粗差檢測(cè)</p><p><b> 1 緒論</b></p><p> 1.1 DEM的研究現(xiàn)狀</p><p> 數(shù)字高程模型(Di
9、gital Elevation Model),簡(jiǎn)稱DEM。它是用一組有序數(shù)值陣列形式表示地面高程的一種實(shí)體地面模型,是數(shù)字地形模型(Digital Terrain Model,簡(jiǎn)稱DTM)的一個(gè)分支,其它各種地形特征值均可由此派生。一般認(rèn)為,DTM是描述包括高程在內(nèi)的各種地貌因子,如坡度、坡向、坡度變化率等因子 在內(nèi)的線性和非線性組合的空間分布,其中DEM是零階單純的單項(xiàng)數(shù)字地貌模型,其他如坡度、坡向及坡度變化率等地貌特性可在DEM的基
10、礎(chǔ)上派生[1]。</p><p> 1.1.1 地形的表達(dá) 早期由于測(cè)量知識(shí)的缺乏,對(duì)地形表面形態(tài)的描述主要采用象形繪圖方法進(jìn)行,例如山體用巖石堆符號(hào)表達(dá),山體范圍用一系列的“魚鱗”符號(hào)或類似的錐形符號(hào)。</p><p> 十七世紀(jì)以后,人們逐步意識(shí)到地面起伏變化對(duì)氣溫、植被、環(huán)境等的深刻影響,先后出現(xiàn)了透視寫景圖、暈滃法、斜視區(qū)域圖、地貌寫景圖、地貌形態(tài)圖、地貌單元圖等。<
11、;/p><p> 十八世紀(jì),測(cè)繪技術(shù)的發(fā)展使高程數(shù)據(jù)和平面位置數(shù)據(jù)的獲取成為現(xiàn)實(shí),對(duì)地形的表達(dá)也由寫景式的定性表達(dá)逐步過渡到以等高線為主的量化表達(dá)。在等高線地形圖上,地形起伏、地物等的描述不再是象形符號(hào)、色彩或明暗的變化,而是正交地投影在水平面上,相鄰高程相等的點(diǎn)連接而成的閉合曲線表示地形起伏特征和形態(tài)結(jié)構(gòu),線劃符號(hào)表示按比例縮小的地物。</p><p> 與各種線劃圖形相比,用影像記錄景
12、觀現(xiàn)象無疑具有更大的優(yōu)點(diǎn),如地形特征表達(dá)細(xì)節(jié)豐富、直觀逼真、圖形獲取快速等,因此攝影技術(shù)一經(jīng)出現(xiàn)就被廣泛的用來記錄豐富多彩、千姿百態(tài)的自然景觀現(xiàn)象。航空攝影測(cè)量技術(shù)的出現(xiàn),使得影像數(shù)據(jù)獲取在周期、覆蓋面、應(yīng)用范圍等方面大幅度提高。</p><p> 1.1.2 數(shù)字地形的表達(dá)</p><p> 二十世紀(jì)六十年代以后,空間技術(shù)、通訊技術(shù)等的迅速發(fā)展,在航空攝影測(cè)量、航空地質(zhì)探礦、航空像片
13、判讀應(yīng)用發(fā)展的基礎(chǔ)上誕生了遙感科學(xué)技術(shù)。伴隨著70年代美國(guó)地球資源衛(wèi)星(Land Sat)的升空,攝影測(cè)量從航空發(fā)展到航天,遙感技術(shù)獲得極為廣泛的應(yīng)用。</p><p> 1958年Miller教授對(duì)計(jì)算機(jī)和攝影測(cè)量技術(shù)的結(jié)合在計(jì)算機(jī)輔助道路設(shè)計(jì)方面進(jìn)行了試驗(yàn),量取了設(shè)計(jì)道路兩側(cè)大量的地形點(diǎn)三位空間坐標(biāo),由計(jì)算機(jī)取代人進(jìn)行土方計(jì)算、方案比選等,成功地解決了道路工程計(jì)算機(jī)輔助設(shè)計(jì)問題。證明了用計(jì)算機(jī)進(jìn)行地形表達(dá)的
14、可行性、巨大應(yīng)用潛力和經(jīng)濟(jì)效益。提出了Digital terrain model—DTM,數(shù)字地面模型,隨后在測(cè)繪、遙感、農(nóng)林、土木工程、軍事、地學(xué)分析等領(lǐng)域得到廣泛深入地研究。從此,地形表達(dá)從模擬時(shí)代走向數(shù)字時(shí)代。</p><p> 1.1.3 DEM的主要研究領(lǐng)域</p><p> 地形數(shù)據(jù)采樣。建立DEM的基礎(chǔ)是地形高程數(shù)據(jù),因此地形數(shù)據(jù)獲取是數(shù)字高程模型的首要環(huán)節(jié)。地形數(shù)據(jù)的分
15、布、密度和精度對(duì)數(shù)字高程模型的質(zhì)量有著非常重要的影響。數(shù)據(jù)采樣策略、高精度快速數(shù)據(jù)采樣技術(shù)等一直是DEM數(shù)據(jù)采樣的主要研究議題之一。</p><p> 地形建模與內(nèi)插。DEM是對(duì)地形表面的數(shù)字化表示,其建立過程實(shí)際上是一種數(shù)學(xué)建模過程,也就是說地形表面被一組相互組織在一起的地形采樣點(diǎn)所表達(dá),如果需要該數(shù)學(xué)表面上其它位置處的高程值,可應(yīng)用一種內(nèi)插方法來進(jìn)行處理。高度逼真、多尺度地形建模技術(shù)和快速高效的內(nèi)插算法是數(shù)
16、字高程模型永恒的主題[2]。</p><p> 數(shù)據(jù)組織與管理。DEM是按一定結(jié)構(gòu)組織在一起的地形數(shù)據(jù),數(shù)據(jù)結(jié)構(gòu)的好壞直接涉及DEM對(duì)地形的重建精度。對(duì)于大規(guī)模的地形數(shù)據(jù),需要通過數(shù)據(jù)庫(kù)進(jìn)行管理,數(shù)據(jù)庫(kù)管理技術(shù)和空間索引技術(shù)是高效的數(shù)據(jù)查詢、數(shù)據(jù)瀏覽、無縫漫游等的技術(shù)保證。</p><p> 地形分析與地學(xué)應(yīng)用。DEM的應(yīng)用主要包括兩個(gè)部分,即基本應(yīng)用和地學(xué)分</p>&
17、lt;p> 析應(yīng)用?;緫?yīng)用主要是在DEM上實(shí)現(xiàn)等高線地形圖上的地形分析功能,如高程內(nèi)插、坡度坡向計(jì)算、土方計(jì)算、地形結(jié)構(gòu)識(shí)別等;地學(xué)分析應(yīng)用與具體學(xué)科相聯(lián)系,主要研究基于DEM的地學(xué)模型、地學(xué)過程模擬等內(nèi)容[3]。</p><p> DEM可視化。實(shí)現(xiàn)以多種方式如等高線、暈渲圖、線框透視、動(dòng)畫等在不同層面上對(duì)地形進(jìn)行表達(dá)、觀察和瀏覽。 不確定性分析和表達(dá)。數(shù)字高程模型的精度對(duì)DEM的生產(chǎn)者和使
18、用者都具有十分重要的意義。DEM精度研究包括DEM數(shù)據(jù)源精度、數(shù)據(jù)內(nèi)插精度、數(shù)據(jù)模型精度、各種誤差在DEM數(shù)據(jù)操作過程中的傳播問題以及DEM數(shù)據(jù)生產(chǎn)中的質(zhì)量控制策略等[4]。 </p><p> 1.2 研究的基本思路</p><p> DEM粗差探測(cè)算法有很多種,本文通過借鑒基于趨勢(shì)面的粗差探測(cè)方法,基于坡度信息的粗差探測(cè)方法,可視化探測(cè)算法,基于等高線拓?fù)潢P(guān)系的粗差探測(cè)算法, 基于
19、主成分分析的粗差檢測(cè),從而提出了基于移動(dòng)曲面擬合的DEM粗差探測(cè)算法。通過分析他們彼此優(yōu)缺點(diǎn),來分析該算法的精確性。這種算法需要用到VB軟件,利用VB軟件來編輯移動(dòng)曲面擬合法內(nèi)插程序。通過程序來計(jì)算數(shù)據(jù)和處理數(shù)據(jù)。得到的結(jié)果僅僅是理論數(shù)據(jù),需要用實(shí)際外業(yè)實(shí)驗(yàn)來驗(yàn)證該算法得到的數(shù)據(jù)的精確度,從而通過兩者比較得知該算法是否可行。</p><p> 2 DEM粗差探測(cè)方法研究</p><p>
20、 傳統(tǒng)的的粗差處理都是基于評(píng)查原理的,如果不存在平差問題,也就不能在平差過程中對(duì)粗差進(jìn)行自動(dòng)定位。因此,要檢測(cè)DEM數(shù)據(jù)中的錯(cuò)誤,要進(jìn)行妥善的處理,而不能簡(jiǎn)單借用一般的平差方法;同時(shí)僅僅分析單個(gè)的獨(dú)立數(shù)據(jù)也是不夠的,只有從整體或局部對(duì)數(shù)據(jù)進(jìn)行分析處理才能解決問題[5]。</p><p><b> 2.1常見普通算法</b></p><p> 基于趨勢(shì)面的粗差探測(cè)
21、方法。按照自然地形地貌的成因,絕大多數(shù)自然地形表面符合一定的自然趨勢(shì),表現(xiàn)為連續(xù)的空間漸變模型,并且這種變化可以用一種光滑的數(shù)字曲面來描述。對(duì)粗差的檢測(cè),可以通過模型誤差即實(shí)際觀測(cè)值與趨勢(shì)面計(jì)算值之差來判定其是否屬于異常數(shù)據(jù)。由此可見,可以采用趨勢(shì)面分析找出偏離總趨勢(shì)的一些可以數(shù)據(jù),從而把問題局部化、簡(jiǎn)單化。但是,趨勢(shì)面分析的一個(gè)缺點(diǎn)就是盡管可以找出可疑數(shù)據(jù),但是不能確定數(shù)據(jù)是否是粗差。</p><p> 基于
22、坡度信息的粗差探測(cè)方法。由于坡度是地表面的一個(gè)基礎(chǔ)屬性,因此,可以利用坡度的連續(xù)性喝一致性檢測(cè)格網(wǎng)數(shù)據(jù)中的粗差。如果在一個(gè)點(diǎn)的周圍一定局部區(qū)域內(nèi)約束的坡度和允許坡度變化量大于給定的約束條件,我們就可以認(rèn)為改點(diǎn)可能存在粗差。這就是機(jī)遇局部區(qū)域的坡度約束技術(shù)的原理。</p><p> 可視化探測(cè)算法。該方法采用DEM三維可視化技術(shù),可以交互式地來檢查DEM中出現(xiàn)的可以數(shù)據(jù),并剔除嚴(yán)重的影響數(shù)據(jù)質(zhì)量的粗差或錯(cuò)誤。一般
23、對(duì)于一個(gè)特定的研究區(qū)域,在三維透視圖上是否表現(xiàn)為粗差非常明顯,很容易據(jù)此做出正確的判斷。實(shí)際上,由于DEM有著非常適宜于建立三維可視化的特點(diǎn),所以可以首先通過目視效果來對(duì)粗差進(jìn)行檢測(cè)。通常有粗差的地形是很不自然的。因此在實(shí)際應(yīng)用中,可以首先通過目視進(jìn)行粗差的檢測(cè)[6]。</p><p> 基于等高線拓?fù)潢P(guān)系的粗差探測(cè)算法。相鄰等高線的高程值之間的關(guān)系有三種:遞增、遞減或相等,根據(jù)這些關(guān)系,可對(duì)等高線的高程值是否
24、有錯(cuò)做一判斷。在等高線地形圖上由于存在等高線密集、注記的壓蓋、斷崖地形等情況,常常造成等高線的不連續(xù)有時(shí)丟失的情形,因此不能僅僅依靠等高距來確定可疑處是否錯(cuò)誤。在對(duì)所有的可疑處進(jìn)行自動(dòng)檢測(cè)后,應(yīng)當(dāng)對(duì)每個(gè)可疑處根據(jù)等高線的關(guān)系由人工進(jìn)行檢測(cè)并進(jìn)行修改,剔除粗差。</p><p> 基于主成分分析的粗差檢測(cè)。主成分分析就是把多個(gè)指標(biāo)化為少數(shù)幾個(gè)綜合指標(biāo)的一種傳統(tǒng)方法。主成分分析的基本方法通過構(gòu)造原變量的適當(dāng)?shù)木€性組
25、合,以產(chǎn)生的一系列互不相關(guān)的新變量,從中選出少數(shù)幾個(gè)新變量并使它們含有盡可能多的原變量帶有的信息,從而使得用這幾個(gè)新變量代替原變量分析問題和解決問題成為可能當(dāng)研究的問題確定之后,變量中所含的“信息 ”的大小通常用該變量的方差來度量[7]。</p><p> 3基于移動(dòng)曲面擬合的DEM粗差探測(cè)算法</p><p> 3.1移動(dòng)曲面擬合剔除DEM粗差的原理</p><p
26、> 根據(jù)有限個(gè)離散點(diǎn)的高程,采用多項(xiàng)式或樣條函數(shù)求得擬合公式,再逐個(gè)計(jì)算各點(diǎn)的高程,得到擬合的DEM。可反映總的地勢(shì),但局部誤差較大[8]。</p><p><b> 可分為:</b></p><p> 整體擬合:根據(jù)研究區(qū)域內(nèi)所有采樣點(diǎn)的觀測(cè)值建立趨勢(shì)面模型。</p><p> 局部擬合:利用鄰近的數(shù)據(jù)點(diǎn)估計(jì)未知點(diǎn)的值,能反映局
27、部特征。</p><p> DEM內(nèi)插就是根據(jù)參考點(diǎn)上的高程求出其他待定點(diǎn)上的高程,在數(shù)學(xué)上屬于插值問題。任意一種內(nèi)插方法都是基于鄰近數(shù)據(jù)點(diǎn)之間存在很大的相關(guān)性,從而由鄰近點(diǎn)的數(shù)據(jù)內(nèi)插出待定點(diǎn)上的數(shù)據(jù)。移動(dòng)曲面擬合法內(nèi)插,是以每一待定點(diǎn)為中心,定義一個(gè)局部函數(shù)去擬合周圍的數(shù)據(jù)點(diǎn)。該方法十分靈活,一般情況精度較高,計(jì)算相對(duì)簡(jiǎn)單,不需很大計(jì)算機(jī)內(nèi)存,其過程如下:</p><p> ?。?)根
28、據(jù)實(shí)際內(nèi)插要求,解算待定點(diǎn)的平面坐標(biāo)()。</p><p> ?。?)為了選取鄰近的數(shù)據(jù)點(diǎn),以待定點(diǎn)為圓心,以為半徑作圓(如圖1所示) ,凡落在圓內(nèi)的數(shù)據(jù)點(diǎn)即被選用。在移動(dòng)曲面內(nèi)插時(shí),考慮到計(jì)算方便,將坐標(biāo)原點(diǎn)移至該DEM格網(wǎng)點(diǎn)()。</p><p> 圖 1移動(dòng)曲面內(nèi)插圖</p><p> 由于移動(dòng)曲面系數(shù)個(gè)數(shù)為6,要求選用的數(shù)據(jù)點(diǎn)個(gè)數(shù)n>6。當(dāng)數(shù)據(jù)點(diǎn)(
29、)到待定點(diǎn)()的距離時(shí), 該點(diǎn)即被選用。</p><p> 選擇移動(dòng)曲面作為擬合面,則對(duì)應(yīng)點(diǎn)的誤差方程為</p><p> 由n個(gè)數(shù)據(jù)點(diǎn)列出的誤差方程為</p><p> ?。?)求解。根據(jù)平差理論,移動(dòng)曲面系數(shù)為</p><p> 由于坐標(biāo)原點(diǎn)移至該DEM格網(wǎng)點(diǎn)P () , 待定點(diǎn)的高程值為Zp。</p><p&g
30、t;<b> 3.2程序設(shè)計(jì)</b></p><p> 程序需要利用WINDOWS計(jì)算機(jī)和VB軟件來完成[9]。</p><p> 3.2.1 系統(tǒng)框架</p><p><b> ↓</b></p><p><b> ↓</b></p><p>
31、;<b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓否</b></p><p>&l
32、t;b> ↓</b></p><p><b> ↓是</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p> 3.2.2 詳細(xì)程序</p><p> 程序采用平臺(tái):vs2008-
33、vb,access數(shù)據(jù)庫(kù)(存儲(chǔ)已知點(diǎn))</p><p><b> 數(shù)據(jù):10個(gè)點(diǎn)</b></p><p><b> 程序代碼:</b></p><p> Imports System.Math</p><p> Public Class Form1</p><p>
34、 Dim conn As OleDb.OleDbConnection=New OleDb.OleDbConnection</p><p> Dim cmd As OleDb.OleDbCommand=New OleDb.OleDbCommand</p><p> Dimadapter As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdap
35、ter</p><p> Dim datareader As OleDb.OleDbDataReader</p><p><b> '數(shù)據(jù)庫(kù)連接</b></p><p> Dim xe As Double,ye As Double,d(9) As Double, X(9) As Double, Y(9) As Double,Z(9
36、,0) As Double</p><p> Dim M(9,5) As Double,P(9,9) As Double</p><p> Dim Xz(5,0) As Double</p><p> Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Event
37、Args) Handles Button1.Click</p><p> Dim i As Integer</p><p><b> xe=110</b></p><p> ye=110 '待定點(diǎn)坐標(biāo)</p><p> DataSet1.Tables.Clear()</p><p>
38、; DataGridView1.Columns.Clear()</p><p> conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\DEM.mdb"</p><p> cmd.Co
39、mmandText = "select 點(diǎn)號(hào) ,X,Y,Z from DEM "</p><p> cmd.Connection = conn</p><p> conn.Open()</p><p> OleDbDataAdapter1.SelectCommand = cmd</p><p> OleDbDat
40、aAdapter1.Fill(DataSet1, "DEM")</p><p> DataGridView1.DataSource = DataSet1.Tables.Item("DEM")</p><p> conn.Close()</p><p> '連接數(shù)據(jù)庫(kù),把數(shù)據(jù)讀到Datagridview</p
41、><p> For i = 0 To 9</p><p> X(i)=DataGridView1.Rows.Item(i).Cells.Item("X").Value</p><p> Y(i)=DataGridView1.Rows.Item(i).Cells.Item("Y").Value</p><p
42、> Z(i,0)=DataGridView1.Rows.Item(i).Cells.Item("Z").Value</p><p> M(i,0)=(X(i)-xe) * (X(i)-xe)</p><p> M(i,1)=(X(i)-xe) * (Y(i)-ye)</p><p> M(i,2)=(Y(i)-ye) * (Y(i)
43、-ye)</p><p> M(i,3)=X(i)-xe</p><p> M(i,4)=Y(i)-xe</p><p><b> M(i,5)=1</b></p><p> P(i,i)=1/Sqrt(Abs((X(i)-xe)*(X(i)-xe) +(Y(i)-ye)*(Y(i)-ye)))</p>
44、;<p><b> Next</b></p><p><b> '對(duì)矩陣賦初值</b></p><p><b> End Sub</b></p><p> Private Sub Button2_Click(ByVal sender As System.Object, B
45、yVal e As System.EventArgs) Handles Button2.Click</p><p> TextBox1.Text="" </p><p> Dim i As Integer</p><p> Xz = JZCF(JZCF(JZCF(NJZ(JZCF(JZCF(DZ(M),P),M)),DZ(M)),P),
46、Z)</p><p> TextBox1.Text = TextBox1.Text & "待定點(diǎn)的坐標(biāo):X=110,Y=110" & vbCrLf & vbCrLf</p><p> TextBox1.Text=TextBox1.Text&"誤差方程為:V=AXi^2+BXiYi+CYi^2+DXi+EYi+F-Zi&quo
47、t; & vbCrLf & vbCrLf</p><p> TextBox1.Text=TextBox1.Text &"由X=(M(T)PM)'M(T)PZ"&vbCrLf</p><p> TextBox1.Text=TextBox1.Text & "其中X=(A B C D E F )(T) Z=(Z1
48、Z2 Z3 ```Zn)(T)"&vbCrLf</p><p> TextBox1.Text=TextBox1.Text & " M=(Xi^2 XiYi Yi^2 Xi Yi 1)" & vbCrLf &vbCrLf</p><p> TextBox1.Text=TextBox1.Text & "求得X=
49、("</p><p> For i=0 To 5</p><p> TextBox1.Text=TextBox1.Text & Format(Xz(i,0), "0.000") & " "</p><p><b> Next</b></p><p>
50、; TextBox1.Text=TextBox1.Text & ")" & vbCrLf & vbCrLf</p><p> TextBox1.Text=TextBox1.Text & "由于坐標(biāo)原點(diǎn)移至待定點(diǎn)上,因此待定點(diǎn)的高程Z=F"&vbCrLf</p><p> TextBox1.Text=Tex
51、tBox1.Text & "待定點(diǎn)高程Z=" & Format(Xz(5, 0), "0.000")</p><p><b> End Sub</b></p><p> '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~求解矩陣的逆矩陣</p><p> P
52、ublic Function NJZ(ByVal q(,) As Double) As Double(,)</p><p> Dim BS(,) As Double, NJ(,) As Double, Qz As Double, h As Integer, l As Integer, n As Integer</p><p> n=q.GetUpperBound(0)</p>
53、;<p> ReDim BS(n,n)</p><p> ReDim NJ(n,n)</p><p> BS = BSJZ(q)'伴隨矩陣</p><p> Qz = HLei(q)</p><p> If Qz <> 0 Then</p><p> For h = 0 T
54、o n</p><p> For l = 0 To n</p><p> NJ(h,l) = (1/Qz) * BS(h,l)'求解矩陣的逆矩陣</p><p><b> Next</b></p><p><b> Next</b></p><p><b
55、> NJZ = NJ</b></p><p><b> Else</b></p><p> MessageBox.Show("矩陣不可逆")</p><p> NJZ = Nothing</p><p><b> End If</b></p>
56、;<p> End Function</p><p> '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~求解矩陣的伴隨矩陣</p><p> Public Function BSJZ(ByVal q(,) As Double) As Double(,) '求解矩陣的伴隨矩陣</p><p> Dim
57、i As Integer, j As Integer, k As Integer, n As Integer, BS(,) As Double</p><p><b> i = 0</b></p><p><b> j = 0</b></p><p><b> k = 0</b></p&g
58、t;<p> n = q.GetUpperBound(0)</p><p> ReDim BS(n,n)</p><p> For i = 0 To n</p><p> For j = 0 To n</p><p> BS(j, i) = YZS(q,i,j)</p><p><b>
59、; Next</b></p><p><b> Next</b></p><p><b> BSJZ = BS</b></p><p> End Function</p><p> '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~求解矩陣的余子式的值&l
60、t;/p><p> Public Function YZS(ByVal q(,)As Double,ByVal h As Integer,ByVal l As Integer) As Double '求解矩陣的余子式的值</p><p> Dim i As Integer,j As Integer,x As Integer,y As Integer,n As Integer, Y
61、Z(,)As Double</p><p><b> i = 0</b></p><p><b> j = 0</b></p><p> n = q.GetUpperBound(0)</p><p> ReDim YZ(n-1,n-1)</p><p> For i
62、 =0 To n</p><p> If i <> h Then</p><p><b> y = 0</b></p><p> For j = 0 To n</p><p> If j <> l Then '求得h,l位置的余子式</p><p> Y
63、Z(x,y) = q(i,j)</p><p><b> y+= 1</b></p><p><b> End If</b></p><p><b> Next</b></p><p><b> x+= 1</b></p><p
64、><b> End If</b></p><p><b> Next</b></p><p> YZS = (-1) ^ (h+l+2) * HLei(YZ) '余子式的值</p><p> End Function</p><p> '~~~~~~~~~~~~~~~
65、~~~~~~~~~~~~~~~~~~~~~~~求解n階行列式的值</p><p> Public Function HLei(ByVal q(,) As Double) As Double '求解n階行列式的值</p><p> Dim i As Integer, j As Integer, k As Integer, n As Integer</p><p
66、><b> i = 0</b></p><p><b> j = 0</b></p><p><b> k = 0</b></p><p> If q.GetUpperBound(0) > 1 Then '判斷是否為2*2矩陣,若不是則繼續(xù)求其余子式</p>
67、<p> n = q.GetUpperBound(0)</p><p> Dim p(n -1, n -1) As Double '余子式方陣</p><p> For k = 0 To n</p><p> Dim h As Integer</p><p> Dim l As Integer '余子式的
68、行列號(hào)</p><p><b> h = 0</b></p><p> For i = 1 To n</p><p><b> l = 0</b></p><p> For j = 0 To n</p><p> If j <> k Then '
69、;按第一列展開求余子式</p><p> p(h,l) = q(i,j)</p><p><b> l+= 1</b></p><p><b> End If</b></p><p><b> Next</b></p><p><b>
70、 h += 1</b></p><p><b> Next</b></p><p> HLei=HLei+(-1)^(k+2) * q(0,k)*HLei(p)'遞歸方法求行列式的值</p><p><b> Next</b></p><p><b> Els
71、e</b></p><p> HLei = q(0, 0) * q(1,1) - q(0,1) * q(1,0) ' 二階行列式求值</p><p><b> End If</b></p><p> End Function</p><p> '~~~~~~~~~~~~~~~~~~~~
72、~~~~~~~~~~~~~~~~~~~~求解矩陣的轉(zhuǎn)置</p><p> Public Function DZ(ByVal q(,) As Double) As Double(,) '求解矩陣的轉(zhuǎn)置</p><p> Dim i As Integer, j As Integer, n As Integer, m As Integer, DZJZ(,) As Double<
73、/p><p><b> i = 0</b></p><p><b> j = 0</b></p><p> n = q.GetUpperBound(0)</p><p> m = q.GetUpperBound(1)</p><p> ReDim DZJZ(m,n)&l
74、t;/p><p> For i = 0 To n</p><p> For j = 0 To m</p><p> DZJZ(j,i) = q(i,j)</p><p><b> Next</b></p><p><b> Next</b></p><
75、;p><b> DZ = DZJZ</b></p><p> End Function</p><p> '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~矩陣乘法</p><p> Public Function JZCF(ByVal a(,) As Double, ByVal b(,) As Double)
76、 As Double(,)'矩陣乘法</p><p> Dim ha As Integer, la As Integer, hb As Integer, lb As Integer, c(,) As Double</p><p> Dim i As Integer, j As Integer, k As Integer</p><p> ha = a.
77、GetUpperBound(0)</p><p> la = a.GetUpperBound(1)</p><p> hb = b.GetUpperBound(0)</p><p> lb = b.GetUpperBound(1)</p><p> If la = hb Then</p><p> ReDim
78、 c(ha, lb)</p><p> For i = 0 To ha</p><p> For j = 0 To lb</p><p> For k = 0 To la</p><p> c(i,j) = c(i,j) + a(i,k) * b(k,j)</p><p><b> Next<
79、/b></p><p><b> Next</b></p><p><b> Next</b></p><p><b> JZCF = c</b></p><p><b> Else</b></p><p> Mes
80、sageBox.Show("這兩個(gè)矩陣不能相乘!")</p><p> JZCF = Nothing</p><p><b> End If</b></p><p> End Function</p><p><b> End Class</b></p>&
81、lt;p><b> 得到結(jié)果</b></p><p><b> 4 實(shí)驗(yàn)分析</b></p><p> 4.1 外業(yè)實(shí)測(cè)的檢驗(yàn)</p><p> 為了檢驗(yàn)算法對(duì)粗差的靈敏性,首先修改DEM數(shù)據(jù),手工產(chǎn)生粗差點(diǎn),并利用上述算法進(jìn)行出差探測(cè)。探測(cè)結(jié)果如表1所示。</p><p> 表1
82、DEM粗差探測(cè)結(jié)果</p><p> 從表1可以看出本文算法對(duì)粗差的檢測(cè)還是比較靈敏的,但是在中誤差加大的地區(qū)也就是陡峭地區(qū),算法對(duì)粗差檢測(cè)的靈敏性就不太理想了,但在返回可疑點(diǎn)位置,該算法還是能定位到誤差點(diǎn)上,不會(huì)出現(xiàn)較大誤差。</p><p> 為了更好地檢測(cè)該算法的可行性,通過對(duì)某一地區(qū)的實(shí)測(cè)DEM作為實(shí)驗(yàn)數(shù)據(jù),對(duì)本算法進(jìn)行測(cè)試。實(shí)驗(yàn)區(qū)域起伏較大,屬于典型的丘陵地區(qū)。運(yùn)用該算法對(duì)D
83、EM數(shù)據(jù)進(jìn)行粗差探測(cè),剔除粗差點(diǎn)后內(nèi)插成圖的圖形比較平滑,與地形更加貼切。采用這種算法進(jìn)行粗差剔除能夠非常迅速的的定位到可疑點(diǎn),粗差剔除快捷迅速,絕大部分的粗差點(diǎn)能夠找到剔除[10]。</p><p><b> 5 結(jié)論</b></p><p> 文中總結(jié)了現(xiàn)有的DEM數(shù)據(jù)粗差探測(cè)算法,利用移動(dòng)曲面擬合方法,對(duì)DEM數(shù)據(jù)進(jìn)行粗差探測(cè),采用模擬DEM數(shù)據(jù)和實(shí)測(cè)DEM
84、數(shù)據(jù)對(duì)該算法進(jìn)行分析,驗(yàn)證了該算法的有效性和實(shí)用性。盡管這種算法還有缺點(diǎn),但是優(yōu)點(diǎn)突出,而且準(zhǔn)確率也有保障。如果不是過于要求精度的問題,該算法在DEM粗差探測(cè)和剔除的實(shí)際應(yīng)用中能很好地發(fā)揮作用。</p><p><b> 參 考 文 獻(xiàn)</b></p><p> [1]湯國(guó)安,李發(fā)源,劉學(xué)軍 .數(shù)字高程模型教程[M].科學(xué)出版社出版,2010:2-6</p&
85、gt;<p> [2]龔健雅. 地理信息系統(tǒng)基礎(chǔ)[M ].北京:科學(xué)出版社,2002:55-56</p><p> [3]藺愛軍 .利用二次曲面移動(dòng)擬合法進(jìn)行DEM內(nèi)插的精度探討[M].測(cè)繪科學(xué),2008年04期 :13-17</p><p> [4]樣曉云.數(shù)字高程模型(DEM)的粗差探測(cè)(D).西南交通大學(xué),2005</p><p> [5
86、]楊曉云,顧利亞,岑敏儀.數(shù)字高程模型的誤差處理與精度評(píng)估[J]. 鐵道勘察, 2004年05期:20-24</p><p> [6]胡鵬,吳艷蘭,胡海.數(shù)字高程模型精度評(píng)定的基本理論[J].地球信息科學(xué),2003年03期:16-19</p><p> [7]陶本藻,姚宜斌,施闖.基于相關(guān)分析的粗差可分析性[J].武漢大學(xué)學(xué)報(bào),2004年29期:33-35</p><
87、;p> [8]李胤,楊武年,楊容浩,曾濤.基于移動(dòng)曲面擬合算法和加權(quán)平均算法的DEM內(nèi)插算法改進(jìn) [J].測(cè)繪科學(xué),2004年06期: 26-31</p><p> [9]李雷.Visual Basic 610編程基礎(chǔ)與范例[M].電子工業(yè)出版社, 2004:35-41</p><p> [10]宋力杰,楊元喜.論粗差修正與粗差剔除[J].測(cè)繪通報(bào),1999年06期:5-
88、7</p><p> Based On DEM Gross Error Detection Algorithm of </p><p> Movingcurved Surface Fitting</p><p> Abstract:Digital elevation model which is made as the main data source of
89、geographic information system, it’s data quality problems become the focus of attention.The accuracy is the most important factors for any DEM project.The existence of gross error will cause the digital elevation model s
90、pace seriously distorted, sometimes it can lead to serious distortion of DEM and its products, or even completely be unable to use.Based on The existing analysis of the gross error detection algorithm.It is</p>&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于移動(dòng)曲面擬合的dem粗差探測(cè)算法
- 基于移動(dòng)曲面擬合的dem粗差探測(cè)算法
- 基于移動(dòng)曲面擬合的dem粗差探測(cè)算法
- 基于移動(dòng)曲面擬合的DEM粗差探測(cè)算法.doc
- 顧及地形特征線的DEM粗差探測(cè)算法研究.pdf
- 56726.數(shù)字高程模型dem的粗差探測(cè)
- 基于抗差方法的DEM數(shù)據(jù)粗差剔除.pdf
- dem粗差剔除方法研究
- DEM粗差剔除方法研究.doc
- 考慮數(shù)據(jù)源的DEM粗差探測(cè)方法的研究與實(shí)驗(yàn).pdf
- dem粗差剔除方法研究-畢業(yè)論文
- dem粗差剔除方法研究-畢業(yè)論文
- 基于矩形擬合的新型人體檢測(cè)算法.pdf
- 數(shù)字高程模型的粗差探測(cè)與剔除
- 數(shù)字高程模型的粗差探測(cè)與剔除
- 基于移動(dòng)通話行為的社交網(wǎng)絡(luò)建模及目標(biāo)探測(cè)算法的研究.pdf
- 基于紅外視頻的火災(zāi)探測(cè)算法研究.pdf
- 基于視覺的火災(zāi)探測(cè)算法的研究.pdf
- 數(shù)字高程模型的粗差探測(cè)與剔除.docx
- 基于視頻的火災(zāi)煙霧探測(cè)算法的研究.pdf
評(píng)論
0/150
提交評(píng)論