石吉寶,張小波,張俊,陳軍勝,白曉明
(成都市勘察測繪研究院,四川成都 610081)
利用CASSSME實現GIS數據質量檢查的方法研究
石吉寶?,張小波,張俊,陳軍勝,白曉明
(成都市勘察測繪研究院,四川成都 610081)
從分析數據加工中的錯誤來源入手,在研究數據特性的基礎上,介紹了利用SME軟件進行基礎地理信息數據質量檢查的方法,具體闡述了房屋要素和其他要素穿越檢查方案的編寫過程,利用真實數據檢驗編寫的檢查方案,從運行結果看,利用南方CASSSME質檢模塊進行數據質量檢查的方法是可行的,結果是正確的。
SME;基礎地理信息;質量檢查
當前地理信息公共平臺建設,在各地正如火如荼地開展,作為平臺支撐的地理信息數據建設,越來越受到各方重視。數據質量控制更是數據建設的重中之重,通過長期以來的實踐發現,數據錯誤來源主要是以下三個方面,原始數據質量因素、數據標準差異因素、生產過程的人為因素。進行數據質量控制,主要是控制這三個主要產生錯誤的因素[1]。傳統人工查錯的方式對大批量的數據顯得力不從心,特定數據編寫特定程序又不是能很好適應數據各種復雜多變的情況,通過對CASS軟件的研究發現利用SME可以克服上述兩種方法的不足。
南方CASS 9.1軟件是基于AutoCAD進行二次開發的普遍適用于測繪等各行業的數據生產和處理軟件,因此本文討論的數據格式都是CAD的dwg數據格式。
2.1 CASS數據特性
南方CASS采用骨架線和實體擴展屬性來組織實體的技術[2]。
骨架線是CASS的一種底層數據結構。這種數據結構使得CASS的地圖編輯可以直接對骨架線進行。任何線狀和面狀地物,只要骨架線的數據發生改變,與骨架線相關的所有符號也會發生相應的變化,因此數據檢查時復雜數據可以只考慮骨架線,省去很多數據運算量。
實體擴展屬性數據可存儲地物編碼和大量的屬性信息。采用這種方式,擴展屬性與圖形對象能緊密地結合在一起,有利于圖形和屬性的一體化操作,維護數據邏輯一致性。
2.2 數據錯誤分析[1]
按照數據錯誤的類型來分,錯誤大致可以分為屬性錯誤、邏輯錯誤和拓撲錯誤三類。
屬性錯誤:屬性錯誤是指圖元的相關屬性沒有按照數據標準中規定賦予而產生的錯誤。如:一個編碼為砼結構房屋的要素,其結構屬性卻被賦值為“磚”,產生的編碼與屬性不對應的錯誤,這種錯誤我們稱其為屬性錯誤,這種錯誤在傳統的數據檢查中很難發現。
邏輯錯誤:邏輯錯誤是指圖元本身存在邏輯上或者圖元的存在與現實邏輯不符的錯誤,如:道路上出現水池,即道路與水池發生相交關系,出現與現實情況明顯不符的邏輯問題,又如,鐵路的產生過小的夾角等等,這些都稱之為邏輯錯誤。傳統的數據檢查方法基本是不能發現。
拓撲錯誤:顧名思義拓撲錯誤是指圖元與圖元之間存在的錯誤。如:同一位置有兩個路燈、兩棟房屋發生相交、圍墻穿越房屋、兩塊相鄰花圃產生裂縫等,都屬于拓撲錯誤,基礎地理信息數據生產重點關注的拓撲錯誤主要有重疊、相交、裂隙等。
南方CASS軟件提供了數據質量檢查模塊SME, SME是基于ObjectArx開發的數據處理和質檢的基礎平臺,模塊提供了常用處理和檢查的基本函數和方法,用戶只需根據需要進行組合就可達到自己的目的,方便快捷。
3.1 檢查標準配置
在CASS軟件中有兩文件index.ini和codefield.mdb,這兩個文件包含了CASS數據的各種特性和屬性,如編碼、字高、顏色和圖層等,因此,對CASS數據進行質量檢查,需要配置好這兩個文件,下面對這兩個配置文件進行詳細闡述。
(1)Index.ini配置
該配置文件定義了每個要素的圖層、線型等屬性,是對要素進行基本特性正確性檢查的基礎,文件格式如下:
CASS編碼,類型名,參數,要素名稱,要素GIS編碼,要素GIS圖層。內容如下:
131100-1,text,2.4,三角點高程注記,110102104,ControlA
131100-2,text,2.4,三角點點名注記,110102104,ControlA
131200,gc014,0,土堆上三角點符號,110102201,ControlP
131100,gc113,0,三角點符號,110102101,ControlP
131100-3,continuous,0,三角點分數線,110102106,ControlL
其中,若要素為點,類型名為對應的塊名,參數為塊符號的XYZ比例值,文件中該值默認為0,程序內部自動根據系統初始化時的比例尺自動設定,如1∶500則設為0.5;若要素為線,類型名為對應的線型名稱,參數為線寬;若要素為文本,類型名為text(代表是文字),參數為文本高度。
(2)Codefield.mdb配置
該文件定義了每個要素的顏色和屬性結構,是對要素進行顏色和屬性結構檢查的基礎和標準,文件格式如圖1所示。

