BIM和GIS的空间语义数据集成方法及应用研究

2020-03-19 04:40翟晓卉史健勇
图学学报 2020年1期
关键词:数据模型坐标系语义

翟晓卉, 史健勇

(上海交通大学船舶海洋与建筑工程学院,上海 200240)

在城市化快速发展的大背景下,建筑信息模型(building information modeling,BIM)和地理信息系统(geographic information system,GIS)的集成被越来越多地研究和应用到建筑和城市管理相关的领域。BIM是建筑全生命周期的物理和功能信息的集成,含有丰富和详细的构造信息。但是BIM往往不包括建筑周围环境的信息,难以被应用于环境评估、资源安排和安全分析。GIS能够在大空间尺度上基于室外环境的功能和物理空间关系实现地理空间可视化分析和决策,这恰好可以弥补BIM在建筑空间规划中的不足,但是其缺乏全面而详细的建筑信息数据库。因此,BIM与GIS的集成能够实现从室内到室外不同空间尺度信息的融合,将各自的优势发挥到建筑级和城市级信息的分析、决策和管理中[1]。目前,BIM与GIS的集成已经被广泛应用于建筑业和城市管理相关的各个领域,如建筑成本管理[2]、城市能源评估与管理[3]、材料供应链管理[4]、室内外导航[5]、场地布局和规划[6]、安全与应急管理[7]等。

在集成方法上,国内外针对BIM和GIS的数据融合已开展了许多研究,主要是基于2种数据标准的转换和拓展[8-10]。DONKERS[11]提出了一种基于语义映射和三维几何运算的IFC模型到CityGML LOD3的自动转换方法。文献[12]提出的 GeoBIM拓展了CityGML,并将CAD/BIM数据转换为GIS可识别的建设工程信息。一些主流的商业软件(如FME,IFCExplorer等)也可以实现BIM和GIS的数据格式转换,但仅限于较低细节层次模型转换[9],对于 LOD层级对应的划分关系模糊,且与语义信息的耦合程度不高。现有数据格式的转换不可避免会造成几何、语义信息的错误或丢失,且由于涉及的应用领域、空间尺度不同,IFC和CityGML标准在数据描述和组织上存在着巨大差异,任何一种数据标准都不能完全涵盖另一种的所有内容,因此数据格式的转换并不能实现BIM和GIS的完全融合。发展新的多维度的数据模型,兼顾几何表达和面向具体应用的语义表达需要,才是BIM和GIS融合的有效解决途径[13]。

要实现BIM和GIS的融合,需要重视空间信息和语义信息2部分[14]。对空间数据进行统一表达可便于空间数据的管理和分级存储,可视化时可以根据不同的需求进行不同尺度下地物的分级加载,提升海量数据的可视化效率。另外,需要设计合理的语义框架对BIM和GIS的空间对象进行组织,实现BIM和GIS在语义上的彻底集成。本文提出了兼顾建筑实体对象和地理空间对象的三维城市数据模型,结合从BIM到GIS的空间数据转换方法,设计了BIM和三维GIS的集成应用框架。该方法可在三维城市平台上进行可视化展示和集成应用,实现建筑信息和城市地理信息的大规模集成。

1 BIM和GIS的通用数据标准

1.1 IFC标准和CityGML标准

IFC标准是Building SMART为BIM应用提出的通用数据转换标准,定义了近800种建筑对象实体和丰富的建筑语义信息[15]。IFC基于 EXPRESS语言,采用面向对象的描述方式,其核心包含建筑实体对象IfcObject、属性对象IfcPropertyDefinition和关系对象IfcRelationship3类(图 1)。属性包括数量、材质、专题属性等,以及项目的工程属性,如建造方、建造和修缮时间、成本信息和制造信息;属性对象与建筑实体对象关联,并定义对象之间的继承关系、组合关系和空间拓扑关系。

IFC中有几何属性的类主要是实体对象IfcProduct类的2个子类IfcSpatialStructureElement和 IfcElement。IFC中绝大部分建筑构件都是以体模型的方式进行几何表达,主要分为扫掠体(SweptSolid)、边界包围体(B-Rep)、构造实体(CSG)、剪切体(Clipping)等[16]。

