專利名稱:一種數字高程模型洼地的填平處理方法
技術領域:
本技術涉及地理信息領域,特別是一種數字高程模型洼地的填平處理方法。
背景技術:
數字高程模型(DEM)為數字地形分析和應用,DEM數據進行對DEM數據進行預處理。洼地是被較高高程所包圍的DEM局部地形單元,在DEM數據中所表現的洼地大多是由于數據獲取和內插過程中的誤差所引起的偽洼地。洼地是影響水流的重要因素,自然情況下,水流是向低處流動的,這些洼地的存在會使得使用數字高程模型進行水流地形分析導致不正確的結果,甚至算法無法計算。如將DEM數據應用在水文和地貌分析時,流域網絡和地形結構間斷的洼地會造成算法分析失敗,因此在使用DEM數字高程模型之前需要對DEM數據中的洼地進行填平處理。目前的洼地填平方法主要有平滑處理、填平處理等,通過平滑處理來消除洼地, 但是這種方法只能處理較淺和小范圍的洼地,更深和更大范圍的洼地依然存在,并且改變了原始數據。填平處理將洼地內部的高程增加至洼地的出水口高程。洼地為區域地形的積水區域,洼地低點的高程低于其它領域點,洼地填平方法主要為單網格洼地填平,這種方法是將數字地面高程模型中的8個領域點的高程都大于該點的高程,這樣的單網格洼地的高程直接賦予鄰近網格的最小高程。目前洼地填平方法大多是先確定洼地單元格,然后確定洼地單元格的集水區域, 從集水區域中的最小點作為潛在的出水口進行填平處理,這類方法難以解決大面積的洼地,以及找到所有的可能存在的洼地。本發明從所要處理區域的邊界出發,區域內部網格的高程高于或等于邊界網格的高程水流才能通過區域,或從區域內部流向區域外部,對于所有使得水滯留的內部網格按照其邊界區域最小高程進行填平處理,本發明的方法使得區域內部的所有洼地均能夠被處理,同時被填平處理的洼地網格影響最小,盡可能保持填平后的網格和填平之前網格之間地形的差別。
發明內容
本發明實施的目的提供一種洼地填平處理方法,能夠實時地從邊界網格元素結點到內部網格元素結點逐步過渡的方法將所有洼地網格元素結點進行填充處理。本發明的技術方案是提供了一種數字高程模型洼地的填平處理方法,其特征在于步驟一設置一個m行η列網格矩陣M用于記錄地形網格高程數據,其中m和η分別為大于1的正整數,網格矩陣M中的每個網格元素結點設置一個浮點變量H,其中浮點變量H 記錄地形網格高程,設置一個邊界網格元素結點集合Α、一個洼地網格元素結點集合B和一個中間網格元素結點集合C,洼地網格元素結點集合B的初始值為所有的內部網格元素結點,內部網格元素結點為網格矩陣M中()時的第i行第j列的網格元素結點,邊界網格元素結點集合A的初始值為所有邊界網格元素結點,邊界網格元素結點為網格矩陣M中內部網格元素結點的以外的其他網格元素結點,中間網格元素結點集合C的初始值為空,其中, 設置邏輯變量T,初始值T為0,進入步驟二 ;
步驟二 從邊界網格元素結點集合A中取出一個網格元素結點,將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,如果所述的邊界網格元素結點的相鄰網格元素結點有在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點,則進入步驟三,否則將所述的邊界網格元素結點從中間網格元素結點集合C中刪除,進入步驟四;
步驟三如果所述的相鄰洼地網格元素結點的高程低于邊界網格元素結點,進入步驟四,否則將該相鄰洼地網格元素結點加入中間網格元素結點集合C,并將所述的相鄰洼地網格元素結點從洼地網格元素結點集合B中刪除,設置邏輯變量T為1,進入步驟四; 步驟四如果邊界網格元素結點集合A為空,則進入步驟五,否則返回步驟二 ; 步驟五將中間網格元素結點集合C的所有網格元素結點加入到邊界網格結點集合A, 同時將中間網格元素結點集合C設置為空,如果邏輯變量T為0,進入步驟六,否則設置T等于0,回到步驟二 ;
步驟六如果邊界網格元素結點集合A為空,進入步驟七,否則查找邊界網格元素結點集合A所有網格元素結點中的最小高程h,將小于最小高程h的洼地網格元素結點集合B中所有網格元素結點對應的地塊填平至最小高程h,同時將洼地網格元素結點集合B中網格元素結點高程H小于最小高程h的所有網格元素結點高程設置為h,回到步驟二 ;
步驟七輸出洼地填平處理后的各個網格元素結點高程。
與現有技術相比,本發明具有如下優點及有效效果
(1)本發明能夠填平處理所有被較高高程所包圍的數字高程模型的局部地形單元,不僅能處理較淺和小范圍的洼地,而且能夠更深和更大范圍的洼地,解決由于數據獲取和內插過程中的誤差所引起的洼地,從而避免使用數字高程模型進行水流地形分析導致不正確的結果,甚至算法無法計算。(2)本發明從數字高程模型所要處理區域的邊界出發,區域內部網格元素結點的高程高于或等于邊界網格元素結點的高程水流才能通過區域,或從區域內部流向區域外部,對于所有使得水滯留的內部網格元素結點按照其邊界區域最小高程進行填平處理,本發明的方法使得區域內部的所有洼地均能夠被填平處理,同時被填平處理的洼地網格元素結點影響最小,盡可能保持填平后的網格和填平之前網格之間地形的差別。
為了更清楚地說明本發明實施實例的技術方案,下面將對實施實例或現有技術描述中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖是本發明的一些實施實例。圖1 一種數字高程模型洼地的填平處理方法流程示意圖。圖2 —種數字高程模型洼地的填平處理方法過程示意圖。圖3 —個進行洼地填平處理之前的4行4列的網格矩陣B的數字高程模型用于記錄地形數據,其中為洼地網格元素結點為第1行第2列網格。圖4 進行洼地填平處理之后的網格矩陣B的數字高程模型。
具體實施例方式下面將結合本發明實施實例中的附圖,對本發明實施實例中的技術方案進行清楚、完整地描述,當然所描述的實施實例僅僅是本發明一部分實施實例,而不是全部的實施實例。實施實例1
一種數字高程模型洼地的填平處理方法,其特征在于
步驟一設置一個m行η列網格矩陣M用于記錄地形網格高程數據,其中m和η分別為大于1的正整數,網格矩陣M中的每個網格元素結點設置一個浮點變量H,其中浮點變量H 記錄地形網格高程,設置一個邊界網格元素結點集合Α、一個洼地網格元素結點集合B和一個中間網格元素結點集合C,洼地網格元素結點集合B的初始值為所有的內部網格元素結點,內部網格元素結點為網格矩陣M中()時的第i行第j列的網格元素結點,邊界網格元素結點集合A的初始值為所有邊界網格元素結點,邊界網格元素結點為網格矩陣M中內部網格元素結點的以外的其他網格元素結點,中間網格元素結點集合C的初始值為空,其中, 設置邏輯變量T,初始值T為0,進入步驟二 ;
步驟二 從邊界網格元素結點集合A中取出一個網格元素結點,將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,
所述網格元素結點相鄰網格元素結點的查找方法如下假設一個第i行第j列網格元素結點,如果i,j的取值為,相鄰的網格元素結點有八個,分別為第i_l行第j-ι列網格元素結點、第i_l行第j列網格元素結點、第i_l行第j+Ι列網格元素結點、第i行第j_l列網格元素結點、第i行第j+Ι列網格元素結點、第i+Ι行第j_l列網格元素結點、第i+Ι行第j列網格元素結點、第i+Ι行第j+Ι列網格元素結點,如果i,j的取值為 =,則相鄰網格元素結點有五個,分別為第丨行第j-i列網格元素結點、第丨行第
j+Ι列網格元素結點、第2行第j-Ι列網格元素結點、第2行第j列網格元素結點、第2行第 j+Ι列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有五個,分別為第m-1行第 j-Ι列網格元素結點、第m-1行第j列網格元素結點、第m-1行第j+Ι列網格元素結點、第m 行第j_l列網格元素結點、第m行第j+Ι列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有五個,分別為第i_l行第1列網格元素結點、第i_l行第2列網格元素結點、第i行第2列網格元素結點、第i+Ι行第1列網格元素結點、第i+Ι行第2列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有五個,分別為第i_l行第n-1列網格元素結點、第 i-1行第η列網格元素結點、第i行第n-1列網格元素結點、第i+Ι行第n_l列網格元素結點、第i+Ι行第η列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有三個,分別為第1行第2列網格元素結點、第2行第1列網格元素結點、第2行第2列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有三個,分別為第1行第n-1列網格元素結點、第2 行第n-1列網格元素結點、第2行第η列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有三個,分別為第m-1行第1列網格元素結點、第m-1行第2列網格元素結點、第m 行第2列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有三個,分別為第m-1行第n-1列網格元素結點、第m-1行第η列網格元素結點、第m行第n_l列網格元素結點,
如果所述的邊界網格元素結點的相鄰網格元素結點有在洼地網格元素結點集合B中, 則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點,則進入步驟三,否則將所述的邊界網格元素結點從中間網格元素結點集合C中刪除,進入步驟四; 步驟三如果所述的相鄰洼地網格元素結點的高程低于邊界網格元素結點,進入步驟四,否則將該相鄰洼地網格元素結點加入中間網格元素結點集合C,并將所述的相鄰洼地網格元素結點從洼地網格元素結點集合B中刪除,設置邏輯變量T為1,進入步驟四; 步驟四如果邊界網格元素結點集合A為空,則進入步驟五,否則返回步驟二 ; 步驟五將中間網格元素結點集合C的所有網格元素結點加入到邊界網格結點集合A, 同時將中間網格元素結點集合C設置為空,如果邏輯變量T為0,進入步驟六,否則設置T等于0,回到步驟二 ;
步驟六如果邊界網格元素結點集合A為空,進入步驟七,否則查找邊界網格元素結點集合A所有網格元素結點中的最小高程h,將小于最小高程h的洼地網格元素結點集合B中所有網格元素結點對應的地塊填平至最小高程h,同時將洼地網格元素結點集合B中網格元素結點高程H小于最小高程h的所有網格元素結點高程設置為h,回到步驟二 ;
步驟七輸出洼地填平處理后的各個網格元素結點高程,所述的輸出洼地填平處理后的各個網格元素結點高程為輸出每個行列網格元素結點及其對應的高程。
實施實例2
1. 一種數字高程模型洼地的填平處理方法,其特征在于
步驟一(1)設置一個3行4列網格矩陣M用于記錄地形網格高程數據,網格矩陣M中的每個網格元素結點設置一個浮點變量H,其中浮點變量H記錄地形網格高程,設置一個邊界網格元素結點集合A、一個洼地網格元素結點集合B和一個中間網格元素結點集合C,洼地網格元素結點集合B的初始值為所有的內部網格元素結點,內部網格元素結點為網格矩陣M中(l<i<3,l<j<4)時的第i行第j列的網格元素結點,邊界網格元素結點集合A的初始值為所有邊界網格元素結點,邊界網格元素結點為網格矩陣M中內部網格元素結點的以外的其他網格元素結點,中間網格元素結點集合C的初始值為空,其中,設置邏輯變量T,初始值T為0,
邊界網格元素結點集合A的初始值為所有的邊界網格元素結點, A={(1, 1),(1,2),(1,3),(1,4)(2, 1), (2, 4),
(3,1),(3,2),(3,3),(3,4),} 洼地網格元素結點集合B為所有的內部網格元素結點, B= {(2, 2),(2,3)}
中間網格元素結點集合C為所有的網格元素結點, C= { }
設置邏輯變量T,初始值T為0,進入步驟二(2);
步驟二(2)從邊界網格元素結點集合A中取出一個網格元素結點(1,1),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,1)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,1)的相鄰網格元素結點(2,2)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A={(1, 2),(1,3),(1,4) (2, 1), (2, 4),
(3,1),(3,2),(3,3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 2),(2,3)} 中間網格元素結點集合C為, C={(1, 1)} 則進入步驟三(3);
步驟三(3):所述的相鄰洼地網格元素結點(2,2)的高程3低于邊界網格元素結點 (1,1)的高程5,進入步驟四(4);
步驟四(4):邊界網格元素結點集合A有元素,返回步驟二(5); 步驟二(5)從邊界網格元素結點集合A中取出一個網格元素結點(1,2),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,2)的相鄰網格元素結點(2,2)和(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A={(1, 3),(1,4) (2, 1), (2, 4),
(3,1),(3,2),(3,3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 2),(2,3)} 中間網格元素結點集合C為, C={(1, 1),(1,2)} 則進入步驟三(6);
步驟三(6)所述的相鄰洼地網格元素結點(2,2)的高程3等于邊界網格元素結點(1,2),則將該相鄰洼地網格元素結點(2,2)加入中間網格元素結點集合C,并將所述的相鄰洼地網格元素結點(2,2)從洼地網格元素結點集合B中刪除, 邊界網格元素結點集合A為 A={(1, 3),(1,4) (2, 1), (2, 3),
(3,1),(3,2),(3,3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C={(1, 1),(1,2),(2,2)} 設置邏輯變量T為1,進入步驟四(7);
步驟四(7):邊界網格元素結點集合A有元素,返回步驟二(8); 步驟二(8)從邊界網格元素結點集合A中取出一個網格元素結點(1,3),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,3)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,3)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(1,4),
(2, 1), (2, 4),
(3,1),(3,2),(3,3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C={(1, 1),(1,2),(2,2),(1,3)} 則進入步驟三(9);
步驟三(9):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (1,3)的高程2,進入步驟四(10);
步驟四(10)邊界網格元素結點集合A有元素,返回步驟二(11); 步驟二(11):從邊界網格元素結點集合A中取出一個網格元素結點(1,4),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,4)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(2, 1),(2,4),
(3,1),(3,2),(3,3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 3)}頁
中間網格元素結點集合C為,
C={(1, 1),(1,2),(2,2),(1,3),(1,4)}
則進入步驟三(12);
步驟三(12):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (1,4)的高程2,進入步驟四(13);
步驟四(13)邊界網格元素結點集合A有元素,返回步驟二(14); 步驟二( 14):從邊界網格元素結點集合A中取出一個網格元素結點(2,1),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(2,1)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(2,1)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,將所述的邊界網格元素結點(2,1)從中間網格元素結點集合C中刪除,進入步驟四(15); 邊界網格元素結點集合A為 A= {(2, 4),
(3,1),(3,2),(3,3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C={(1, 1),(1,2),(2,2),(1,3),(1,4)}
則進入步驟四(15);
步驟四(15)邊界網格元素結點集合A有元素,返回步驟二(16); 步驟二(16):從邊界網格元素結點集合A中取出一個網格元素結點0,4),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(2,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(2,4)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(3,1),(3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C={(1, 1),(1,2),(2,2),(1,3),(1,4),(2,4)} 則進入步驟三(17);
步驟三(17):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (2,4)的高程3,進入步驟四(18);
步驟四(18)邊界網格元素結點集合A有元素,返回步驟二(19); 步驟二(19):從邊界網格元素結點集合A中取出一個網格元素結點(3,1),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(3,1)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,1)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,將所述的邊界網格元素結點(3,1)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= {(3, 2),(3,3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C={(1, 1),(1,2),(2,2),(1,3),(1,4), (2,4)} 則進入步驟四(20);
步驟四(20)邊界網格元素結點集合A有元素,返回步驟二(21); 步驟二(21):從邊界網格元素結點集合A中取出一個網格元素結點(3,2),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(3,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,2)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(3, 3),(3,4),} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C={(1, 1),(1,2),(2,2),(1,3),(1,4), (2,4), (3,2)} 則進入步驟三(22);
步驟三(22):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (3,2)的高程2,進入步驟四(23);
步驟四(23)邊界網格元素結點集合A有元素,返回步驟二(24); 步驟二(24):從邊界網格元素結點集合A中取出一個網格元素結點(3,3),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(3,3)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,3)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(3,4)}
洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C={(1, 1),(1,2),(2,2),(1,3),(1,4), (2,4), (3,2),(3,3)} 則進入步驟三(25);
步驟三(25):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (3,3)的高程2,進入步驟四(26);
步驟四(26)邊界網格元素結點集合A有元素,返回步驟二(27);
11步驟二(27):從邊界網格元素結點集合A中取出一個網格元素結點(3,4),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(3,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,4)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A=O
洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C= {(1,1),(1,2),(2,2),(1,3),(1,4), (2,4), (3,2),(3,3),(3,4)} 則進入步驟三(28);
步驟三(28):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (3,4)的高程2,進入步驟四(29);
步驟四(29)如果邊界網格元素結點集合A為空,則進入步驟五(30); 步驟五(30)將中間網格元素結點集合C的所有網格元素結點加入到邊界網格結點集合A,同時將中間網格元素結點集合C設置為空, 邊界網格元素結點集合A為
A= {(1,1),(1,2),(2,2),(1,3),(1,4), (2,4), (3,2),(3,3),(3,4)}
洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
c={}
邏輯變量T為1,設置T等于0,回到步驟二(31);
步驟二(31):從邊界網格元素結點集合A中取出一個網格元素結點(1,1),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,1)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點(1,1)相鄰的所有網格元素結點,所述的邊界網格元素結點(1,1)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為
A= {(1,2),(2,2),(1,3),(1,4), (2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
c={}
進入步驟四(32);
步驟四(32):邊界網格元素結點集合A有元素,返回步驟二(33); 步驟二(33):從邊界網格元素結點集合A中取出一個網格元素結點(1,2),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,2)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為
A= { (2,2),(1,3),(1,4), (2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C= {(1,2)} 則進入步驟三(34);
步驟三(34):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (1,2)的高程2,進入步驟四(35);
步驟四(35):邊界網格元素結點集合A有元素,返回步驟二(36); 步驟二(36):從邊界網格元素結點集合A中取出一個網格元素結點0,2),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(2,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(2,2)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為
A= { (1,3),(1,4), (2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C= {(1,2),(2,2)} 則進入步驟三(37);
步驟三(37):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (1,2)的高程,進入步驟四(38);
步驟四(38):邊界網格元素結點集合A有元素,返回步驟二(39); 步驟二(39):從邊界網格元素結點集合A中取出一個網格元素結點(1,3),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,3)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,3)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= { (1,4), (2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C={(1, 2),(2,2),(1,3) }則進入步驟三(40);
步驟三(40):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點
(1.3)的高程,進入步驟四(41);
步驟四(41)邊界網格元素結點集合A有元素,返回步驟二(42); 步驟二(42):從邊界網格元素結點集合A中取出一個網格元素結點(1,4),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,4)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(2,4),(3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C={(1, 2),(2,2),(1,3),(1,4)} 則進入步驟三(43);
步驟三(43):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點
(1.4)的高程,進入步驟四(44);
步驟四(44)邊界網格元素結點集合A有元素,返回步驟二(45); 步驟二(45):從邊界網格元素結點集合A中取出一個網格元素結點0,4),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(2,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(2,4)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C= {(1,2),(2,2),(1,3),(1,4),(2,4)}
則進入步驟三(46);
步驟三(46):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (2,4)的高程,進入步驟四(47);
步驟四(47)邊界網格元素結點集合A有元素,返回步驟二(48); 步驟二(48):從邊界網格元素結點集合A中取出一個網格元素結點(3,2),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(3,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,2)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點,邊界網格元素結點集合A為 A= {(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C= {(1,2),(2,2),(1,3),(1,4),(2,4), (3,2)} 則進入步驟三(49);
步驟三(49):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (3,2)的高程,進入步驟四(50);
步驟四(50)邊界網格元素結點集合A有元素,返回步驟二(51); 步驟二(51):從邊界網格元素結點集合A中取出一個網格元素結點(3,3),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(3,3)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,3)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= {(3,4)}
洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C= {(1,2),(2,2),(1,3),(1,4),(2,4), (3,2),(3,3)} 則進入步驟三(52);
步驟三(52):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (3,3)的高程,進入步驟四(53);
步驟四(53)邊界網格元素結點集合A有元素,返回步驟二(54); 步驟二(54):從邊界網格元素結點集合A中取出一個網格元素結點(3,4),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(3,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,4)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為 A= { }
洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,
C= {(1,2),(2,2),(1,3),(1,4),(2,4), (3,2),(3,3),(3,4)} 則進入步驟三(55);
步驟三(55):所述的相鄰洼地網格元素結點(2,3)的高程1低于邊界網格元素結點 (3,4)的高程,進入步驟四(56);步驟四(56)邊界網格元素結點集合A為空有元素,進入步驟五(57); 步驟五(57)將中間網格元素結點集合C的所有網格元素結點加入到邊界網格結點集合A,同時將中間網格元素結點集合C設置為空, 邊界網格元素結點集合A為
A= {(1,2),(2,2),(1,3),(1,4),(2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C= { }
邏輯變量τ為0,進入步驟六(58 );
步驟六(58):查找邊界網格元素結點集合A所有網格元素結點中的最小高程h等于2, 將小于最小高程2的洼地網格元素結點集合B中網格元素結點0,3)對應的地塊填平至最小高程2,同時將洼地網格元素結點集合B中網格元素結點0,3)高程H小于最小高程 2的網格元素結點高程0,3)設置為2,回到步驟二(59);
步驟二(59):從邊界網格元素結點集合A中取出一個網格元素結點(1,2),將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點(1,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,2)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為
A= { (2,2),(1,3),(1,4),(2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為, C= {(1,2)} 則進入步驟三(60);
步驟三(60):所述的相鄰洼地網格元素結點(2,3)的高程2低于邊界網格元素結點 (1,2)的高程,進入步驟四(61);
步驟四(61):邊界網格元素結點集合A有元素,返回步驟二(62); 步驟二(62):從邊界網格元素結點集合A中取出一個網格元素結點0,2),將所述網格元素結點(2,2)加入中間網格元素結點集合C,并將所述的網格元素結點(2,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(2,2)的相鄰網格元素結點有在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點, 邊界網格元素結點集合A為
A= { (1,3),(1,4),(2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= {(2, 3)}
中間網格元素結點集合C為,C= {(1,2),(2,2)} 則進入步驟三(63);
步驟三(63):所述的相鄰洼地網格元素結點0,3)的高程2小于邊界網格元素結點 (2,2),進入步驟四(63);
步驟四(63)邊界網格元素結點集合A有元素,返回步驟二(64); 步驟二(64):從邊界網格元素結點集合A中取出一個網格元素結點(1,3),將所述網格元素結點(1,3)加入中間網格元素結點集合C,并將所述的網格元素結點(1,3)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,3)的相鄰網格元素結點(2,3)在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點,則進入步驟三 (65);
步驟三(65):如果所述的相鄰洼地網格元素結點0,3)的高程2等于邊界網格元素結點(1,3)的高程2,將該相鄰洼地網格元素結點(2,3)加入中間網格元素結點集合C,并將所述的相鄰洼地網格元素結點(2,3)從洼地網格元素結點集合B中刪除, 邊界網格元素結點集合A為 A= { (1,4),(2,4), (3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= { }
中間網格元素結點集合C為, C={(1, 2),(2,2),(1,3)} 設置邏輯變量T為1,進入步驟四(66);
步驟四(66)邊界網格元素結點集合A有元素,返回步驟二(67); 步驟二(67):從邊界網格元素結點集合A中取出一個網格元素結點(1,4),將所述網格元素結點(1,4)加入中間網格元素結點集合C,并將所述的網格元素結點(1,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,4)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點(1,4)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= {(2,4),(3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= { }
中間網格元素結點集合C為, C={(1, 2),(2,2),(1,3)} 進入步驟四(68);
步驟四(68)邊界網格元素結點集合A有元素,返回步驟二(69); 步驟二(69):從邊界網格元素結點集合A中取出一個網格元素結點0,4),將所述網格元素結點0,4)加入中間網格元素結點集合C,并將所述的網格元素結點0,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點0,4)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點0,4)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= {(3,2),(3,3),(3,4)} 洼地網格元素結點集合B為 B= { }
中間網格元素結點集合C為, C={(1, 2),(2,2),(1,3)} 進入步驟四(70);
步驟四(70)邊界網格元素結點集合A有元素,返回步驟二(71); 步驟二(71):從邊界網格元素結點集合A中取出一個網格元素結點(3,2),將所述網格元素結點(3,2)加入中間網格元素結點集合C,并將所述的網格元素結點(3,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,2)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點(3,2)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= { (3,3),(3,4)} 洼地網格元素結點集合B為 B= { }
中間網格元素結點集合C為, C={(1, 2),(2,2),(1,3)} 進入步驟四(72);
步驟四(72)邊界網格元素結點集合A有元素,返回步驟二(73); 步驟二(73):從邊界網格元素結點集合A中取出一個網格元素結點(3,3),將所述網格元素結點(3,3)加入中間網格元素結點集合C,并將所述的網格元素結點(3,3)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,3)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點(3,3)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= {(3,4)}
洼地網格元素結點集合B為 B= { }
中間網格元素結點集合C為, C={(1, 2),(2,2),(1,3)} 進入步驟四(74);
步驟四(74)邊界網格元素結點集合A有元素,返回步驟二(75); 步驟二(75):從邊界網格元素結點集合A中取出一個網格元素結點(3,4),將所述網格元素結點(3,4)加入中間網格元素結點集合C,并將所述的網格元素結點(3,4)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(3,4)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點(3,4)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= { }洼地網格元素結點集合B為 B= { }中間網格元素結點集合C為, C={(1,2),(2,2),(1,3)} 進入步驟四(76);步驟四(76)邊界網格元素結點集合A為空,進入步驟五(77); 步驟五(77)將中間網格元素結點集合C的所有網格元素結點加入到邊界網格結點集合A,同時將中間網格元素結點集合C設置為空, 邊界網格元素結點集合A為 A={(1, 2),(2,2),(1,3) } 洼地網格元素結點集合B為 B= { }中間網格元素結點集合C為, C= { }邏輯變量T為1,設置T等于0,回到步驟二(78);步驟二(78):從邊界網格元素結點集合A中取出一個網格元素結點(1,2),將所述網格元素結點(1,2)加入中間網格元素結點集合C,并將所述的網格元素結點(1,2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,2)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點(1,2)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= {(2, 2),(1,3) } 洼地網格元素結點集合B為 B= { }中間網格元素結點集合C為, C= { }進入步驟四(79);步驟四(79)邊界網格元素結點集合A有元素,返回步驟二(80); 步驟二(80):從邊界網格元素結點集合A中取出一個網格元素結點0,2),將所述網格元素結點O, 2)加入中間網格元素結點集合C,并將所述的網格元素結點O, 2)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點0,2)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點0,2)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= {(1,3) }洼地網格元素結點集合B為B= { }中間網格元素結點集合C為, C= { }進入步驟四(81);步驟四(81)邊界網格元素結點集合A有元素,返回步驟二(82); 步驟二(82):從邊界網格元素結點集合A中取出一個網格元素結點(1,3),將所述網格元素結點(1,3)加入中間網格元素結點集合C,并將所述的網格元素結點(1,3)從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,所述的邊界網格元素結點(1,3)的相鄰網格元素結點沒有在洼地網格元素結點集合B中,則將所述的邊界網格元素結點(1,3)從中間網格元素結點集合C中刪除, 邊界網格元素結點集合A為 A= { }洼地網格元素結點集合B為 B= { }中間網格元素結點集合C為, C= { }進入步驟四(83);步驟四(83)邊界網格元素結點集合A為空,進入步驟五(84); 步驟五(84)將中間網格元素結點集合C的所有網格元素結點加入到邊界網格結點集合A,同時將中間網格元素結點集合C設置為空,邏輯變量T為0,進入步驟六(85); 步驟六(85)邊界網格元素結點集合A為空,進入步驟七(86); 步驟七(86)輸出洼地填平處理后的各個網格元素結點高程為, 第1行第1列高程5 第1行第2列高程3 第1行第3列高程2 第1行第4列高程3 第2行第1列高程3 第2行第2列高程3 第2行第3列高程2 第2行第4列高程3 第3行第1列高程2 第3行第2列高程2 第3行第3列高程2 第3行第4列高程3 方法結束。
權利要求
1.一種數字高程模型洼地的填平處理方法,其特征在于步驟一設置一個m行η列網格矩陣M用于記錄地形網格高程數據,其中m和η分別為大于1的正整數,網格矩陣M中的每個網格元素結點設置一個浮點變量H,其中浮點變量H 記錄地形網格高程,設置一個邊界網格元素結點集合Α、一個洼地網格元素結點集合B和一個中間網格元素結點集合C,洼地網格元素結點集合B的初始值為所有的內部網格元素結點,內部網格元素結點為網格矩陣M中()時的第i行第j列的網格元素結點,邊界網格元素結點集合A的初始值為所有邊界網格元素結點,邊界網格元素結點為網格矩陣M中內部網格元素結點的以外的其他網格元素結點,中間網格元素結點集合C的初始值為空,其中, 設置邏輯變量T,初始值T為0,進入步驟二 ;步驟二 從邊界網格元素結點集合A中取出一個網格元素結點,將所述網格元素結點加入中間網格元素結點集合C,并將所述的網格元素結點從邊界網格元素結點集合A中刪除,檢查所述的網格元素結點相鄰的所有網格元素結點,如果所述的邊界網格元素結點的相鄰網格元素結點有在洼地網格元素結點集合B中,則將洼地網格元素結點集合B中的相鄰網格元素結點作為相鄰洼地網格元素結點,則進入步驟三,否則將所述的邊界網格元素結點從中間網格元素結點集合C中刪除,進入步驟四;步驟三如果所述的相鄰洼地網格元素結點的高程低于邊界網格元素結點,進入步驟四,否則將該相鄰洼地網格元素結點加入中間網格元素結點集合C,并將所述的相鄰洼地網格元素結點從洼地網格元素結點集合B中刪除,設置邏輯變量T為1,進入步驟四; 步驟四如果邊界網格元素結點集合A為空,則進入步驟五,否則返回步驟二 ; 步驟五將中間網格元素結點集合C的所有網格元素結點加入到邊界網格結點集合A, 同時將中間網格元素結點集合C設置為空,如果邏輯變量T為0,進入步驟六,否則設置T等于0,回到步驟二 ;步驟六如果邊界網格元素結點集合A為空,進入步驟七,否則查找邊界網格元素結點集合A所有網格元素結點中的最小高程h,將小于最小高程h的洼地網格元素結點集合B中所有網格元素結點對應的地塊填平至最小高程h,同時將洼地網格元素結點集合B中網格元素結點高程H小于最小高程h的所有網格元素結點高程設置為h,回到步驟二 ; 步驟七輸出洼地填平處理后的各個網格元素結點高程。
2.根據權利要求1所述的一種數字高程模型洼地的填平處理方法,其特征在于, 所述網格元素結點相鄰網格元素結點的查找方法如下假設一個第i行第j列網格元素結點,如果i,j的取值為,相鄰的網格元素結點有八個,分別為第i_l行第j-ι列網格元素結點、第i_l行第j列網格元素結點、第i_l行第j+Ι列網格元素結點、第i行第j_l列網格元素結點、第i行第j+Ι列網格元素結點、第i+Ι行第j_l列網格元素結點、第i+Ι行第j列網格元素結點、第i+Ι行第j+Ι列網格元素結點,如果i,j的取值為 Z = Uc,則相鄰網格元素結點有五個,分別為第1行第j-Ι列網格元素結點、第1行第 j+Ι列網格元素結點、第2行第j-Ι列網格元素結點、第2行第j列網格元素結點、第2行第 j+Ι列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有五個,分別為第m-1行第 j-Ι列網格元素結點、第m-1行第j列網格元素結點、第m-1行第j+Ι列網格元素結點、第m 行第j_l列網格元素結點、第m行第j+Ι列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有五個,分別為第i-Ι行第1列網格元素結點、第i-Ι行第2列網格元素結點、第i 行第2列網格元素結點、第i+Ι行第1列網格元素結點、第i+Ι行第2列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有五個,分別為第i_l行第n-1列網格元素結點、第 i-Ι行第η列網格元素結點、第i行第n-1列網格元素結點、第i+Ι行第n_l列網格元素結點、第i+Ι行第η列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有三個,分別為第1行第2列網格元素結點、第2行第1列網格元素結點、第2行第2列網格元素結點,如果i,j的取值為 = = ,則相鄰網格元素結點有三個,分別為第1行第n-1列網格元素結點、第2行第n-1列網格元素結點、第2行第η列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有三個,分別為第m-1行第1列網格元素結點、第m-1行第2列網格元素結點、第m行第2列網格元素結點,如果i,j的取值為,則相鄰網格元素結點有三個,分別為第 m-Ι行第n-1列網格元素結點、第m-1行第η列網格元素結點、第m行第n_l列網格元素結點ο
3.根據權利要求1所述的一種數字高程模型洼地的填平處理方法,其特征在于,所述的輸出洼地填平處理后的各個網格元素結點高程為輸出每個行列網格元素結點及其對應的高程。
全文摘要
一種數字高程模型洼地的填平處理方法,通過設置邊界網格元素結點集合、洼地網格元素結點集合和中間網格元素結點集合,檢查邊界網格元素結點集合中的每個網格元素結點,如果邊界網格元素結點的相鄰結點不在洼地集合中,則將該網格元素從邊界結點集合中刪除,如果相鄰洼地網格元素結點為非洼地網格,則將該相鄰洼地網格元素結點的加入邊界網格元素結點集合,如果邊界網格元素結點集合和洼地網格元素結點集合中有任何網格元素結點被處理,則重新檢查邊界網格元素結點集合中的每個網格元素結點,否則將洼地網絡集合中的洼地網格元素結點填充,本發明能夠處理由于數據獲取和內插過程中的誤差所引起的洼地,避免在水流地形分析產生不正確的結果。
文檔編號G06T17/05GK102542607SQ20111041960
公開日2012年7月4日 申請日期2011年12月15日 優先權日2011年12月15日
發明者李杰友, 程光, 薛聯青, 郝振純 申請人:河海大學