国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

抗差估計(jì)結(jié)合ObjectARX.NET技術(shù)在坐標(biāo)轉(zhuǎn)換中的應(yīng)用

2022-04-02 08:06:42浩歲秀珍虞獻(xiàn)軍樓亨龐
測(cè)繪地理信息 2022年2期
關(guān)鍵詞:抗差圖件控制點(diǎn)

陳 浩歲秀珍虞獻(xiàn)軍樓亨龐

1義烏市大地?cái)?shù)字測(cè)繪有限公司,浙江 義烏,322000

2義烏市地理信息中心,浙江 義烏,322000

3義烏市勘測(cè)設(shè)計(jì)研究院,浙江 義烏,322000

為滿(mǎn)足城市建設(shè)需要,我國(guó)使用的坐標(biāo)系統(tǒng)有1954北京坐標(biāo)系、1980西安坐標(biāo)系以及各個(gè)城市的地方獨(dú)立坐標(biāo)系,隨著2000國(guó)家坐標(biāo)系在全國(guó)范圍內(nèi)全面啟用,以往坐標(biāo)系統(tǒng)紛紛退出歷史舞臺(tái)[1-3]。在投影中央子午線(xiàn)相同的前提下,將原有坐標(biāo)系統(tǒng)轉(zhuǎn)換為國(guó)家2000坐標(biāo)系的過(guò)程中,經(jīng)常會(huì)遇到選取的公共點(diǎn)坐標(biāo)精度不一致,公共點(diǎn)誤差較大,公共點(diǎn)控制范圍不夠等眾多原因,從而導(dǎo)致轉(zhuǎn)換的坐標(biāo)精度低的問(wèn)題。經(jīng)典參數(shù)轉(zhuǎn)換模型[4]采用最小二乘法,其抗粗差性能較弱,一旦公共點(diǎn)存在粗差,會(huì)出現(xiàn)病態(tài)轉(zhuǎn)換模型,可能導(dǎo)致整個(gè)轉(zhuǎn)換結(jié)果無(wú)法達(dá)到精度要求。因此本文提出基于選權(quán)迭代法改進(jìn)模型來(lái)提高坐標(biāo)轉(zhuǎn)換模型的抗粗差能力,進(jìn)一步提高坐標(biāo)轉(zhuǎn)換的精度。

1 經(jīng)典坐標(biāo)轉(zhuǎn)換模型

坐標(biāo)轉(zhuǎn)換模型應(yīng)用最為廣泛的有四參數(shù)模型、七參數(shù)模型,在區(qū)域坐標(biāo)轉(zhuǎn)換過(guò)程中,四參數(shù)模型因其轉(zhuǎn)換精度較高,簡(jiǎn)便易掌握而被采用。四參數(shù)轉(zhuǎn)換模型是將不同的高斯投影平面坐標(biāo)利用2個(gè)平移參數(shù)、1個(gè)旋轉(zhuǎn)參數(shù)和1個(gè)尺長(zhǎng)因子進(jìn)行轉(zhuǎn)換。其數(shù)學(xué)模型如下:

式中,X1、Y1為待轉(zhuǎn)換坐標(biāo);X2、Y2為目標(biāo)轉(zhuǎn)換坐標(biāo);Δx0、Δy0為 平 移 參 數(shù);m為 尺 長(zhǎng) 因 子;R(θ)為 旋 轉(zhuǎn)矩陣。

由誤差方程:

式中,a=(1+m)cosθ,b=(1+m)sinθ。由間接平差法及最小二乘法可計(jì)算四參數(shù),其公式為:

利用兩個(gè)以上公共點(diǎn),根據(jù)式(5)可以計(jì)算出經(jīng)典坐標(biāo)轉(zhuǎn)換四參數(shù)。

2 選權(quán)迭代法的抗差估計(jì)算法

在實(shí)際測(cè)量工作中,通常選取的坐標(biāo)轉(zhuǎn)換公共點(diǎn)沒(méi)有理論上的精度,經(jīng)常會(huì)混入一些粗差點(diǎn),如若采用經(jīng)典坐標(biāo)轉(zhuǎn)換模型進(jìn)行轉(zhuǎn)換,根據(jù)現(xiàn)代測(cè)量平差理論[5],由于最小二乘法抗粗差性能差,公共點(diǎn)的精度較低或誤差較大勢(shì)必會(huì)降低整個(gè)模型的轉(zhuǎn)換精度。

