杜 輝
(中國鐵路設計集團有限公司,天津 300142)
近年來,地理空間數據已經在經濟、社會生活中發揮了重要作用[1-2]。在鐵路基礎設施建設中,地理空間數據也起到了不可替代的作用[3-5]。地理空間數據主要以空間數據庫的形式存在,其主要特點是方便存儲和更新,但無法直接應用于鐵路工程勘察設計。因此,從數據庫向AutoCAD的地圖轉換是工程建設中常見的問題,也是數據挖掘(或稱為地理信息深加工)[6-7]的必由之路。
相較于柵格數據,矢量數據的數據緊湊,冗余度低,但是其結構復雜,讀取和轉換較為困難[8],重復采集的現象時有發生[9],造成了許多人力、物力的浪費。
目前,地理空間數據向AutoCAD的地圖轉換研究已經在轉換原理、轉換方法等方面有了較大的進展[10-14],但是尚沒有提出針對不同復雜程度的地理空間數據庫向AutoCAD地圖轉換的系統解決方案。
面對轉換數據需求量大、任務緊急等現狀問題,提出快捷高效的數據轉換解決方案十分必要??上葟暮唵蔚乩砜臻g數據集的轉換入手,再涉及中型地理空間數據集、大型數據庫的轉換技術研究。最后,系統地提出地理空間數據庫向AutoCAD的地圖轉換解決方案。
鐵路工程建設中,簡單地理空間數據集多為一定區域內的地理界線(例如行政區界)、專題信息界線(例如不良地質區域、自然保護區),或區域交通網等。這類數據集是遙感地質解譯、遙感專題制圖、區域路網規劃等工作的數據基礎。
這些數據集比較簡單,圖層字段少(如圖1(a)所示),常以Shapefile格式存儲(包括主文件*.shp,索引文件*.shx和屬性文件*.dbf),其數據結構相對簡單(非拓撲結構),占用存儲空間少,讀寫速度快[15]??刹捎弥苯愚D換的方式,不涉及屬性的拆分與重組,在小型GIS軟件平臺(如GlobalMapper)即可完成轉換[16]。如圖1(b)為對某專用線收集到的環保、地質資料,進行從地理空間數據庫向AutoCAD平面投影坐標系的轉換。

圖1 在GlobalMapper平臺上進行簡單地理空間數據集轉換
Shapefile格式數據庫轉換遇到的另外一種情況是圖層結構簡單,但是地理要素種類繁多,如南美洲某鐵路項目收集到1∶5 000和1∶25 000地形圖近千幅,每幅圖地理要素種類達120余個。如果采用逐圖逐要素的輸出方法是不現實的。因此,決定采用分區域相鄰多圖幅輸入、合并輸出的方式(如圖2(a)所示),并采用FME平臺,將同類要素輸入到同一圖層(如圖2(b)所示)。如道路邊線、道路盡頭以及其他道路附屬設施均歸入道路層,提高了輸出和后期編輯效率。

圖2 圖幅拼接及圖層要素合并
有些簡單的地理空間數據集也采用Mapinfo數據格式,這一類數據主要以表(Tab)的形式存儲,其圖層字段屬性包含信息較多,轉換過程中可以按某一字段屬性進行數據扇出。數據分離(Split Export)設置和數據轉換輸出流程如圖3所示。

圖3 數據分離設置和數據轉換輸出流程
地理空間數據集一般采用大地坐標系,而工程建設需要將其轉換為投影坐標系,即高斯投影正算。
已知某點在橢球面上的大地坐標(B,L),求其在高斯平面上的坐標(x,y),稱其為高斯投影正算[17]。實用公式為

(1)

C0、C1、C2、C3、a、e2、e′2是與橢球參數有關的常數。
由式(1)可知,投影變換的精度取決于泰勒級數展開時近似項的損失以及橢球參數的選擇,數據精度主要由原始數據自身精度決定。為確保地圖可用性,應對轉換成果進行精度驗證。可采用高精度導航數據實施驗證(如圖4)。

圖4 對轉換后的地圖數據進行精度驗證
部分中型地理空間數據集采用ArcGIS Coverage格式存儲,這類數據結構較Shapefile格式復雜。以西亞某鐵路項目為例[18]:植被圖層(Veg_a)輸出時,除了輪廓線以外,還需要添加文字圖層(name)作為植被注記;高程點層(Ele_p)輸出時,除了輸出高程點符號以外,還需賦高程值(Z_position)及增加高程注記(如表1)。

