测绘地理信息   2016, Vol. 41 Issue (3): 16-19
0
基于语义映射的BIM与3D GIS集成方法研究[PDF全文]
朱亮, 邓非    
武汉大学测绘学院,武汉市珞喻路129号,430079
摘要: BIM与3D GIS技术的结合可以连接室内室外,实现城市精准三维建模,更好地推进智慧城市的建设。IFC与CityGML分别作为BIM与3D GIS的通用标准,利用本文提出的基于语义映射的方法,可以实现IFC到CityGML几何与语义信息的转换,并以标准模型进行了验证。
关键词: BIM     3D GIS     CityGML     IFC     语义    
Study on the Integration of BIM and 3D GIS Based on the Semantic Mapping Method
ZHU Liang, DENG Fei    
Study on the Integration of BIM and 3D GIS Based on the Semantic Mapping Method
First author: ZHU Liang,postgraduate, main research direction for technologies of 3D smart city building.E-mail:
Abstract: The integration of 3D GIS and BIM technologies can connect indoor and outdoor and achieve city accurate 3D modeling, and be of good help to the construction of smart city. Meanwhile, IFC and CityGML as the general standard of BIM and 3D GIS, we find that the method based on semantic mapping could make the transition of geometric and semantics from IFC to CityGML, which is tested and verified by standard model.
Key words: BIM     3D GIS     CityGML     IFC     semantics    

BIM(建筑信息模型)包含了几何、物理、规则等丰富的建筑空间和语义信息,但由于精细程度高、模型数据量大等特点,目前仅应用于单个桥梁、建筑物等小范围综合体。相比较而言,3D GIS基于空间数据库技术,侧重于大范围、宏观的数据[1]。由此可见,3D GIS与BIM存在着一种互补关系,将宏观领域的3D GIS与微观领域的BIM集成起来,是连接室内与室外、建设彻底的数字化城市的最佳方案。

1 BIM与3D GIS的集成现状

针对BIM与3D GIS的集成,目前业界有两种方法,一是BIM将地下管网、地形等基础设施附加到建立的建筑物模型周边;另一种是GIS利用已开发的3D GIS技术和标准将精细的建筑物模型作为地理空间的一种数据源。由于采用的是完全不同的技术和标准,BIM中包含GIS与GIS中包含BIM两种路线得到的结果完全不一样,达不到真正的融合。更关键的是,BIM与3D GIS领域的数据格式完全不一样,3D GIS不能无缝获取BIM信息,反之亦然。由此可知,要解决BIM与3D GIS集成的问题,必须先实现两个领域的数据格式的集成。 IFC(industry foundation classes)和 CityGML(city geography markup language) 作为目前BIM 和3D GIS 领域通用的数据格式标准[2,3],对这两种数据模型融合的研究可以作为两方集成的数据基础,助力BIM和3D GIS真正融合。

2 IFC与CityGML 2.1 IFC与CityGML格式

IFC(工程基础类)标准由国际协作联盟(international alliance for interoperability,IAI)于1997年发布,是针对建筑工程领域的产品模型标准,用来实现系统集成、数据交换与共享而定义的一种建筑业的公共语言。IFC 模型中包含4个不同的层次,包括资源层、核心层、信息交换层以及专业领域层,其中信息交换层定义了建筑设计、施工管理以及大量的建筑元素等,用于各项目间的信息交换[4]

CityGM(城市地理标记语言)包括了城市区域内大部分的地形与地理对象模型及其几何、拓扑、语义与外观属性,还包括不同主题之间的泛化结构、聚合结构、所含对象之间的关系与空间属性[5]

2.2 IFC与CityGML的差异

IFC与CityGML主要有以下几个大的差别:

1) 两个模型对语义对象的定义不一样。IFC关注建筑物的建造和设计,并且提供了板、梁和墙等房屋构件,这些构件通常是多个房间的边界,同时也是建筑物外边界的一部分。CityGML的定义则描述了建筑物如何观察或使用,因此,房间、墙壁或者天花板等对象定义了一个房间。

2) CityGML关注建筑是如何使用和观察的,因此它使用了边界描述来定义空间属性。根据CAAD(computer aided architecture design,计算机辅助建筑设计)/AEC的建设性质,IFC还另外使用了CSG(constructive solid geometry,实体几何构造图形)和扫描几何图形。

3) IFC关注建筑,而并不解决其他对象,比如交通、水体等,这有别于CityGML。

4) IFC的对象仅仅用一个LOD表示,不能像CityGML那样多分辨率显示。

总的来说,IFC具有面向设计和分析应用的多种几何表达方式和丰富的建筑构造、设施几何语义信息,CityGML更加强调空间对象的多尺度表达,以及对象的几何、拓扑和语义表达的一致性。

3 IFC与CityGML的集成方法 3.1 IFC与CityGML数据集成研究现状

IFC和CityGML使用了不同的对象几何表达方式,包含的语义信息也有区别,两者的集成方式比较多样化,很难一概而论。目前业界有基于模式、服务、实体、过程、系统等5种技术路线,各个方法的特性如表 1所示。

