投稿问答最小化  关闭

万维书刊APP下载

面向BIM构件实例模型的层次聚类方法研究

2023/8/11 15:08:59  阅读:35 发布者:

面向BIM构件实例模型的层次聚类方法研究

李泽宇1,赵志刚2,万远1,陈俊杰2,徐海2

1.湖北师范大学 城市与环境学院, 湖北 黄石 435002

2. 深圳大学 智慧城市研究院,广东 深圳 518060;)

摘要:

针对BIM机电模型数据组织调度效率不高和视觉一致性较差等可视化关键问题,该文提出了一种面向BIM构件实例模型的层次聚类方法。该方法首先基于Revit模型组织和几何相似性计算生成实例分组,其次根据构件实例模型空间结构特征进行空间划分以及层次聚类,最后结合实例化技术对BIM机电模型进行批量渲染。本文实验结果表明,优化后的BIM机电模型渲染平均帧率约为50 fps,最低帧率稳定在30 fps左右,能够较好的保证海量机电模型的可视效果。

0 引言

随着智慧城市的深入发展,城市信息模型(city information model, CIM)已成为新的研究热点[1]。目前CIM仍处于初步探索阶段,其中CIM平台数据、相关理论及关键技术在政府和产业界受到高度重视。2020年住房和城乡建设部颁布《城市信息模型(CIM)基础平台技术导则》提出可采用BIM模型作为城市信息作为零件级模型,并且需满足高几何精度、高逼真渲染展示。当前零件级模型的高效渲染已成为CIM平台的关键技术点[2]

建筑信息模型(building information model, BIM)是建筑全生命周期建设的信息载体。相比于倾斜影像等数字表面模型[3]BIM具备丰富的信息精度和信息维度,广泛应用于建筑工程[4-5]、城市地籍管理[6-7]、三维应急等领域[8-9]

