999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于IFC標準的面向需求的動態加載方法

2023-03-12 09:53:26史瑞昌
鐵路計算機應用 2023年2期
關鍵詞:實驗方法模型

史瑞昌,秦 琳,朱 一

(中國鐵道科學研究院集團有限公司 電子計算技術研究所,北京 100081)

建筑信息模型(BIM,Building Information Model)已成為工業互聯網在智慧建筑方向的研究熱點,特別是BIM軟件之間的數據交換技術和Web渲染技術備受相關研究人員的關注。BuildingSMART[1]提出并成為BIM數據交換國際標準的工業基礎類(IFC,Industry Foundation Classes)標準[2],進一步加快了BIM應用的研究與成果落地。Web端BIM大場景應用是未來發展趨勢,IFC標準在實際應用中存在以下問題:IFC模型文件數據并非直接可渲染數據,為滿足渲染要求,其數據需要經過轉換處理;BIM場景數據體量較大時,受制于網絡帶寬、瀏覽器性能、網頁渲染技術等多方面因素,Web端BIM應用的用戶體驗不佳。

為解決上述問題,近年來的研究主要集中在IFC模型文件數據解析與轉換優化、BIM可視化應用等方面。在IFC模型文件轉換方面,劉強等人[3]提出一種基于鍵值緩存的IFC模型文件Web應用技術,將IFC模型文件解析成JSON格式,為數據在網絡傳輸提供基礎;徐照等人[4]提出一種基于WebGL的渲染方法,開發了IFC-OBJ轉換工具,但未考慮OBJ模型文件不可分割、過大時加載時間過長,甚至無法完成加載等問題。BIM可視化應用方面,Hong-Lei Lu等人[5]在Scully T等人[6-7]提出的大模型分割策略基礎上考慮語義劃分,提出了基于語義對IFC大模型劃分,實現構件語義劃分并對模型進行分割后,利用空間索引完成場景加載,其劃分策略依賴語義數據集,數據集收集和語義劃分模型訓練實現較為復雜,且需要為特定場景定制算法模型;李柯等人[8]提出云邊頁協同的Web端BIM多粒度在線可視化框架,定義構件興趣度,在復雜遮擋場景中,效果不佳;劉小軍等人[9]提出一種面向手機網頁的大規模Web端BIM場景實時漫游算法,該算法從構件實例冗余、構件及空間混合索引、多粒度數據動態裝/卸載策略3個方面對場景進行管理和加載,其空間劃分剔除算法,僅適合遮擋關系較強的構件,需要提前設定遮擋物,設定遮擋物工作量較大,且通用性受限;BIMServer[10]為開源的IFC模型文件處理、Web端BIM場景加載工具集,作為BuildingSMART推薦的工具集,將IFC模型文件層次關系、幾何特性、材質、屬性等數據分開加載,在一定程度上解決了BIM大場景應用問題,但未考慮構件加載優先級。基于上述研究,本文提出基于IFC標準的面向需求的動態加載(IFC based Demand-Oriented Dynamic Loading,DODL)方法。對IFC數據進行解析轉換,將層次關系、幾何特性、材質、屬性等數據拆分存儲,在原數據基礎上,拓展輔助場景加載的字段;為優化Web端BIM大場景加載,提出基于GPU加速實現構件需求計算方法,計算需要加載的構件集合,并利用幾何相關性設計構件加載優先級,計算構件加載順序;通過網絡服務,完成BIM大場景加載。

1 鐵路BIM應用流程

根據鐵路BIM應用實際情況,BIM應用流程可分為3部分,如圖1所示。

圖1 鐵路BIM應用流程

1.1 數據源

建模人員使用CATIA等設計軟件完成三維模型后,導出IFC格式模型數據,為數據共享和應用奠定基礎。

1.2 數據處理

讀取IFC模型文件,解析層次關系、幾何特性、材質、屬性等數據,重點處理無法直接渲染的拓撲幾何,并將結構化JSON格式數據存儲在數據庫中,為后續場景加載提供支撐。IFC模型文件無法直接用于計算機圖形渲染,需要對其進行解析和處理,此過程耗時且對硬件資源要求較高,為減少數據處理時間,可利用云服務器資源完成此過程。

1.3 數據應用

搭建Web應用,Web端通過網絡服務,加載BIM場景,結合鐵路業務開展應用。

2 IFC模型文件處理

2.1 處理過程

IFC模型文件處理即是對IFC模型文件解析、轉換、拆分、存儲的過程,該過程主要分為2部分:

(1)使用python腳本,制定特定類型正則表達式,過濾IFC.exp文件中的基本類型、枚舉類型、select類型、實體類型,并根據類型定義與繼承關系,生成可用于編譯的CPP文件,為IFC模型文件讀取與解析奠定基礎;

(2)讀取IFC模型文件,根據CPP文件,在運行時動態生成IFC實例對象,通過查詢IFC實例對象,將層次關系、幾何特性、材質、屬性等數據進行拆分與轉換,并將結果存儲到數據庫。

2.2 拆分過程

IFC實例對象拆分過程如下:

