王鎮
(福州市勘測院,福建 福州 350003)
隨著我國住房和城鄉建設部2000年提出“數字城市”,2012年提出“智慧城市”,再到2020年提出城市信息模型CIM(City Information Modeling)以來[1],許多城市都建設了城市三維模型數據庫,其模型類型包括純手工3ds Max三維精細模型、傾斜攝影Mesh三維模型和單體化三維模型等,部署在超圖、CityMaker、Skyline等三維模型數據平臺上。其中北京偉景行數字城市科技有限公司的CityMaker具有較強大的數據管理能力與良好的可拓展性[2]。該系列產品采用數據庫管理模式,提供從三維地理信息系統建設到應用的全面解決方案[3],目前已有多地基于CityMaker平臺建設完成城市級三維模型數據庫,并實現三維模型數據的管理與更新[4]。
2020年10月Esri推出了GeoScene,由于其強大的全域二三維數據編輯、融合、展示和分析等功能[5],已有不少用戶開始研究基于GeoScene軟件搭建CIM平臺的方案,以探索城市管理應用新模式。而如何充分利用現有CityMaker平臺三維數據成果,實現三維數據移植成為目前實景三維領域的熱點關注問題。
為了測試GeoScene軟件進行城市三維模型數據遷移的技術路線,研究選取了福州市馬尾區快安片區部分區域三維模型作為試驗區。該區域位于福州市中心城區東側,北鄰鼓山之麓,南傍閩江,面積約 6.97 km2,主要建筑類型為住宅類建筑和工業類建筑(圖1)。

圖1 研究區區位圖
馬尾快安片區三維模型主要由福州市地方坐標系的單體化三維精細模型和傾斜攝影Mesh三維模型組成(圖2)。模型數據源于CityMaker平臺建設完成的福州市城市級三維模型數據庫,模型數據組織分為“建筑”“植被”“水系”“場地”“交通”“其他”6大類,此外還有CGCS2000坐標系的 1∶2 000建筑和交通要素地形圖數據作為輔助資料。

