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

?

基于典型房屋形狀的碎部點自動連線方法研究

2019-12-23 03:15
福建質(zhì)量管理 2019年22期
關(guān)鍵詞:連線直角矩形

(青島云世紀信息科技有限公司 山東 青島 266000)

本文主要是基于VS2010平臺,利用ArcGIS Engine二次開發(fā)控件以及C#編程語言來實現(xiàn)基于典型房屋碎部點自動連線的方法,主要研究成果有:(1)基于矩形房屋三點繪房及直角化處理;(2)單個獨立典型房屋碎部點自動連線;(3)從批量房屋碎部點中分析判斷出能構(gòu)成同一房屋的碎部點,并自動連線成與實際相符的房屋形狀。

一、緒論

(一)研究目的和意義

目前,我國常規(guī)大比例尺地形圖的主要成圖方法是數(shù)字化測圖。但是,基于測記法的數(shù)字化測圖過程比較復雜,而且內(nèi)業(yè)繪圖的工作量也較大。如果內(nèi)業(yè)人員不能對測區(qū)進行實地勘察并且內(nèi)、外業(yè)工作人員之間溝通不夠細致可能會影響成果圖的準確度。因此,希望通過實現(xiàn)碎部點的自動連線來減少外業(yè)測量的人數(shù)、內(nèi)業(yè)數(shù)據(jù)處理人員的工作量以及內(nèi)業(yè)無法進行實地勘測的問題。

(二)研究內(nèi)容

本文主要研究的是典型房屋碎部點自動連線方法,預期目標主要分為以下幾點:①簡單線、面自動連線;②基于矩形房屋三點繪房及直角化處理;③單個獨立典型房屋碎部點自動連線;④從批量房屋碎部點中分析判斷出能構(gòu)成同一房屋的碎部點,并自動連線成與實際相符的房屋形狀。

二、典型矩形房屋自動連線方法研究

(一)典型矩形房屋自動連線工作流程

本文主要根據(jù)房屋碎部點的個數(shù),從少到多,依次完成單個獨立房屋碎部點的連線;然后根據(jù)典型房屋的某些特性,將批量的房屋碎部點坐標進行分析,判斷出能構(gòu)成同一房屋的碎部點并自動連成與實際相符的獨立房屋形狀,最終實現(xiàn)典型房屋碎部點自動連線功能。

由于測量過程中存在誤差,得到的房屋相鄰輪廓邊之間就不能完全垂直,因此需要對其進行直角化處理,本文主要以三點繪房為例進行了三點直角化平差方法的研究。

(二)基于矩形房屋的三點繪房原理

1.直角化處理[8-11]

如圖1所示,假設測量得到的點為A、B、C,其坐標分別為(x1,y1)、(x2,y2)、(x3,y3),并且矢量a,b分別為:a=(x2-x1,y2-y1);b=(x3-x2,y3-y2)。設坐標平差值為:Xi=xi+Vxi;Yi=yi+Vyi,其中:i=1,2,3;Vi為坐標改正數(shù)。

圖1 三點直角平差原理圖

當滿足平差關(guān)系時,平差條件方程為:

(X2-X1)(X3-X2)+(Y2-Y1)(Y3-Y2)=0

(2-1)

線性化方程為:

-(x3-x2)Vx1+(x3-2x2+x1)Vx2+(x2-x1)Vx3

-(y3-y2)Vy1+(y3-2y2+y1)Vy2+(y2-y1)Vy3

+(x2-x1)(x3-x2)+(y2-y1)(y3-y2)=0

(2-2)

即:

AV+W=0

(2-3)

又通過參考文獻[11]可知:

V=QATK

(2-4)

(2-5)

Naa=AP-1AT

(2-6)

已知上式中Q與P為單位矩陣,將公式(2-5)帶入(2-4)中可得:

V=-AT(AAT)-1W

(2-7)

從公式(2-2)可得:

A=[-(x3-x2)x3-2x2+x1x2-x1-(y3-y2)y3-2y2+y1y2-y1];

W=(x2-x1)(x3-x2)+(y2-y1)(y3-y2),A為一行六列的矩陣,W為定值,將其分別帶入公式(2-6)便可計算改正數(shù)大小,從而計算平差后坐標。

2.確定第四點坐標并實現(xiàn)矩形房屋自動連線

