吳美容
(江蘇蘭德數碼科技有限公司,江蘇南京 210007)
基于TIN設計的地形圖精度檢測軟件
吳美容?
(江蘇蘭德數碼科技有限公司,江蘇南京 210007)
目前國內行業商用軟件如CASS、廣州開思等在地形圖高程精度評定方面相對較弱。以往都是采用手工逐點量距內插計算檢測點位的高程并進行高程中誤差統計,若碰到幾百個檢測點,手工計算工作量非常大而且容易出錯,因此根據工作需要研制開發基于AutoCAD平臺的地形圖精度檢測軟件就變得很有意義,借助程序計算代替傳統的手工計算使得工作效率大為提高。實踐證明,軟件設計思路明晰,算法可靠。
地形圖;精度;高程;中誤差;軟件
工程建設前期均須測繪大比例尺原始地形圖,以作為設計人員規劃設計之用。目前,測繪單位常采用全站儀、RTK或近景攝影測量進行外業碎部點數據采集,然后運用行業成圖軟件生成地形圖。地形圖精度是否達到規范要求,需要進行精度檢測。檢測分為平面精度檢測和高程精度檢測,二者可以分開進行也可以同時進行。CASS 7.1檢查入庫菜單里面點位誤差檢查和邊長誤差檢查即是針對平面精度檢測。實踐中一般采取以下三種方法針對高程精度進行檢測:①點位還原法,即從所有碎部點數據中隨機抽取總點數的10%~20%個數據,全站儀利用點的平面坐標采用極坐標法于實地放樣出該點,然后測量點位二次高程并且與點位的一次高程進行比較,最后根據所抽取的子樣統計得出的中誤差來估計總體的精度;②剖面法,即檢測人員于實地進行斷面測量,內業根據斷面數據文件生成斷面圖并與根據地形圖所剖得到的斷面圖進行比較;③檢查點法,即檢測人員在測區內采集任意點位三維數據,點位要求覆蓋整個測區要有一定的密度且分布均勻,然后展點到所生成的地形圖中去,采用內插的方法計算點位的圖面高程并與點位的抽測高程進行比較,最后計算中誤差。該方法是實踐中比較常用的方法。本文正是基于第3種方法編寫地形圖精度檢測軟件。
2.1 構TIN
原始數據為?.dat格式文件。三角網構網算法歸為兩大類[1];即靜態三角網和動態三角網。靜態算法中以三角網生長算法較為典型,動態算法中則以數據逐點插入算法較為普遍。軟件基于文獻[2,3]介紹的構網思路采用三角網生長算法中的遞歸生長算法。該算法首先生成第一個三角形,然后由第一個三角形向外擴展直到最后聯結全部離散點構成Delaunay三角網。該算法涉及的相關判別法則限于篇幅,在此不作詳細闡述,直接給出構網結果,如圖1所示。

圖1 Delaunay三角網
2.2 展點
該部分將檢測數據(?.dat格式)展點到圖形中去。相關代碼:

2.3 檢測
該部分根據上面所生成的三角網及展點進行點位高程中誤差統計。
算法的基本流程:
程序首先建立兩個選擇集合,分別用于存放檢測點及三角形元素,其次建立雙循環結構對于檢測點集合中的每一個點元素遍歷三角網集合中的每一個三角形元素,并進行點與三角形位置關系的判斷,若位于某三角形則調用該三角形的頂點數據,采用線性插值的內插方法進行相應的內插計算,將結果放入指定的數組,最終程序建立與Excel的通訊將結果輸出到Excel指定區域。
算法的數據結構:

(1)判斷檢測點與三角網中三角形的關系[4]

圖2 點位關系判斷
思路:如圖2,△V1V2V3的三個頂點的坐標分別為V1(x1,y1),V2(x2,y2),V3(x3,y3),任一點P(x,y)。則點P和△V1V2V3的位置關系如下判定,L1、L2、L3定義如下:

