英语原文共 16 页,剩余内容已隐藏,支付完成后下载完整资料
ELSEVTER独创的研究论文
基于移动设备的大型户外3d重建
Thomas Schouml;ps a, Torsten Sattler a, Christian Hauml;ne b, Marc Pollefeys c
a 计算机科学部,苏黎世联邦理工学院,瑞士
b 电子工程系和计算机科学系,加州大学伯克利分校,美国
c 微软,雷德蒙德,美国
收到时间2015年12月7日,接受时间2016年9月12日,发表时间2016年9月15日
摘要
本文提出一种基于现代移动设备进行大型户外场景的重建系统,该系统利用谷歌Project Tango平板电脑上的鱼眼相机获取图像数据,使用户只需花费几分钟步行通过现场,便可以完成对该大型场景的重建。我们利用GPU处理鱼眼相机所获得的图像来得到场景的深度信息。通过研究,我们发现在大型场景中使用动态立体视觉时,由于重建场景的大小不受限制而且相机可安放位置有限,导致系统对异常值的抑制效果较差。与深度传感器所得到的图像相比,图像的立体匹配发会得到一些高很多的异常场景深度值。因此,我们设计出一组滤波系统来检测和筛选不可靠的场景深度信息,保存下来深度值将使用TSDF(truncated signed distance function模型的点云融合方法)算法处理后,运用到场景的图像表示当中。我们的方法是利用移动设备进行大型户外场景的快速重建,并通过严谨的理论及实验验证了该方法的优点。
关键字:密集的三维重建 移动的三维重建 基于立体视频 立体平面扫描
- 介绍
三维重建技术现在已经广泛应用在各个领域上,比如增强现实、3D建模以及建筑学上。本项三维重建技术的关键在于能够为非专业用户在智能手机或平板电脑等移动设备上接近实时地创建逼真的3D模型。用户可以通过设备提供的直接反馈,看到当前的重建质量,并了解到是否需要更多的图像数据。室内场景重建的一个常规方法是使用手持的深度传感器来获取场景深度数据,例如微软的Kinect会利用深度传感器提供获取场景深度数据进行三维重建。不同于利用图像计算场景深度数据,深度传感器能够测量出在室内场景中占主导地位物体的均匀或弱纹理区域的深度信息。然而,深度传感器并不适用于户外场景重建,因为阳光会干扰深度传感器的运行模式,导致它们的试用范围有限。由于这些缺点的存在以及在现代移动设备中无处不在的摄像机,开发基于视觉的大型户外场景重建系统极为重要。在本文中,我们提出了这样一种系统。
此系统利用Google Project Tango平板电脑上的摄像头获取图像信息,通过立体运动获得场景图像数据并计算场景深度数据。类似于KinectFusion算法,我们的算法利用图像匹配的方式将场景深度数据集成到一个3D模型中。我们的研究目标是大规模室外场景的三维重建,重建的场景中需要有明显的标志物,例如房子。因为我们的系统使用了具有宽视野的鱼眼相机和深度测量法,使得用户可以简单快速地重建大型户外场景。如图1所示,利用我们的系统,成功的重建了一个大型场景的模型。
图1. 利用Google Project Tango平板电脑在6分52秒捕捉了191米长的房子外墙图像并加以重建。图1 分别为正视图,俯视图以及特写图。摄像机的运动轨迹如图中红线所示. https://youtu.be/njDqJjHRCYA,该网址的视频展示我们操作方法。(如果想了解标题中颜色的引用部分,可以参考本文的web版本)
与主动传感器采集到的深度数据相比,我们用运动视觉法采集到的原始深度数据存在许多明显的异常值。通常,我们使用自由空间测量法来过滤掉异常值,事实上只有进行过一次场景深度测量后才能进行物体表面的三维重建。当重建一个小对象或小场景时,我们可以相对容易地观察到该对象完整的空间体积。然而,我们很难观察到大型户外场景的完整空间体积。因此在重建时,除了存在正确的表面数据,还有着大量的异常值,这也使得我们很难获得正确的场景重建模型。为了获得更清楚、准确的场景重建,需要将更为可靠的场景深度测量方法整合到场景重建中。通过将使用扩展的卡尔曼滤波器处理所获得的场景深度数据,从而获得更精确的深度信息,并检验测量是否可靠。但是该方法导致了初始深度图的大部分数据都会被丢弃,这也使得我们所获得的场景深度数据并不完整。由于深度数据的不完整导致了一个问题:我们需要互动地进行场景重建,即系统直接将当前状态的3d模型直接反馈给用户,提醒用户再次记录所丢失的图像数据,从而保证三维重建的完整性。
在细节上,本文提供了以下关键的见解:(i)该系统基于单目运动视觉,可以在现代移动设备上实现密集的大型户外场景的三维重建。(2)与小对象三维重建相比,建立大规模户外场景的重建需要采取更多的措施,不能只有轻度的深度数据滤波及空间映射,应尽量防止重建3D模型时被异常值所影响。对于实时三维重建系统来说,使用严谨的深度数据滤波可以代替昂贵的深度数据采集设备,降低成本。(3)如果系统最后反馈给用户的场景三维模型仍然不完整,该系统将比较使用严格滤波后的深度数据以及使用原本含有异常值的深度数据,评估使用哪一组数据进行三维重建的效果更好。在进行了大量实验后,我们确定了如何在准确性和完整性之间进行权衡。
这篇论文是我们以前工作的延伸。在本论文中,我们全面地分析了滤波对于三维重建的影响。我们研究了许多不同类型的异常值,这让我们有不同的方式来分析在实验中所获得的结果。我们描述了如何将我们的方法应用到其他移动设备上,并通过比较利用标准智能手机所获得的场景重建模型和从Project Tango数据中获得的场景重建模型来演示该方法对不同设备的适用性。此外,我们还详细地讨论了我们方法的局限性,并根据所学到知识及经验提出了未来改进工作。
本文的其余部分是按照下面的内容进行的:第二节讨论相关的工作;第三节介绍了整个系统,即介绍了相机姿势标定和我们使用深度数据匹配的组件;第四节详细介绍了使用基于运动视觉的密集三维重建和我们的异常值滤波方法;第五节讨论了我们方法的局限性,以及如何将其应用到其他移动设备上;第六节对我们的方法进行了的实验评估。
2.相关研究
计算机视觉中,实现密集场景的三维重建是一个核心问题,研究者们对于这一课题进行了大量的研究。在此基础上,我们只讨论与本文相关的方面,重点研究了实时且可交互式的三维重建方法。大多数三维重建的方法是先获得单个深度映射,然后将它们融合为一个单一的、一致的3D模型,这些方式主要区别在于获取和融合数据的方法上。
桌面处理:
我们需要能够提供RGBD(颜色和深度)信息的传感器,比如微软的Kinect,和一款性能足够处理该传感器提供的数据的GPU(绘图处理器),从而在硬件上可以实现密集实时的三维重建。通过参考KinectFusion算法,本方法在RGBD(颜色和深度)数据的基础上使用体积法进行建模,并且利用模型的点云融合方法(TSDF)处理场景的表面。为了避免使用体积法导致增加内存,大规模场景三维重建应使用转移体积和网状或分层等基于散列数据结构来避免存储无关的数据。与这些需要RGBD传感器进行重建的方法相比,Davison和Newcombe使用了一种利用光学流动来分析处理一个单目视频序列从而得到高质量的场景深度数据。虽然Newcombe等人的研究是为了估计相机的姿势,但他们的方法实际上是在进行大型场景的重建,并利用重建的场景模型精确地标定相机姿态。但这种方法与利用RGBD传感器所获得的深度数据相比,缺少了纹理信息,所以从相机数据中计算出的深度数据会包含更多的噪声以及异常值。为了解决这个问题,Davison和Newcombe采用了规范化的方法,通过评估每一个深度数据的不确定性,来消除不可靠的深度数据,从而消除深度数据中的异常值。
深度数据融合的关键在于确定每个立体像素是在一个对象内,还是在自由空间中,或是在一个对象的表面。在数据不足的情况下,分别处理每一个单独的值可能会导致噪声的产生,但这个问题可以通过正则化来解决。这种方法通常被认为是全局优化。然而,这样的方法过于复杂,因此无法使用在实时场景三维重建当中。在使用常规网格法处理时,将整个3D空间规则化处理后所得的效果并不好,这个问题可以使用基于四面体的自适应细分采样器来处理,该方法可以对诸如城市或山区这样的大型场景进行详细的三维重建。并且使用新的场景深度测量法来获取场景细节,同时使用全局优化来加快提取场景的表面的速度。因此,基于四面体剖分的方法来提取几何图形通常只适用于处理稀疏的三维点,这些三维点通常是从场景的结构上获得的,因此该方法只能适用于低分辨率下的几何图形提取。
目前,许多人的研究方向是小规模或是室内三维重建,比如Newcombe、Whelan等人,而Pollefeys等人的研究方向主要是城市规模的大型场景三维重建。在城市场景的三维重建中,运用平面扫描立体视觉系统按照城市场景的主要方向来选择扫描的方向,来实时地计算场景深度信息。通过分段处理视频图像中的图像来获得更高质量的场景深度数据。
移动设备:
随着智能手机和平板电脑等移动设备的功能变得越来越强大,场景三维重建将会变得越来越大众化。Tanskanen、Ondruska和Tanskanen等人都在研究基于现代智能手机的三维重建系统,并且不需要外部设备进行辅助处理。Kolev等人研究基于移动设备的惯性测量单元(IMU)进行相机标定的算法,从而获得场景重建时的绝对比例。一般情况下获得深度数据只需要几秒钟的时间,而我们的方法将立体测量的数据集成到密集点元云上,因此获取的速度更快。相比之下,Ondruska等人研究了一种基于体积来获得一个封闭的三角网格的方法。与Newcombe等人的方法类似,他们的3D模型也被用于相机姿势跟踪。这些方法都使用了智能手机的GPU来进行实时的信息处理。但是这些方法主要是为了重建特定的物体,而我们需要重建大规模的户外场景。
最近,Kahler等人演示了如何在移动设备上高效地完成场景深度数据的匹配,从而可以实现在移动设备上进行大规模的场景重建。他们的研究成果给了我们许多帮助,因为他们进行深度数据匹配的方法与我们利用运动视觉来获取场景深度信息的方法相类似。Kahler等人只使用移动设备的深度传感器获取场景的深度信息,然而这种方法只能在室内场景中使用。另外,Kahler等人却忽视了深度信息的来源。我们的方法使用了Klingensmith等人的体积匹配法,利用设备的鱼眼相机获取物体的立体图像。因此,我们的方法能够在阳光等的干扰下重建大规模的户外场景。
图2 系统流程图。我们的贡献主要在黄色区域所表示的部分,并在第4节进行详细描述。(若想了解这个流程图中的颜色使用方法,读者可以参考本文的Web版本)
3.系统概述
为了在移动设备上实现大型场景的三维重建,我们需要一个完整的系统来提供6DOF相机的姿态标定、深度数据计算和深度数据匹配等功能。本文第4节描述了立体场景深度估计及滤波的方法,该方法是本文的主要技术贡献。接下来,我们将研究Google的Project Tango所提供的摄像头姿态标定和场景体积匹配流程。我们的系统流程图如图2所示。由于Project Tango所实现的基于视觉-惯性测量仪(VIO)的异常值过滤的方法中,使用了一个扩展的Kalman过滤器,从而将其与IMU的测量结合在了一起。该系统使用了一款具有广泛视野的鱼眼相机,并且使用IMU数据,可以使相机保持非常稳定和准确的相机姿态标定。该标定的误差通常低于移动距离的1%,而且使用IMU可以使系统恢复场景的绝对规模。因此按照我们的方法重建的模型是正确的。
通过立体移动计算获得的深度信息后再进行过滤,并与本地图像进行匹配,从而除去异常值。再将剩下的深度信息值数据集成到一个单元中,并在三维像素中进行模型的点云融合(TSDF)。为了扩展到大型场景,Project Tango的体积匹配方式使用了一种接近物体表面的立体像素散列法的改进方法。通过参考在摄像机像素图像上投射光线的方向将深度数据融合到三维重建中。我们配置了Tango的体积匹配方式以计算截断范围的结束位置,而不是只把一个像素的深度值考虑在内,该方法被描述为Klingensmith的空间雕刻法。这使我们能够充分利用每条射线所提供的自由空间测量值,我们发现,如果异常值足够低,并且能够去除移动的物体,那我们就能抑制基于运动视觉所获取的深度数据中的异常值。移动立方体算法被用来从可见的三维像素中逐步创建一个3D三角形网格。注意,移动立方体算法只应用于在当前帧中改变TSDF的值以及三维像素块。
图3校正前和校正后鱼眼图像
4. 移动设备上的运动视觉
图2的右侧显示了我们基于运动视觉的研究方法。由于我们使用的是鱼眼图像,所以有必要对图像进行校正,从而提高重建的颜色一致性,如图3所示:首先通过拍摄一幅均匀的白色和近似于朗伯墙的照片来校准相机。对于每一个校准图像Ii中的每个像素x,我们计算一个校正因子fi,x。将校正因子与像素的强度相乘即可得到图像中所观察到的最大强度值,从而创造出恒定强度的图像。对于每一个像素,我们将从n个不同的校准图像中计算出所有校正因子的几何平均值,并按照以下公式校准:
(1)
是否使用算术平均数或几何平均数对于我们的程序来说并没有很大的不同。我们另外还将校正因子标准化,使最小因子为1。在运行程序时,将已获得的校
全文共6029字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[143120],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。