危雙豐,胡 博,張曉鈺,顧秋辰,趙天宇
(1. 北京建筑大學測繪與城市空間信息學院,北京 102616; 2. 現代城市測繪國家測繪地理信息局重點實驗室,北京 102616; 3. 建筑遺產精細重構與健康監測北京市重點實驗室,北京 102616)
隨著信息化時代的迅猛發展,城市中高層建筑的室內空間結構愈發復雜,城市路網分布更加密集,人們經常穿梭于室內外三維空間中,這對于移動導航定位服務的精準性提出了更高的要求。然而當前室外導航技術已經較為成熟,室內導航技術則相對滯后,表現為傳統的室內導航大多采用二維平面圖進行路徑規劃[1],但在現實生活中,室內導航空間呈現三維立體特性并存在諸多障礙物[2],很顯然二維導航已經不能滿足不同的運動主體如人、無人機和機器人等的實際定位需求[3]。因此,需要快速有效地實現室內外一體化三維導航路徑規劃以解決上述問題。本文基于北京建筑大學遙感影像圖、各建筑屬性數據及學院樓建筑平面圖,利用不同的三維建模軟件完成數字校園的室內外精細建模,然后通過房屋的中心點、邊角點及道路的拐點等提取室內外導航路徑網絡,最終實現室內外一體化三維導航路徑規劃,所規劃出的路徑為智能機器人或無人機的室內外一體化智能導航提供了技術支持。
隨著移動互聯網技術的迅猛發展和室內定位技術的日趨成熟,人們對于導航應用的需求已經從原有的室外導航拓展為室內外一體化的導航。目前導航數據主要面向室外車行導航建立,室內外一體化的人工智能導航研究還處在起步階段,包括地圖制作與表達在內的各方面技術亟待完善[4]。現有的室內導航路徑提取與規劃多數以建筑二維平面圖為數據源,生成室內空間幾何數據及其拓撲信息[5]。雖然室內地理要素的表達與可視化、導航與路徑分析等關鍵技術的研究為位置查找和路徑導航需求提供了圖形化的解決方案[6],但是目前室內導航系統路徑查找與規劃的方法研究只是對二維空間信息圖進行了相應的處理,并沒有應用到三維空間中,人們在中高層建筑物中進行路徑導航時效率較低[7-8]。另外,室內與室外的導航路徑提取與規劃也沒有真正結合并應用于各種智能化設備中。因此,如何快速有效地實現室內外一體化三維導航路徑規劃己經成為研究熱點。但相對于傳統交通路網數據獲取的便利,其基礎數據、三維路徑模型、構建方法還沒有形成統一的行業標準和規范[9]。
CityEngine建模的基本原理,從本質上來說是通過定義和編寫一種形狀語法驅動計算機完成建筑建模[10]。CGA文件中包含了一系列決定模型如何生成的規則,該規則中定義的幾何和紋理特征決定了模型如何生成,而表達幾何特征中最重要的是CGA形狀語法[11]。CGA形狀語法是一門適合于建筑設計的編程語言,可以生成高視覺質量及幾何細節的建筑物模型,它被歸納為6個主要組成部分:形狀(shape)、屬性(attributes)、范圍(scope)、樞軸點(pivot),其中,形狀由標識符號(symbol)、幾何體(geometry)和參數(parameters)組成[12]。CGA形狀語法規則可以通過修改和替換形狀,使得建筑物擁有更多的細節表現,模型生成通常從建筑物底面形狀開始,隨著規則的依次應用,形狀被逐步細化。綜上所述,CGA形狀語法是一個樹形結構,其節點表示形狀、形狀分割及重復操作、組件的分割操作,以此來捕捉建筑物的結構(如圖1所示)[13]。
現有的標準如CityGML、KML和IFC只提供了三維幾何和語義化的建筑描述,但缺乏室內導航應用程序所需的重要特征,而IndoorGML支持基于位置服務的室內導航,涵蓋了在室內空間導航中的幾何和語義特征。室內空間被定義為由入口、走廊、房間、門和樓梯的建筑構件組成的一個或多個建筑物內的空間。IndoorGML關注空間之間的關系,而與描述空間無關的組件,則不在IndoorGML描述的范圍內[3](如圖2所示)。

圖1 CGA規則結構

圖2 IndoorGML的幾何表示法
表達空間對象關系最重要的就是節點關系(node-relation)圖,NR圖(V,E)其中V是表示室內空間中的小區域的一組節點,E是指示2個小區之間的拓撲關系的邊集,它可以是連通性或鄰接性的。筆者利用NR原理通過抽象簡化的方式表示出室內三維空間環境中的拓撲關系,如建筑物內的房間(如圖3所示),從而能夠有效地解決室內導航和路徑選擇系統中的復雜問題[3]。

圖3 抽象化的室內導航空間
Dijkstra算法是一種在地圖節點內找到最短路徑的算法,最典型的是道路網絡。該算法存在許多變種,Dijkstra的原始變種發現兩節點之間的最短路徑,但更常見的變種將單一節點作為源節點,找到從源節點到圖中所有其他節點的最短路徑,生成最短路徑[14]。本文基于此算法,采用最近設施點求解法實現起點和終點間的三維最短路徑規劃,原理為運用網絡數據集,測量事件點和設施點間的行程成本,然后確定事件點和設施點之間的最短路徑,同時采用ArcGIS模型構建器工具(model builder)進行建模。
本文的整體技術流程如下:首先分別對校園室內外場景建模,室內運用SketchUp進行精細化建模,室外利用CityEngine軟件進行建模;然后根據SketchUp所建模型提取室內三維導航網絡,根據矢量化后的路徑建立室外導航路徑網絡;最后將室內與室外導航網絡進行一體化整合,形成完整的三維導航路徑,并根據需求進行路徑規劃。
在室內外三維建模過程中,對北京建筑大學進行室內和室外的分步三維建模,為后續三維導航路徑提取與規劃提供規則基礎。利用CityEngine進行室外批量建模,通過編寫CGA規則以對建筑群進行快速批量構建。而在室內精細化建模中,利用CAD施工圖紙建立精細化三維模型。最后將三維模型導入到已創建的CityEngine工程中,完成三維模型的整合(如圖4所示)。