圖2 三角形相似性確定第四點

如圖2所示,已知1,2,3點坐標且a與b邊長相等,∠1-3-2等于∠3-2-4,故第四點坐標可通過角度、距離平移得到,即沿2→3方向,旋轉(zhuǎn)∠3-2-4并平移距離b得到。

通過分析可知若以點1為起始點連線,則連線順序有:① 1→2→3→4→1;② 1→3→2→4→1;③ 1→2→4→3→1;④ 1→4→3→2→1;⑤ 1→4→2→3→1;⑥ 1→3→4→2→1。從連接順序上可以看出,只有在點1、3不直連并且位于圖形對角線上時才能得到想要的矩形房屋。由于矩形對角線大于矩形四條邊的長度,可以首先判斷矩形中任意一點到其余三點的距離,并以此點為起始點,判斷距離較長邊上的另一點,將其放到連線順序的第三位,其余兩點不做硬性要求,最后連線即可。

(三)單個典型房屋碎部點自動連線原理

通過參考文獻[5-7]及討論分析,得出以下兩種實現(xiàn)自動連線的方法:

1.利用垂直關(guān)系進行自動連線

步驟一:從房屋角點中確定任意三點構(gòu)成三角形,并依次計算三角形的三個內(nèi)角;

步驟二:判斷并保留能構(gòu)成直角的三個點的組合;

步驟三:從步驟二中任選一個組合,將組合中的第一點確定為起始點,同時查找其余組合中前兩點與第一個組合中后兩點點號分別相同的組合作為連線的第二個組合。同理,依次查找其余連線組合直到組合之后一點與起始點相同時終止。

步驟四:將組合中的重復點刪除,然后按順序依次連線。

2.將單個房屋所有角點排列組合后連線

步驟二:判斷組合中每相鄰三點的夾角是否為直角。將每個組合按順時針方向排列,形成一個閉合環(huán),以任一點為起始點判斷每相鄰三點夾角是否為直角;

步驟三:當步驟二中所有相鄰的三點都能構(gòu)成直角時,則按照點號排列的順序依次連線最終實現(xiàn)獨立房屋自動連線功能。

(一)多個典型房屋碎部點自動連線原理

1.房屋碎部點展點;

3.判斷每個組合三點夾角是否為直角,將能構(gòu)成直角的組合放到一個集合T1中,從集合T1中判斷出前兩點相同的直角組合同時計算各組合中后兩個點之間距離并進行比較,最后保留距離最小的組合;

4.從集合T1中任選一個組合,將組合中的第一點確定為起始點,同時查找其余組合中前兩點與第一個組合中后兩點點號分別相同的組合作為連線的第二個組合,并放入集合T2中。同理,依次查找其余連線組合直到組合最后一點與起始點相同時終止;

5.刪除集合T2中的重復點,然后依次連線。

三、典型矩形房屋自動連線實驗分析

(一)基于矩形房屋的三點繪房實驗分析

基本算法流程圖如圖3所示:

圖3 基于矩形房屋三點繪房基本算法流程圖

成果展示:

(a)平差前 (b)平差后

(二)單個典型房屋碎部點自動連線實驗分析

1.利用垂直關(guān)系進行自動連線

基本算法流程圖如圖5所示:

圖5 利用垂直關(guān)系自動連線基本算法流程圖

在圖5中第二個判斷“構(gòu)成閉合圖形”的條件主要是利用上文中步驟三中提到的原理,依次查找其余連線組合直到組合之后一點與起始點相同時終止。

如圖6,六點房屋中經(jīng)常會出現(xiàn)如∠0-2-5為直角的情況,同理∠1-2-0也可能為直角。則連線可能出現(xiàn)1→4→2→3→5→2→0→1,1→4→2→3→5→2→4→1等情況,與實際不符。

圖6 六點房屋中存在特殊直角時圖形

分析發(fā)現(xiàn),獨立房屋最后連線順序有很多種情況,可以以任意點為起點按順時針或逆時針方向連線,如圖6可能的正確連線情況有:1→4→2→3→5→0,4→1→0→5→3→2,2→3→5→0→1→4等,且其每相鄰三點之間夾角為90°。故得到房屋角點按點號排列組合后判斷每相鄰三點夾角后連線的方法。