CityGML标准是3D GIS在城市领域的应用模式,基于GML语言来实现城市虚拟三维模型的数据存储与交换。CityGML定义了1个核心模块以及13个城市相关专题模块,与BIM概念重叠部分是建筑、交通、桥梁模块。CityGML具有5种不同细节层次LOD0~LOD4,针对不同细节层次对构件进行不同精细程度的显示和表达[17]。

CityGML利用基于 XML格式的层级嵌套和属性标签的方式进行几何和语义的统一表达,内层几何被嵌套到对应的外层语义标签中(图2)。例如,BuildingPart是语义信息,嵌套CompositeSolids来表示几何;Room通过BoundedBy属性标签连接其包围面来表示几何形状,如墙面 WallSurface,楼面FloorSurface。B-Rep是CityGML进行几何

描述的唯一方法,由 gml:SurfaceMember,gml:Polygon,gml:LinearRing、gml:postList逐层嵌套,最内部依次记录组成闭环的所有点的X,Y,Z坐标。图1 IFC模型的对象要素组织图

图2 CityGML的对象要素组织图

1.2 IFC和CityGML的差异性比较

由于BIM和GIS涉及不同的应用领域,宏观空间规划管理和微观精细化管理之间的矛盾十分突出[18]。IFC侧重于对建筑构件实体对象的描述,而CityGML更侧重于对城市以及建筑内外地理空间对象的描述,这一本质上的区别使得 2种数据标准存在很多的差异(表1),具体表现在不同的空间尺度,不同的坐标系,不同的语义和几何表达方式,不同的细节程度,以及不同的信息存储和访问方法等。

表1 IFC和CityGML的差异性比较[10]

对象描述 IFC CityGML

应用场景 建筑信息模型(BIM) 三维城市建模语义表达 侧重于建筑实体对象 侧重于地理空间和面对象属性表达 侧重于物理功能、建造、管理属性

侧重于空间位置、拓扑属性

几何表达 B-Rep,Swept Solid,CSG B-Rep

建模语言 EXPRESS XML/GML精细程度 统一精细模型LOD4 LOD0-LOD4不同精细程度

2 BIM-GIS融合的三维城市数据模型

BIM和GIS存在的差异为二者的集成带来了巨大的挑战,现有数据格式之间的转换已无法满足进一步的应用需求。因此本文提出一种BIM和3D GIS融合的三维城市数据模型,该模型参考了 IFC和CityGML标准,兼顾三维建筑实体对象和地理空间对象,考虑多细节层次语义,并将几何表达进行统一。基于该模型可以实现几何、语义、外观、空间在城市级别的统一,既可满足数字城市高精度建模、精细化管理的要求,又可拓展外部环境对建筑的评估管理的影响,彻底打通室内和室外空间的界限。

三维城市数据模型主要分为几何层、概念层、多尺度语义层和应用主题层(图3)。

(1) 几何层。考虑到 GIS覆盖的空间范围比BIM大得多,并且目前主要是对三维表面模型进行规格网格和不规则三角网的划分处理进而进行可视化,因此将几何表达统一为三维表面模型即B-Rep的表达方式。几何层的数据模型主要参照CityGML的几何模型,为GML3标准的子集。

(2) 概念层。其定义了所有的地理空间实体和城市对象实体,以及所有的属性概念。地理空间实体主要是面向空间分析应用的对象,以room或_surface表达。城市对象实体主要是面向构件和设施的功能和性能等属性描述的对象,可对应 IFC中的实体和属性加以映射,以_element或_installation类表达。需要注意的是,由于IFC和CityGML在建筑模块的概念有很多重合,在IFC数据向三维城市数据模型转化时,有一部分的体模型可以拆分为面模型。例如IfcSpace原本在 IFC中就侧向于室内空间的概念,可以直接映射为room类,并将IfcSpace的几何拆分为天花板面、楼面和墙面[11]。在属性概念方面,除了实体的基本属性之外,还定义了关联属性如空间关系、拓扑关系等。

图3 三维城市数据模型

(3) 多尺度语义层。其定义了不同精细程度下各个对象实体的组织和显示方式。在不同的尺度下有不同的应用需求,所包含的对象和属性也不同,一次性加载地块上的所有对象和属性既不利于实际应用,也不利于数据的高效显示。针对同一地块需要分层组织数据,需要定义在不同语义尺度上的空间对象和属性内容的抽象程度。每个对象都与LOD标签关联,并且在不同的LOD上允许有不同的几何表达,即同一个对象可以有对应不同 LOD的不同的几何,其均与同一个实体关联,在不同细节层级下选择对应的显示方式。