其中,机电模型相对于其他零件级模型具备更高的异构性与复杂性,当前的优化方式主要依托于GPU等硬件设施上的可见性剔除[10]与层级细节算法(LOD[11-12],并辅以空间数据结构[13-14]实现场景模型的高效动态加载调度。由于机电模型的场景复杂度,常规的空间分割管理和渲染算法无法满足室内场景实时绘制的需求,结合机电模型中存在大量相同和相似构件模型的特点,采用实例化技术[15]实现海量机电构件模型加速绘制是一个有效的解决方式。

机电模型(MEP)即建筑机械(mechanical)、电气(electrical)、管道(plumbing)的集合,根据功能差异可分为暖通系统、给排水系统、电气系统等。不同的机电系统包含的系统构件具备共性与个性。构件模型大体上可分为:管道、管件(即管道之间的连接件,包含卡箍、阀门等)以及不同机电类型的系统模型,例如喷淋系统包含喷头、水泵,电气系统包含摄像头、警铃等模型。构件实例模型是指通过刚体变换(平移、旋转、缩放)能相互转换的构件模型。

为提高BIM机电模型可视化效果,针对其数据庞大、空间结构复杂等问题,本文基于BIM高精度几何对构件模型进行实例分组,并实现实例模型多层级、多粒度的空间划分,在提升场景渲染效率的同时能够较好地保持机电模型空间结构全局和局部的细节。

1 BIM机电模型分析

BIM模型在工程应用中的信息协同需要一个具有广度和深度的标准体系。当前国内对于BIM标准的制定主要集中在体系框架层面[16],在实际应用层面[17]的标准体系存在诸多方面需要完善,这对不同BIM模型的实例信息提取提出了挑战。本文从机电系统构成要素以及当前主流BIM工程软件(Revit2个角度对BIM机电模型进行分析。

1.1 机电系统构成要素分析

BIM是面向建筑工程设计、建造和管理的全生命周期数字化工具,实现项目不同阶段模型数据、设计方案等信息的存储、共享和统筹。其中BIM构件模型是贯穿全生命周期的核心数据。以深圳某座12层(含地下一层)的BIM机电模型的喷淋系统和暖通系统为例,其构件模型情况如表1,表2所示。

1 机电喷淋系统构件概况

2 机电暖通系统构件概况

由上表可知,管道与管件类型的机电构件模型数量约为24 000~30 000个,特有模型约为3 500个。机电系统中管道和管件构件模型所占比例约90%,不同机电的系统模型所占比例约为8%~12%

对于一个3.6GHZ i7-4790的处理器,每秒大约可完成1 800 000次绘制调用。假设每秒30帧,则每帧时间内,CPU可完成60 000个绘制调用。当建筑数量与体量增加时,构件模型数量增多将进一步加大场景渲染压力。结合同一机电构成要素具备大量相同和相似模型的特点,采用实例化技术可以较大程度上降低CPU的绘制调用次数,提升场景渲染效率。

1.2 Revit模型组织结构

RevitAutoDesk旗下的BIM工程软件,与AutoCAD等系列软件相互配合,较好地实现建筑全生命周期的设计与工作协同,在民用建筑、桥梁隧道、市政工程等项目中广泛应用。

Revit基于“族”创建BIM模型,能够在建模过程中对参数进行修改以及管理,实现参数化建模。RevitBIM模型数据组织结构大体可分为:类别、族、族类型、族实例,其关系如图1所示。

Fig.1 Revit Models Organization

其中,“类别”将BIM模型拆解为若干模块,主要包括墙、门、窗、梁、柱、楼板、风管、风管附件等。每个类别下可以包含许多“族”,如在BIM模型中,“柱类别”可分为“矩形柱”、“圆柱”等多个“族”。同属一“族”的构件模型,通常由于尺寸参数的区别而进一步分为“族类型”,最后通过将同一“族类型”的构件模型放置于场景中得到族实例。

Revit基于建筑要素层级结构形成BIM构件模型的数据组织方式,该方式对模型聚类的标准缺乏几何相似性的考量。如图2所示,同一族类型存在几何特征具有明显差异的构件模型,同时,不同族类型之间存在几何特征相同的构件模型。

为验证Revit模型组织与实例分组的匹配程度,本文选取35组族类型构件模型(共计3945个构件模型),对实验数据进行人工实例分组。表3介绍Revit模型组织与实例分组之间的数量关系。

3 Revit模型组织与实例分组数量对比

管道类型选取风管和管道2个族(包含圆管、方管),并根据构件功能选取5种族类型(供水管、排风管、冷凝水管等)。由于管道类型模型几何特征高度相似,不同族类型的管道模型可以进行实例化处理。实例分组大多与“族”吻合,具有较高的实例化潜力。

管件类型选取风管管件、圆管附件等5个族,族类型包含调节阀、截止阀、弯头以及Y形三通等管道连接件。由于专业不同,构件模型几何特征具有多样性。同时,应用场景的复杂性要求同一族类型的管件模型进行局部几何参数调整,导致族实例模型无法进行实例化处理。24个族类型的实例分组可达50组,管件类型的Revit模型组织对实例分组参考价值较小。

系统模型类型选取暖通系统的风机盘管、消声静压箱,以及喷淋系统的消防喷头和消火栓箱。系统模型大多几何结构复杂,但族实例之间几何特征相对统一,实例分组与族类型数量基本一致。

综上所述,BIM管道模型与系统模型的Revit模型组织对实例分组具有较高的参考价值,而管件模型实例分组与Revit模型组织与吻合度较低。因此,需要结合Revit数据组织与几何相似性计算进行BIM构件模型实例聚类。

2 构件模型实例分组

BIM模型生命周期应用的不同阶段中,由于模型显示需求的多样性,其数据格式具有高复杂性的特点,不利于构件模型几何相似性计算。表面模型作为工程仿真的最终呈现形式,具有丰富的几何特征。因此,本文将BIM表面模型转换为OBJ数据格式,基于模型顶点信息进行模型实例判断。

实例模型通过平移、缩放和旋转等几何操作实现在场景中以不同姿态进行重复渲染。因此,本文基于还原论思维,设计如下聚类算法用以正确识别实例模型。其基本思路可分为两点:①消除机电模型平移、缩放和旋转等影响因素,把模型恢复为未经几何处理状态以保证几何相似性计算的准确性;②构建机电模型三视图,基于模型三视图相似度以及Revit模型组织结构,完成实例模型提取和实例聚类。具体技术路线如图3所示。

2.1 消除刚体变换因素

Revit获取的构件模型在三维空间中具有任意的比例、位置和姿态,大部分模型相似性计算方法对模型尺度和姿态较为敏感。为了BIM构件模型的几何特征在不同刚体变换下具有不变性,需要消除刚体变换影响因素。主要包含平移(Location)归一化、缩放(Scale)归一化以及旋转(Rotation)归一化。

旋转规一化基于主成分分析(Principal Component AnalysisPCA)消除构件模型间的姿态差异。具体步骤为构造模型顶点坐标的协方差矩阵,根据矩阵特征值的大小选取前3个正交的特征向量形成模型坐标系,最后通过基变换实现模型姿态统一。

如图4所示,将原始模型转换为OBJ格式,左图对OBJ顶点数据进行可视化。基于顶点坐标消除构件模型平移差异后,所有模型空间位置集中于坐标系原点,构件模型之间依然具有大小比例差异。将模型顶点坐标映射至[0,1]区间,模型均被包围在1×1×1Boundingbox内,构件模型间比例差异基本消除,但构件模型存在姿态差异。基于主成分分析算法进行基变换后,模型顶点由世界坐标系转换为模型坐标系,实现构件模型间的姿态矫正。

2.2 实例模型提取

由构件模型的正视图、侧视图和俯视图能够唯一确定具体构件的立体图形。本文将模型顶点进行三视图投影,并将正视图、侧视图和俯视图合并成一张图像以提高图像检索效率。构造感知哈希位信息将图像映射至对应哈希编码,使用汉明距离检测图像间的相似性。

哈希方法将三维模型相似度度量转换为二进制哈希编码度量。存储图像哈希编码构建哈希索引库,通过相似度度量算法计算待检索三视图汉明距离并排序,最后输出满足汉明距离阈值的结果图。基于三视图相似度,BIM构件模型实例聚类算法流程如图5所示。

同时,管道和系统模型的Revit模型组织与实例聚类吻合度较高。这2类模型结合构件模型相似度计算与Revit中的“族”、“族类型”有助于提高实例聚类准确性。

 基于实例模型的层次聚类

传统空间索引是通过空间细分降低场景模型渲染数量,面对高度集聚且空间结构复杂的BIM模型仅仅通过传统空间索引以难以满足绘制需求。因此本文采用面向实例模型空间分布的空间分割管理组织方法,将实例模型归为不同的簇,并对簇进行层次化管理。其实例模型空间组织方式如图6所示。

KD树结构能够顾及模型的空间位置与空间分布特性,能够较大程度保持模型空间结构细节,同时优化多维查询性能。

叶子节点构建完成后对实例模型进行层次化组织,其核心思想是将KD树生成叶子节点的BoundingBox实现初步聚类,并将此BoundingBox进一步视为空间划分对象,自底向上进行递归聚类生成嵌套层次结构。机电模型中的标准管道模型进行层次聚类的结果如图7所示。

4 实验与结果分析

本次实验所使用的计算机硬件配置为:Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz   2.90 GHz64.0GB内存,NVIDIA GeForce RTX 3070显卡,软件配置为:UnrealEngine 4.26.2

4.1 机电模型实例聚类实验

为验证本文方法实例聚类的准确性,实验选取3945个构件模型,并进行人工实例分组形成构件实例模型库(数据详情见1.1)。

查全率反映算法返回正确实例模型的能力,查准率表示算法返回结果的精确性。通过设置不同的阈值得到多个PR对。以查全率为横坐标,查准率为纵坐标,在坐标系中绘制PR对得到了一条PR曲线。

如图8所示,实验选取6种典型构件模型,包含管道(空调冷凝水管、矩形风管),管件(截止阀-J21-螺纹、散流器-圆形-旋流)和系统模型(BM-消火栓箱、喷头-ZST-下垂型)。

管道模型中,当查全率为100%时,查准率分别为60%75%。空调冷凝水管识别精度较差的原因是构件模型顶点存在分布区域不一致的现象,导致模型主成分出现偏差。如图9所示,同属管道类型的空调冷凝水管,A管道顶点集中于底面,B管道则侧面顶点密度较大。矩形风管由于几何信息不足导致查准率较低(方管顶点仅为8个,如图7所示)。根据实例分组实验结果可知,管道模型与Revit模型组织中“族”层级吻合度较高,因此本文结合Revit“族”进一步在管道模型中补充实例模型,可将识别精度提升至100%

管件模型中,当阈值为2时,截止阀-J21-螺纹和散流器-圆形-旋流的查准率、查准率均为100%。由于管件模型几何特征丰富,且构件模型间顶点分布相对一致,实例模型检索精度较高。随着阈值增加,实例模型识别将几何相似性较为接近的非实例模型掺杂进来,使得查准率有所下降,因此建议将阈值设置在2~4区间进行实例检索。

系统模型中,当阈值为1时,喷头-ZST-下垂型的查准率、查全率为100%BM-消火栓箱查全率为100%时,查准率为59%。其原因在于PCA生成的主成分存在方向二义性,部分模型三视图存在镜像关系,影响识别精度。结合Revit“族类型”对系统模型补充实例模型,可将识别精度提升至100%BM-消火栓箱镜像三视图如图10所示。

综上所述,管件模型和系统模型识别精度较高,而管道模型由于模型顶点分布区域不一致等问题导致识别精度逊于前两类模型。结合Revit数据组织与模型相似性计算可较大程度提高实例聚类精度。

4.2 渲染效率对比

为验证本文采用的实例模型空间组织方法对场景渲染效率的提升,实验选取深圳某座12层(含地下一层)的BIM机电喷淋系统模型。数据详细信息如表4和图11所示。

4 实验数据说明

本实验在场景设置一条固定浏览路径,该路径首先位于室外随后进入室内沿固定路径进行移动,保证相同视野情况下相机包含的构件模型完全相同。并设计两组实验进行对比:实验1将优化前的机电模型在置于UE场景中进行加载调度,实验2 将按照本文方法优化后的数据放置于同一场景、同一空间坐标下,分别统计相机移动过程中的场景运行帧率。

实验结果如图12所示,实验约在0-18秒(室外漫游)呈现出由帧率整体较低且平稳,19-30秒(室内漫游)帧率大幅升高且波动较大。优化后数据的帧率相较于优化前数据,帧率在室内与室外均有较大提升,整体上室内帧率提升优于室外。由于相机视角以从外到内的路径漫游,视角内模型数量下降,因此整体帧率呈现由低到高的趋势。

室外漫游时,相机包含建筑所有构件模型,优化后帧率更高,说明面对相同数量、几何精度的构件模型,实例化能明显降低场景渲染压力。室内漫游时,随着位置变化相机包含的构件模型数量是动态变化的,因此室内帧率波动较大。优化后室内帧率提升较大说明本文对实例模型的多粒度空间划分基于可视性剔除有效减少非可视模型,降低场景渲染压力。

通过本文空间分割管理方法,提高了场景中模型的检索效率,并采取实例化技术降低了每帧CPU需要提交的DrawCall数量,优化前的平均帧率约为26.6 fps,优化后平均帧率约为48.8 fps,优化前的最高帧率为60 fps左右,优化后的最高帧率为90 fps左右,且最低帧率约为30 fps,可以较好地满足场景渲染的流畅性。

5 结束语

超大规模CIM平台要求BIM作为零件级模型数据支撑,并提出高效渲染、高逼真仿真模拟的数据需求以实现城市精细化管理。本文通过结合Revit模型组织以及构件几何相似性计算实现海量BIM机电构件实例聚类,并根据实例模型的空间结构特征进行多粒度的空间分割管理。实验结果表明,本文方法对BIM机电模型在场景中的可视化效果有较大提升,可以为解决零件级模型渲染提供有益借鉴。

【作者简介李泽宇(1997—),男,广东揭阳人,硕士研究生,主要研究方向为BIM可视化、智慧城市系统平台。

1402115521@qq.com

【基金项目】国家自然科学基金面上项目(42171265; 广东省自然科学基金面上项目(2022A1515012120

【引用格式】李泽宇,赵志刚,万远,等. 面向 BIM 构件实例模型的层次聚类方法研究 [J]. 测绘科学,2023,48(3):152160。

转自:“测绘学术资讯”微信公众号

如有侵权,请联系本站删除!


  • 万维QQ投稿交流群    招募志愿者

    版权所有 Copyright@2009-2015豫ICP证合字09037080号

     纯自助论文投稿平台    E-mail:eshukan@163.com