
摘 要:针对现有古建筑数字化保护点云模型生成方法存在的诸多问题,该文采用增量式运动恢复结构技术构建了一种基于影像的古建筑点云模型生成方法,可简单、快速、低成本地实现古建筑点云生成。首先使用普通相机拍摄目标古建筑影像集并平滑预处理,然后使用运动恢复结构技术构建三维稀疏点云模型,最后密集点云加密处理并纹理映射得到古建筑三维点云模型。该方法创新性地将运动恢复结构技术引入古建筑点云生成领域。实验结果表明:该方法能快速构建古建筑三维点云模型,为古建筑数字化保护点云模型建立提供了一种新思路。
0 引言
古建筑一般构造复杂,色彩丰富,历史悠久,文化价值高且缺乏重建数字数据,一旦损毁,不可修复。随着人们对古建筑研究与保护的发展,古建筑三维点云模型越来越重要,如何简单、快速、低成本地恢复古建三维坐标、构建点云模型是学术界的研究热点和难点。前人在古建筑三维点云生成领域做了大量研究:文献[1]直接使用钢尺量测木构件,结合高分辨率照片,使用计算机辅助设计(computer aided design, CAD)和 地理信息系统(geographic information system, GIS)软件对仿唐古建筑景观实现三维重建;文献[2]利用地面激光雷达和无人机摄影测量多源数据完成了海会寺宋塔的三维精细化建模;文献[3]利用近景摄影测量技术和比例尺测算,使用3DS MAX软件完成了布达拉宫里十三世达赖灵塔殿金顶的三维重建。虽然以上方法获取的古建筑三维点云精度高,但数据获取过程复杂、工作量大、成本高,都不能满足简单、快速、低成本地实现古建筑三维点云生成。
随着近年计算机视觉技术的快速发展,运动恢复结构(structure from motion, SFM)以其简单、快速、低成本等优势备受追捧。SFM流行的多视几何法[4]主要包括特征提取与匹配、多视图几何约束关系计算和三角测量。多视图几何约束关系计算是利用Longuet-Higgins提出的基础矩阵(F-Matrix)或Luong提出的本质矩阵(E-Matrix)[5]表示对极几何原理。文献[6]利用SFM技术建立了核桃树杆的三维模型,文献[7]将SFM应用于化石表面量测,文献[8]地质重建领域使用SFM技术,文献[9]利用SFM技术合成地面和航空点云实现三维重建,形成了地-空点云合并新方法。近年来SFM在各个领域被广泛应用,但古建筑点云生成领域应用稀少,本文创新性地将SFM引入古建筑三维点云模型生成领域,形成了一种基于影像的古建筑三维点云生成方法,为古建筑保护点云生成提供新思路。
SFM三维点云生成只需普通相机拍摄二维影像即可完成古建筑三维点云生成,鲁棒性强、实用价值高。点云生成技术路线如图1所示。首先利用普通相机采集古建筑影像集,图像预处理和SFM三维重建,然后使用光束法平差进行非线性模型优化,最后进行密集点云加密重建形成古建筑三维点云模型。
1影像的古建筑点云生成方法
影像预处理通常是平滑滤波,改善古建筑影像质量。双边滤波法[10]是一种简单、局部、非迭代、能较好地保存边缘的滤波方法,保留很多高频信息,对低频滤波效果最佳,适合于古建筑影像平滑处理,见式(1)、式(2)。

光束法平差(bundle adjustment)是一种优良的非线性误差优化算法[11],目前在摄影测量和计算机视觉等领域得到广泛应用,被誉称为“万金油算法”。
重投影误差[12](reprojection error)是利用当前估计的位姿信息将三维空间点投影到二维平面的坐标与真实像点坐标的距离误差。对于序列图像的三维点云生成,光束法平差就是最小化重投影误差,也是一个最小二乘优化问题,见式(3)。

投影矩阵自由度和空间点坐标矢量逐项加上改正数,式(6)~式(8)迭代,当改正数小于规定限差后,停止迭代,得到最优坐标。
现存多种古建筑点云生成方法都不能简单、快速而低成本的实现古建筑点云生成,本文利用增量式SFM技术实现一种基于影像的古建筑三维点云生成方法,该方法技术路线如图2所示。