圖1 Codefield配置文件格式圖
以“建成房屋”為例,用Casscode作為基礎,規定其他所有的屬性信息,比如Color、Name、Status、Style和Structure等等,從圖1中可看出“建成房屋”的Casscode為141101相當于要素的標識碼,Color字段值為“7”表示使用要素使用CAD顏色系的7號顏色,Structure字段值“C,砼,混,磚,鋼,木,玻璃,土,其他”,(C表示該字段為必填字段,后面用逗號分隔的值表示該字段的值域取值范圍)。
3.2 質檢方案實現
南方CASSSME提供了包括檢查、編輯、過濾和消息輸出等基礎功能,為了實現某項檢查目的,我們需要綜合應用這些功能的不同函數來組合,下面以實現房屋與其他要素相交檢查為實例,來詳細說明實現過程。
在現實世界中,房屋都是獨立存在的,除遇架空的電力線、管道和高架橋等要素有空間相交外,不應與其他要素發生相交,要實現該檢查首先確定房屋面要素集合,然后確定不能與房屋相交的線要素集合,最后通過SME的線穿越檢查函數得出結果。
(1)確定被穿越集合
本例中被穿越集合即為房屋面要素集合,在基礎地理信息數據中,房屋面是存在某個圖層中,且具有某些特定的要素編碼,只有通過對要素進行過濾才能確定出房屋面要素集合,南方CASSSME軟件提供了很好的要素過濾方式,包括使用圖層、要素幾何類型和編碼等方式。

圖2 要素集合過濾設置對話框
圖2 為SME進行要素過濾的窗口,在圖層和幾何類型過濾區可設置圖層和幾何類型過濾,其中,幾何類型支持點、線、注記、塊;在編碼過濾區進行編碼過濾,同時設置數據源,也可以組合各種過濾條件進行過濾;針對編碼過濾方式,軟件提供導入已寫好的過濾表(?.txt);軟件提供4種編碼類型選擇以適應不同數據存儲方式,包括按CASS碼、用戶碼、厚度和針對塊的塊名方式,可滿足不同數據的過濾要求。
要實現房屋面要素集合,如圖2所示,在圖層和幾何類型過濾區中輸入房屋面所在圖層“JMD”和限定幾何類型為“?Polyline(任意多段線)”;這樣還不足以過濾出房屋面,還需繼續過濾,首先在編碼類型選擇中選定“使用CASS編碼”,然后在編碼過濾區中輸入房屋面要素的編碼,建成房屋:141101;地下房屋:141101-2;突出房屋:141104等等,如圖2所示,在本例中筆者直接使用導入功能導入已做好的房屋編碼文件。用戶也可選擇“使用國標碼”(國標碼為用戶自定義要素編碼),此時在編碼過濾區中輸入對應的國標碼即可,如建成房屋:310301003。
(2)確定穿越線集合
除前文提到的幾種要素外,所有其他線要素都不應與房屋相交,因此本方案中的穿越集合,即為除例外的要素外的所有線要素集合。在地理信息數據中一般都存在著大量的線面要素,因此如果采用圖層方式過濾會產生其他幾何類型要素,用編碼方式則需要人工輸入大量的要素編碼,這樣既不利于程序執行又增加工作量;所以可以利用SME軟件提供的集合運算來解決,通過上面介紹可以了解本方案中的穿越集合可以通過差集運算來確定,即選擇所有的線要素集合和例外數據集合做減法,所得到的差集就是穿越線集合。例外數據集合按照編碼方式過濾,在本方案中例外的數據包括,門洞下跨道骨架線:143200、門洞下跨道邊線:143200-1、門洞下跨短線:143200-2、門頂: 143800、所有管線:17?、雨罩:143801和門廊等:1431?,為減少過濾編碼的輸入,這里使用了通配符。由于所有線要素集合不是按照編碼過濾,因此可能產生空編碼的不合理數據,所以必須對集合進行屬性篩選,即將空編碼的數據去掉,以免影響檢查結果。
經過以上步驟最終得出如圖3所示的檢查方案。

