李柯樺
(云南省測繪工程院,云南 昆明 650031)
研究如何高效地從∶測繪工程生產的AutoCAD地形圖中提取地形要素對于空間數據庫的構建尤為重要,GIS數據與CAD數據在設計與應用上的初衷不同,導致二者在數據結構上的差異很大。目前,多種商業(yè)軟件如FME、EPS、ArcGIS等都提供了GIS數據與CAD數據的轉換方式,提高了內業(yè)數據處理效率。但是,此類商業(yè)軟件轉換后的數據都存在屬性丟失或圖形錯誤等問題,無法直接進行數據入庫。
針對數據轉換中存在的問題,很多學者進行了研究,王化娟使用FME軟件對CAD數據與GIS數據之間的轉換關系進行研究,并且分析與處理了數據轉換后存在的數據信息丟失、屬性不全、圖形錯誤等問題;陳能提出并研究了在CAD數據與GIS數據轉換前對CAD數據進行預處理;針對要素因圖形分割不連續(xù)問題,彭春暉提出了將要素屬性作為自動接邊的參照。上述方法雖然提高了地形數據提取效率,但是都需要人工參與,自動化程度不高,需要研究更加自動化的要素提取方法。
本文在傳統(tǒng)地形要素提取的基礎上,根據要素之間的幾何關系,提出了基于空間拓撲關系的面狀要素提取方法。該方法不僅可以快速提取面狀幾何要素,還能自動進行分類屬性信息的識別與獲取。
以GIS建庫的數據質量要求對AutoCAD格式的數據源進行質量控制,AutoCAD格式數據源在命名、分層、拓撲及成圖上都有相應的規(guī)范要求。針對數字地形數據在GIS中與AutoCAD中的表現形式與分層等的差異,首先對數字地形圖中需要提取的面狀地形要素在GIS與AutoCAD中的表現形式進行梳理。數字地形圖中需提取面狀要素及其表現形式(如表1所示):

表1 兩種軟件數據結構對比
在GIS中,大部分地形要素如水系、道路、建筑物等表現為閉合面,但在AutoCAD中則表現為單線或復線。文字注記與獨立符號在GIS中表現為點和屬性,在AutoCAD中多存儲為塊或注記形式,塊或注記可以對地形要素進行標識,如,植被的類別、建筑物的層數等,對塊或注記本身卻沒有屬性描述。GIS地形數據與AutoCAD地形數據產生差異的原因主要是應用目的與領域不同:GIS更加側重于描述地理實體的數學模型,AutoCAD側重于地形要素的成圖與符號化。
各商業(yè)軟件都對軟件的數據結構進行定義,以解決各軟件之間數據結構的差異造成信息無法匹配問題,在數據轉換過程中盡可能保留原始信息[10]。以ArcGIS數據向AutoCAD數據轉換為例,首先按照幾何類型對轉化后的數據進行分層,數據導入AutoCAD中將自動按照圖形類型與圖層劃分存儲;文字將轉換為注記,注記的樣式、顏色、分層等信息將會自動保存與顯示。可見,數據結構的改變仍然會保留絕大部分的數據信息,但是兩種軟件在數據存儲格式及符號化等方面差距較大,導致數據在轉換過程中發(fā)生錯誤或者丟失情況。AutoCAD數據中缺少數據間的拓撲聯(lián)系,由于節(jié)點難以捕捉,會產生例如縫隙、重復邊、懸掛線等拓撲錯誤[11]。此外,由于地形圖的制作是以圖幅為單位的,所以還會造成圖形邊界的錯位、分割等情況。
為了快速提取得到地形要素,目前還需要解決的問題有:(1)對地形圖數據中的隱含信息進行充分挖掘,彌補商業(yè)軟件之間數據轉換造成的部分數據丟失問題;(2)對轉換后的數據進行處理,得到滿足入庫要求的成果數據。
針對前文中提到問題,本文提出了一種自動提取面狀地形要素方法,該方法基于數據的空間拓撲關系。首先,為保證面狀地形要素的閉合,利用地形要素間的鄰接關系進行拓撲容差和組合圖層的設置,并且通過拓撲構面實現面狀地形要素的快速構建;其次,通過面狀要素與文字注記或獨立符號的包含關系,補充與濾除構建的數據集;最后,構建地形要素與獨立符號之間的映射關系,通過面狀要素與獨立符號的包含關系對地形要素進行識別與分類。
將AutoCAD中的線轉為面是構建圖形的首要條件,線轉面分為兩個步驟:(1)篩選得到面;(2)對線要素進行拓撲構面。這種方法可以快速生成面要素,但是會造成提取效果不理想,主要原因有以下三個方面:(1)圖形是按照圖幅劃分,圖幅邊界造成的錯位和分割會導致無法構面;(2)由于懸掛線的錯誤無法構面;(3)數據轉換過程中導致線不閉合,也無法構面,如,花圃面由房屋邊界與花圃邊界共同構成的情況。通過傳統(tǒng)方法對建筑物進行提取出現的問題(如圖1所示):

