配電網autocad設計圖自動識別方法
【技術領域】
[0001 ]本發明涉及配電網的規劃設計技術領域,具體來說涉及一種配電網AUTOCAD設計圖自動識別方法。
【背景技術】
[0002]現在配電網的規劃設計一般是工程人員用AUTOCAD或其它類似的工具完成。產生的設計圖的格式為CAD格式。同時,配電網的線路的一般需要在地理信息系統(GIS)中管理和展現,因此,需要專業的人員將這些CAD格式的配電網設計圖重新畫到GIS中去。例如:CAD設計人員在設計圖上畫出了如圖1所示的圖形代表配電網中的某種設備,那么GIS開發人員需要按照CAD圖的內容,將某種設備的圖重新畫到GIS系統中去。
[0003]如果將CAD格式的設計圖自動的導入GIS系統,則CAD圖中的一個器件體現為GIS系統中的一組空間數據。例如,一個變壓器體現為若干個線,或點或多邊形的組合。因此,需要解決的問題是如何將這些空間數據的組合識別成一個器件。
[0004]具體來說,根據OGC規范要求,GIS系統的空間數據類型包括:點(POINT)、線(LINESTRING)、多邊形(POLYGON)、多點(MULTIPOINT)、多線(MULTILINESTRING)、多多邊形(MULTIPOLYGON)和集合對象集(GE0METRYC0LLECT10N)等。例如:
[0005].POINT(OO)——點
[0006]* LINESTRING(00,11,12)——線
[0007].P0LYG0N((00,40,44,04,00),(11,21,22,12,11))——面
[0008].MULTIP0INT(00,12)——多點
[0009].MULTILINESTRING((00,11,12),(23,32,54))——多線
[0010].MULTIP0LYG0N(((00,40,44,04,00),(11,21,22,12,11)),((-1-1,-1-2,-2-2,-2-1,-1-1)))——多面
[0011 ].GE0METRYC0LLECT10N(P0INT(23),LINESTRING( (23,34)))——幾何集合
[0012]本質上說,空間數據的基本元素為點和線,其它的元素都是點和線的組合,或者是組合的組合。如上文中提到的“面”(或多邊形)為多條線的組合。幾何集合就是組合的組合。
[0013]但要將一組點和線的組合由程序自動的識別成一個配電網的器件,是存在一定的技術難度的。特別是CAD圖中,不同的人的對同一器件的畫法并不完全一致。例如:
[0014]-CAD圖上的器件有不同大小,不同的朝向,識別算法需要能夠識別。
[0015].CAD圖是手工畫的,不標準。例如:
[0016]-畫一個正方形,有些人畫一個多邊形,這樣一個正方形只有4個點,4條線。但有些人會畫4根線。線的起點和終點看起來相連,但實際可能不相連。這樣就有8個點,4條線。
[0017]-畫一個圓,有些人用20邊形來畫,有些人用30邊形來畫。這樣特征點個數是不同的。
[0018]基于上面描述的技術難度,現在通常的做法并不是由軟件系統自動的將CAD圖轉換識別成GIS系統的圖。而是采用人工的方式,按照CAD格式的配電網設計圖,將其中的一個一個的部件輸入到GIS系統中去。這樣用人工的方式去做,存在以下一些缺點:
[0019]一需要花費大量的人力物力。特別是如果需要將低壓線路的CAD格式的配電網設計路都輸入到GIS系統中去,那么工作量之巨大,是人力難以實現的。
[0020]一數據的準確性也難以得到保證。由于人工的數據識別和輸入,錯誤是難以避免的。
【發明內容】
[0021]本發明所要解決的技術問題,就是提供一種CAD格式的配電網設計圖的自動識別方法,本方法可以將CAD格式的配電網設計圖自動的導入到GIS系統中,并且在GIS系統中可以識別出配電網的各種設備。
[0022]為解決上述技術問題,本發明采用的技術方案如下:
[0023]一種配電網AUTOCAD設計圖自動識別方法,包括樣本數據庫的建立和對CAD設計圖中的設備進行識別兩個過程:
[0024]I)所述樣本數據庫的建立的具體過程如下:
[0025]1.1)將原樣本圖放入單位大小的柵格中,如果原樣本圖與某柵格有交集,則取柵格的中央點,作為樣本點,這樣得到該設備的所有的樣本點。
[0026]1.2)將該樣本進行旋轉n*45度(n = l,2,3,4,…8),進行上述步驟1.1,則對于一個樣本圖例,在平面上進行旋轉,每旋轉45度產生一個樣本,在一個平面上可以產生360度/45度=8個角度的樣本數據。或者,為了要達到更高的識別精度,也可將樣本進行n*22.5度(η= 1,2,3,4,...16)的旋轉,產生16個角度的樣本數據。
[0027]1.3)對所有的要識別的設備,按照步驟1.1)和1.2)中的描述進行樣本數據庫的建立。
[0028]2)所述對CAD設計圖中的設備進行識別的具體過程如下:
[0029]2.1)設備特征點的提取:
[0030]2.2)對待識別的CAD設計圖中的設備進行規一化;
[0031 ] 2.3)將設備特征點與樣本庫進行比對和識別。
[0032]所述步驟2.1)的具體過程如下:
[0033]2.1.1)將CAD設計圖上的第一個點dl放入一個集合SI內
[0034]2.1.2)對于每一個CAD設計圖上的點dn(η = 2,3,…),判斷該點dn與之前的其它點dx(x=l,2,..n-l)的距離;如果距離小于某個設定的門限,則將它與該點放入同一個集合S內;如果點dn與之前所有其它點dx(x = l,2,..n-l)的距離都大于設定的門限,則將點dn放入一個新產生的集合Sx(x = 2,3,...)內;
[0035]2.1.3)重復步驟2.1.1)和2.1.2)直至CAD設計圖中的所有點都被處理。則所有屬于同一個集合中的所有點屬于同一個設備。
[0036]所述步驟2.2)對待識別的CAD設計圖中的設備進行規一化,具體包括了:對設備大小及位置的歸一化和對設備特征點個數的規一化。
[0037]A)對設備大小及位置的歸一化具體過程如下:
[0038]CAD圖上,一個設備的數據表達為:
[0039]-點的集合:((11,(12,."(111)其中(1;[(1= 1...]!) = (Longi tude_i , Latitude_i);
[0040]-點的連線:為一個行和列都為dl,d2,…dn的方陣。其中方陣的值為I或0,代表任意兩個點di和dj之間是否有連接;
[0041]先把(dl,d2,..dn)做規一化,使它與圖形的大小及經瑋度位置無關:
[0042]2.2.1)先取所有點的中心點C,即將點集合(dl,d2,..dn)中最大的經瑋度與最小經瑋度做算術平均。即 C=((max(longitudel,."longitudeN)+min((longitudel,...longitudeN))/2,(max(latitudel, ???latitudeN)+min((latitudel,???latitudeN))/2,
[0043]2.2.2)將點乜的經瑋度換算為(乂丨,¥1):
[0044]Xi = (X1-Xc)/(Xmax-Xmin),其中Xi為點Di的經度,Xe為中心點經度,Xmax/min為最大/小的經度;
[0045]Yi = (Y1-Yc)/(Ymax-Ymin),其中 Yi 為點 Di 的瑋度,Xe 為中心點瑋度,Xmax/min 為最大/小的瑋度;
[0046]這樣,圖的大小就變成了Ixl的大小,圖所在的經瑋度位置也無關了。
[0047]B)對設備特征點個數的規一化具體過程為:設定一個柵格的大小,所有在柵格內的點,做平均,然后歸一化成一個點。
[0048]步驟2.3)將設備特征點與樣本庫進行比對和識別的具體過程如下:
[0049]計算待識別的CAD設計圖中的設備與樣本庫中的每一個樣本的距離:
[0050]對如下三個方面a)_c)分別計算待識別樣本與數據庫中樣本的距離,并對三個距離進行加權平均以計算總的距離:
[0051]a)特征點的輪廓的匹配程度
[0052]b)特征點顏色的匹配程度
[0053]c)特征點之間的連接關系的匹配程度
[0054]對于以上三個方面a)_c)分別計算出的三個距離值進行加權平均時,每個距離值的權重可以通過對訓練數據的線性回歸得到。
[0055]上述步驟a)中,特征點輪廓的匹配程度可以由特征點輪廓的距離來表征,特征點輪廓的距離的計算方法為:
[0056]al)待識別樣本的特征點為:dl,d2, '"dn
[0057]&2)數據庫中某一設備某一角度的特征點為:&1,&2,...
[0058]83)基于特征點輪廓計算的距離為:(1丨8七31106_1 = 891'1:((1丨81:((11 ,bl)'2+dist(d2,b2) '2+---+dist(dn-bn) '2),其中bi(i = l..η)是(al,a2,…am)中距離di最近的點。
[°°59] a4)由于di (i = 1..n),a j (j = 1..m)均是一個由經瑋度計算得到的2維坐標點(x,y),所以距離就是二維平面中的距離 dist(di,aj) = sqrt((X_d1-X_ajr2+(Y_d1-Y_ajr2))。
[0060]上述步驟b)中,特征點顏色的匹配程度可以由特征點顏色的距離來表征,特征點顏色的距離的計算方法為:
[0061 ] bl)待識別樣本的特征點為:dl,d2,."dn
[0062]匕2)數據庫中某一設備某一角度的特征點為: