-->
结合人工智能技术的三维城市快速建模方法
近年来,我国数字城市建设呈现出强劲的发展态势,全国将近700个大中城市,30000多个小城镇已经展开了“数字城市”建设工程。三维模型作为数字城市中的重要组成部分,提供了一个与现实相似的数字孪生模型,通过对城市未来形态进行预演,使城市规划更具前瞻性;通过对城市灾害和突发事件的模拟,为城市管理提供决策;通过对城市中各种基础设施进行优化,增强城市更新的合理性和可行性。因此,建立三维模型已经成为“数字城市”建设中的关键一环。
数字化底图模型
当前建立数字孪生模型的方法主要有两种:一种是基于倾斜摄影遥感影像的建模方法,遥感影像覆盖范围广以及时间分辨率高的优势支持快速获取大面积三维场景,然而得到的模型格式固定,不可编辑,无法满足后期编辑修改的更深层次规划处理要求(可观而不可“玩”的“花瓶”)。另一种是基于传统设计软件的人工建模方法,模型内的要素格式可编辑修改,然而工作量大,以建筑为例,需要基于底图一栋一栋的建立模型,并对窗户等属性赋值,这种低效率、高成本的方式无法满足快速建模的需求(繁琐的“灵活”)。为了高效获得可编辑模型,提出了面向规划的建筑物纹理高精度快速建模方法[1],自动判别屋顶类型并适配映射参数,全面提升建筑物屋顶纹理效果,并通过参数化规则建模得到三维模型。
建模方式对比图
以城市更新和城市规划[2]为例,建立相关建筑模型的过程需要建筑物相关的属性数据,诸如建筑物的轮廓,纹理和高度等一系列相关信息。数据量大,工作复杂,单纯依靠人工或者传统算法无法高效的获得高精度的结果。当前人工智能技术作为新一轮科技革命的重要驱动力(好像不论什么行业都要和所谓的“人工智能”扯上点关系,不然就落后了),深度学习已成为其中最有影响力的关键共性技术,结合深度学习技术和丰富遥感数据源的智能解译被应用到地物目标检测,要素分割以及分类等各种任务中。随着深度神经网络的快速发展,利用深度学习卷积神经网络技术提取建筑相关信息的精度不断提高,辅助人工建模,提高效率。
01 建筑属性提取
以识别建筑为例,人们可以分辨出建筑和其他物体的原因在于对比物体的时候,快速提取到了代表建筑物的显著性标志(例如有窗户,有一定的高度等),大脑在分辨物体时所处理的信息就是当前物体的特征信息。基于机器学习的方法,首先对样本数据进行特征信息抽取,其次对特征进行学习,最后进行输出。
特征学习流程图
传统方法需要人工干预特征,即特征是由专家设计的,常被称为“特征工程”,再通过学习这些设计好的特征进行后续任务。深度学习方法通过人工神经网络自动提取特征并进行学习,减少了人为干预,通过复杂的网络结构层次对特征的提取也更加全面(类似于学习特征的儿童,随着年纪的增大学习到的知识也增多)。由于人工进行了参与,因此传统方法中的特征是可解释的,即特征代表的意义是可知的。而在深度学习神经网络中,输入的数据都是一堆矩阵,给定相应的标签和参数,通过反复的学习最终得到正确的输出,特征在神经网络反复的学习中产生,其代表的意义不可知。2012年由Alex Krizhevsky提出的AlexNet模型[3]夺得2012年ILSVRC比赛的冠军,首次证明了机器学习到的特征超越手工设计的特征。
AlexNet模型结构图[3]
AlexNet模型常用于图像分类任务中,如上图所示,该模型共有8层网络,前5层网络是卷积层,后3层网络是全连接层。最后一层是输出层,为1000个分类的sofatmax层,即对于图像分类任务,输出1000个分类的概率,概率值最大的类,就认为图像属于这一类。
与图像分类不同,提取建筑属性的过程本质属于图像分割任务,不仅包括识别出建筑类别的图像分类任务,还包括对建筑轮廓边界进行精确划分的实例分割任务。图像分类模型在最后的全连接层,经过softmax操作后得到分类类别的概率信息,将二维图片矩阵压缩成一维,丢失了空间信息,即概率信息表示的是整个图片的类别,无法对图片中每个像素的类别进行判断。
2014年提出的FCN[4]全卷积神经网络,将最后三层全连接层转化为卷积层,利用反卷积层对网络中最后一个卷积层的特征进行上采样,使输出结果恢复到输入图像相同的尺寸,对图像中每个像素点进行了类别预测,达到了分割的目的,但结果不够精细,且没有考虑像素与像素之间的关系。
FCN模型与分类模型对比结构图[4]
基于FCN网络模型,提出了一种应用于医学领域的图像分割网络-Unet模型[5],该模型可以在医疗图像样本少以及数据不均衡的情况下,获得较高的精度;且网络特有的U型结构可以用于获取上下文的信息和位置信息。然而U型左部分的Encoder特征提取部分和右部分的Decoder上采样部分层数无法确定,浅层的网络部分提取纹理特征,深层的网络部分提取本质特征,每一次下采样提取深层次特征的同时,会相应的损失部分边缘特征,这些失去的特征无法从后续上采样部分中重新获得,即不同层次的特征无法融合。
Unet模型结构图[5]
基于Unet结构的不完整,学者们提出了Unet++模型[6],将原有Unet模型中的空心部分填满,可以获取不同层次的特征,并通过特征叠加的方式整合不同层次的特征。
Unet++模型结构图[6]
原始影像图
基于Unet++模型,对影像进行建筑物轮廓提取,获取影像中建筑物类别及其相应纹理。设置成图建筑阈值,过滤掉面积过小,无法上图的建筑物区域。基于双通道分割方法[7],进行建筑物轮廓处理,结合联通域提取对每一个建筑物执行轮廓规则化,效果示意图如下(红色轮廓线为原始建筑物轮廓线,蓝色轮廓线为优化后建筑物轮廓线),深度学习提取出的部分轮廓边缘曲折,不符合传统建筑物“方方正正”的轮廓线,因此需对其进行轮廓优化处理。
轮廓规则化示意图
下图为优化后的建筑物轮廓图。由于原始影像中红褐色纹理被认为是临时搭建房屋,未在训练样本集中加入相应特征,因此测试区域的相应轮廓纹理也未被提取出来,后续可以通过增加模型训练样本集中建筑物纹理的类别以提高提取建筑物精度。
建筑轮廓图
02 参数化规则建模
基于遥感影像获取相应建筑物纹理之后,接下来就是基于轮廓纹理进行参数化建模。参数化技术是通过调整参数值来控制几何形体特征的计算机辅助设计技术,包括基于文法规则的方法、采用数学模型的方法和结合人工智能的方法三种类型。本次采用基于文法规则的方法,进行参数化规则批量快速建模,即按照编写好的规则由地面形状生成建筑体块,通过设置体量、结构、外观等参数来控制模型的最终形态。接下来依次执行拉伸、偏移、转换等细分规则,由大体块逐渐生成小体块,再配以贴图着色等操作,即可快速完成大场景下的建筑物批量建模。
三维建模示意图
其中地面形状由遥感影像矢量图层提供,贴图纹理由第一部分深度学习提取的建筑纹路提供,生成的模型要素可编辑,即可以对相同规则的建筑物同时编辑,生成辅助城市规划的不同三维模型。
批量调整动图
03 总结
结合深度学习和参数化建模技术,使快速建模得以实现。随着当前深度学习模型的快速更新迭代,越来越多的模型不断出现,为了获取更好的效果,今后将尝试更多不同的模型算法。同时,样本集作为先验特征知识和深度学习模型引擎之间的桥梁,也至关重要,后续将继续研究如何在样本量少的情况下,尽可能提取更多特征用于模型的学习,以获得高精度结果。
随着近年来数字城市和智慧城市等项目的开展,对三维模型需求日趋增加,获取具有时效性的三维模型,可以实现不同方案的实时调整,三维模型的批量修改,从而实现三维场景下的各种更新以及规划等任务。建筑行业一直被认为是数字化水平最低的行业,研发团队将持续探索深度学习图像识别的关键前沿技术,深度融合现有工程技术,为智慧城市的开发利用奠定坚实的基础。
评论