圖3 房屋面與其他要素相交的檢查方案圖
(3)執行檢查
如圖4所示,要實現檢查應按以下步驟進行,第一步,點擊“+”按鈕加載檢查方案文件;第二步,勾選要進行檢查方案項,本例中勾選房屋與其他要素相交檢查項;第三步,點擊開始按鈕后,檢查方案會自己執行。檢查完成后,所有錯誤會按照每個檢查方案分類顯示在錯誤列表窗口中,用戶可以將錯誤保存或者導出,以備后期使用,用戶可雙擊錯誤記錄,系統會自動將該錯誤涉及的要素選中并放大到屏幕中央,如圖4所示,檢查到了房屋與道路有相交關系,這樣,用戶可根據需要進行修改,同時在錯誤列表窗口中還提供標記錯誤位置的功能,如圖上的紅旗符號即為標注的錯誤位置。

圖4 房屋面與其他要素相交的檢查結果圖
本文是在實際的數據生產加工項目中,利用SME軟件進行質量檢查得出的關于檢查方案編寫和數據過濾方面的一些經驗和方法總結,通過對SME數據質量檢查和處理軟件功能的研究,發現利用該軟件確實可以減少大量的工作量,編寫的方案對數據質量檢查起到了較好的效果,檢查的準確率較高,本文對基礎地理信息數據加工和處理過程中的質量控制可以起到一定的借鑒,但是若要進行地物要素的圖屬一致性檢查,在實現方式上還很繁瑣和局限,有待在后續工作中對SME軟件本身進行相應的擴展,以便達到更加靈活的應用效果。
[1] 石吉寶,張俊,鄧芳.基于規則的組件式數據監理系統設計[J].城市勘測,2010(2):38~40,45.
[2] 許茵,劉云波.南方CASS數據向清華山維EpsW 2005的轉換方法[J].民營科技,2011(5).
[3] 張帥,劉邦兵,胡建藝等.CASS數據向ArcGis轉換解決方案[J].地理空間信息,2011(4):48~50.
[4] 黃海英,鐘生偉,胡景海.DLG質量檢查探究[J].地理空間信息,2009,7(6):135~137.
[5] 仝江嶺,石吉寶,張俊等.地理空間信息共享關鍵問題研究[J].城市勘測,2012(2):47~50.
[6] 王磊.面向規劃的城市空間數據質量檢查[J].地理空間信息,2011,9(1):25~27,30.
Research on the M ethod of GIS Data Quality Check Using CASS SME
Shi Jibao,Zhang Xiaobo,Zhang Jun,Chen Junsheng,Bai Xiaoming
(ChengDu Institute Of Surveying and Investigation,Chengdu 610081,China)
This paper analyzes the data processing errors,and introduces a method of checking the quality of geographic information data by using SME software based on data characteristics.And spatial addressed the preparation process of the data check program about building features intersect other features.Finally,this paper proves it is feasible and correct thatwe perform data quality checks using South CASSSME module.
SME;basic geographic information;quality checks
1672-8262(2013)06-63-04
P209,P208.1
B
2013—03—14
石吉寶(1977—),男,高級工程師,主要從事測繪和GIS應用研究。