選權(quán)迭代法的抗差估計(jì)是利用權(quán)函數(shù)對(duì)公共點(diǎn)進(jìn)行重新定權(quán)比,降低粗差公共點(diǎn)在參數(shù)計(jì)算中的作用,以此來(lái)提高轉(zhuǎn)換模型的精度。先利用最小二乘法解算的參數(shù)估值對(duì)公共點(diǎn)進(jìn)行坐標(biāo)轉(zhuǎn)換,當(dāng)某個(gè)公共點(diǎn)精度較低,坐標(biāo)轉(zhuǎn)換后的估值與原值差值較大,則認(rèn)為此公共點(diǎn)存在異常,根據(jù)選權(quán)迭代法重新定權(quán),重新解算參數(shù)估值。

1)Tukey權(quán)函數(shù)法:

2)Huber權(quán)函數(shù)法:

3)IGG1權(quán)函數(shù)法:

式中,c0、k0、k1稱(chēng)為調(diào)和系數(shù);σ0為公共點(diǎn)中誤差。

選權(quán)迭代坐標(biāo)轉(zhuǎn)換模型的計(jì)算方法與步驟:

1)初始默認(rèn)公共點(diǎn)精度相同,制定初始權(quán)矩陣P0為單位矩陣;

2)運(yùn)用式(5)計(jì)算初始4個(gè)參數(shù)值,并求出公共點(diǎn)擬合殘差,根據(jù)選權(quán)迭代法式(7)~式(9),選擇合適方案,計(jì)算調(diào)節(jié)權(quán)重比因子ω,代入式(6)求出新的權(quán)矩陣P1;

3)多次重復(fù)步驟2),直至4個(gè)參數(shù)值的2次迭代變化值小于δ(一般取δ=10-4)停止迭代,得到的最終擬合參數(shù)即為最終值。

進(jìn)行迭代解算時(shí),由于迭代次數(shù)較多,需要選擇合適的編程語(yǔ)言進(jìn)行解算,MATLAB在解算矩陣運(yùn)算時(shí),簡(jiǎn)潔快速,但要與ObjectARX.NET技術(shù)結(jié)合難度較大,同時(shí)MATLAB軟件龐大不利于快速安裝使用。因此,選擇采用.NET作為開(kāi)發(fā)平臺(tái),編程語(yǔ)言采用C#,在進(jìn)行矩陣解算時(shí),引入MathNet外部接口,其中LinearAlgebra.Double和LinearAlgebra.Generic兩個(gè)函數(shù)類(lèi)提供了選權(quán)迭代運(yùn)算需要的各矩陣運(yùn)算方法。

3 ObjectARX.NET技術(shù)實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換

測(cè)量中大量的圖件是使用AutoCAD進(jìn)行數(shù)字化存儲(chǔ),對(duì)AutoCAD圖件進(jìn)行坐標(biāo)轉(zhuǎn)換,國(guó)內(nèi)已有大量科研工作者發(fā)表相關(guān)文獻(xiàn)[7-11],但大多數(shù)是將AutoCAD圖件存儲(chǔ)為dxf格式文件,dxf文件是二進(jìn)制格式,通過(guò)分析dxf文件中的“組碼”,應(yīng)用編程語(yǔ)言提取相應(yīng)節(jié)點(diǎn)坐標(biāo),對(duì)節(jié)點(diǎn)坐標(biāo)進(jìn)行坐標(biāo)轉(zhuǎn)換,得到的新坐標(biāo)替換原dxf文件中的節(jié)點(diǎn)坐標(biāo),以此來(lái)實(shí)現(xiàn)AutoCAD圖件的坐標(biāo)轉(zhuǎn)換工作。此方法在處理過(guò)程中需要遍歷整個(gè)dxf文件組碼,根據(jù)“組碼”特征值分多種情況進(jìn)行實(shí)體節(jié)點(diǎn)坐標(biāo)轉(zhuǎn)換,整個(gè)過(guò)程轉(zhuǎn)換關(guān)系復(fù)雜,考慮因素眾多,且用戶(hù)界面互操作性差,無(wú)法依據(jù)用戶(hù)要求選擇指定圖元進(jìn)行坐標(biāo)轉(zhuǎn)換。