(1)為構建模型層次關系,以IfcProject實例對象為入口,篩選IfcProduct類型實例對象,區分出空間結構元素和非空間結構元素(構件節點),將空間結構元素構造為組節點對象,處理節點屬性和局部矩陣等信息,遞歸處理空間結構元素包含的節點和關聯的節點,直至非空間結構元素的節點;

(2)對非空間結構元素處理,判斷其包含的Items屬性的實例類型,分別處理幾何、拓撲、映射、材質類型數據,幾何和拓撲類型數據需要借助幾何算法庫Open CASCADE[11]實現幾何、拓撲生成與網格剖分,進而構造葉子節點存儲幾何數據,并建立幾何與葉子節點間的關聯關系。

拆分后數據結構如圖2所示。

圖2中字段含義如表1所示。

表1 字段含義說明

圖2 拆分后數據結構

3 DODL方法

在網絡資源有限的情況下,BIM大場景無法通過一次網絡請求完成整個場景加載時,有必要考慮構件的加載優先級。用戶通過計算機外設與模型進行交互,定位到特定視角查看模型,用戶視角范圍內的模型構件即用戶需求的構件,應具有較高加載優先級,需要優先完成加載。

3.1 基于GPU加速的構件需求計算

初始加載過程如下。

(1)根據模型標識,請求模型層次關系數據;從網絡加載層次關系;根據層次關系中葉子節點的box字段,構建可用于渲染的輔助box網格。

(2)根據模型包圍盒初始化視角,獲取相機視錐參數,進而對場景進行視錐剔除,得到視錐內可見性構件集合。

(3)綜合考慮效率與剔除精確性,采用WebGL 2.0接口,基于GPU對視錐剔除后集合box網格進行渲染查詢,計算視錐體內box網格是否被遮擋。

(4)過濾出未遮擋構件集合,即需要加載的構件集合,根據構件幾何唯一標識與優先級,完成加載。初始加載過程如圖3所示。用戶交互改變視角時,與初始加載不同,不需要網絡請求模型、解析層次關系和構造可渲染box網格,只需要從視角剔除開始,加載未加載的構件數據。

圖3 基于GPU加速的構件需求計算流程

3.2 基于幾何相關性的構件加載優先級

構件自身的幾何數據量比其他數據量大,因此,幾何特性是影響構件加載優先級主要因素之一,例如,包圍盒box的大小、復雜度等,其中,復雜度是指構件幾何網格數據存儲所占用的空間情況。本文層次關系定義中,bits字段可用于描述復雜度,單位為字節(byte)。因幾何特性是影響加載優先級的主要因素,在設計構件加載優先級時,需重點關注幾何特性。

幾何相關性(CG,Correlation of Geometry)是構件包圍盒體積與其復雜度的比值,表示為

公式(1)中,CG(ci)為構件ci的幾何相關性;bits(ci)為構件ci的復雜度; volume(ci)為構件ci的包圍盒box的體積;CG(ci) 的物理意義為單位字節傳輸空間體積大小。 bits(ci)越小、 volume(ci) 越大,則CG(ci)越大,加載到的數據對最后渲染到屏幕的影響越大,對用戶的視覺影響越大,因此,加載優先級越高;反之,加載優先級越低。

具體計算方法如下:借助幾何算法庫Open CASCADE,以不被遮擋的構件集合作為輸入,遍歷所有構件,利用式(1)計算幾何相關性,并根據計算結果對構件集合由大到小排序,得到有序的加載構件集合?;趲缀蜗嚓P性的構件加載優先級計算步驟如下。

步驟 1:輸入無序構建集合C={ci,i=0, 1,…,M}。

步驟 2:若集合C中有元素ci,則取出;若無,則結束。

步驟 3:查看ci剔除標識,若是,執行步驟 4;若不是,則跳轉到步驟 5。

步驟 4:計算ci的幾何相關性。

步驟 5:得出c′i,插入、排序到集合C′。

步驟 6:重復Step 2,最終得到有序構建集合C′={c′j,j=0, 1,…,N}。

4 實驗與分析

4.1 實驗環境

為驗證本文提出的DODL方法的可用性和有效性,設定BIM場景加載過程中評價指標,搭建實驗環境。選取公開數據集Open IFC Model Repositor[12]中IFC模型文件作為實驗樣本,借助幾何算法庫Open CASCADE,進行仿真實驗,并與使用BIMServer開源服務器平臺加載的方法進行比較。使用3個不同的IFC模型文件,選取初始加載構件個數、內存占用和初始加載時間作為性能評價指標。實驗使用的IFC模型文件信息如表2所示,圖4(a)~圖4(c)分別為3個IFC模型文件默認視角下的渲染效果。

表2 IFC模型文件信息

圖4 實驗用IFC模型文件默認視角下的渲染效果

實驗軟/硬件環境配置:Intel(R) Core(TM)i7-11800H 處理器,16.0 GB內存,NVIDIA RTX3060顯卡,64 bit Windows 11專業版21H2系統,Chrome版本為106.0.524 9.103,對比組BIMServer 的版本為1.5.182。

