余詠勝,王厚之,朱傳勇,秦思嫻
(武漢市測繪研究院,湖北武漢430022)
地理國情普查是綜合利用現代測繪技術和已有測繪成果,對地形、交通、水系和地表覆蓋等要素進行全面普查。地表覆蓋分類要素提取工作是地理國情普查的基礎,是全面獲取地理國情信息,掌握地表自然、生態及人類活動基本情況的重要手段,也是地理國情指標信息統計與發布的重要依據。武漢市于2013年啟動第一次地理國情普查及地表覆蓋要素分類等相關工作,為提高地理國情普查的工作效率,改善現有地表覆蓋分類和解譯方式的不足,縮短作業周期,本文采用空間數據轉換處理系統(feature manipulate engineering,FME)對地表覆蓋分類提取技術進行了研究和探討。
武漢市地理國情普查地表覆蓋要素分類和提取工作主要以高分辨率航空數字正射影像圖為基礎資料進行處理。由于航空影像成果不具備遙感影像自動分類解譯所需的波譜信息,在實際生產中常采用大比例尺地形圖數據輔助要素分類的方式來處理。
相對于GIS軟件,AutoCAD系統具有強大的平面圖形編輯功能,工具間切換速度快,捕捉和取點方便,進行地表覆蓋分類數據編輯效率較高,但進行多邊形構面生成分類圖斑、要素拓撲檢查及圖形和屬性關聯等GIS操作時一般需要將DWG數據成果轉換至ArcGIS環境下處理,發現的問題和錯誤在AutoCAD環境下編輯和修改時往往需重新定位;不同系統之間進行數據交換時,部分圖形或屬性信息(如DWG文件的圖層、文字注記等)會發生變化或丟失;通過ArcGIS的矢量坐標轉換工具Project和柵格坐標轉換工具Warp From File對分類成果和影像資料進行坐標轉換時,難以實現批量化處理。FME可以實現各類GIS及CAD格式數據的相互轉換,海量數據轉換可通過腳本及批處理模式高效運行。采用FME對地表覆蓋分類數據進行編輯和檢查,以及分類成果的坐標轉換,綜合TCL腳本語言和命令行批處理方式對數據處理進行優化,可提高分類要素處理的效率、準確性和適用性。
地理國情普查地表覆蓋分類要素的提取工作是以高分辨率航空數字正射影像圖為主要數據源,在矢量和柵格數據疊加處理的基礎上,采用人機交互的方式進行地表覆蓋分類信息的判讀、解譯,完成植被、房屋建筑、道路、水系及裸露地表等信息的提取,然后對分類提取的數據進行空間圖形檢查編輯、屬性信息檢查編輯,形成地表覆蓋分類初步成果,并以此為基礎制作外業調查工作底圖。通過實地核查對內業無法準確判讀和解譯的區域進行補充,對新增和變化區域進行補調,同時完成所有識別的地表覆蓋類型的遙感解譯樣本采集工作。基于外業調查成果,對地表覆蓋分類數據進行編輯修改、拓撲檢查及入庫、坐標轉換等相關工作,形成滿足相關技術規定要求的地理國情普查地表覆蓋分類成果。地表覆蓋分類數據處理流程如圖1所示。

圖1 地表覆蓋分類要素處理流程
地表覆蓋分類數據的檢查修改工作貫穿于地表覆蓋分類作業的全過程。數據檢查修改工作包括圖形檢查編輯、屬性檢查編輯及入庫前的檢查編輯工作,根據實際工作的需要,各檢查內容之間也可以相互重疊和嵌套,其核心檢查內容為圖形檢查編輯和屬性檢查編輯。
(1)圖形檢查編輯
圖形檢查和編輯工作是地表覆蓋分類數據檢查的核心內容之一,其主要工作是分類圖斑的生成和圖斑要素的拓撲檢查。在AutoCAD中對高分辨率影像進行地表覆蓋的人工判讀解譯分類,通常采用線狀要素描繪分類圖斑的邊線,構面檢查處理時通常需要剔除微短線、融合微小面,處理自相交、互相交線要素及重復線要素,去除懸掛線、生成封閉面,合理生成島面、環面,以及對接邊區域的縫隙、壓蓋進行處理。圖形要素檢查一般通過TopologyBuilder、AreaBuilder等轉換器實現,未構面要素將轉換至不同圖層,便于返回AutoCAD中編輯修改。