本文使用ObjectARX.NET技術(shù)生成動(dòng)態(tài)數(shù)據(jù)鏈接庫(kù)DLL文件,進(jìn)行AutoCAD圖件的坐標(biāo)轉(zhuǎn)換工作。AutoCAD二次開(kāi)發(fā)工具有VBA、LISP和ObjectARX,其中ObjectARX功能強(qiáng)大,快速訪問(wèn)圖形數(shù)據(jù)庫(kù),在.NET框架下使用ObjectARX能夠支持創(chuàng)建用戶(hù)界面、訪問(wèn)數(shù)據(jù)庫(kù)并支持開(kāi)發(fā)大型程序。ObjectARX.NET技術(shù)實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換的核心方法為:AutoCAD的dwg格式主要由實(shí)體對(duì)象(如線(xiàn)、圓弧、文本文件等)及非實(shí)體對(duì)象(如顏色、線(xiàn)寬、圖層等)構(gòu)建而成。每一個(gè)實(shí)體對(duì)象有唯一的標(biāo)識(shí)碼ObjectID,可以通過(guò)ObjectARX提供的GetObject()函數(shù)獲取相應(yīng)實(shí)體,再對(duì)實(shí)體進(jìn)行坐標(biāo)轉(zhuǎn)換。在ObjectARX專(zhuān)門(mén)提供了仿射變換TransformBy()函數(shù)與Matrix3d()(三維矩陣)類(lèi),Matrix3d類(lèi)可以用于幾何對(duì)象的平移、旋轉(zhuǎn)、投影、縮放、鏡像等功能。通過(guò)測(cè)量學(xué)中四參數(shù)模型將平移、旋轉(zhuǎn)、縮放的參數(shù)解算出來(lái),再將其代入Matrix3d類(lèi)函數(shù)以此實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換工作,測(cè)量學(xué)四參數(shù)模型與仿射變換三維矩陣轉(zhuǎn)換函數(shù)式為:

Matrix3d zbcs=Matrix3d.Scaling(scaleFactor,movepoint).

PostMultiplyBy(Matrix3d.Rotation(rotateAngle,Vector3d.ZAxis,movepoint)).

PostMultiplyBy(Matrix3d.Displacement(moveStartPnt.GetVectorTo(movepoint)));

上述函數(shù)式中movepoint為四參數(shù)求解得到的(Δy0,Δx0),因大地測(cè)量坐標(biāo)系與AutoCAD成圖坐標(biāo)系中X、Y方向相反,在此要變換;moveStartPnt為原轉(zhuǎn)換坐標(biāo)原點(diǎn)(0,0);rotateAngle為四參數(shù)解算的旋轉(zhuǎn)角θ;scaleFactor為四參數(shù)解算的尺長(zhǎng)因子m;Displacement()為平移函數(shù);Rotation()為旋轉(zhuǎn)函數(shù);Scaling()為縮放函數(shù)。

因四參數(shù)轉(zhuǎn)換過(guò)程中不涉及Z值的轉(zhuǎn)換,在變換過(guò)程中先獲取實(shí)體Z值屬性,最后再將其數(shù)值賦回。結(jié)合抗差估計(jì)算法的整個(gè)轉(zhuǎn)換流程如圖1所示。

圖1 圖件轉(zhuǎn)換流程Fig.1 Flow Chart of Map Conversion

4 CAD中坐標(biāo)轉(zhuǎn)換功能實(shí)現(xiàn)

1)控制點(diǎn)坐標(biāo)錄入。

本程序提供兩個(gè)控制點(diǎn)錄入方式,一是事先編寫(xiě)txt文本文件,根據(jù)文本文件錄入控制點(diǎn)坐標(biāo),二是直接根據(jù)DWG文件在圖件上拾取控制點(diǎn)坐標(biāo)信息。

2)粗差探測(cè)及參數(shù)解算。

根據(jù)控制點(diǎn)坐標(biāo)錄入信息及抗差估計(jì)算法,提供4種抗差估計(jì)算法模型,進(jìn)行粗差的探測(cè)及剔除粗差后,參數(shù)解算結(jié)果同時(shí)具有圖元坐標(biāo)轉(zhuǎn)換及存盤(pán)功能。