2.將單個房屋所有角點排列組合后連線實驗分析

以六點房屋為例基本算法流程如圖7所示:

圖7 單個房屋所有角點排列組合后連線基本算法流程圖

圖8 獨立典型房屋自動連線成果圖

最終實驗成果如圖8所示。

(四)多個典型房屋碎部點自動連線實驗分析

通過分析實驗得到以下方法:

1.建立三個集合T1、T2、T3,將所有碎部點任意三點排列組合后將能夠成直角的組合放到集合T1中。

2.將T1中組合按連線順序重新排列放到T2中,連線順序即從集合T2中任選一個組合,將組合中的第一點確定為起始點,同時查找其余組合中前兩點與第一個組合中后兩點點號分別相同的組合作為連線的第二個組合。依次查找其余連線組合直到組合最后一點與起始點相同時則再任選組合重復上面排列方式知道所有組合排列完成。

3.從T2中提取可以構(gòu)成閉合圖形的房屋點放到集合T3中。能構(gòu)成閉合圖形的主要判斷條件是看起始組合的第一個點與結(jié)束組合的第三個點是否相同。

上述三個集合T1、T2、T3都為動態(tài)集合。其中集合T3中的組合為構(gòu)成單個房屋的組合集,在連線結(jié)束后則將其清空并重新存放下一個房屋的組合集,而集合T1、T2只是在不斷增加組合的動態(tài)集合。

基本算法流程如圖9所示:

圖9多個典型房屋碎部點自動連線基本流程圖

圖10中13-20點繪圖出現(xiàn)錯誤,經(jīng)調(diào)試發(fā)現(xiàn)其連線組合為:18→19→20,19→20→13,20→13→17,13→17→16,17→16→15,16→15→14,15→14→18,故最終連線順序為18→19→20→13→17→16→15→14→18。而正確的連接順序應為:18→19→20→13→14→15→16→17→18。

圖10 多個房屋自動連線成果圖

圖11 程序改進后多個房屋自動連線效果圖

因為以20→13開始的組合有:20→13→14、20→13→17、20→13→18,所以又在程序中添加了距離判斷,保留距離最小的組合。所以計算13→14、13→17、13→18之間距離并比較大小,顯然13→14之間距離最小,保留組合20→13→14。程序改進后連線結(jié)果如圖11所示。

四、總結(jié)

(一)主要研究成果

本文主要是對大比例尺野外測量下的典型房屋碎部點進行的自動連線功能的研究,實現(xiàn)的基本功能包括:

1.基于矩形房屋三點繪房及直角化處理;

2.單個獨立典型房屋碎部點自動連線;

3.從批量房屋碎部點中分析判斷出能構(gòu)成同一房屋的碎部點,并自動連線成與實際相符的房屋形狀。

(二)存在的問題

1.本課題研究成果僅適用于直角房屋(即相鄰房屋輪廓邊相互垂直的房屋)碎部點的自動連線。而對于特殊形狀(如圓弧形)的房屋,并不能完成其碎部點的自動連線。

2.垂直關(guān)系的確定。野外測量過程中總會存在一定誤差,因此典型房屋相鄰兩條輪廓邊之間并不能完全垂直,因此需要確定一個閾值來作為限值。本文此確定的是87°到93°,即誤差在±3°以內(nèi)則確定為垂直,但是實際測量過程中應參考具體測量標準來確定。

猜你喜歡
連線直角矩形
快樂連線
快樂連線
快樂連線
兩矩形上的全偏差
多少個直角
巧用“一線三直角”模型解題
快樂連線
化歸矩形證直角
初識“一線三直角”
從矩形內(nèi)一點說起
海阳市| 昌黎县| 临邑县| 思南县| 宜宾市| 商河县| 新晃| 分宜县| 保亭| 平原县| 蒙自县| 元氏县| 抚顺市| 高安市| 广元市| 大兴区| 无锡市| 商丘市| 余庆县| 凭祥市| 微山县| 井冈山市| 城口县| 华坪县| 商城县| 大石桥市| 达尔| 兴文县| 安福县| 麻阳| 余干县| 石嘴山市| 泰宁县| 武宣县| 邮箱| 林甸县| 洪雅县| 宜川县| 龙胜| 南郑县| 新乡县|