圖1 傳統(tǒng)方法提取建筑物出現問題
出現上述建筑物提取的問題主要原因就是使用單要素圖層進行構面,AutoCAD數據中沒有圖形拓撲關系,存在公共邊的多個圖形很難能夠同時閉合。因此,可以使用多要素組合構面法以保證圖形閉合,并且對所有參與構面的圖層集合進行分析;設置拓撲容差,分析容差與成圖比例尺、數據分辨率間的關系,實現拓撲自動閉合;完成要素屬性編輯后,針對圖形分割導致的邊界不連續(xù)問題,可以通過對要素屬性進行約束及對邊界緩沖區(qū)進行分析的方法進行數據接邊。
使用鄰接關系進行圖形構建會產生以下問題:(1)由于數據質量問題導致的圖形漏提;(2)為了保證圖形閉合,會產生較多的錯誤數據。圖2為構建植被時出現的錯誤,將房屋及道路也加入構面圖層中以確保臨近房屋或道路的植被圖形閉合,因此也提取得到道路與房屋的情況(如圖2(a)和圖2(b)所示);圖2(c)中植被的公共邊界可能是任一圖層中的要素,造成圖形無法構建的原因可能是構面圖層不全;懸掛點也會導致圖形無法構建(如圖2(d)所示)。針對上述問題,將本文方法應用到實際生產中的關鍵是對構建的數據集進行檢查,使數據集滿足生產要求,內容包括兩個方面:(1)對遺漏圖形的補充;(2)對錯誤圖形的濾除。

圖2 植被構建主要面臨的問題
通過分析數據得到,在AutoCAD中對于要素屬性信息的描述缺乏,一般情況下主要通過兩種方式對地形要素進行識別:(1)將文字注記或者獨立符號繪制在要素范圍內,通過面狀要素與文字注記或者獨立符號的包含關系檢查構建的數據集;(2)通過對數據進行分層管理,分層信息可作為要素識別的參考存儲進要素屬性中。
首先,通過AutoCAD對指定圖層的文字注記及獨立符號進行讀取,將包絡線中線點或塊的插入點作為檢查點,隨后對疊加構建的面要素數據集與檢查點進行分析。如果點要素在面要素范圍外則表示漏提圖形,面要素包含的點要素數量為零則表示面要素為錯誤數據。

圖3 土質與植被的符號圖示
對于面狀要素,主要通過獨立符號與文字注記進行分類識別。目前已有多種行業(yè)標準規(guī)范對數據的質量進行控制。在國家規(guī)范標準的基礎上,各省市又進行了進一步地完善及細化,制定適應本地數據生產的行業(yè)標準規(guī)范。這些行業(yè)規(guī)范對要素的分類編碼、分類名稱等都進行了要求與規(guī)定。國家標準中的土質與植被的符號示意(如圖3所示):
對于地形要素分類的提取,需要根據相關標準規(guī)范要求。根據傳統(tǒng)做法提取地形要素分類,首先是通過標準規(guī)范對分類的編碼及名稱進行確定,其次使用屬性掛接或手工編輯的方式錄入分類信息。但是由于地形要素分類眾多且復雜,傳統(tǒng)方法容易出現分類錯誤且工作量巨大。因此,在使用空間拓撲關系檢查及構建圖形后,進行AutoCAD獨立符號與地形要素分類間的映射關系,就可以同時完成獨立符號的識別與檢查點的提取,在中線點屬性中將獨立符號進行存儲。進行疊加濾波時,分類名稱與編碼就可以通過映射關系得到,從而能夠自動識別地物分類信息。同樣,該方法可以在地名自動匹配、房屋層數等文本注記的提取中得到應用。
以昆明市1∶2000比例尺地形圖建庫項目為依托,對本文方法的可行性進行檢驗。選擇連續(xù)的10幅地形圖作為實驗數據進行專項用地、房屋及綠地的提取。實驗中使用的商業(yè)軟件為ArcGIS、AutoCAD及EPS等,通過商業(yè)軟件及工具進行數據預處理、數據轉換及數據編輯工作。實驗環(huán)境能夠真實反映行業(yè)的生產情況,符合當前數據生產工作狀況。
在特征符號與數據分層都符合標準規(guī)范的情況下,通過統(tǒng)計實驗結果可知,本文方法可以有效提取數據,同時滿足生產要求。使用傳統(tǒng)方法與本文方法提取面狀要素的效率對比(如表2所示):

表2 提取面狀要素效率對比
通過表2可知:本文提出的方法可以高效提取面狀要素,優(yōu)化數據生產方式,實現自動化數據提取。將作業(yè)員從繁重的數據提取工作中解放出來,把更多的精力與時間放在數據質量檢查上。本文的研究具有一定的應用價值。
本文對地形要素提取中的關鍵進行分析,使用拓撲構面、疊加分析及構建映射關系等,對地形圖中的面狀要素進行快速構建、數據檢查及自動識別等。以昆明市1∶2000比例尺地形圖建庫項目為依托對本文方法的可行性進行檢驗。實驗結果表明:本文使用的方法可以對數據生產方式進行優(yōu)化,提高數據的提取效率。下一步將研究增加針對文字注記或獨立符號擺放錯誤、懸掛點超出容差限定范圍造成的數據錯誤的排查機制,進一步提高算法的自動化水平。