1、第 卷 第 期 年 月 北京测绘 引文格式:冯雅欣,陈丽,刘如飞,等 建筑物立面多层次快速建模方法 北京测绘,():,():收稿日期 基金项目 国家自然科学基金();山东省自然科学基金();山东省重点研发计划(重大科技创新工程)()作者简介 冯雅欣(),女(土家族),黑龙江哈尔滨人,硕士在读,研究方向为建筑物三维重建。:通信作者 陈丽,:建筑物立面多层次快速建模方法冯雅欣 陈 丽 刘如飞 王仕林 李文辉(山东科技大学 测绘与空间信息学院,山东 青岛;山东省地质测绘院,山东 济南)摘 要 针对建筑物立面手工三维建模速度慢、工作量大等问题,提出了一种多细节层次建筑物立面快速建模方法。首先以墙面为基
2、准,窗户为主体,分析各细节部件几何特征、空间分布特征及拓扑关系,设计了一种窗户及墙体多细节层次模型,并定义了各细节层次精细度及所需的结构化特征数据;然后基于三维激光点云数据,提取三维建模所需的结构化特征参数;最后借助 脚本实现多层级墙体和窗户模型自动化重建,并基于各部件拓扑关系快速构建多层次建筑立面模型。通过实验进行精度及效率分析:表明该方法建模精度较好,距离中误差达到.,建模效率及自动化程度明显提高。关键词 三维激光点云;建筑物立面;三维重建;多细节层次模型设计;中图分类号 文献标识码 文章编号()引言随着“数字城市”和“智慧城市”的发展,城市三维模型已经成为导航、城市规划与管理、仿真和虚拟
3、现实等许多应用的核心内容,各种应用都要求城市模型具有高保真度和低复杂度,这些都离不开建筑物单体化三 维 建 模 这 一 关 键 技术。而建筑物立面作为建筑物的重要组成部分,能否快速准确地进行几何重建至关重要。目前,三维激光扫描技术作为一种新兴的扫描技术,利用激光测距原理,通过记录建筑物表面大量密集点的三维坐标、反射率和纹理等信息,大面积快速获取被测对象表面的三维点云数据,并 且 能 完 整 覆 盖 建 筑 物 局 部 细 节 特征,具有效率高、精度高的特点,被广泛应用于建筑物三维重建。现有研究中,贾雪等根据建筑物的结构特征,设计了合理的镶嵌模型,利用 进行分块建模,再将屋顶、屋身、台基和门窗等
4、块状模型进行组合,构造出完整的三维立体模型。杨雪姣等将建筑物主体点云导入,进行建模及纹理贴图,三维模型成果根据需求进行三维漫游展示及功能二次开发。索俊锋等利用 软件提取建筑物的基座、门、窗、柱体等平面位置在不同视角、不同高度的剖切面轮廓线,将其导入 软件中,创建三维模型。上述方法实现了建筑物三维模型的精细化重建,但具有劳动密集程度高、工作量大、成本大等缺点。因此,本文通过分析建筑物立面中各部件的几何特征、空间分布特征及拓扑关系,基于三维激光扫描仪获得的海量高保真点云数据,获取所需关键参数,自动生成多细节层次(,)建筑物墙体及窗户模型,构建建筑物立面多层次三维模型。第 卷 第 期冯雅欣,陈丽,刘
5、如飞,等 建筑物立面多层次快速建模方法 多细节层次立面模型设计建筑物立面包含有丰富、直观的细节特征(如窗户、门、阳台等),所具有的逼真纹理和复杂的几何结构需要大容量的数据存储以及强大的计算能力来满足模型可视化渲染与分析要求。由于大多数计算机的性能有限,因此有必要以不同的 来表达 城市模型,以降低模型的复杂性和存储要求。目前常见的三维数据标准中,城市地理标记语言(,)对 具有最完备的定义。在 中,标准根据建筑物语义信息将建筑物模型定义为 个层次细节(),随着细节层次的提升可以获得更多细节信息,其潜在的应用也会不同。现有建筑物 研究中,利用通用的 模型满足不同应用需求是比较困难的,因此需要根据具体
6、应用需求建立不同精度的模型。故本文通过分析建筑物的几何特征、拓扑关系及空间分布特征,首先制作墙体及窗户不同层级的离散,然后根据具体应用需求,选择不同层次细节的各建筑部件,生成所需的建筑物立面。建筑物立面模型特征描述建筑物立面包含众多的显著细节特征,如墙面、窗户、门洞、地面、顶面、阳台、突起细节等,它们都具有不同的几何特征、空间分布特征以及拓扑关系。几何特征主要指各部件的表面几何形状,如尺寸、结构等,是实现建筑物各部件精准几何重建的重点。空间分布特征是指各细节要素的分布形态、地理位置及方位,是实现快速三维重建的基础。拓扑关系是指相邻立面及各面片之间的相互关系,如何重建立面与立面之间的拓扑关系是建
7、筑物立面模型建立的关键。建筑物立面中显著细节特征描述,如表 所示,其中窗户及墙体是本文研究的重点。表 建筑物立面细节特征描述表部件类型几何特征空间分布特征与墙面拓扑关系墙体面积较大,由多个面片组成在建筑物外轮廓线两侧一定宽度范围内,与 轴平行相邻墙面正交窗户面积较小,形状较规则,多为长方体分布范围较大,位于墙面内,法向量与 轴平行,其方位角与所依附墙体相同包含门洞面积较小,形状较规则,多为长方体分布范围较小,位于墙体内,法向量与 轴平行,其方位角与所依附墙体相同包含阳台形状不规则,一般由多个长方体组成呈线型均匀分布,垂直于 轴,在墙面或顶面范围内相交地面面积较大平行于 轴,高程最小,低于墙面相
8、交顶面面积较大,形状多样高程最高,高于墙面相交 多细节层次窗户模型设计窗户目标作为建筑物立面中的主要细节特征,分布范围广且占据面积较大,因此构建窗户目标的 模型,可有效减少建筑物立面几何模型和纹理图像数大小,高效输出三维可视化场景。本文根据 中建筑物分级的纹理、分类、精度和功能等方面的模型特征,分析窗户的结构特征,设计了一种窗户目标的 模型,采用的划分方式及各层级所需获取关键参数如图 所示。:借鉴已有的建筑信息模型(,)架构反映窗户模型的体量信息,由窗户外部轮廓拉伸而成;:反映窗户主要结构,是在 的基础上再进行细分,忽略建筑物由特殊造型所造成的结构变化,可满足基本结构分析,该层级模型由窗框和窗
9、户内部轮廓拉伸而成的体块模型构成,并分别赋予纹理;:此层级为精细模型,能够反映窗户部件的详细尺寸信息。多细节层次墙体模型设计墙体作为建筑物立面的重要内容,能反映建北京测绘第 卷 第 期图 窗户 模型及所需特征参数示意图筑物的轮廓特征,是其他立面信息的依附。墙体具有复杂的结构,表面包含着很多外部细节,除了建筑物主墙体和侧墙面,还含有突起结构,故本文设计了 层级墙体概念模型,如图 所示。采用的划分方式如下:体块模型,可看作由二维平面纵向拉伸为三维的块状模型;:基础模型,在体块模型的基础上增加窗洞,形成墙体镂空模型;:细节模型,在基础模型的基础上进一步丰富墙体外部的细节结构(窗檐、突起)。图 墙体
10、模型 建筑物立面自动化建模 是 公司为 软件开发的脚本语言,具有语法简单、功能强大的特点,可用于开发相应的程序实现建模、动画、渲染及场景动态控制等操作。针对结构上具有规律性的建筑物立面建模,运用 编程比传统的交互式操作效率更高。本文主要运用 脚本语言提供的 功能,通过用户界面、等,制作参数的输入界面,通过 机制,用鼠标单机来执行各部件三维建模代码,实现 层级窗户及墙体模型的自动三维重建,从而能更加方便、快速地实现建筑物多层级立面三维重建。窗户模型快速重建本文提出一种面向窗户对象自动建模方法,该方法首先将几何特征相同的窗户部件分为一类,并根据各层级特征参数,分别自动重建三个层级窗户部件的单体模型
11、;然后分析空间分布特征,研究分布规律,可快速生成各立面中 层级窗户部件的三维模型,如图 所示,具有相同几何特征的窗户,一般其相邻窗户之间的横向距离和纵向距离是相同的,即(,)与(,),(,)与(,)的数值是相等的,只需计算出其横向个数 及纵向个数,以左下角窗户点 为基准,即可自动生成整个立面中的窗户模型。最后,由.节的介绍可知,窗户包含于墙体内,且两者法向量方向及方位角相同,故获取 点的三维坐标以及依附在墙体的方位角,即可自动实现该立面中窗户三维模型的真实位置坐标及姿态的准确还原。图 窗户目标快速生成示意图 层级窗户三维模型重建具体步骤为:()创建函数(),通过提取的关键参数、,设置参数、等参
12、数,自动生成具有不同几何特征的 层级窗户单体模型。()创建函数(),具体参数大小设置同 层级一样,通过获取的关键参数、,利用脚本调用 中的 接口,通过设置其中、等参数,自动生成 层级窗户单体模型。()通过获取的关键参数、,在 层级模型基础上,利用脚本增加、等接口中的参数,自动生成 层级窗户单体模型。()以 层级单体窗户模型为基准,通第 卷 第 期冯雅欣,陈丽,刘如飞,等 建筑物立面多层次快速建模方法过调用 函数,以 点位置为基准,通过两次 循环,批量自动生成各墙体立面中的 层级窗户三维模型。()初始化数组,将 点的三维坐标(,)及 加入,调用 函数及 函数,通过 循环自动实现窗户位置及姿态的准
13、确还原。墙体模型快速重建同一建筑物墙体具有不同的结构特征(高度、宽度)和纹理特征,且相邻墙面多为正交关系,为实现墙体自动建模,提出基于建筑物墙体分类、分层表面建模方案,将墙体结构和纹理特征相同的墙体分为一类,实现分层次快速建模。如图 所示,可将该建筑物墙体分为三类,并分别获取各类别的关键参数,如图 所示,通过 脚本语言分别重建墙体、的三维模型。图 建筑物墙体模型示意图图 墙体模型各个组成部分示意图 层级墙体模型根据墙体外角点信息,及墙体厚度 自动生成墙体二维平面图,如图 所示。并根据高度参数、,分层次构建墙体。层级墙体模型是在 层级墙体模型的基础上形成墙体的镂空模型,本文通过布尔差集运算()实
14、现三维重建,该方法原理是从基础(最初选定)对象移除相交的体积,即需从 墙体模型()中移除窗户与墙体相交的体积(),其中运算对象 的长度及高度与窗户模型的数值相同,厚度的数值要大于,此时进行差集运算,实现墙体镂空模型重建。在 层级墙体模型的基础上,将墙体镂空模型与墙面突起细节特征进行自动组装,实现 层级墙体三维模型重建。层级墙体三维模型重建步骤()将角点,的三维坐标依次赋予点号,并依次存储在数组 中,初始化数组,将 中的三维坐标加入 中。()点号 ,生成建筑物图 墙体二维平面图外轮廓。()调用 中的 接口,将 数值大小设置为,自动生成具有建筑物内轮廓信息的墙体平面模型。()调用 接口,根据参数,
15、将墙体 的平面模型自动生成墙体三维模型。()调用、等函数,将墙体 平面模型沿 轴方向移动,根据参数 自动重建墙体 三维模型。北京测绘第 卷 第 期()根据参数 在墙体 的基础上进行 操作,生成墙体。层级墙体三维模型重建步骤()调用()函数,更改函数中的 参数,使其数值大于,自动生成运算对象。()利用 运算工具,将之前生成 层级墙体与对象 做三维差积布尔运算,生成 层级墙体三维模型。层级墙体三维模型重建步骤()调用 接口,自动选中 层级墙体模型及突起模型。()利用 中的 工具接口将 层级墙体模型与突起细节进行组装。实验结果与分析 实验数据本文基于 软件,采用 脚本语言,根据上文所述方法,编写了自
16、动生成建筑物墙体和窗户三维模型的插件。为验证该方法和相应插件的实用性及可靠性,使用 三维激光扫描仪获取了单个建筑物的点云数据,如图 所示。图 建筑物点云 窗户三维模型重建传统手工建模需要通过连接墙体线生成窗户面,在生成具有相同几何特征窗户模型时,需要多次选择窗户线,通过捕捉命令进行对齐操作,具有操作繁杂,工作量大等问题。本文面向窗户单体对象,获取关键参数,即可自动重建具有不同几何特征的窗户三维模型,且自动实现位置及姿态的准确还原。为更直观地显示各层级模型的几何特征,本文选用建筑物单个立面中的 层级窗户线框模型进行展示,如图 所示。图 窗户线框模型 墙体三维模型重建传统手工建模需要多次连接墙体线,分割出具有不同材质、高度的墙体,在操作过程中会出现选错墙体线,出现拓扑等错误,本文通过分析墙体几何及纹理特征,获取关键参数,自动实现墙体分层次建模,利用布尔运算构建墙体镂空模型,避免出现因操作失误引起的拓扑错误。按照第.节所述方法,利用各层级墙体模型所需特征参数,快速重建 层级墙体模型,如图 所示。图 墙体模型第 卷 第 期冯雅欣,陈丽,刘如飞,等 建筑物立面多层次快速建模方法 模型精度与效率评