• ISSN: 1674-7461
  • CN: 11-5823/TU
  • 主管:中国科学技术协会
  • 主办:中国图学学会
  • 承办:中国建筑科学研究院有限公司

面向乡村住宅的数据集成与轻量化技术研究

张嘉鸿, 冷烁, 胡振中

张嘉鸿, 冷烁, 胡振中. 面向乡村住宅的数据集成与轻量化技术研究[J]. 土木建筑工程信息技术, 2022, 14(1): 7-12. DOI: 10.16670/j.cnki.cn11-5823/tu.2022.01.02
引用本文: 张嘉鸿, 冷烁, 胡振中. 面向乡村住宅的数据集成与轻量化技术研究[J]. 土木建筑工程信息技术, 2022, 14(1): 7-12. DOI: 10.16670/j.cnki.cn11-5823/tu.2022.01.02
Jiahong Zhang, Shuo Leng, Zhenzhong Hu. Data Integration and Lightweight Technology for Rural Housing[J]. Journal of Information Technologyin Civil Engineering and Architecture, 2022, 14(1): 7-12. DOI: 10.16670/j.cnki.cn11-5823/tu.2022.01.02
Citation: Jiahong Zhang, Shuo Leng, Zhenzhong Hu. Data Integration and Lightweight Technology for Rural Housing[J]. Journal of Information Technologyin Civil Engineering and Architecture, 2022, 14(1): 7-12. DOI: 10.16670/j.cnki.cn11-5823/tu.2022.01.02

面向乡村住宅的数据集成与轻量化技术研究

基金项目: 

国家自然科学基金项目 51778336

国家重点研发计划项目 2018YFD1100900

详细信息
    作者简介:

    张嘉鸿(1999-),男,在读本科生,主要研究方向:BIM技术研究与应用

    通讯作者:

    胡振中(1983-),男,副教授,主要研究方向:土木与海洋工程信息技术、BIM技术研究与应用以及数字防灾技术

  • 中图分类号: TU17