影像集采集并预处理,基于SFM稀疏点云模型生成,密集点云生成和纹理映射。SFM稀疏点云模型生成又分为初始像对两幅图像点云模型生成和多幅序列图像点云生成。
“特征检测”采用速度更快的ORB算子[13]进行关键点提取和特征描述。“特征匹配”是在关键点k-d tree基础上ORB算子相邻影像特征匹配,构建匹配点对集。在匹配过程中使用k=2的KNN匹配算法,并选取Lowe的匹配规则Ratio Test(KNN找出最近明汉距离的最小的两个关键点,d1/d2小于某个阈值,则为正确匹配点对)。
该技术路线区别于传统SFM技术,使用了双边滤波预处理影像提高点云生成质量。此外类似于摄影测量空三同时顾及外方位元素和地面点,光束法平差误差方程中整体考虑相机的位姿和模型空间点。光束法平差使误差均匀地分布在整个点云生成过程中,能显著提高古建筑点云生成模型的质量。
两幅古建筑影像点云生成是选择初始像对建立初始三维点云模型,多幅序列影像点云生成是在初始三维点云模型的基础上依次匹配一副影像进行点云生成并融入初始点云模型。所以初始点云模型是点云生成模型基准,两幅古建筑影像点云生成是序列影像点云生成的前提和基础。初始像对选择不佳可能导致增量SFM中序列影像点云生成陷入局部最小值,初始像对选择至关重要,选择依据是:特征匹配点对数量和像对长基线。特征匹配过程中RANSAC算法鲁棒性估计单应性矩阵并记录内点匹配率,低内点匹配率对应长基线。所以初始像对是最低特征匹配点对的数量阈值约束下,内点匹配率最低的像对。
如图2所示,初始像对两幅古建筑影像点云生成包括初始像对选择、求解基础矩阵并优化、剔除外点并组成跟踪点集、求解本质矩阵、计算相机位姿、求解投影矩阵、三角测量和光束法平差。其中,“计算基础矩阵并优化”使用8点法鲁棒性(RANSAC算法[14])地计算初始像对的初始基础矩阵F(基础矩阵是一个3×3的矩阵,代数表示对极约束。F = e2^P1P2+),并使用L-M算法优化。“剔除外点”是根据对极约束计算距离提出外点。“计算本质矩阵”是使用5点算[15]法鲁棒性估算(本质矩阵是图像归一化后的基本矩阵,它是由对极约束定义产生的一个3×3矩阵,定义为:E = t^R )。“计算相机位姿”是SVD分解E得到初始旋转矩阵和初始平移矩阵(考虑相机前方约束Cheirality Check)[16]。“三角测量”是求匹配点集的初始三维模型坐标点集X=[X Y Z]T并提取该点色彩集color=[R G B]T,color用于点云模型显示。“光束法平差”是整体优化初始两幅图像的位姿和初始点云模型坐标。
序列古建筑影像点云模型生成是在初始点云模型的基础上,余下影像集中依次选择一副影像与初始模型匹配生成点云并融入初始模型并更新。图2中序列影像点云生成过程包括:加入一幅新影像、计算新影像投影矩阵、三角测量、点云生成完成判断、局部光束法平差和全局光束法平差。“加入一幅新序列图像”是从图像集中选择一幅与初始模型临近的影像加入到初始稀疏三维点云模型中。“计算新影像投影矩阵”是利用空间点三维坐标和新加入图像对应像点计算新加入图像的投影矩阵。“三角测量”是使用新计算的投影矩阵和新加入图像的关键点进行三角测量生成关键点的稀疏点云模型并加入到初始模型中。“局部光束法平差”是整体优化加入新图像的位姿和新增点云模型坐标。“全局光束法平差”是整体优化所有序列图像位姿和所有图像点云模型坐标。“全局光束法平差”后得到古建筑稀疏点云模型,然后使用PMVS完成密集点云恢复。
按照图2技术中的流程,普通相机拍摄古建筑序列影像,影像集双边滤波平滑预处理,增量SFM稀疏三维点云生成,光束法平差后进行密集点云恢复,可实现古建筑三维点云模型建立,促进古建筑数字化保护与研究。
2 古建筑重建实验
图3中,实验数据集为SONY ILCE-6000相机拍摄的位于北京建筑大学的29幅古建筑亭影像和24幅四合院影像,分辨率分别为4 080像素×2 720像素和5 472像素×3 648像素,焦距24 mm。古建筑纹理丰富、结构复杂。