(4) 应用主题层。为满足实际应用需求,模型参考CityGML拓展了应用主题模型。由于目前的研究主要关注BIM和GIS较为重叠的主题领域,因此模型主要定义了建筑和交通模块,后续研究中可根据城市管理的需求进一步进行应用主题的拓展。

3 IFC的几何数据转换方法

三维城市模型的几何表达参考了 GML3的几何标准和CityGML的LOD层级划分方式,以适应海量三维空间数据的管理和可视化要求。几何数据转换不仅要统一表达方式,更要注重与多尺度语义概念的对应。因此对IFC的几何数据处理主要有2部分内容:①对LOD4精度下的梁柱、墙板等实体对象的 SweptSolid表达转换为 B-Rep表达,涉及的重点问题有 IFC几何信息的提取、局部坐标系到世界坐标系的转换、直角坐标到 GIS大地坐标的转换;②对应LOD0-3的几何处理,难点是内外墙的区分和外墙面重构。

3.1 参考坐标系的转换

IFC模型采用局部坐标系描述构件的位置和几何,而局部坐标系的参照关系与IFC所定义的类的关联关系密切相关。场地IfcSite定义一个单一地理参考基点,采用的是经度、纬度和海拔WGS84的全球定位,分别对应于IfcSite的属性RefLongitude,RefLatitude和 RefElevation。这一基点确定了模型在真实世界的位置,用于转换 GIS坐标[19]。IfcBuilding,IfcBuildingStorey,IfcBuildingElement依次以父类的坐标系为参照(图 4)。因此要得到建筑构件的绝对坐标,需要进行多次参考坐标系的转换,以及直角坐标到GIS大地坐标的转换。

3.1.1 局部坐标到绝对坐标的转换

IFC中对象的位置信息记录在ObjectPlacement中,如图5所示。PlacementRelTo指向描述该位置的局部坐标系,RelativePlacement记录在局部坐标系中的位置并定义新的局部坐标系。Location表示原点坐标,Axis和RefDirection分别表示新的局部坐标系的Z轴和X轴方向。

假设点P在局部坐标系和世界坐标系中的坐标分别为(x1,y1,z1)和(x2,y2,z2),局部坐标系的原点坐标为Pr(a0,b0,c0),其3个坐标轴方向的向量可表示为Xr(a1,b1,c1),Yr(a2,b2,c2),Zr(a3,b3,c3),则转换矩阵M,全局坐标可以通过式(2)得到,即

图4 IFC局部坐标系的层级

图5 IFC中参照坐标系的定义[19]

3.1.2 直角坐标到大地坐标的转换

IFC定义了唯一的WGS84的项目地理参考点,作为IfcSite的LocalPlacement定义的原点位置的参照。IFC对象的局部坐标转化到IfcSite下的全局坐标后,Z轴对应大地高H,x-y平面坐标需要先转化为GIS的地图投影坐标,再将地图投影的平面直角坐标转化为经纬度坐标。大地坐标系经过不同的投影方式会产生不同的投影坐标系,下面选用GIS较为常用的墨卡托投影[20]为例,说明直角坐标系到大地坐标系的转换方法:

(1) 提取地理参考点的大地坐标(L,B,H),利用墨卡托投影正解公式,将大地坐标转换为空间直角坐标(XE,YN,H)。墨卡托投影的平面直角坐标X轴为东西方向(东为正),Y轴为南北方向(北为正),计算如下

其中,a为椭球体长半轴(m);b为椭球体短半轴(m);e为第一偏心率e′为第二偏心率,为标准纬度(rad,原点纬度为0);L0为原点经度(rad)。

(2) 根据式(1)得到的IfcSite的转换矩阵实际上已经将X轴、Y轴转换为与正东、正北方向即投影坐标的X轴、Y轴方向一致,因此只需要在此基础上进行相对于地理参考点的平移变换即可,所以IfcSite到大地直角坐标的转换矩阵Mg为

再通过式(2)即可得到 IFC对象基于大地面的空间直角坐标。

(3) 利用墨卡托投影的反解公式将地理空间直角坐标转换为大地坐标,即

其中,EXP为自然对数底;纬度B通过迭代计算收敛得到。