Data Integration and Lightweight Technology for Rural Housing

  • 摘要: 乡村住宅通常以村落形式构成集合,且受地理环境影响较大,因此在设计与建造过程中需要同时考虑单体建筑、村落布置与地理环境等因素。为此,本研究提出了一种面向GIS与BIM多源数据的信息集成与模型轻量化方法,包括:一,基于FBX SDK实现了FBX的自动集成; 二,引入顶点重要度与模型特征因子控制模型的简化过程,实现了面向乡村住宅的QEM改进算法。上述方法从扩充平台的使用场景和提高平台的模型处理能力两个方面,完善了一个已有的乡村住宅轻量化集成平台。研究成果在江苏省徐州市某乡村的改造中进行测试,验证了技术的可行性与实用性,有利于促进信息技术在乡村住宅设计与建造中的推广与应用
    Abstract: Rural houses usually combine into villages and are greatly affected by the geographical environment. Therefore, in the process of design and construction, factors such as building information, village information and geographical environment need to be considered at the same time. This study proposes an integration method and a lightweight method for GIS and BIM multi-source data, including an automatic integration method of FBX based on FBX SDK and an improved QEM algorithm for rural housing, which uses vertex importance and model characteristic factor to control the simplification process. The above methods improve an existing rural housing lightweight integration platform from two aspects: expanding the applicable scenarios of the platform and improving the model processing ability of the platform. Taking a village in Xuzhou City, Jiangsu Province as an example, the methods are applicable, practical, and usable. This study promotes the research and application of information technology in rural housing design and construction.
  • 中国乡村住宅通常以村落形式构成集合,且受所处地域的地理环境影响较大,因此在设计与建造过程中,不仅需要考虑单个建筑,还需要考虑村落布置与地理环境。

    建筑信息模型(Building Information Modeling,BIM)和地理信息系统(Geographic Information System,GIS)被广泛应用于乡村住宅的建模与信息管理。二者虽然都包含了对建筑及其周围环境的描述,但是他们描述信息的侧重点与适用场景并不相同[1]。对于乡村住宅而言,单个建筑的详细信息通常由BIM描述,村落布置与地理环境则由GIS描述。因此在描述乡村住宅时,需要整合BIM与GIS的数据,实现对所需信息的完整表达。

    课题组曾建立了一个面向乡村住宅的基于Web的GIS与BIM轻量化集成平台[2]。该平台通过信息提取、信息集成与轻量化算法把GIS和BIM数据集成到多尺度建筑信息模型中。目前,已经成功搭建平台框架,并实现了Shapefile、GeoJSON、OBJ以及IFC格式的信息提取与信息集成功能。在此基础上,本文对该平台进行完善与功能扩展工作。

    受到网络传输速度、浏览设备性能以及网页浏览器加载限制等因素的影响,大型的三维信息模型数据在Web端上展示时会出现加载速度慢与浏览交互卡顿等问题。因此,需要对BIM与GIS的集成设计一套轻量化的方案。已经有许多学者对GIS与BIM的轻量化集成进行了研究,但是这些研究大多集中在城市建筑或大型公共建筑上,很少有研究关注到乡村住宅的需求。与城市建筑相比,乡村住宅中的单体建筑通常具有轮廓分明,建筑物表面较为平整,机电设备较少等特点。现有的轻量化算法对于乡村住宅模型而言效率较低,仍有优化空间,因此需要设计一种针对乡村住宅模型的轻量化方法。

    FBX是Autodesk公司所有的一种面向三维模型的专有文件格式,常作为倾斜摄影的导出文件格式,可以为平台提供建筑所在区域的地理信息,通常是各种信息集成平台的重要数据来源。然而,该格式的信息是加密的,需要用Autodesk提供的FBX SDK来读取和转换其数据。

    本文提出一种FBX文件的集成方法与一种适用于乡村住宅模型的轻量化方法,解决了BIM与GIS轻量化集成的关键技术问题,提高了平台的适用性与大模型可视化能力,完善了多尺度乡村住宅信息模型平台。

    FBX的文件格式并不公开,在数据集成场景中无法直接实现信息提取功能。软件或转换器需要人工手动操作,且可能会出现数据丢失或兼容性问题。官方提供了FBX SDK,可用于对FBX进行解析、加载等操作。

    目前,已经有部分研究基于FBX SDK实现了FBX的信息提取与转换功能。闻平等人[3]实现了一种从FBX文件自动转换为OBJ文件的方法。王才勇[4]分析了FBX文件的组织形式,并实现了FBX文件的信息提取与跨平台展示功能。上述研究证明了利用FBX SDK提取FBX信息的可实现性,然而随着FBX SDK的版本更新,SDK中提供的接口与功能都发生了改变。因此需要重新设计FBX的集成方法与具体实现。

    建筑信息模型的轻量化技术是BIM领域的一项关键技术,按照轻量化方法可以分为三大类:模型信息简化技术、多细节层次模型技术以及网格简化技术。模型信息简化技术通过剔除模型信息或重要性较低的细节特征实现轻量化,但并非乡村住宅模型简化的重点。多细节层次模型技术常用于大尺度复杂模型的可视化中,且常与网格简化技术结合使用[5]。网格简化技术是指使用较少的基元面片组成新的网格表达原始模型,且尽量不丢失模型整体特征与局部细节。网格简化算法包括顶点聚类法、多边形合并法、自适应细分法以及增量式简化法等,都有各自的简化效果与适用场景[6]

    考虑到乡村住宅模型的特点以及结合多细节层次模型技术的需求,本文对网格简化算法中的二次误差测度算法(QEM)进行研究。QEM算法兼顾了简化速度与效果,在连续的多细节层次模型之间过渡平滑[7],但简化后模型网格分布较为均匀,不利于建筑模型细节特征的保持。董艳等人[8]与郭思怡等人[9]在QEM算法的基础上引入了顶点重要度的概念,二者的顶点重要度计算与实现方式并不一致,均在原算法的基础上更好地保留了模型的细节特征。本文将利用顶点重要度与模型特征因子在QEM算法的基础上加以控制,使得模型表现出轮廓处网格密集、平坦处网格稀疏的特点。

    Autodesk公司提供的FBX SDK是基于C++或Python实现的,而目标平台是基于C#进行开发的,无法直接使用SDK。为解决此问题,本文提出先将FBX文件转换为OBJ文件,再集成到平台中。

    由于前期已经完成了OBJ数据的集成工作,因此只需要实现由FBX文件向OBJ文件的自动转换功能即可。Autodesk公司旗下的3D Studio Max软件及官方提供的转换器Autodesk FBX Converter都能实现FBX文件的人工转换。然而这种转换效率较低,无法实现自动化操作,且在实际转换过程中容易出现数据丢失及版本兼容性等问题,可靠度较低。因此需要基于FBX SDK编写一个可执行文件以实现FBX向OBJ文件的自动转换功能。

    平台首先调用转换程序把FBX文件转换为OBJ文件,随后调用OBJ集成程序把转换后的模型文件集成于平台中。在平台的实际应用中,倾斜摄影导出的FBX文件描述了区域的GIS环境,OBJ文件描述了建筑BIM模型。利用上述的集成方法可以实现对BIM与GIS数据的集成,具体实现流程如图 1所示。

    图 1 集成流程图
    图  1  集成流程图

    在文件导入前,需要初始化FbxManager与FbxIOSettings。其中,FbxManager是SDK的内存管理器类,负责创建、管理和销毁FBX SDK对象; FbxIOSettings负责指定从文件导入或导出到文件的场景元素。FbxScene充当了场景中现有元素的容器,场景中可以包含网格、纹理、材质、灯光等多种元素。FbxImporter与FbxExporter分别用于FBX文件的导入与导出过程。

    由于FBX SDK支持把场景直接导出至OBJ文件中,因此一般来说程序在实现文件导入后即可进行文件导出。然而,在一些特定的使用场景,需要对FBX文件储存的信息进行一定的处理后再进行导出。因此本方法提供了一个信息处理模块,使用者可以根据需求添加。

    边折叠算法最早由Hoppe等人[10]于1993年提出,该方法每次选择一个折叠代价最小的边,把此边对应的两个顶点ViVj合并为一个位于边上的新顶点V,所有与顶点ViVj相连的边都更新连接至新顶点V处,删除所有退化的边与三角形,通过迭代使网格满足算法终止条件。折叠算法示意图如图 2所示。

    图 2 折叠算法示意图
    图  2  折叠算法示意图

    在边折叠算法的基础上, Garland等人[11]提出了二次误差度量(Quadric Error Metrics, QEM) 算法, 该方法以二次误差度量了折叠代价并以此计算新顶点的位置。三维平面$p$可以由方程$a x+b y+c z+$ $d=0$表示, 其中方程系数满足条件$a^{2}+b^{2}+c^{2}=1$, 因此可以用向量$p=\left[\begin{array}{llll}a & b & c & d\end{array}\right]^{T}$表示该平面。令顶点$V$的坐标表示为$\left[\begin{array}{llll}x & y & z & 1\end{array}\right]^{T}$, 该顶点到平面$p$距离的平方为$D_{p}^{2}(v)=\left(p^{T} v\right)^{2}=v^{T}\left(p p^{T}\right) v=$ $v^{T} K_{p} v$, 其中, $K_{p}$为平面$p$对应的二次误差度量矩阵:

    $ K_{p}=p p^{T}=\left[\begin{array}{llll} a^{2} & a b & a c & a d \\ a b & b^{2} & b c & b d \\ a c & b c & c^{2} & c d \\ a d & b d & c d & d^{2} \end{array}\right] $

    (1)

    记所有包含顶点$V_{i}$的三角面片集合记为planes $\left(V_{i}\right)$, 令$Q\left(v_{i}\right)=\sum\limits_ {p \in \mathit{planes}\left(V_{i}\right)} K_{p}$, 则边折叠代价为:

    $ \begin{aligned} &\Delta(v)=\sum\limits_{p \in \mathit{planes}\left(V_{i}\right) \cup{\mathit planes}\left(V_{j}\right)} D_{p}^{2}(v)\\ &=\sum\limits_{p \in \mathit{planes}\left(V_{i}\right) {\mathit planes }\left(V_{j}\right)} v^{T} K_{p} v\\ &=v^{T}\left(\sum\limits_{p \in \mathit{planes} \left(V_{i}\right) \cup{\mathit planes }\left(V_{j}\right)} K_{p}\right) v\\ &=v^{T}\left(Q\left(v_{i}\right)+Q\left(v_{j}\right)\right) v \end{aligned} $

    (2)

    QEM算法简化的模型网格分布较为均匀,不利于建筑模型细节特征的保持,因此本算法在QEM算法的基础上引入了顶点重要度与模型特征因子作为约束因子。

    对于顶点V对应的每一个三角面片p,若三角面片的法向量与顶点法向量夹角越接近90°,则代表该三角面片越尖锐,在网格简化算法中被简化的次序应当越靠后; 与此相对的,若夹角越接近0°,则代表该三角面片越平缓,在网格简化算法中被简化的次序应当越靠前。为此,定义面片重要度:

    $ \varphi=1-\sin \alpha=1-\cos \beta=1-\left|\cos \left(n_{v}, \hat n_{p}\right)\right| $

    (3)

    式中, $n_{v}$为顶点$V$的顶点法向量, $n_{p}$为三角面片$p$的面法向量, 两个向量的模均为$1, \alpha, \beta$的含义如图 3所示。

    图 3 QEM改进算法计算对象示意图
    图  3  QEM改进算法计算对象示意图

    按照此定义, 当$\alpha=90^{\circ}$时, $\beta=0^{\circ}, \varphi=0$, 此时三角面片$p$最平缓; $\alpha=0^{\circ}$时, $\beta=90^{\circ}, \varphi=1$, 此时三角面片$p$最尖锐。当$\varphi=0$$\beta=0^{\circ}$, 此时$\frac{d \varphi}{d \beta}=\sin \beta=$ 0; 当$\varphi=1$$\beta=90^{\circ}$, 此时$\frac{d \varphi}{d \beta}=\sin \beta=1$。进一步地, 对于$\beta \in\left[0^{\circ}, 90^{\circ}\right], \frac{d \varphi}{d \beta}$单调递增, 即三角面片$p$越尖锐, 面片重要度$\varphi$越敏感, 三角面片$p$越平缓, 面片重要度$\varphi$越迟钝。因此面片重要度$\varphi$能较好地反映顶点附近的三角面片起伏变化情况。

    顶点Vn个三角面片相接,把这些三角面片的面片重要度φ从大到小排序,令:

    $ t={Ceiling}(k \cdot n) $

    (4)

    对前t个面片重要度取均值,并定义此为顶点重要度λ

    $ \lambda=\frac{\sum\limits_ {i=1}^{t} \varphi}{t} $

    (5)

    式中,Ceiling为向上取整函数,k为模型特征因子,取值范围是k∈ (0,1]。模型特征因子k由使用者根据模型的特征指定。当模型表面较为平坦,每个顶点只需较少的面片即可说明其尖锐程度,此时k可以取较小值; 当模型表面起伏较大,细节特征多,则每个顶点需要更多面片以说明其尖锐程度,此时k可以取较大值。

    经过上述方法计算得到的顶点重要度λ∈ [0, 1]表征了某一顶点的尖锐程度,把顶点重要度λ作为权重因子引入二次误差的度量:

    $ Q^{\prime\left(v_{i}\right)}=\lambda_{i} \cdot Q\left(v_{i}\right) $

    (6)

    $ \Delta^{\prime(v)}=v^{T}\left(Q^{\prime\left(v_{i}\right)}+Q^{\prime\left(v_{j}\right)}\right) v $

    (7)

    引入顶点重要度λ作为权重因子并不会改变边折叠代价的二次型基本性质,因此仅影响边折叠顺序的判定,并不会影响新顶点V的坐标计算。相较QEM算法,QEM改进算法在测度折叠误差时,不仅考虑距离误差,还同时考虑表面折叠起伏引起的变化偏差。通过扩大尖锐区域与平坦区域折叠代价的差距,尽量优先折叠平坦区域,后折叠尖锐区域,在较高的简化程度下能更好地保持模型特征。算法步骤如图 4所示。

    图 4 QEM改进算法流程示意图
    图  4  QEM改进算法流程示意图

    本文以江苏省徐州市某乡村为实例研究对象,获取了该乡村及其周边地理环境的倾斜摄影FBX文件与乡村住宅的建筑模型OBJ文件。

    应用本文提出的数据集成方法,对倾斜摄影FBX文件与建筑模型OBJ文件进行集成操作与可视化展示。如图 5所示,两类文件成功实现了集成。

    图 5 集成可视化
    图  5  集成可视化

    本文以乡村住宅的独栋建筑模型为轻量化方法应用对象,考察本文提出的轻量化方法的效率。模型初始面片数量为75 501个,初始顶点数量为34 637个。

    首先控制模型特征因子为0.5。考察在不同的网格简化率下,模型在相同模型特征因子下的可视化效果。在本文中,网格简化率指算法减少的面片数量占原始模型面片数量的比重。

    图 6~7所示,在网格简化率低于75%的情况下,模型都能保持较好的外部轮廓与细节特征。当网格简化率达到80%时,模型开始出现了一定的空洞。当网格简化率达到90%时,模型已经出现了较大的畸变。算法生成网格简化率为75%的模型所需时间少于8.7s,与QEM算法类似地,此时算法已经生成了一系列简化率小于等于该值的简化模型,且这些模型之间可以实现平缓过渡,算法效率较高。

    图 6 网格简化率分别为0%,75%时的模型简化效果
    图  6  网格简化率分别为0%,75%时的模型简化效果
    图 7 网格简化率分别为80%,90%时的模型简化效果
    图  7  网格简化率分别为80%,90%时的模型简化效果

    随后,控制模型的简化率为75%。考察同一个模型在不同的模型特征因子下,模型在相同简化率下的可视化效果。

    图 8所示,当模型特征因子取0.5时,简化后的模型外墙较为平坦,与原模型相比并没有发生较大的畸变。与之相比,当模型特征因子取1或0.01时,模型的外墙凹凸不平,出现了较大的畸变,且模型特征因子取0.01时,模型已经开始出现空洞。三个简化模型的生成时间并没有较大的区别,均在8.7s以内。

    图 8 网格简化率分别为80%,90%时的模型简化效果
    图  8  网格简化率分别为80%,90%时的模型简化效果

    实例分析说明,本文提出的QEM改进算法在简化率较高的情况下,简化模型仍然能较好地能保持其外部轮廓与细节特征。通过合适地选择模型特征因子,可以优化模型的简化效果。

    本文提出了一种先转换后集成的方法,基于FBX SDK实现了FBX的转换与集成功能,提高了平台的适用性。同时,本文基于顶点重要度与模型特征因子改进了QEM算法。经过实例分析,QEM改进算法在较高的简化率下保护了模型的轮廓,且合理的模型特征因子取值有利于模型简化效果的提升。

  • 图  1   集成流程图

    图  2   折叠算法示意图

    图  3   QEM改进算法计算对象示意图

    图  4   QEM改进算法流程示意图

    图  5   集成可视化

    图  6   网格简化率分别为0%,75%时的模型简化效果

    图  7   网格简化率分别为80%,90%时的模型简化效果

    图  8   网格简化率分别为80%,90%时的模型简化效果

  • [1] 杨喆, 付功云, 袁文祥, 等. 基于WebGL三维引擎的轨道交通工程BIM+GIS平台研究[J]. 土木建筑工程信息技术, 2020, 12(5): 46-52. DOI: 10.16670/j.cnki.cn11-5823/tu.2020.05.08
    [2]

    Leng S, Hu Z Z. A Lightweight BIM-GIS Integration Method for Rural Building Design and Construction[C]//Creative Construction e-Conference 2020.2020, 25-30.

    [3] 闻平, 王冲, 吴小东, 等. FBX三维模型自动转换为OBJ三维模型方法研究[J]. 测绘与空间地理信息, 2016, 39(1): 113-115. https://www.cnki.com.cn/Article/CJFDTOTAL-DBCH201601038.htm
    [4] 王才勇. FBX模型处理工具的研究与实现[D]. 电子科技大学, 2020.
    [5] 周昆, 潘志庚, 石教英. 多细节层次模型间的平滑过渡[J]. 计算机辅助设计与图形学学报, 2000(6): 463-467. https://www.cnki.com.cn/Article/CJFDTOTAL-JSJF200006016.htm
    [6] 何晖光, 田捷, 张晓鹏, 等. 网格模型化简综述[J]. 软件学报, 2002(12): 2215-2224. https://www.cnki.com.cn/Article/CJFDTOTAL-RJXB200212000.htm
    [7]

    Zhen-Zhong Hu, Shuang Yuan, Claudio Benghi, Jian-Ping Zhang, Xiao-Yang Zhang, Ding Li, Mohamad Kassem. Geometric optimization of building information models in MEP projects: Algorithms and techniques for improving storage, transmission and display[J]. Automation in Construction, 2019, 107, 102941. DOI: 10.1016/j.autcon.2019.102941

    [8] 董艳, 张志毅, 杨客. 基于顶点重要度的保形网格简化方法研究[J]. 计算机工程与设计, 2013, 34(5): 1889-1895. https://www.cnki.com.cn/Article/CJFDTOTAL-SJSJ201305074.htm
    [9] 郭思怡. 基于轻量化BIM的城市综合体应急疏散系统研究[D]. 西安建筑科技大学, 2018.
    [10]

    Hoppe H, DeRose T, Duchamp T, et al. Mesh optimization[C]//Proceedings of the 20th annual conference on Computer graphics and interactive techniques. 1993, 19-26.

    [11]

    Garland M, Heckbert P S. Surface simplification using quadric error metrics[C]//Proceedings of the 24th annual conference on Computer graphics and interactive techniques. 1997, 209-216.

  • 期刊类型引用(2)

    1. 袁旸洋,谈方琪,樊柏青,成玉宁. 乡村景观全要素数字化模型构建研究——以福建省将乐县常口村为例. 中国园林. 2023(02): 50-56 . 百度学术
    2. 许璟琳,高尚,张铭,欧金武,谈骏杰,谷志旺. 乡村住宅及生产设施全生命期信息服务技术研究. 建筑经济. 2022(S1): 953-958 . 百度学术

    其他类型引用(2)

图(8)
计量
  • 文章访问数:  1836
  • HTML全文浏览量:  1114
  • PDF下载量:  70
  • 被引次数: 4
出版历程
  • 发布日期:  2022-01-31
  • 刊出日期:  2022-01-31

目录

/

返回文章
返回