基于多视角数字图像的深基坑三维重构研究
2021-11-28黄身勇蒋国平
黄身勇 蒋国平
摘 要:三维重构是计算机视觉方法。本文采用数字图像方法对深基坑进行了三维重构研究,分析了三维重构中SIFT和RANSAC等算法的参数对计算性能的影响,通过选取合适的参数,使得RANSAC算法能够在满足精度要求的前提下速度更快。同时,将计算得到的参数应用于实际深基坑三维重构,既满足了工程精度,又达到了计算速度的要求。
关键词:深基坑;三维重构;计算机视觉
中图分类号:TU753文献标识码:A文章编号:1003-5168(2021)16-0010-05
Abstract: 3D reconstruction is a computer vision method. In this paper, the digital image method was used to study the three-dimensional reconstruction of deep foundation pit, and the influence of the parameters of sift and RANSAC algorithms on the calculation performance was analyzed. By selecting appropriate parameters, the RANSAC algorithm can be faster on the premise of meeting the accuracy requirements. At the same time, the calculated parameters are applied to the actual three-dimensional reconstruction of deep foundation pit, which not only meets the engineering accuracy, but also meets the requirements of calculation speed.
Keywords: deep foundation pit;3D reconstruction;computer vision
随着计算机硬件的快速发展,三维物体重构技术也得到了广泛应用。三维重构算法比较多,Newcombe等人在2011年提出的KinectFusion,可以在不需要RGB图像而只用深度图像的情况下建立三维模型[1]。Zhou等人通过对图像序列进行划分,实现了计算每一个小块之间的位姿变换,然后再融合的算法[2-4]。Whelan等人通过Kintinuous和ElasticFusion算法实现了消费级RGB-D相机三维高质量重构[5-8]。2017年,斯坦福大学提出的BundleFusion算法[9],基于RGB-D进行稠密三维重建。三维重构技术在计算机视觉领域得到了快速发展,其是深基坑施工过程中变形监测一个重要的手段。但是,三维重构技术涉及大量的算法和参数设置,在工程实时性要求较高的情况下,需要选择合适的参数,以便达到实时三维重构的要求。
1 工程概况
本研究就某大型工程中的深基坑进行三维重构,为后续的实时检测和监测提供完善的数字化模型。工程现场场景非常大,采用数字化建模可以节省大量的时间和人力。由于工程基本是属于静态的,因此,本文使用的相机的工作频率是2 Hz,图像分辨率为1 280×1 024。对工程现场进行图像采集,采集要求是:相机与相机之间至少有60%的重叠度,同时要改变相机与被拍摄对象的距离来增加图像数量,以实现同一个位置具有充分的数据,能够更加精准地重构三维数据模型。图1是拍摄的部分图像。
2 三维重构理论
2.1 相机成像模型与坐标系
相机采用中心成像模型,具體的模型会涉及三种坐标系:世界坐标系、相机坐标系和图像坐标系[10]。相机坐标系、世界坐标系与图像坐标系之间的关系见图2。相机在不同的位置进行拍摄,就会产生不同的坐标系。当相机两次拍摄了同一个点时,可以建立如下方程:
2.2 特征提取
本文采用尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)进行特征提取[11]。SIFT特征是基于物体的一些局部特征点,与影像大小和旋转无关,对光线、噪声、微视角改变的容忍度也相当高,鲁棒性强,适合用来提取尺度变换和旋转角度变换的各种图像特征点,准确性高。本文所采用的图像的分辨率为1 280×1 024,如果特征点计算太多,在后续的特征点匹配过程中丢弃的特征点也会增多,同时计算量会成倍增加。为了均衡性能与精度,这里每幅图像提取100到1 000个特征点,则所得到的SIFT的特征点如图2所示。从每幅图的特征点密度来看,能很好地满足工程需要。
2.3 特征匹配
采用一致性RANSAC(RANdom SAmple Consensus)八点算法进行特征点匹配。该方法是由Fischler和Bolles在1981年所引入的鲁棒性方法[12]。RANSAC算法的输入是一组观测数据,一个可以解释或者适应于观测数据的参数化模型,一些可信的参数。RANSAC通过反复选择数据中的一组随机子集来达成目标。将被选取的子集假设为局内点,并用下述方法进行验证:①有一个模型适应于数据子集,即所有的未知参数都能从假设的子集数据计算得出;②用①中得到的模型去测试其他数据,如果某个点适用于估计的模型,认为它也是该子集内的数据点;③如果有足够多的点被归类为假设的数据子集,那么估计的模型就足够合理;④用所有假设的数据子集去重新估计模型(如使用最小二乘法),因为它仅仅被初始的假设数据子集估计过;⑤通过估计数据子集内的点与模型的错误率来评估模型;⑥上述过程被重复执行固定的次数,每次产生的模型要么因为数据子集点太少而被舍弃,要么因为比现有的模型更好而被选用。
根据式(1)和式(2)进行推导得到:
式中:[F]是基础矩阵。
将其写为式(5)的形式。
方程(5)共有8个未知数,因此只需要两张图像8个对应特征点来计算基础矩阵[F]。
实验中图像分辨率采用1 280×1 024,通过RANSAC八点算法得到特征点匹配结果。图4(a)列出了图像1和2的特征点匹配关系,图4(b)列出了图像2和3的特征点匹配关系。从两幅图可以看出,特征点匹配结果是一致的。
2.4 光束法平差
理想状态下,对场景中任意三维点P,由从每个视图所对应的的摄像机的光心发射出来并经过图像中P对应的像素后的光线,都将交于P这一点,对于所有三维点,则形成相当多的光束;实际过程中,由于噪声等的存在,每条光线几乎不可能汇聚于一点,因此,在求解过程中,需要不断地对待求信息进行调整,以使最终光线能交于点P。对[m]帧,每帧含[N]个特征点的目标函数为:
2.5 稠密点云匹配算法
稠密点云通过两两图像之间的同名特征点的时差来计算位置关系。通常有两种算法[13-14],即局部窗匹配算法和全局优化算法。局部窗匹配算法通过比较图像之间相同窗口内的像素灰度相似性来确定两窗口的中心是否匹配。因此,选择合适的窗口大小和清晰度对于计算是十分重要的。全局优化算法通过优化某一个视差函数来求解匹配问题,其计算结果会优于局部窗匹配算法,数据量也会增大,导致计算速度下降。
3 三维重构实验与分析
根据上述三维重构理论,对计算中主要耗时并且易于调整的两部分进行数值实验,即SIFT和RANSAC算法,对SIFT算法中涉及的组数、组内层数进行了计算,同时对RANSAC算法中特征点的数量进行了匹配计算。通过这些参数的调整来分析计算图像的时间以及重投影误差,从而对比出一组适合工程需要的、性价比较高的参数,将其作为实际工程测量需要的参数,具体测试的参数如表1所示,其重投影误差最大为0.671个像素。在实际计算过程中,特征点本身也会存在误差,从大量的特征点中选择最优点依赖于特征点的数量,数量减小其精度也会下降,但是计算速度会明显提升。根据本文对工程的需求,将其重投影精度设置在0.5个像素以内,因此,根据需要,选择序号为5的一组参数,其组数设置为2,组内层数为4,特征点取前256个进行RANSAC算法。
将测试得到的参数应用于实际工程进行处理分析,依次计算得到特征点、特征点匹配等。然后对图像进行重构,其空间点重投影平均误差为0.46,重构后的图像如图5所示。
4 结论
本文通过多视角数字图像对实际工程中的深基坑进行三维重构。在精度允许的范围内,为了提高三维重构的速度,对SIFT算法的组数和组内层数,以及RANSAC算法的特征点数量进行测试分析,得到了在0.5个像素计算精度下的具体参数。同时,将该参数应用于实际深基坑三维重构,既满足了工程精度,又达到了计算速度的要求。
参考文献:
[1] CHOI S,ZHOU Q Y,KOLTUN V . Robust reconstruction of indoor scenes[C]// IEEE Conference on Computer Vision & Pattern Recognition. IEEE,2015.
[2] ZHOU Q Y,KOLTUN V. Dense Scene Reconstruction with Points of Interest[J].ACM Transactions on Graphics (TOG),2013(4):1-8.
[3]ZHOU Q Y,MILLER S ,KOLTUN V.Elastic Fragments for Dense Scene Reconstruction[C]// IEEE International Conference on Computer Vision. IEEE,2013.
[4]ZHOU Q Y,KOLTUN V .Simultaneous Localization and Calibration: Self-Calibration of Consumer Depth Cameras[C]// Computer Vision & Pattern Recognition. IEEE, 2014.
[5] WHELAN T ,KAESS M ,JOHANNSSON H ,et al. Real-time large-scale dense RGB-D SLAM with volumetric fusion[J]. The International Journal of Robotics Research,2015(4-5):598-626.
[6] WHELAN T ,KAESS M ,LEONARD J J ,et al. Deformation-based loop closure for large scale dense RGB-D SLAM[C]//2013 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2014.
[7] WHELAN T ,JOHANNSSON H ,KAESS M ,et al. Robust real-time visual odometry for dense RGB-D mapping[C]//2013 IEEE International Conference on Robotics and Automation. IEEE,2013.
[8]WHELAN T,KAESS M,FALLON M,et al. Kintinuous: Spatially Extended KinectFusion [C]//RSS Workshop on RGB-D: Advanced Reasoning with Depth Cameras. 2012.
[9]DAI A ,MATTHIAS NIEβNER,ZOLLHOEFER M ,et al. BundleFusion: Real-time Globally Consistent 3D Reconstruction using On-the-fly Surface Re-integration[J]. ACM Transactions on Graphics,2017(3):76a.
[10]馬宏德,张征友.计算机视觉:计算理论与算法基础[M].北京:科学出版社,1998.
[11]LOWE D G . Distinctive Image Features from Scale-Invariant Keypoints[J]. International Journal of Computer Vision, 2004,(2):91-110.
[12]FISCHLER M A ,BOLLES R C . Random Sample Consensus: A Paradigm for Model Fitting with Applications To Image Analysis and Automated Cartography[J]. Communications of the ACM,1981 (6):381-395.
[13]唐丽.由手提相机获得的序列图像进行三维重建[D].西安:西安电子科技大学,2003.
[14]刘小莉.双目立体视觉稠密视差算法研究[D].重庆:重庆大学,2008.