圖2 地表覆蓋分類數據的檢查編輯模型
(2)屬性檢查編輯
地表覆蓋分類的屬性項包含地理國情信息分類碼(CC字段)和生產標記信息(TAG字段),在Auto-CAD中進行地表覆蓋分類要素的屬性標注時,通常以TXT文本注記方式來表達CC代碼,對于內業判讀存在疑問無法確定覆蓋類型的圖斑以特殊代碼標識,TAG字段通過CC代碼狀態賦值。分類圖斑和屬性關聯通過PointOnAreaOverlayer轉換器實現,沒有關聯屬性的或關聯數量超過1個以上的問題圖斑作為錯誤標記;關聯的屬性代碼超過CC代碼的值域范圍且不屬于無法確定覆蓋類型的圖斑作為錯誤標記。實際處理中通常需要AttributeValueMapper轉換器將CC代碼和分類要素類別進行屬性映射,以方便數據的核查,該映射字段應在成果數據入庫前刪除。
(3)入庫前檢查
入庫前檢查主要包括地表覆蓋分類數據的整體完整性檢查、標準正確性檢查及數據規范性檢查。成果數據整體完整性檢查根據地理國情普查相關技術規定,檢查數據的目錄結構組織、文件命名、數據分層是否正確,數據的現勢性、數據源時點和普查完成時點根據實際情況進行控制,數據的空間坐標系、投影方式及分幅選擇是否正確,分類成果的范圍與區級行政界線、市級行政界線是否符合。標準的正確性檢查主要是分類要素屬性是否有多余和遺漏,元數據是否有多余和遺漏,分類要素的編碼是否滿足規范要求,必填屬性字段(CC代碼)是否存在空值,生產標記信息是否符合相關要求。數據的規范性檢查則涵蓋圖形檢查編輯和屬性檢查編輯的全過程。地表覆蓋分類數據檢查處理的主要工作可以在FME環境下通過數據處理模型完成,其模型結構如圖2所示。
在圖2地表覆蓋分類數據的檢查編輯模型中,由于該項工作不是成果的最終檢查和數據質量的等級評定,因此模型中側重于錯誤的發現和標識,其檢查結果不以統計報表方式展示,而是將錯誤部分轉換至指定圖層或輸出至Inspector查看器以便對數據進行編輯和修改。
根據地理國情普查成果匯交要求,地表覆蓋分類成果數據需采用CGCS2000國家大地坐標系,實際生產中采用的坐標系為1954北京坐標系,為此需要進行地表覆蓋分類相關數據的坐標系轉換工作。相對其他軟件,FME支持多種不同數據格式的坐標轉換,可以通過坐標系間的七參數進行坐標轉換,也可以坐標格網的偏移參數通過仿射變換進行轉換。根據實際需要,本文采用AffineWarper轉換器實現1954北京坐標系和2000國家大地坐標系之間的轉換。
進行地表覆蓋數據的坐標轉換之前,應先根據坐標格網的偏移值生成控制線文件,可以通過VertexCreator轉換器以坐標展點連線方式生成,控制線生成后可作為坐標轉換的基準數據直接應用于AffineWarper轉換器,矢量數據載入時通常需要通過Affine轉換器對坐標進行平移處理才能進行轉換。地表覆蓋矢量數據的坐標轉換模型如圖3所示。

圖3 地表覆蓋數據的坐標轉換模型
標準分幅的數字正射影像圖數據經坐標轉換后,圖幅內影像數據產生了不規則的平移、旋轉和錯切,影像邊緣將產生0值填充的黑邊,轉換后的影像數據需要重新進行分幅處理才能滿足要求,因此圖3中坐標轉換模型不能直接用于影像數據的坐標轉換。根據投影變換的坐標偏移規律,可以通過相鄰圖幅影像參與處理實現標準分幅影像的坐標轉換:首先對當前圖幅和西側圖幅、西北側圖幅、北側圖幅4幅相鄰影像通過RasterMosaicker轉換器進行影像鑲嵌,然后對鑲嵌后的影像進行整體坐標轉換,再按原始影像的圖幅矩形范圍通過Clipper轉換器對轉換后的影像進行裁切處理,最后生成按標準圖幅裁切的坐標轉換成果。標準分幅的影像坐標轉換模型如圖4所示。