3.2 扫掠体到边界包围体的转换

IFC的大部分建筑构件是以 SweptSolid和B-Rep的形式记录,因此几何表达主要是扫掠体到边界体的转换。扫掠体主要的几何信息是基本横截面和扫掠路径,需要通过计算得到外表面所有的顶点坐标。图 6为拉伸体的几何参数,IfcExtrudedAreaSolid.Position定义了拉伸体局部坐标系,再在其中定义拉伸面和方向。拉伸面可以是任意的封闭图形。

图6 IFC拉伸实体几何

具体的转换流程如下:

(1) 通过提取swept area的拉伸面几何,对不同类型的截面进行相应计算和坐标转换,得到平面所有顶点的坐标A1(x1,y1,z1),A2(x2,y2,z2),···,An(xn,yn,zn);

(2) 提取拉伸方向ExtrudeDirection和拉伸长度Depth,通过式(9)计算拉伸后顶点的坐标A1′(x1′,y1′,z1′),A2′(x2′,y2′,z2′),···,An′(xn′,yn′,zn′)

其中,拉伸方向为(Vx,Yy,Vz);对应拉伸长度为D;

(3) 按照 3.1的方法将顶点的局部坐标多次转换为全局坐标和大地坐标;

(4) 按外表面重组顶点坐标生成 B-Rep模型(图 7),拉伸体的侧面可由拉伸前后的顶点依次构成,表示为Ai,Ai+1,A′i+1,A′i,Ai(i=1, ···,n)。

图7 B-Rep模型的生成

3.3 内外墙区分算法和LOD0-3的几何生成

随着LOD0-4的精度提高,模型从外到内包含的对象要素类型不断增加。LOD0只有场地要素的平面投影,提取底板或屋面外轮廓并投影到建筑的底层标高面上即可。LOD1是用LOD0平面拉伸至屋顶标高得到的包围盒,表示建筑实体。LOD2在LOD1的基础上增加了外墙、底板、屋顶和外部设施,需要进行内外墙的区分和建筑外墙面的重构。LOD3增加了外墙上的门窗,可通过 IFC的IfcRelVoidsElements和IfcRelFillsElement属性找到与外墙相关联的门窗。因此重点需要解决的是内外墙的区分和建筑外墙面的重构。

利用Open cascad开源三维图形库PythonOCC,可提取 IFC对象几何的特征点位信息、性质(法向量、质心等),进行三维建模、布尔运算等操作。本文主要采用Alpha-shape算法[21]进行内外墙面区分。Alpha-Shape是从离散的空间点集中提取边缘的一种方法,即在一个有限离散点集S中,由个点构成,过任意两点P1,P2绘制半径为alpha的圆,如果该圆内没有其他点,则认为P1,P2是边界点,其连线P1P2为边界线段。首先按楼层提取所有墙的几何信息,并投影到对应的二维平面上,对投影面上的边进行散点加密,再利用Alpha-Shape算法得到边缘点和轮廓。将边缘轮廓拉伸至该楼层的顶部标高即可生成建筑外墙的轮廓。判断边缘点与墙投影面的关系,如果边缘点在投影面上,则判断为外墙,否则是内墙,表2为内外墙区分法处理结果。

表2 内外墙区分算法处理结果

4 语义信息提取与转换方法

语义集成是数据集成的重点,譬如BIM中建筑构件类型、建筑材料、设备管线之间的连接关系,系统和设备之间的组成关系等。三维模型在概念层和语义层定义了实体构件和空间的类型和属性,主要是将IFC和CityGML中的实体要素与三维城市模型进行映射(表3),以及属性和关系的提取。

三维城市模型将属性信息分为2类:实体属性和关系属性。实体属性主要指基于对象本身的属性,如建筑构件的材质、体积、防火等级,设备的型号、能耗等,可以根据实际需求自定义相关的专题属性集 PropertySet。关系属性指实体之间的关系,比如空间包含和连接关系、管线和设备的连接关系、系统和部件的组成关系等。CityGML中对象的基本属性主要通过genericAttribute记录,没有具体的属性分类且内容非常有限。而相对的 IFC模型包含着丰富的属性信息,但其内部定义的数据层次很深,且存在冗余。图8~9主要以IFC中的建筑单元和设施单元为例,说明非几何属性信息的内容和提取路线,从而将属性信息转换到三维城市模型的相应属性类型中。