表 1 IFC与CityGML集成技术路线 Table 1 Technology Roadmap of the Integration of IFC and CityGML

表 1可以把IFC与CityGML的集成再划分成两个大类,即基础数据模型的融合和现有数据格式的集成。

基础数据模型的融合是要建立BIM和3D GIS模型的统一表达模型。Mekawy等人提出一种统一的数据模型用于整合IFC和CityGML中的语义类型[6] 。Laat等人定义了一种CityGML的扩展集GeoBIM,与IFC中的Psets类似,GeoBIM可在CityGML的建筑中添加IFC数据[7]

IFCExplorer、BIMServer、FME等商业软件都开发了将IFC模型与多层LOD级别的CityGML模型的双向转换功能。其中,IFCExplorer目前已能够实现对IFC模型和CityGML模型的导入、场景整合、模型规范验证,但仍停留在对IFC模型到较低细节层次(LOD2) 的CityGML模型的转换研究上;BIMServer能够在线分析IFC模型并进行版本管理,还支持导出成CityGML、KML等格式,但功能仍显单一,且到CityGML的转换精度不够; FME是目前业界最为流行的格式转换软件,本文设计了一个基于FME的IFC到CityGML(LOD3) 的工作流,并使用BIM主流软件Autodesk Revit制作的IFC格式模型进行测试。 测试结果如图 1所示。

图 1 FME测试结果 Figure 1 Test Results in FME

可以看出,虽然模型主体结构得到了保留,但原IFC文件中非常详细的墙、板等分类信息和模型的玻璃幕墙材质全部丢失了。为了实现更好的转换效果,本文进一步设计了一种基于语义映射的转换方法。

3.2 基于语义映射的IFC与CityGML转换方法

IFC中含有较丰富的语义信息,图 2为IFC与CityGML语义信息比较的一个示例。

图 2 IFC与CityGML语义信息比较 Figure 2 Difference of Semantic Information between IFC and CityGML

在模型外观上,CityGML 具有更加丰富的纹理贴图和材质信息,而 IFC 模型中以材质贴图为主,几乎没有纹理贴图。所以从 IFC 与 CityGML 集成的角度讲,模型外观以 CityGML 的数据结构进行表达具有更大的优势。通过语义信息映射的方法,先对IFC的语义信息通过筛选过滤进行提取,再以此为两者的几何信息提供转换条件,将IFC的几何信息转换为CityGML的表达形式,最后将IFC中与几何信息相关联的语义信息映射到CityGML中,IFC与CityGML的集成就能较好地实现。 方法示意图如图 3所示。

图 3 基于语义映射的方法示意图 Figure 3 Sketch Map Based on Semantic Mapping

图 3中,W代表墙,D代表门,F代表地板,R代表天花板。外部数据集的数据包括日期、标记、代码、序列号等。

1) 语义信息提取及映射

IFC的信息交换层定义了建筑设计、施工管理以及大量的建筑元素等,用于各项目间的信息交换。IFC转换为CityGML的语义映射可从信息交换层中的实体信息映射开始。建筑元素例如地板、天花板、墙面等,都包括了预定义类型、实体、详细表等属性信息,每一个实体又包含几何表达方式和空间位置等信息。而在CityGML中,不同LOD级别包含的语义信息都不相同,需要详加区别。 因此,根据映射对象的特性,IFC到CityGML的语义映射可分为1对1映射、1对多映射和间接映射三种类型。

1对1映射。 1个IFC类型直接映射为1个CityGML类型。1对1的部分映射规则如表 2所示。

表 2 1对1映射部分规则表 Table 2 Partial Rules of 1 to 1 Mapping

在CityGML LOD4 中没有对室内物体进行单独的语义描述,大部分室内实体都可用 [Inner|Outer]BuildingInstallation 来表示,这时在映射的名称前可以加上具体属性,例如用“TYPE_Beam”表示梁,这样1对1映射中IFC类型的语义信息就能够完整保留。

1对多映射。 1个IFC类型映射为多个CityGML类型。由于IfcBeam等对象对应的CityGML类型[Inner|Outer]BuildingInstallation有内外面的区分,所以还需要通过内外面区分算法将建筑室内与室外对象区分开来。

间接映射。某些使用场景当中,IFC类型无法直接由1对1或者1对多映射到CityGML中,这时就必须使用特定算法(比如空间提取算法)去获取传统方法无法获取的信息,再进行1对1或者1对多的语义信息映射。

2) 几何信息转换

IFC到CityGML几何转换的流程为:解析IFC数据,遍历所有IFC对象,筛选须转换的IFC对象,输出其几何信息和相应的属性数据。由于IFC没有LOD表达机制,所以还必须设置一个LOD映射算法,例如根据IFC建筑物的高度和轮廓生成LOD1的CityGML数据,提取建筑物表面生成LOD2和LOD3,提取室内信息生成LOD4。LOD4的映射中还需要区分内外墙面、内外天花板等。

LOD映射流程如图 4所示。