圖4 標準分幅影像的坐標轉換模型
在利用FME模板進行地表覆蓋分類數據處理的過程中,經常存在多文件夾、多數據文件轉換的情況,FME提供了一種通過BAT和TCL腳本方式實現批量數據文件的快速處理。在FME Workbench環境中,可通過Batch Deploy向導生成缺省的BAT和TCL腳本文件,BAT文件內容只有一行,即以FME命令方式調用TCL文件,TCL腳本中存儲了FMW模板運行所需的各項參數,包括數據源的格式、數據源文件名、輸出數據格式、輸出數據的路徑名稱、日志文件等內容。該文件可以通過記事本、UltraEdit等文本工具進行編輯,在輸出路徑不變的情況下僅需要指定輸入數據路徑全名,其格式如下:

其中,sourceDatasets為數據源文件名列表;lappend函數為該列表增加元素。對不同路徑下的多個數據文件進行批量操作時,只需要將該部分的腳本替換為對應的數據文件的路徑全名即可,該部分腳本可以通過DOS命令行指令自動實現,其命令格式如下:

其中,for/r循環表示對當前目錄及所有子目錄下的DWG文件進行遍歷,將DWG文件路徑名保存至變量%c中,然后以TCL腳本所需的格式進行輸出;@echo表示不顯示echo字符。在使用DOS命令行指令前,必須將工作目錄切換至需處理的原始數據文件所在的文件夾下。將該DOS指令輸出文本復制到TCL文件中替換對應部分的腳本,然后以管理員身份運行BAT文件,即可自動處理所需的CAD文件,處理后的成果文件自動保存至模板指定的輸出目錄。成果文件經檢查無誤后需替換原始目錄下的DWG文件,也可以通過DOS命令行指令自動處理,其命令格式如下:

其中,copy/y表示以覆蓋模式進行拷貝;d: estdst為FME輸出數據的路徑名稱;變量%c為DWG文件的路徑全名;變量%~nxc為DWG文件的文件名加后綴名。該命令可以自動將處理后的CAD數據文件批量覆蓋到原始路徑下,可避免通過人工方式復制、粘貼操作。
本文利用FME的數據處理和分析功能實現了地表覆蓋分類數據的空間檢查編輯、屬性檢查編輯和入庫檢查,避免了在AutoCAD和ArcGIS系統間的數據傳輸和轉換,實現了分類矢量成果和影像數據的坐標轉換,同時通過BAT、TCL腳本和DOS命令文件實現了多目錄、多文件的自動數據處理,避免了FME環境下頻繁采用向導模式進行數據處理及人工方式進行數據回寫覆蓋操作,提高了地表覆蓋分類數據處理的效率和質量。本文提出的方法和技術在武漢市第一次地理國情普查地表覆蓋要素分類處理工作中得到較好的應用,也可以為其他城市地理國情普查工作提供重要的技術參考。
[1]張鵬程,方鋒.基于FME的多平臺數據轉換系統開發及實現[J].地理空間信息,2008,6(2):25-27.
[2]席險峰,謝安全.FME在地形地籍測繪中的運用[J].測繪與空間地理信息,2010,33(5):189-191.
[3]李瑞霞,楊敏,鄧喀中.基于FME的GIS到CAD數據“無損”轉換[J].測繪通報,2009(5):55-59.
[4]李德仁,眭海剛,單杰.論地理國情監測的技術支撐[J].武漢大學學報:信息科學版,2012,37(5):505-512.
[5]羅名海.武漢市地理國情普查的基本思路[J].地理空間信息,2013,11(6):1-2.
[6]程滔,周旭,劉若梅.面向地理國情監測的地表覆蓋信息提取方法[J].測繪通報,2013(8):84-86.
[7]湯育紅.地理國情普查地表覆蓋與國情要素信息的提取方法探討[J].測繪與空間地理信息,2013,36(12):89-91,95.