判斷條件:
L1=0或L2=0或L3=0時點P在△V1V2V3的某一邊上;
L1>0且L2>0且L3>0或L1<0且L2<0且L3<0時點P在△V1V2V3內;
除去以上兩種情況時點P在△V1V2V3外。
代碼如下:

(2)計算檢測點在三角形中的高程[5][6]
思路:
使用空間三角形3個頂點數據確定一個平面,繼而計算出內插點的高程。
采用平面線性內插公式:ax+by+cz+d=0,其中:

代碼如下:

(3)循環計算并輸出[7,8,9]


以雅礱江某水電站壩區供水泵站原始地形檢測為例。

地形圖高程中誤差統計表 表1

圖3 高程誤差折線圖
結論:
(1)第27號點的高程偏差較大,分析可能系野外測量過程中棱鏡高輸入錯誤,棱鏡高值輸小了,需予以檢查。
(2)高程中誤差0.6 m滿足行業規范中關于山地、高山地高程中誤差不大于1 m的要求;但是根據高程誤差折線圖統計有23個點出現負值,占到總點數的76.7%,分析認為該原始地形有抬高的趨勢。對于工程建設而言,大面積抬高原始地形意味著增加土石方開挖量,無形中增加業主的投資成本。因此,即使高程中誤差滿足要求,也必須對抬高原始地形的趨勢予以關注控制。
(1)程序運用VBA語言編寫,在Win XP系統AtuoCAD 2004平臺下運行成功。具體運用時可將宏代碼添加到自定義菜單下面運用十分方便,具體代碼為:


(2)測繪人員將測繪原理與計算機語言結合起來進行二次開發能夠解決實際中出現的新問題,也提高了工作的效率。該軟件經過多個工程地形圖檢測實踐,證明其正確、實用,提高了內業成圖檢測的作業效率。
(3)程序設計每個點需要遍歷三角網并進行判斷、內插計算等操作。因此,點數越多,三角網越復雜,程序進行內插計算所花費的時間也越長。本程序的數據結構優化將是接下來需要研究的課題。
[1] 李志林,朱慶.數字高程模型(第二版)[M].武漢:武漢大學出版社,2003
[2] 劉友光,黃桂蘭,黃全義等.工程中數字地面模型的建立與應用及大比例尺數字測圖[M].武漢:武漢測繪科技大學出版社,1997
[3] 吳力新,史文中.地理信息系統原理與算法[M].北京:科學出版社,2003
[4] 龔健雅.地理信息系統基礎[M].北京:科學出版社,2001
[5] 張宏,溫永寧,劉愛利等.地理信息系統算法基礎[M].北京:科學出版社,2006
[6] 姜友誼,黎曉.數字地面模型內插方法的優劣分析[J].西安科技學院學報,2001,21(3)
[7] 佟士懋,邢芳芳,夏齊霄.AutoCAD ActiveX/VBA二次開發技術基礎及應用實例[M].北京:國防工業出版社,2006
[8] 佟彪.VB語言與測量程序設計[M].北京:中國電力出版社,2007
[9] 陳佳麗.Visual Basic程序設計基礎與實訓教程[M].北京:清華大學出版社,2005
Design Precision Examination Software of Topographic Map Based on TIN
Wu MeiRong
(Jiangsu Digitaland Technology Co.,Ltd.Nanjing 210007,China)
Commercial software,such as CASS and Guangzhou KAISI which are widely used in domestic S&M industry,are relatively weak in terms of Elevation accuracy evaluation.In the past,the elevation is calculated by manual interpolation then carries out statistics work of the elevation RME.If encountering hundreds of checkpoints or even more,the workload is enormous and manual calculation error is prone.So it is very necessary and meaningful to research and develop,based on AutoCAD platform,topographic map accuracy testing software.Instead of using traditional manual calculation,it makes efficiency of calculation greatly improved.Practice shows that the design ideas is clear,algorithm is reliable.
Topographical Map;Precision;Elevation;RMSE;Software
1672-8262(2010)03-134-04
P209
B
2010—10—29
吳美容(1982—),女,工程師,主要從事航測遙感內業技術工作。