圖4 校園室內外三維建模流程
3.1.1 校園室外批量三維建模
在室外建模的過程中筆者采用CityEngine軟件,其具有可視化的參數接口設置,并提供可視化、交互的對象屬性參數,可通過修改面板來調整規則參數值。這種參數的調整是不會修改規則本身,因此可視化、智能化的參數調整是CityEngine精細建模區別于傳統三維軟件建模方式的優點[11]。在對室外空間進行三維建模的過程中,根據遙感影像數據在CityEngine中創建項目和場景,而后根據各建筑基本屬性數據,通過編寫CGA規則實現對建筑群進行快速批量化構建,最后利用校園建筑影像對生成的模型進行紋理貼圖,并調整相應參數,最終形成完整的三維場景,并可以通過創建WebScene場景在瀏覽器端訪問(如圖5所示)。

圖5 校園室外三維模型
3.1.2 校園室內精細化三維建模
SketchUp建模軟件靈活有效的繪圖捕捉功能和數據輸入功能提高了建模效率,因此可采用該軟件對室內進行精細建模[15]。首先構建時需將建筑物CAD施工設計圖導入到SketchUp軟件中;然后利用矩形工具勾勒墻體邊緣,并將矩形墻體模型拖拉,從而構成墻體部分;最終建模完成后,利用建模軟件中的紋理貼圖工具,將處理好的建筑物紋理分別對應貼到建筑物上,如圖6所示。

圖6 室內三維模型
3.2.1 導航路徑提取
本文方法是基于按現場實景進行精細化建模后生成的模型實現的,具有較高的真實性和精確性。首先采用SketchUp建模軟件對室內場景進行建模,選取建筑模型中可導航區域如房間、門的三維幾何中心點,走廊、樓梯、電梯豎井的幾何中心線,依次相連而成,從而將可以通行的區域全部表達出來,最后生成整個建筑模型的完整三維導航路徑(如圖7所示)。而后對各樓層和樓內部件進行語義定義,如房間名稱、樓層層數、樓梯名稱,方便今后導航路徑規劃時的識別(如圖8所示),最后生成包含語義定義的完整的室內三維導航路徑網絡。

圖7 提取出的室內導航網絡

圖8 為各部件定義語義
對于室外路徑提取,首先將衛星影像數據作為底圖添加進ArcScene中,并按真實坐標對其進行配準;然后建立個人地理數據庫,在其中對室外可導航區域如道路進行矢量化,同時依次在屬性表中記錄道路的名稱、類型、等級寬度等必要屬性信息;最后將SketchUp中生成的室內導航路徑網絡轉換成DXF格式,并在ArcScene中利用ArcToolbox中的工具進行導入。通過配準調整投影坐標系及對應的比例,從而生成完整的室內外一體化三維導航網絡,如圖9所示。
3.2.2 導航路徑規劃
本文利用ArcGIS網絡分析中的最近設施點分析工具進行最短路徑分析,并基于ModelBuilder工具進行地理建模,通過該模型實現批量化的分析處理(如圖10所示);同時在ArcScene的三維場景中對生成的路徑進行渲染。再分別選取室外某一目標地點和精細化室內建筑模型中的一間房屋作為兩個研究對象,采用最近設施點工具,確定與事件點距離最近的設施點,從而計算出發地到目的地的最短路徑(如圖11所示)。

圖9 室內外一體化導航網絡

圖10 可批量化分析處理的模型

圖11 規劃最短路徑
3.2.3 應 用
三維空間網絡分析是地理信息系統空間分析功能中的重要組成部分,在很多領域都有廣泛的應用,如交通運輸系統、緊急救援路線規劃等。例如在火災發生的情況下,煙霧濃度、火勢大小、溫度高低、走廊樓道是否封閉等因素都可以影響導航路徑中不同道路所占的權值大小。圖12所示為正常狀態下由建筑大門到室內的路徑。假如當發生火災時電梯不可用,通過將電梯設置為導航路徑上的障礙,在進行最優路徑分析時將會繞開這些障礙并查找替代路線(如圖13所示),從而生成經過樓梯的最短逃生路徑(如圖14所示)。

圖12 正常狀態下的最短路徑

圖13 電梯停用狀態下的最短路徑分析

圖14 顧及障礙的最佳路徑
本文主要研究了室內外三維場景的建立和一體化導航路徑的規劃與應用。在三維建模過程中充分利用CityEngine軟件快速構建大范圍相似建筑物的優勢和SketchUp軟件精細建模的特點,兩者結合運用使得三維模型的建立更加高效和精美,利用精細化模型進行路徑提取也使得導航網絡更加精確。最后通過地理模型的建立,實現了快速批量化的室內外一體化三維導航路徑規劃。本文對所研究方法進行了初步的探索和實踐,但仍存在諸多有待進一步完善的地方, 如在路徑提取過程中自動化程度較低,在進行大批量的路徑提取時效率較低,因此對于導航網絡的自動化提取還有待進一步研究。
致謝:本文是基于Esri杯中國大學生GIS軟件開發競賽三維應用組獲獎作品總結創作而成,感謝Esri開發競賽組委會及評委對本項目的支持和肯定。