圖2 CityMaker平臺馬尾快安片區三維模型
三維數據庫是動態更新的,為保證數據版本的現勢性,從CityMaker導出三維模型數據,經數據檢查修整、格式轉換、坐標轉換等處理步驟后導入GeoScene平臺,實現數據遷移,具體如下:
(1)數據檢查修整:檢查CityMaker的三維模型數據(3ds Max可導入)是否存在模型破面、貼圖丟失和接邊錯位的情況。若是,則需對以上問題進行修整,保證數據質量。
(2)格式轉換:GeoScene平臺支持的三維數據入庫前格式為“.obj”格式,因此三維模型數據在入庫前要先通過格式轉換,轉為“.obj”格式(附帶紋理參數的“.mtl”格式)的三維模型數據。
(3)三維模型數據入庫:數據經過檢查、修整格式轉換等系列預處理后,即可分塊分層導入GeoScene平臺。
(4)坐標轉換:現有的三維模型數據庫,是基于城市地方坐標系建設的。當國家要求所有地理空間信息數據坐標系統一到CGCS2000后[6],就需要對歷史數據進行坐標轉換。目前三維模型數據的坐標轉換可以通過兩種方式實現:
①采用CityMaker轉換:CityMaker支持在平臺中通過坐標系統定義,實現三維數據的動態坐標轉換。數據導出后,即為新坐標系下的三維模型數據,但導出的模型塊之間會存在縫隙,需要后期進行接邊處理。
②采用FME轉換:FME軟件能夠支持GeoScene平臺的GDB三維數據庫的坐標轉換,只需將待轉換數據庫置于輸入端,通過設置坐標轉換指定工具的轉換參數,即可實現整個三維數據庫坐標轉換。
經對比考慮,選擇采用FME軟件進行三維模型數據坐標轉換。
首先將CityMaker的三維模型數據導出為fbx數據格式,然后導入3ds Max軟件進行數據檢查、格式轉換等預處理。
模型檢查修改:檢查三維模型的幾何結構,判斷是否存在要素丟失、模型錯位和結構破面的情況,并進行修改。
貼圖檢查修改:檢查貼圖是否丟失、貼圖路徑是否正確,貼圖尺寸是否符合要求,對不符合要求的進行修改。
名稱檢查:檢查三維模型和貼圖名稱是否符合命名規則,對于不符合命名規則的,利用插件進行分塊修改。
烘焙貼圖修改:GeoScene支持基于漫反射貼圖(diffuse map)的烘焙方式,現有三維精細模型采用LightingMap的烘焙方式,因此需要將原先的三維模型烘焙材質去殼后重新進行貼圖烘焙。而基于傾斜攝影的三維Mesh模型,由于貼圖自帶自然光影效果,無須烘焙。
數據分層組織:為了便于三維模型數據的共享應用,考慮數據發布效率(發布層僅限15層及以內)、更新效率等影響因素,結合實際的應用需求,對三維模型數據重新進行分層組織。
經過檢查修整后的三維模型數據,可在3ds Max軟件中直接導出為“.obj”模型數據。在進行格式轉換時需注意,將每個物體導出為獨立的“.obj”格式(附帶“.mtl”文件);模型的貼圖文件不應遺漏。
三維模型數據經過修整、重新組織和格式轉換后,即可導入GeoScene平臺的GDB數據庫。在GeoScene軟件中先創建一個空的GDB數據庫,坐標系設置為當前三維模型數據的實際坐標系(若需要進行坐標轉換則先不設置坐標系),設置建筑、交通、水系、植被、場地等模型層,然后利用工具箱(ArcTool box)中的“導入3D文件”工具,分塊選擇經過預處理的“.obj”模型(附帶“.mlt”文件)和貼圖文件所在目錄文件,按照要素類型,導入GDB數據庫相應的層級中。
三維模型數據導入GDB數據庫后,利用FME軟件的“Affiner”工具進行投影坐標轉換,坐標轉換的過程需根據實際情況選擇具體參數,并將輸入和輸出數據格式都選擇為“GDB”格式(File Geodb)。經過FME轉換坐標后的數據在GeoScene中不顯示坐標信息,需采用GeoScene Pro桌面端的“定義投影”工具,將數據庫投影坐標定義為相應的坐標系統。
圖3為GeoScene平臺研究區三維模型數據遷移結果,經檢查數據內容保持不變,各相鄰區塊數據之間不存在縫隙、交錯等接邊問題。在顯示效果上,三維精細模型的色彩飽和度及光影層次感略有降低,但傾斜攝影Mesh三維模型的變化不明顯。利用FME軟件對三維模型GDB數據庫進行坐標轉換后,模型與二維地形圖疊套正確,精度滿足要求。

圖3 GeoScene平臺馬尾快安片區部分三維模型
總體來看,遷移后的數據較好地保持了原CityMaker平臺的模型展示效果,其分層后的屬性表中還附帶有各單體模型的屬性信息(此處為File Name,即原3ds Max物體名稱)。GDB屬性表可以通過添加字段來新增更多的物體屬性信息,并且可以通過“File Name”唯一字段進行信息備份存檔和掛接,可以為城市信息的管理提供技術支持。
由于GeoScene平臺沿用了許多ArcMap軟件數據處理工具,因此該平臺可以有效地實現二三維一體化展示、管理和應用分析。例如,依托GeoScene Pro桌面端的工具,可以對模型進行簡單的二三維查詢和屬性錄入、測距、模型切割刪減、生成閉合面和緩沖分析等(圖4)。

圖4 GeoScene平臺查詢、編輯、工具箱等界面
(1)本研究從CityMaker平臺出發,通過一系列數據預處理,將三維模型數據導入至新近的GeoScene平臺數據庫中,實現了三維模型數據遷移,同時也很好地保留了三維模型原始信息和特性。
(2)由于目前GeoScene平臺至多只能共享發布15層三維模型數據,因此需要對三維數據庫的數據組織進行詳細設計,對三維模型數據進行輕量化處理,結合數據切片技術實現數據的展示和共享應用。
(3)本研究探究了GeoScene可用于CIM平臺數據遷移及其潛在應用能力。但當前,CIM的內涵正從City Information Modeling到City Intelligent Model不斷發展,不僅包括了GIS、BIM、IoT、二三維一體化和數字孿生等,還有更多未被探究的組成部分存在[7]。GeoScene雖已具有包括二三維一體化展示、三維場景應用等部分功能,但由于目前我國CIM的研究仍處于初始階段,因此如何基于該平臺應用好BIM、物聯網IoT等海量大數據,仍有較長的路要走,并值得未來進一步探究。