图 4 LOD映射示意图 Figure 4 Sketch Map of LOD Mapping

IFC到CityGML的几何信息转换还包括坐标系的转换,大部分IFC模型都是基于本模型的几何坐标系,还需要转换成CityGML中的世界坐标系。坐标转换矩阵TM可以由下式计算:

${{T}_{M}}={{R}_{Z}}R{}_{Y}{{R}_{X}}{{T}_{P}}$ (1)

式中,

$\begin{align} & {{T}_{P}}=\left[ \begin{matrix} {{S}_{X}} & 0 & 0 & 0 \\ 0 & {{S}_{Y}} & 0 & 0 \\ 0 & 0 & {{S}_{Z}} & 0 \\ {{P}_{X}} & {{P}_{G}} & {{P}_{A}} & 1 \\ \end{matrix} \right],{{R}_{Z}}(\alpha )=\left[ \begin{matrix} \cos \alpha & -\sin \alpha & 0 & 0 \\ \sin \alpha & \cos \alpha & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{matrix} \right], \\ & {{R}_{Y}}(\beta )=\left[ \begin{matrix} \cos \beta & 0 & \sin \beta & 0 \\ 0 & 1 & 0 & 0 \\ -\sin \beta & 0 & \cos \beta & 0 \\ 0 & 0 & 0 & 1 \\ \end{matrix} \right],{{R}_{X}}(\gamma )=\left[ \begin{matrix} 1 & 0 & 0 & 0 \\ 0 & \cos \gamma & -\sin \gamma & 0 \\ 1 & \sin \gamma & \cos \gamma & 0 \\ 0 & 0 & 0 & 1 \\ \end{matrix} \right] \\ \end{align}$ (2)

PL=CoordinateSystemPosition::Latitude

SX=CoordinateSystemScale::ScaleX

α=CoordinateSystemOrientation::Tilt

PG=CoordinateSystemPosition::Longitude

SY=CoordinateSystemScale::ScaleY

β=CoordinateSystemOrientation::Roll

PA=CoordinateSystemPosition::Altitude

SZ=CoordinateSystemScale::ScaleZ

γ=CoordinateSystemOrientation::Heading

3.3 方法测试

利用本文的方法(自动,CPU-i7,8 G内存,64 bit),以某标准IFC模型进行测试,成功将IFC模型转换成CityGML模型。如图 5所示。

图 5 利用语义映射的转换方法测试结果 Figure 5 Test Results Using Semantic Mapping Method

图 5可以看出,模型的几何结构与大部分的语义信息都得到了较好的保留,选取其他的IFC模型进行测试,效果类似。由此可知,转换方法整体上是正确的。但由图 5也可以看出,纹理映射规则还是有些问题,个别模型会出现纹理丢失的情况。室内信息提取算法也需要继续改进,一些复杂的室内模型比较难提取。利用本文方法与现有的手工操作方法进行测试效率对比,结果如表 3所示。

表 3 不同方法消耗时间对比结果/s Table 3 Comparison of Wasted Time/s

可以看出,利用本文的方法的效率比手动操作要高得多,数据映射时间也短很多。

4 结束语

BIM与3D GIS的集成给智慧城市的建设带来了新的思路和方法。而IFC与CityGML格式的集成则是BIM与3D GIS集成的数据基础。本文提出了一种基于语义映射的BIM与3D GIS集成方法,可以初步地将IFC和CityGML两种格式集成、融合起来,对BIM与3D GIS的有效集成起到了推动作用。当然该方法在转换精度、规则设计等方面还有很多问题,包括语义简化、几何信息过滤等,都需要进行更进一步的研究。

参考文献
[1] 赵霞, 汤圣君, 刘铭崴, 等. 语义约束的RVT模型到CityGML模型的转换方法[J]. 地理信息世界,2015,(2) : 15–20.
Zhao Xia, Tang Shengjun, Liu Mingwei, et al. Semantics-Constrained Conversion Approach of RVT Model to CityGML Model[J]. Geomatics World,2015,(2) : 15–20.
[2] Liebich T, Adachi Y, Forester J, et al. Industry Foundation Classes IFC2x[S]. International Alliance for Interoperability, 2006
[3] Gr ger G, Kolbe T, Czerwinski A. Candidate OpenGIS CityGML Implementation Specification[EB/OL]. http://www.opengeospatial.orgllegall, 2007
[4] Liebich T. IFC4-the New BuildingSMART Standard[S]. International Home of Open BIM, 2013
[5] Kolbe T H, Gr ger G, Plümer L. CityGML: Interoperable Access to 3D City Models[M]. Berlin, Heidelberg: Springer, 2005 .
[6] EI Mekawy M E, stman A, Shahzad K. Towards Interoperating CityGML and IFC Building Models: A Unified Model Based Approach[M]. Berlin, Heidelberg: Springer, 2011 .
[7] Laat R D, van Berlo L V. Integration of BIM and GIS: The Development of the CityGML GeoBIM Extension[M]. Berlin, Heidelberg: Springer, 2011 .