表3 三维城市模型主体要素映射表

图8 Building element属性要素提取

图9 Distribution element关系属性要素提取[23]

除了空间包含关系之外,BIM 模型的室内空间拓扑关系也是非常重要且有价值的信息。根据IFC空间对象关联信息的提取方法,可以按照建筑、楼层、房间、墙、门窗的顺序提取一条有向路径上所有相关的空间对象。在此基础上作以下处理:①利用PythonOCC提取房间平面形心点和门窗的位置点,用线段进行连接,形成平面网络;②获取与楼梯关联的梯段、平台的几何形状和位置,处理得到竖直方向的路径,连接相邻楼层;③定义哪些门窗可以作为与外部环境连接的出入口,添加出入口到 GIS道路的连接路径。通过几何处理可将BIM室内的拓扑与室外的GIS路径相连接,添加路径网络的流量、速率、方向等参数,可以支持室内外路径规划、疏散模拟[22]等应用。

5 三维城市数据模型的集成应用

基于以上提出的三维城市数据模型框架和数据集成方法,本文还设计了BIM和三维GIS的集成应用框架(图10),可基于上海交大史健勇博士团队自主研发的CityBIM三维平台进行数据的访问和应用。在数据存储方面基于 ArcGIS空间关系数据库,根据三维城市数据模型架构,在数据库中建立对应的类型表和属性表,同时建立关联的Geometry字段以存储三维表面模型。通过对领域层和数据访问层的开发实现数据模型的读取,并在CityBIM三维平台上进行可视化分析和应用。

图10 BIM和三维GIS的集成应用框架

基于兼顾建筑构件信息和空间信息的多 LOD三维城市语义模型,可在低精度下加载片区内大体量的BIM和3D GIS模型,查看楼栋管理信息;在高精度下查看建筑构件模型和详细的属性信息,实现城市模型的分级加载和数据访问,优化数据架构,提高模型加载效率。语义信息一部分从IFC中提取,还可根据应用需求拓展与城市管理相关的属性信息。此外,结合布设的智能监控设备可以实现网络端的实时定位监测(图11)。在后续的应用上,可在建筑、施工场地及周围进行推广,进一步开发工程项目的管理功能,如建筑环境评估、设备查看、现场检测、资料管理、材料供应链管理等,整合建筑外部的资源,提升项目管理和决策的效率。

图11 基于BIM-GIS三维平台的可视化集成应用

6 结论与展望

本文提出全面融合 BIM 三维实体对象和 GIS地理空间对象的多 LOD空间语义集成的三维城市数据模型,研究从BIM到GIS的多尺度空间数据转换方法,设计了BIM和三维GIS的集成应用框架。该方法解决了传统的数据转换带来的信息缺失和应用局限问题,实现了BIM和GIS在几何和语义框架的统一集成,为BIM和GIS数据融合提供了思路和技术参考。通过三维城市平台的可视化展示和信息集成应用,说明BIM-GIS集成的三维数据模型对于大体量的城市数据在多尺度、高精度的空间和语义信息分级存储和加载显示方面具有优势,在建筑和城市管理上有广泛的应用前景。

后续的研究将集中于以下几点:①进一步完善三维城市数据模型,包括几何和拓扑的多层次优化处理、时空属性、应用模块的拓展等;②空间数据库的性能研究,进一步优化海量时空异构数据下的数据管理系统模式;③考虑新型智慧城市的建设下,现有的数据模型与物联网、大数据、云计算等信息的集成,不断拓展和优化数据类型和数据结构;④在应用层面,进一步开展BIM在城市场景中的规划、管理、建设方面的应用,如场地规划、室内外一体化导航、施工建设管理等,充分挖掘BIM和GIS集成的应用需求。

猜你喜欢
数据模型坐标系语义
真实场景水下语义分割方法及数据集
独立坐标系椭球变换与坐标换算
基于区块链的微网绿电交易数据模型研究
基于Pro/E 的发射装置设计数据快速转化方法
坐标系背后的故事
三角函数的坐标系模型
求坐标系内三角形的面积
“吃+NP”的语义生成机制研究
经济全球化对我国劳动收入份额影响机制研究——基于面板数据模型
情感形容词‘うっとうしい’、‘わずらわしい’、‘めんどうくさい’的语义分析