表1 屬性字段映射關系(部分)
ArcGIS軟件的FME Spatial ETL Tool工具可提供超過100種不同空間數據格式的相互轉換。它不再將數據轉換問題簡單看作是從一種格式到另一種格式的變換,而是力求將不同要素合并輸出,這種個性化的定制及輸出過程可稱之為語義轉換[19],空間地理信息數據語義轉換模型如圖5所示。

圖5 地理空間數據轉換語義轉換模型
經過數據分析及必要的語義轉換之后,在FME Spatial ETL Tool中進行轉換模塊定義(如圖6(a)所示),以及交通資料層的(Tra_l和高程點層(Ele_p)數據轉換,如圖6(b)所示。

圖6 數據轉換
大型地理空間數據庫主要用來存儲國家基礎比例尺地圖,數據量大,結構復雜,而且具有綜合性、復雜性等特點,在數據轉換過程中容易產生數據冗余。
(1)綜合性
大型地理空間數據庫圖層種類齊全。以國家1∶50 000地形圖為例,其包括定位基礎、水系、居民地及設施、交通、管線、境界與政區、地貌與土質、植被層、地名及注記,分為9個數據類34個數據層,幾乎涵蓋了國民經濟各部門關注的地理空間信息。
(2)復雜性
以國家2015年版1∶50 000地形圖為例,GDB數據庫分層的命名采用4個字符,第1個字符代表數據分類,第2、3個字符是數據內容的縮寫,第4個字符代表幾何類型。每個數據層具有1~11個屬性。如公路層LRDL的屬性見表2。

表2 LRDL公路圖層屬性(部分)
(3)信息與數據冗余
以國家1∶50 000地形圖為例,GDB數據庫包含34個數據類(53個中類、437個子類要素),每個數據類又包含若干屬性,這些屬性信息之間存在一定的信息冗余,如境界與政區的BOUA、BOUL的部分屬性重復。另外,由于各行業應用的差異,部分數據在特征行業應用中沒有實際作用。因此,在數據轉換過程中,應該進行有效的過濾和重組。
3.2 大型地理空間數據庫向AutoCAD的地圖轉換
以華北某鐵路勘察設計投標項目為例,其基礎測繪資料稀缺,收集到的MDB、GDB格式數據均采用大地坐標,無法直接用于鐵路選線設計??稍贔ME軟件平臺上進行數據格式轉換和投影變換,實現對各圖層,類別,屬性要素的解釋、分解、重組和輸出,該數據庫系統龐大,后處理周期較長,其關鍵技術方案如下。
(1)數據版本的確認
MDB、GDB數據版本的變更,經常會導致數據讀取失敗。因此,在數據轉換前,應該確認原始數據的版本。當待轉換數據版本與轉換模板的數據版本不一致時,需要在工作空間和讀入函數中設置參數,如圖7所示。

圖7 數據版本的確定
(2)高斯投影正算的參數定義
待轉換數據輸出的同時,一般都要進行投影變換。FME提供了用戶自定義坐標系模式,以此實現高斯投影正算,如克氏橢球1954年北京坐標系(中央子午線120°)的參數配置文件如下:
COORDINATE_SYSTEM_DEF 北京1954-120
GROUP ASIA PARM1 120
DESC_NM “BJ54_3d_120” ORG_LAT 0
DT_NAME BEIJING X_OFF 500000.000
PROJ TM Y_OFF 0.000
UNIT METER QUAD 1
EL_NAME KRASOV ZERO_X 0.000000001
SCL_RED 1 ZERO_Y 0.000000001
(3)處理數據冗余
為了避免重復輸出點、線、面、注記要素,以及本行業不使用的圖層。FME平臺使用AttributeFilter函數對冗余數據進行拆分、過濾,再對過濾后的感興趣數據進行重組[20],部分處理模塊如圖8所示。

圖8 處理數據冗余采用的AttributeFilter函數
GDB原始數據如圖9(a)所示,經過FME轉換過后的數據如圖9(b)所示,經AutoCAD圖形編輯完成的地圖成果如圖9(c)所示。
地理空間數據庫無法直接應用于鐵路勘察設計,從數據庫向AutoCAD的地圖轉換是鐵路建設項目前期數據準備面臨的重要課題。以南美洲某鐵路、西亞某鐵路、華北地區某鐵路為例,對不同規模的數據庫向AutoCAD的地圖轉換進行了歸納總結。不同規模的數據庫宜采用不同的處理平臺:簡單地理空間數據集的轉換可在小型GIS平臺GlobalMapper下完成;中型數據集轉換可采用ArcGIS平臺嵌入的空間數據轉換工具;大型、復雜數據庫可采用FME實現;地理空間數據庫具有綜合性、復雜性,并且數據冗余普遍存在,在行業應用中應該優先選取感興趣的圖層及屬性字段,進行必要的語義重組,提高轉換和應用效率。