3)轉(zhuǎn)換實(shí)體精度分析。

利用本文研制的軟件與現(xiàn)今應(yīng)用廣泛的Arc-GIS、南方CASS軟件進(jìn)行坐標(biāo)轉(zhuǎn)換成果比較,驗(yàn)證軟件的可行性,通過(guò)轉(zhuǎn)換控制點(diǎn)中有粗差和無(wú)粗差兩種情況進(jìn)行精度分析,具體結(jié)果見(jiàn)表1。

表1 圖件轉(zhuǎn)換坐標(biāo)檢測(cè)差值/mmTab.1 Test of the Coordinates of Map Conversion/mm

對(duì)表1特征點(diǎn)進(jìn)行坐標(biāo)轉(zhuǎn)換中誤差計(jì)算可知,在控制點(diǎn)無(wú)粗差的情況下,本文研制的軟件與Arc-GIS、南方CASS軟件在圖件轉(zhuǎn)換精度上高度吻合,中誤差在2 mm以?xún)?nèi),表明本文軟件具有可行性,在圖件轉(zhuǎn)換過(guò)程中不存在額外精度損失,轉(zhuǎn)換方式可行;當(dāng)控制點(diǎn)中含有粗差,ArcGIS、南方CASS軟件的轉(zhuǎn)換精度明顯下降,圖件的轉(zhuǎn)換中誤差在5 cm以上,這兩種軟件不具有抵抗粗差的能力,而本文研制的軟件轉(zhuǎn)換的圖件坐標(biāo)精度損失不大,中誤差控制在5 mm內(nèi),擁有抵抗粗差的能力。

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

本文對(duì)經(jīng)典四參數(shù)模型進(jìn)行改進(jìn),提出抗差估計(jì)的迭代坐標(biāo)轉(zhuǎn)換模型。此模型與ObjectARX.NET技術(shù)結(jié)合研制了基于抗差估計(jì)算法的Auto-CAD圖件轉(zhuǎn)換軟件,經(jīng)過(guò)與商業(yè)軟件對(duì)比,本軟件具有抵抗粗差的能力,圖件轉(zhuǎn)換精度較高。在局部區(qū)域控制點(diǎn)稀少同時(shí)摻入異常值時(shí),本軟件能發(fā)揮出抵抗粗差的性能,提高整體轉(zhuǎn)換精度。隨著2000國(guó)家坐標(biāo)系使用,在偏遠(yuǎn)地區(qū)小范圍勘查時(shí),往往缺少高精度轉(zhuǎn)換控制點(diǎn)的情況下,適宜采用此方法來(lái)提高整個(gè)轉(zhuǎn)換區(qū)域的精度。

猜你喜歡
抗差圖件控制點(diǎn)
一種地質(zhì)圖件數(shù)據(jù)管理系統(tǒng)設(shè)計(jì)思路
遙感解譯成果圖件矢量化方法技術(shù)研究*
基于MapGIS和ArcGIS的遙感解譯成果圖件數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)
NFFD控制點(diǎn)分布對(duì)氣動(dòng)外形優(yōu)化的影響
改善單頻PPP參數(shù)收斂速度的抗差估計(jì)方法
基于風(fēng)險(xiǎn)管理下的項(xiàng)目建設(shè)內(nèi)部控制點(diǎn)思考
相似材料模型中控制點(diǎn)像點(diǎn)坐標(biāo)定位研究
地形簡(jiǎn)化對(duì)DEM不確定性的抗差性研究
基于抗差最小均方估計(jì)的輸電線(xiàn)路參數(shù)辨識(shí)
SDCORS在基礎(chǔ)地理信息控制點(diǎn)補(bǔ)測(cè)中的應(yīng)用
新疆| 宁明县| 敦化市| 花垣县| 咸丰县| 沭阳县| 华池县| 雅安市| 象山县| 普安县| 桐城市| 乃东县| 北川| 大石桥市| 佛冈县| 葵青区| 松江区| 青田县| 海林市| 崇明县| 巢湖市| 安远县| 安吉县| 大城县| 元阳县| 东乡县| 铁岭市| 洛扎县| 湖北省| 武城县| 灵石县| 修文县| 廉江市| 山阴县| 通许县| 东乡| 宣城市| 贵溪市| 瑞昌市| 南汇区| 洛浦县|