|
|
|
|
|
|
|
|
|
|
|
|
Intel(R) Core(TM) i5-5200U CPU @ 2.20 GHz
|
|
Microsoft Visual Studio 2017
|
|
|
|
|
|
|
|
|
利用2.1中所展示的实验数据环境和实验运行环境,在VS2017平台上按照图2中三维点云生成技术路线编写C++程序进行点云模型建立实验。使用Ceres-solver1.10.0库中光束法平差函数实现影像位姿和三维点云模型非线性优化。实验部分参数见表2,实验效果见图4。
残差指加入图像预处理和光束法平差后点云生成重投影平均残差。从表2中可得,20 min内可实现29幅2 000万像素影像古建筑点云生成,速度快;两场实验场景PMVS时间占比总时间分别高达87%和80%;两种实验场景点云生成平均残差均小于一个像素,能实现亚像素级精度古建筑三维点云模型重建。生成的古建筑亭点云模型数据导入geomgic软件测量图4中A点到B点的模型距离为2.295 m,钢尺实地量测真值为2.259 m,误差距离为0.046 m。
双边平滑滤波预处理改善古建筑影像质量,光束法平差优化点云生成精度、降低增量式误差累积。图4中古建筑三维点云生成模型飞点少,没有明显的点位漂移,点云生成效果良好,并保留了古建筑亭原始色彩。

针对相同场景下不同影像数量点云模型生成效果见图5,其时间对比见表3。

单像耗时是古建筑点云模型生成过程中平均每张影像点云生成消耗的时间。从表3可以看出,相同场景下,影像张数越多点云模型生成时间消耗越大,并且时间非一维线性增长;同时,影像张数越多,平均单张影像点云生成的时间消耗不断增加,所以对于大场景古建筑三维点云模型生成时间消耗会大大增加。
古建筑结构复杂,点云模型生成的结构点数量庞大。见表4,手工测量和全站仪方法进行古建筑三维点云生成作业虽然精度高,但时间消耗巨大;基于激光雷达的点云生成方法精度高、速度快,但需要前期控制点布设、作业时容易形成扫描空洞并且成本高;而本文基于影像的古建筑点云生成方法虽然较激光雷达和全站仪测量方法精度低,但是时间花费较少、成本低、作业简单容易实现,后期维护方便。
总体而言,相比于传统全站仪测量、激光雷达扫描等技术,这种基于影像的古建筑点云生成方法速度快、成本低、操作简单、容易实现,能满足大多数古建筑数字化三维点云模型建立,在未来古建筑数字化保护研究中必将崭露头角。
3 结束语
文中阐述了一种基于影像的古建筑三维点云生成方法,只需普通相机拍摄古建筑影像即可简单、快速而低成本地实现古建筑三维点云模型建立,该模型可用于古建筑数字化保护与研究等领域。该方法最大创新在于:将SFM技术开拓性应用与古建筑三维点云生成领域,实验室验证了其可行性,为古建筑保护点云模型的建立提供了一种新思路。同时,该方法也存在诸多不足:①点云生成算法中影像易受光照、镜头畸变等外在环境因素影响,鲁棒性低;②由于增量式误差累积等因素的影响,点云生成较激光雷达等方法精度低;③随着影像张数的增加,时间消耗非线性增加,对于超大古建筑场景点云生成困难。所以下一步工作将着重解决以上不足:改进特征提取与匹配算法,提高环境变化引起的算法鲁棒性;选取测量相机并进行相机检校和影像矫正,尝试非增量式SFM进行古建三维点云生成,提高模型精度;设计算法剔除重复多余影像,尝试同一场景多个稀疏模型,同时解算后配准融合为单一稀疏点云模型,密集点云恢复,降低整个古建筑点云模型生成的时间消耗。
作者简介:杨燈(1995—),男,重庆万州人,硕士研究生,主要研究方向为古建筑遗产数字化保护。E-mail:yangdeng@stu.bucea.edu.cn
基金项目:国家重点研发计划资助项目(2016YFC0803103);北京建筑大学研究生创新项目(PG2019054)
通信作者:危双丰 副教授 E-mail:weishuangfeng@bucea.edu.cn
倾斜摄影模型生产,从预处理到模型修复都使用哪些软件?
关于倾斜航空摄影技术的优化设计,这些你知道吗?
激光雷达生产大比例地形图项目设计书 .docx(文档可下载)
基于激光雷达增强的三维重建
倾斜摄影,激光雷达...他们用了这些招数全力推进“房地一体”农村不动产登记发证工作