4.2 初始加載構件數

初始加載構件數,即初始視角情景下,需要加載構件的個數,單位為個。3個IFC模型文件在DODL方法下初始加載構件數分別為1 252、2 178、4 547,相比BIMServer加載方法下的初始加載構件數5 786、7 637、27 958,分別減少了78%、71%、83%,如圖5所示。實驗結果表明,DODL方法可有效減少初始加載構件數。

圖5 初始加載構件個數比較

4.3 占用內存

占用內存,即初始視角情景下,初始加載完成后,瀏覽器占用的內存,單位為MB。3個IFC模型文件在DODL方法下占用內存分別為125、156、346,相比BIMServer加載方法下占用的內存218、287、580,分別減少了42%、45%、40%,如圖6所示。實驗結果表明,DODL方法可有效減少初始加載時占用的內存。

圖6 占用內存比較

4.4 初始化加載時間

初始化加載時間,即初始視角情景下,從網絡請求開始至可見的構件加載完成時止,所用時間長短,單位為ms。3個IFC模型文件在DODL方法下初始化加載時間分別為2 641、4 631、8 867,相比BIMServer加載方法下的初始化加載時間13 105、77 656、41 853,分別縮短了79%、94%、78%,如圖7所示。實驗結果表明,DODL方法可有效縮短初始化加載時間,減少用戶因場景加載而等待的時間,提高了用戶體驗。

圖7 初始加載時間比較

5 結束語

本文研究IFC模型文件處理、面向需求的動態加載方法,提出基于IFC的面向需求的動態加載方法,在IFC數據拆分存儲基礎上,通過對視錐內構件進行過濾、排序,實現基于IFC標準的面向需求的動態加載。通過實驗,證明了所提方法的可行性和可用性,可改善用戶體驗,也可推廣至其他非IFC格式的模型文件加載鐵路BIM的應用場景。

在Web端加載BIM場景過程中,仍存在需要進一步解決的問題,例如:IFC模型文件處理過程耗時較長;模型場景加載的過程中,初始加載時受初始視角影響,不同初始視角下,加載構件數、初始加載時間、占用內存等均有不同。因此,今后將進一步研究縮短文件處理時間及最優化選取視角的方法。

猜你喜歡
實驗方法模型
一半模型
記一次有趣的實驗
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
做個怪怪長實驗
3D打印中的模型分割與打包
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
主站蜘蛛池模板: 日本午夜三级| 亚洲欧美精品一中文字幕| 无码国内精品人妻少妇蜜桃视频| 日韩福利在线视频| 国产美女一级毛片| 亚洲一区二区三区香蕉| jijzzizz老师出水喷水喷出| 91欧美亚洲国产五月天| 色九九视频| 久久精品中文字幕免费| 日韩欧美91| 欧美国产视频| 亚洲第一网站男人都懂| 亚洲综合久久一本伊一区| 无码丝袜人妻| 精品久久综合1区2区3区激情| 日韩欧美网址| 亚洲午夜福利精品无码| 国产精品综合久久久 | 992Tv视频国产精品| 香蕉久人久人青草青草| 欧美色视频网站| 亚洲欧洲自拍拍偷午夜色| 欧美伊人色综合久久天天| 国产在线97| www亚洲天堂| 亚洲国产天堂久久九九九| 国产成人禁片在线观看| 亚洲成人一区二区三区| 亚洲成a人片77777在线播放| 九九热免费在线视频| 亚洲精品麻豆| 久久精品日日躁夜夜躁欧美| 国产h视频免费观看| 欧美成在线视频| 3D动漫精品啪啪一区二区下载| 久久99热这里只有精品免费看 | 日韩欧美视频第一区在线观看 | 精品视频一区在线观看| 国产麻豆aⅴ精品无码| 99精品国产电影| 91久久偷偷做嫩草影院免费看| 永久免费精品视频| 国产精品成人免费视频99| 一区二区三区四区精品视频 | 波多野结衣的av一区二区三区| 就去色综合| 国产精品999在线| 久久亚洲日本不卡一区二区| 日本欧美精品| 久久人搡人人玩人妻精品一| www.精品国产| 99热这里只有精品在线播放| 亚洲日本精品一区二区| 国产一区二区三区在线观看免费| 都市激情亚洲综合久久| 国产丝袜丝视频在线观看| 欧美无专区| 97av视频在线观看| 9966国产精品视频| 亚洲三级片在线看| 久久久久无码精品| 国产精品女熟高潮视频| 国产成人AV大片大片在线播放 | 亚洲欧美不卡| 在线观看视频一区二区| 99视频在线观看免费| 色综合久久无码网| av午夜福利一片免费看| 国产美女人喷水在线观看| 波多野一区| 国产素人在线| 亚洲成年网站在线观看| 国产精品一老牛影视频| 毛片网站观看| 国产精品99久久久久久董美香| 黄片一区二区三区| 国产SUV精品一区二区6| 日韩无码精品人妻| 国产欧美综合在线观看第七页| 免费a在线观看播放| 国产黄在线免费观看|