朱凌,孙伟伦,周克勤
(北京建筑大学 测绘与城市空间信息学院,北京 100044)
近几年,随着我国经济的快速增长,建筑业也得到了飞速发展。2019年全年国内生产总值990 865亿元,全年全社会建筑业增加值70 904亿元,占比7.16%,较去年上升0.04个百分点[1]。随着建筑业的发展,项目管理体系也在不断完善,进度管理作为项目管理的主要方面之一,其管理水平的高低关乎建筑行业的良性发展[2]。
项目进展监测管理是指在项目进行过程中不断监控项目的实际进程,收集反映项目进度实际状况的信息,掌握项目动态,确保每项工作按计划进行[3]。
目前,项目进展管理还存在许多不足,对建筑物施工进度监测的方式主要有五种。一是人工记录[4]为主的传统方式,通过现场巡视并与计划表进行对比。这种方法耗财耗时耗力,往往具有严重的滞后性和主观性。二是利用地面激光雷达(light detection and ranging,LiDAR)点云进行监测[5-7]。LiDAR点云需要从多个站点获取及后处理拼接,技术含量高且存在扫描漏洞,点云密度分布不均匀,在三维空间中不连续分布,且数据采集成本高。三是建筑信息模型(building information modeling,BIM)对比辅助[8-11]。施工现场信息变化快,BIM 模型往往容易脱离现场实际情况。四是传感器追踪[12-15]。这种方式工作量大,时间成本高,且获得信息形式单一。五是基于传统竖直摄影测量的变化检测方式检测高程或面积变化[16-18]。该方法难以展示建筑物的侧面信息,无法准确描述任意时刻任意位置的建模对象属性信息。
倾斜摄影测量技术是近几年发展起来的摄影测量技术,利用载有多镜头相机的飞行设备从多个角度对测量区域进行拍摄,突破了传统的正射影像无法直观体现目标地物侧面真实纹理的缺陷,能够应对更复杂的情况,应用范围更广[19-22]。
倾斜影像点云来源于倾斜摄影测量的内业处理成果,相对于LiDAR点云,其具有密度灵活可控、获取成本低以及数据分布规则连续等诸多优势[23-24]。
为更方便表示和量化计算建筑物三维模型及体积变化,本文采用体素(voxel)模型。体素是体积元素(volume pixel)的简称,是组成三维空间的最小规则单元,相当于二维空间中像素的概念。相对于面模型,体素模型(voxel model)能够更详细地描述物体的各形状要素信息,结构简单,格式统一[25]。
综上,针对现有的施工进度监测方法存在的不足,本文尝试采用无人机倾斜影像数据,以体素模型表达建筑物形体。本文采用的方法有数据采集成本低、倾斜影像包含建筑物侧面详细纹理信息、倾斜影像点云密度均匀,以及体素模型结构简单排列规则便于后续分析、处理等诸多优势。监测过程中记录的数据包括原始影像、点云、体素、五视图,可详尽记录施工现场各阶段状况,监测施工进程,指导和协调项目进度管理。
采用北京市大兴区某施工工地的无人机倾斜影像,以一栋在建五边形建筑物的两期影像为例,分别拍摄于2018年12月19日和2019年4月19日,时间间隔为4个月。目标建筑物施工过程中的两张照片如图1、图2所示。图1显示,建筑物左边梯形部分已经浇筑完成,显示白色水泥顶,右侧四边形部分为在建状态,露出钢筋叠合板,下侧地面无建筑物。图2显示,建筑物右侧四边形部分已经封顶,下侧新增两条走廊,一条走廊基本建成,另一条走廊在建。
图1 第一期施工现场
图2 第二期施工现场
采用点云体素转换算法生成两期体素模型,分别进行内部体素化。通过比较两期实心体素模型,获得在建建筑的几何变化部分。同时,赋予体素模型相应的颜色信息,生成五视图,再对五视图的图像信息进行分类、对比提取变化,得到五幅差值图。最后,针对每个视图的变化区域,通过统计变化类型方法,综合二维、三维变化以及施工计划表从而获取更加准确的在建建筑物结构及表面从无到有、从有到无及高度增减等变化信息。实验流程如图3所示。
图3 实验流程图
三维空间中,每个点云点都存在体素与其对应。针对点云数据,实现体素化步骤如下。
1)确定点云数据在X、Y、Z三个坐标方向上的最小值和最大值xmin、ymin、zmin、xmax、ymax、zmax。
2)根据点云分辨率,选择合适的体素分辨率。
3)确定点与体素的对应关系。首先,定义一个三维零矩阵,根据点云数据中每个点的三维坐标(x,y,z),按式(1)计算对应的体素坐标,将三维矩阵中相应位置的元素值设为1,遍历所有点即完成点云的体素化。
(1)
式中:INT表示向下取整;(i,j,k)表示体素坐标;res表示体素分辨率。根据上述步骤可以实现空间点的快速体素化[26]。
由于倾斜影像生成的点云位于物体外表面,内部不存在点,根据式(1)进行的体素化仅为模型表面体素化,生成的模型为空心体素模型。为了进行在建建筑施工进展对比,需要实心体素模型。本研究在体素化的基础上进行内部体素化,得到一个完整的实体。
空心体素模型的内部体素化分以下三步。
1)判断三维矩阵内,当(i,j)确定时,是否存在k值,对应元素1。
2)确定最大k值。若存在k值,则表示对应一个或多个元素1,由此确定最大k值。遍历三维矩阵第一页的行列值(i,j),得到kmax的集合。
3)内部体素化。根据行列值(i,j),依次生成[k=1,k=kmax]区间内的体素,实现模型的内部体素化。
由于常规建筑物铅垂于地面,因此建筑侧立面可认为与竖轴方向平行,上述模型的内部体素化适用于常规建筑物[27]。
在影像点云获取中,点云分辨率越高,点云模型越逼真,但分辨率过高,会增加数据量,降低数据处理的效率。合适的点云分辨率[28]可根据式(2)确定。
(2)
式中:Q表示点云质量;m为扫描物体表面的点云分辨率;λ为物体表面的最小特征尺寸。Q<0,表示不合适,认为点云分辨率低于物体表面最小特征尺寸,不能较高程度地还原被扫描物体;Q>0时,表示合适。例如Q=0.5,表示物体表面细节能被识别的信任度达到50%。
体素分辨率指的是小正方体的边长。体素分辨率越高,数据量越大,运算速度越慢,表示的模型的细节越丰富。若体素分辨率高于点云分辨率,生成的模型存在空隙,若低于点云分辨率又会丢失细节信息。为降低建筑物三维模型的数据量,同时又保证更精确完整还原建筑物,体素分辨率应相近于点云分辨率[29]。
两期体素模型的比较,实质是两个不同维度的三维矩阵相减,从而得到发生变化的体素部分。步骤及原理如下。
1)确定两个三维矩阵的最大行、列、页数,即最大l、m、n值。
2)扩展为相同维度的三维矩阵。由于不同维度的矩阵无法相减,所以要实现对应位置元素相减,需要将两个维度不同的三维矩阵扩展为维度相同的三维矩阵。以最大l、m、n值为三维矩阵的行、列、页数,定义两个三维零矩阵A和B,再把两个三维矩阵的元素赋值到矩阵A、B的相应位置上,即完成不同维度矩阵的扩展。
3)三维矩阵相减。第一期体素模型的三维矩阵A,矩阵元素只定义数字0和1,0表示不存在体素,1表示存在体素;第二期体素模型的三维矩阵B,矩阵元素只定义数字0和2,0表示不存在体素,2表示存在体素。用扩展后的第二期三维矩阵减去第一期三维矩阵,有四种结果,分别是2、1、0、-1。2表示第二期相对于第一期增加的变化部分,1表示没有发生变化的部分,0表示没有意义,-1表示第二期相对于第一期减少的变化部分。
采用Photoscan生成影像点云,点云点的属性分别是x、y、z坐标和R、G、B颜色。其中,R、G、B表示点云的红、绿、蓝波段灰度值。体素模型的颜色信息来源于点云,如图4所示,由于点云与体素分辨率接近,每个体素内分布有一个或多个点云,将位于体素内点云的颜色R、G、B值取平均,即为体素的颜色,如式(3)所示。
(3)
式中:R、G、B分别表示体素的红、绿、蓝波段灰度;r(k)、g(k)、b(k)分别表示第k个点云的R、G、B波段灰度值;k表示一个体素内点云的个数。
图4 点云体素位置示意图
五视图指建筑物的俯视图、前视图、后视图、左视图、右视图,从建筑物体素模型的上部和前后左右五个方向分别进行正射投影获得。
定义体素的六个面分别是上面片、下面片、前面片、后面片、左面片、右面片。以俯视图为例介绍获取方法。
1)判断三维矩阵中元素1的位置,即当i、j值确定时,是否存在k值。
2)若存在k值,则表示存在一个或多个体素,通过比较得到最大k值,即确定为i、j、k对应的顶部体素。
3)顶部体素的上面片,即为构成俯视图的一个面片。
4)根据2.5节,把体素的颜色值赋予体素的上面片,其余五个面不予显示,遍历所有i、j、k值,得到俯视图。
五视图差异影像可以反映在建建筑二维变化信息,在外墙体刷漆、抹灰、贴瓷,爬架网片架设与拆除等施工类别下,二维角度可展现出三维变化检测无法表现的施工进展情况。
本实验采用面向对象分类方法,对两期五视图的影像信息分别进行图像分割、图像分类,然后采用分类后比较法,对变化部分进行统计,最后得到五视图变化结果。
首先,采用photoscan1.4.5软件对两期倾斜影像进行处理,生成点云模型。由于目标建筑物的最小特征尺寸接近于0.1 m,所以对点云模型的分辨率设置为0.1 m。生成的两期点云模型如图5、图6所示。采用cloud compare 2.9对两期点云模型进行裁剪、去噪、配准等处理。
图5 第一期点云模型
图6 第二期点云模型
分别对两期点云进行体素化。因为点云分辨率为0.1 m,为使体素模型更完整地还原目标建筑物,体素分辨率略低于建筑物的最小特征尺寸,即体素分辨率应低于点云分辨率,所以选取0.2 m做为体素分辨率。点云体素转换算法生成的体素模型为空心体素模型,根据上文的内部体素化方法,生成两期实心体素模型,如图7、图8所示。
图7 第一期体素模型
图8 第二期体素模型
对两期体素模型做比较,得到在建建筑物的体素模型的第二期相比于第一期的增加、减少、无变化部分,体素差异模型如图9所示。
图9 体素差异模型
由于倾斜影像纠正获取五视图需要多次实地采集建筑物的多个特征点坐标,工作量大,而从体素模型获取五视图方便快捷。为更逼真地获取体素颜色信息,选取体素分辨率为0.15 m,得到建筑物的两期五视图,如图10所示。
图10 两期体素模型的五视图
采用ENVI 5.0软件对影像进行对象化及分类,各类别颜色信息见表1,分类后两期五视图如图11所示。
表1 分类信息表
对分类后的两期五视图分别进行变化检测,得到五幅差值图,如图12所示。因采用分类后比较法进行变化检测,每幅视图的变化类型多达56种,例如从背景变化为水泥墙面、从钢筋砼变化为楼顶等,不再依次赘述。从图11、图12可以看出,由于施工现场各种物体堆放复杂多样,以及无人机航拍时太阳高度角造成的阴影等影响,在建建筑物各表面的变化信息细节杂乱。为降低多种因素对五视图变化检测的影响,这里采用数量统计的方法,以反映出各表面的大致变化情况,进而实现施工进程的量化监测。
图11 面向对象分类后的两期五视图
图12 五视图变化结果
统计每个表面每种变化类型的数量。统计发现,在每幅视图的56种变化类型中,大约50种变化类型的面积占比不到1%,可视为误差。选定每幅视图变化面积占比最大的前三个变化类型进行表述。由于俯视图与四个侧视图的背景不同,这里单独统计,结果见表2,其他视图统计结果见表3。
表2 俯视图变化表 %
表3 四个侧视图变化表 %
根据体素差异模型可以得出,从2018年12月19日至2019年04月19日,共四个月的施工期间,目标建筑物的施工进展如图9(a)所示,包括建筑物封顶、建筑物左侧面的已建成走廊和在建走廊。根据图9(b)可以得出,差异模型的减少部分有建筑顶层蓝色安全防护网、施工脚手架的拆除,以及施工现场某些地面设备的移动。图9(c)为四个月时间段内,一直没有产生变化的部分,即2018年12月19日以前建成部分。
根据五视图的变化图像可以得出,俯视图的主要变化类型有钢筋砼变为楼顶、地面地物变为水泥墙面,如图12(a)粉紫色与黄色区域,其变化与图9(a)相吻合。前视图、后视图的主要变化类型为背景变为楼顶、背景变为安全防护网等,如图12(b)、图12(c)褐色与浅粉色区域,表示建筑物封顶和已建成走廊。左视图、右视图的主要变化类型为钢筋砼变为安全防护网、背景变为楼顶等,如图12(d)、图12(e)褐色与蓝色区域,表示建筑物封顶、安全防护网随建筑物高度的增加而增加。
根据工程监理方提供的施工计划表和施工进度表(图13、图14)可以得出,5号楼第1期月报共计划施工60个工作日,但截至航飞日期,仍需9个工作日完工,施工任务未如期完成。
图13 施工计划表
图14 施工进度表
通过对比体素差异模型、五视图变化图像与项目管理报表得出,计划表显示截至到4月15日,5号楼、5~7号走廊、5~8号走廊的主体部分应全部建成。实际进度中,5号楼、5~7号走廊的施工现场在二维与三维方面的进度变化一致,彼此吻合,但5~8号走廊由于未知原因,并未按计划完成。
本文采用体素模型与五视图能够表现出建筑物的真实三维变化信息,反映模型的内部及侧面情况,且结构简单,直观显示三维。结合施工进度表得出在四个月内5号楼总施工完成85%,进度延误15%。
本文实现了基于体素模型的自动化、定量化的建筑施工进度监测方法,改善了传统方法主观性和缺少影像、点云等现状记录的不足,初步探讨了点云模型的体素化、两期体素模型对比以及五视图变化检测的整体流程和思路。实验表明,体素模型可以较好地还原建筑物的三维模型;体素差异模型可以得到施工过程中,建筑物加高、拆除,以及未变化的部分,结果一目了然,人工干预少;五视图差值图像可以弥补体素差异模型无法检测二维变化的缺陷,快速及时、成本低、效率高。通过与项目报表对比,结果表明,基于体素与五视图的施工监测能够宏观地展现建筑施工进度情况,适用于规则建筑物的施工进展监测,提出的方法对工程项目进度管理进行了定性的验证与指导。
目前的内部体素化方法还无法满足复杂建筑物的内部建模需求。今后的研究重点是改进内部体素化方法以及实现施工进度管理的精度评价等问题。