没有合适的资源?快使用搜索试试~ 我知道了~
55500MBA-VO:运动模糊感知视觉里程计0刘培东 1 左兴兴 1 Viktor Larsson 1 Marc Pollefeys 1 , 201 ETH Zürich计算机科学系 2Microsoft混合现实与人工智能实验室,Zürich0摘要0运动模糊是视觉里程计方法面临的主要挑战之一。在需要较长曝光时间的低光条件下,即使相机运动相对缓慢,也可能出现运动模糊。在本文中,我们提出了一种新颖的混合视觉里程计流程,采用直接方法明确地对相机在曝光时间内的局部轨迹进行建模和估计。这使我们能够主动补偿由于相机运动而产生的任何运动模糊。此外,我们还提供了一个新颖的用于运动模糊感知视觉里程计的基准数据集。实验证明,通过直接建模图像形成过程,我们能够提高视觉里程计的鲁棒性,同时保持与无运动模糊图像相当的准确性。代码和数据集都可以从https://github.com/ethliup/MBA-VO找到。01. 引言0视觉里程计(VO)从捕获的图像中确定相机的相对运动。作为许多视觉应用的基本模块,如机器人技术和虚拟/增强/混合现实,过去二十年取得了巨大的进展。文献中提出了许多算法:从经典的几何方法、基于深度学习的方法到混合方法。几何方法基于多视图几何约束恢复运动。重投影误差(例如ORB-SLAM [23])和光度一致性(例如DSO[7])是常用的优化约束。基于深度学习的方法将问题表述为端到端回归问题。目前最先进的网络仍无法在大规模环境中达到与经典方法相当的性能。混合方法通常将深度网络嵌入到经典流程中,以进一步提高准确性和鲁棒性。虽然已经提出了许多最先进的算法,但运动模糊仍然是一个主要挑战。0图1.运动模糊感知视觉里程计。我们提出了一个完整的流程来执行运动模糊感知视觉里程计。通过在跟踪过程中明确地建模图像形成过程,我们可以主动补偿直接图像对齐中的运动模糊。0视觉里程计方法。运动模糊是降低图像质量的最常见的伪影之一。它通常发生在低光条件下,需要较长的曝光时间。这影响了基于特征的方法(例如ORB-SLAM[23]),这些方法很难检测到关键点,以及直接方法(例如DSO[7]),这些方法依赖于强图像梯度进行图像对齐。虽然通过重新定位策略可以在失去跟踪后部分缓解问题,但如果相机继续在未探索的区域移动,视觉里程计仍然会失败。因此,在本文中,我们提出了一种新颖的混合视觉里程计方法,该方法对运动模糊具有鲁棒性。与传统算法一样,我们的方法由前端跟踪器和后端映射器组成。在跟踪过程中,我们不是在特定时间点估计相机姿态,而是估计每帧曝光时间内的局部相机运动轨迹。这使我们能够明确地对图像中的运动模糊进行建模,并利用它进行跟踪。我们假设参考关键帧图像是清晰的,这是通过在原始运动模糊图像上应用深度去模糊网络实现的。由于关键帧通常以远低于帧速率的频率采样(并且对延迟不太敏感),因此我们可以利用强大的深度网络进行关键帧去模糊(例如[32])。为了在图像捕获过程中估计相机运动轨迹,我们对清晰的参考关键帧图像进行局部重新模糊,然后将其用于与当前跟踪帧进行直接图像对齐。后端根据去模糊的关键帧图像,通过最大化光度一致性来联合优化相机姿态和场景几何。55510我们在流行的DSO[7]框架上构建了我们的方法。作为另一个贡献,我们还提出了一个新颖的基于运动模糊感知的VO基准数据集。我们的数据集包含具有不同程度运动模糊的序列。准确的室内运动捕捉系统提供了时间同步的地面实况轨迹。通过向社区公开提供这个数据集,我们希望鼓励进一步研究使VO具有鲁棒性,这对于实际部署非常重要。我们使用合成数据集和真实数据集对我们的方法进行评估。实验结果表明,我们能够提高视觉里程计的鲁棒性,同时保持与无运动模糊图像相当的准确性。此外,我们的运动模糊感知VO(称为MBA-VO)还能够在配备Nvidia GeForce RTX2080显卡的笔记本电脑上实时运行。02. 相关工作0视觉里程计:现有的视觉里程计工作可以分为三大类:经典的几何方法、基于深度学习的方法和混合方法。经典的基于几何的方法通过多视图约束恢复相机运动。这些方法可以进一步分为直接方法和基于特征的方法。直接方法依赖于在短时间间隔内多视图之间的光度一致性假设。它们通过最大化光度一致性来联合优化相机姿态、3D场景结构以及相机内参数。代表性的工作有LSD-SLAM [8]、DSO[7]及其多个变体[30, 20, 19,10]。与直接方法不同,基于特征的方法从原始图像中提取一组稀疏关键点,然后在不同视图之间进行匹配。通过强制关键点位置与场景结构的投影之间的一致性来估计相机姿态和3D场景几何。从Davison等人的早期工作[6]和Nister等人的更近期工作[25]到最近的ORB-SLAM[23],文献中提出了许多基于特征的方法。有关更多详细信息,请参阅Cadena等人的最新综述论文[4]。基于深度学习的方法通常将问题形式化为端到端回归问题。尽管过去几年中已经提出了几个开创性的工作[39, 40,34]及其变体,但与几何方法相比,它们在可扩展性和性能方面仍处于起步阶段。最近出现了一系列混合方法[33, 2,38],试图将深度网络嵌入到经典的几何框架中。这些框架旨在利用两种方法的优势来增强视觉里程计的鲁棒性。几乎所有这些算法都假设输入图像0质量良好。然而,由于环境条件(例如光线较暗),在现实世界的应用中有时无法避免图像质量较低,这可能会大大降低VO系统的性能。在本文中,我们提出解决最常见的挑战性问题之一,即运动模糊图像。Pretto等人[28]和Lee等人[17]的早期工作已经提出了改进基于稀疏关键点的VO对抗运动模糊的方法。Pretto等人[28]提出了检测运动模糊鲁棒的稀疏不变特征。Lee等人[17]的工作可能与我们的工作最相似。在[17]中,作者假设相邻帧之间的运动是平滑的,并尝试在曝光时间内线性插值运动。对于每一帧,初始运动是从先前帧中使用运动模型外推得到的,并且该预测用于重新模糊来自关键帧的补丁。重新模糊的补丁用于在新帧和关键帧之间建立明确的稀疏对应关系。然后从这些对应关系中估计相机姿态和场景结构。在这项工作中,我们采用了与[17]类似的方法,其中我们重新模糊从关键帧提取的补丁。与[17]不同的是,[17]在对应关系上依赖于初始运动预测来做出艰难的决策,而我们直接优化用于重新模糊补丁的局部相机运动轨迹,并使用直接图像对齐方法隐式解决数据关联问题。0图像去模糊:运动去模糊方法可以分为经典的基于优化的方法和现代的基于深度学习的方法。我们只关注几个代表性的单幅图像深度去模糊网络,因为它们与我们的工作最相关。最近,深度神经网络显著提升了单幅图像去模糊算法的性能。Xu等人的早期图像去模糊工作[35]是一个具有四个隐藏层的浅层网络,它通过已知的清晰图像端到端训练。Hradis等人[14]随后提出了一个15层的文本图像去模糊网络。Nah等人[24]进一步将该网络以多尺度的方式扩大到40层,从而得到一个具有三个金字塔尺度的120层网络。Kupyn等人[15]引入了对抗性损失来改善去模糊性能。Tao等人[32]和Zhang等人[37]的另外两个并行工作也通过使用循环神经网络(RNN)实现了最先进的性能。为了进一步提高泛化性能,Liu等人[21]最近提出了一种自监督单幅图像去模糊网络。尽管这些网络取得了显著的性能,但即使使用高端GPU,它们通常也无法以帧速率运行。最近,Kupyn等人[16]提出了一个轻量级网络,能够实时运行,但去模糊质量稍有降低。在这项工作中,我们将对这些网络进行探索-B(x) ≈ 1nn−1�i=0Ii(x),(2)T∗ = argminTm−1�i=0∥Iref(xi) − Icur(ˆxi)∥22 ,(3)ˆxi = π(T π−1(xi, di)),(4)55520探索Tao等人的网络(质量更好但速度较慢)[32]和Kupyn等人的网络(质量较低但速度较快)[16]。0用于鲁棒视觉里程计的现有数据集:在过去的十年中,已经提出了几个用于评估视觉里程计和SLAM方法的基准数据集[31,11,13,1,3,27,22,29]。一些数据集侧重于评估特定的方面或设置;例如,自动驾驶[11],光照变化[26]和长期重定位[5]。在本文中,我们提出了一个新的用于评估视觉里程计的基准数据集,专门针对运动模糊。虽然一些先前的数据集中出现了具有运动模糊的图像(例如[31,29],见第4节),但这不是它们的主要关注点。我们提供了具有不同程度运动模糊的序列,这使我们能够更精确地评估不同方法的破坏点。03. 方法0在本节中,我们介绍我们的运动模糊感知视觉里程计。我们基于Engel等人的直接稀疏里程计(DSO)[7]。所提出的流程包括三个主要部分:运动模糊感知视觉跟踪器,关键帧去模糊网络和局部地图生成器。前端跟踪器估计当前模糊帧曝光时间内相对于最新的清晰关键帧图像的相机运动轨迹。每个新的关键帧都经过运动去模糊网络处理。局部地图生成器根据恢复的潜在清晰关键帧图像共同优化相机姿态和场景结构。我们使用与DSO[7]相同的局部地图生成器,我们的工作的主要技术贡献是运动模糊感知跟踪器,我们将在下面的章节中详细介绍。0运动模糊图像形成模型:数字相机的物理图像形成过程是在曝光时间内收集光子并将其转换为可测量的电荷。这个过程可以数学建模为对一组虚拟清晰图像的积分:0B(x) = λ � τ00 It(x)dt,(1)0其中B(x)∈RW×H×3是捕获的图像,W和H分别是图像的宽度和高度,x∈R20表示像素位置,λ是归一化因子,τ是相机曝光时间,It(x)∈RW×H×3是在时间戳t内在曝光时间内捕获的虚拟清晰图像。相机在曝光时间内的运动将导致不同的虚拟图像It(x)对于每个t,从而导致模糊图像B(x)。该模型可以离散地应用-0近似为0其中 n是离散样本的数量。图像中的运动模糊程度取决于曝光时间内的运动。对于较短的曝光时间,即使相机移动速度较快,相对运动也会很小。相反,对于长曝光时间(例如在低光条件下),即使相机移动速度较慢,也可能导致运动模糊的图像。与清晰图像的直接图像对齐:在介绍模糊图像的直接图像对齐算法之前,我们首先回顾一下清晰图像的原始算法。直接图像对齐算法是直接视觉里程计方法的核心模块。它通过最大化最新关键帧和当前帧之间的光度一致性来估计当前跟踪帧的相机姿态。可以正式定义如下:0其中 T ∈ SE (3) 是从参考图像 I ref 到当前图像 I cur的变换矩阵, m 是用于运动估计的采样像素数, x i ∈R 2 是第 i 个像素的位置, ˆ x i ∈ R 2 是当前图像 I cur 中与像素 x i对应的像素位置。通常还会对误差残差应用鲁棒损失函数(例如Huber损失)进行鲁棒姿态估计。图像点 x i 和 ˆ x i由相机姿势 T 和深度 d i 相关,如下所示:0其中 π : R 3 → R 2是相机投影函数,将三维空间中的点投影到图像平面上; π− 1 : R 2 × R → R 3 是逆投影函数,通过与深度 d i的背投影将图像上的二维点转换为三维空间中的点。该公式也可以扩展到多帧,用于联合优化相机姿势、三维场景结构和相机内参数(也称为光度束调整)。直接视觉里程计方法假设光度一致性(即方程式 3 )对于正确的变换 T是成立的。然而,如果图像 I ref 和 I cur受到不同的运动模糊影响,由于正确对应点的局部外观将不同,光度一致性损失将不再有效。这种情况在非线性轨迹的设置中是不可避免的,例如增强/混合/虚拟现实应用中的跟踪,这通常会导致具有不同程度运动模糊的图像。Tt = Tstart · exp( tτ · log(T−1start · Tend)),(5)IrefBcurIrefBcurIrefBcurIrefBcurˆBcur(x) = 1nn−1�i=0Iref(xiτn−1 ),(6)where xT∗start, T∗end =argminTstart, Tendm−1�i=0���Bcur(xi) − ˆBcur(xi)���22 .(7)In practice, most direct image alignment methods use lo-cal patches for better convergence. Different from directimage alignment algorithm for sharp images, which usuallyselects the local patch from the reference image (e.g. thegreen 3 × 3 grid on the left of Fig. 2), we instead selectthe local patch from the current blurry image (e.g. the red3 × 3 grid on the right of Fig. 2) since this simplifies there-blurring step of our pipeline.55530运动轨迹建模:为了正确补偿运动模糊,我们需要对曝光时间内的局部相机轨迹进行建模。一种方法是仅对最终相机姿态进行参数化,然后在前一帧和新估计之间进行线性插值。通过插值,我们可以创建表示运动模糊所需的虚拟图像,如方程( 2)所示。然而,对于具有非常突然的方向变化的相机轨迹(这在手持和头戴相机中非常常见),这种方法可能会失败。为了确保鲁棒性,我们选择独立于前一帧对局部相机轨迹进行参数化。具体而言,我们参数化两个相机姿态,一个在曝光开始时的 T start ∈ SE (3) ,一个在曝光结束时的 Tend ∈ SE (3) 。在两个姿势之间,我们在 SE (3)的李代数中线性插值姿势。因此,时间 t ∈ [0 , τ ]的虚拟相机姿态可以表示为0其中 τ是曝光时间。有关插值和相关雅可比矩阵的详细信息,请参阅补充材料。我们的运动模糊感知跟踪器的目标是估计每一帧的 T start 和 T end。如果两个姿势接近,我们知道对应的帧几乎没有运动模糊。在这项工作中,我们只考虑了两个姿势之间的线性插值,但是也可以使用更高阶的样条曲线,这样可以表示更复杂的相机运动。然而,在我们的实验中,我们发现线性模型已经足够好,因为曝光时间通常相对较短。0使用模糊图像进行直接图像对齐:我们的运动模糊感知跟踪器通过在关键帧(我们假设是清晰的)和当前帧之间进行直接对齐来工作,而当前帧可能受到运动模糊的影响。为了利用对齐中的光度一致性,我们需要对新帧进行去模糊或对关键帧进行重新模糊。在我们的工作中,我们选择了后者,因为相对于运动去模糊来说,重新模糊通常更容易且更稳健,尤其是对于严重的运动模糊图像。使用已知深度的每个采样像素在当前(模糊)图像 B cur中可以使用(4)将其转换为参考视图。对于每个投影点,我们选择当前模糊图像中最近的整数位置像素。假设3D点位于与 I ref相对平行的平面上,我们可以使用该平面将所选像素转换回参考视图。详细信息可以在图2中找到。为了合成来自参考视图的重新模糊像素(以便与真实捕获的像素强度进行比较),我们现在在 T start 和 T end之间进行插值。对于每个均匀采样的虚拟视图 T t,其范围在0图2。像素点转移策略。请注意,我们假设像素中心位于网格交叉点,例如绿色网格被视为一个3×3的块。0[0 , τ ],我们将像素坐标(即图2中的红色像素)转换回参考图像,并使用双线性插值获取图像强度值。然后通过对强度值进行平均(如式(2)所示)来创建重新模糊的像素强度:0n − 1 ∈ R 2 对应于在锐化参考帧中的转换点0n − 1 在锐化参考帧中, n是用于合成模糊图像的虚拟帧的数量。然后,跟踪器通过优化起始姿态和结束姿态来最小化当前帧的真实捕获强度与参考图像(通过重新模糊)合成像素强度之间的光度一致性损失,0n − 1 ∈ R 2,根据公式(6),我们定义以下符号以便于说明。我们将前平行平面的深度表示为 d ,它是从 I ref中对应采样关键点(即图2中的绿色像素)估计得到的深度;我们进一步将虚拟帧 I i 在01在我们的实验中,我们使用了固定数量的虚拟帧。然而,根据模糊程度的不同,可以动态地改变虚拟帧的数量以节省计算资源。IrefIi)2Ti = Tstart · exp(in − 1τ · log(T−1start · Tend)),(8)where Tstart ∈ SE(3) and Tend ∈ SE(3) are the relativecamera poses (which are defined from the current cameracoordinate frame to the reference camera coordinate frame)of the current blurry image, at the beginning and end ofthe image capturing respectively, τ is the camera exposuretime. Note that the fronto-parallel plane is defined in thereference camera frame, it might not be fronto-parallel withrespect to the ith virtual camera frame. To avoid confusion,we illustrate the relationship in Fig. 3. By proper algebraicmanipulations, we can obtain xxiτn−1 = π(Ti · p3d),(9)p3d = d − pzλ�x,y,z�T ,(10)λ = 2x · q0 + 2y · q1 + z · q2(11)q0 = qxqz − qwqy,(12)q1 = qxqw + qyqz,(13)q2 = q2w − q2x − q2y + q2z,(14)x,y,zT = π−1(x),(15)55540n − 1 ∈ R 2 (即黑色像素)的参考图像 I ref 。0n − 1 相对于参考关键帧 I ref 的相机姿态为 T i ∈ SE (3),可以从公式(5)计算得到0n − 1如下0其中 π : R 3 → R 2 是相机投影函数,( q w , q x , q y , qz ) 是 T i 的旋转矩阵的四元数表示,( p x , p y , p z ) 是 Ti 的平移向量,d 是平面相对于参考关键帧的深度,π − 1 :R 2 → R 3 是相机反投影函数,满足 x 2 + y 2 + z 2 = 1。详细的代数推导和相关的雅可比矩阵可以在我们的补充材料中找到。04. 数据集0图4.我们合成的ArchVizInterior数据集的样本图像。相机运动取自ETH3D基准测试[29],然后在虚幻游戏引擎中重新渲染成合成场景。0虽然有许多不同的数据集用于评估视觉里程计方法,但我们发现没有适合专门针对运动模糊图像的数据集,尽管一些数据集包含包含运动模糊的子序列,例如ETH3D SLAMBenchmark [29]和TUM RGB-D [31]。ETH3D [29] /ArchVizInterior:在ETH3DSLAM基准测试[29]中,图像序列;摄像机抖动1、摄像机抖动2和摄像机抖动3具有严重的运动模糊。这三个序列是通过快速来回摇晃相机拍摄的。除了运动模糊外,由于场景的纹理非常差(主要包含一个白色圆形桌子和很少有区分度的地标),这些序列非常困难。我们在这些序列上尝试了DSO[7]和ORBSLAM[23]两种方法,发现两种方法都无法在该数据集上初始化。为了调查失败是由于纹理差的场景还是运动模糊,我们使用相同的运动轨迹、曝光时间和帧率渲染了一个合成的逼真数据集。该数据集是由虚幻游戏引擎使用免费的ArchVizInterior场景模型2进行渲染的。我们使用Liu等人提供的脚本创建了数据集。图4中可以找到一张样本图像。数据集的样本视频可以在我们的补充材料中找到。由于该数据集提供了与运动模糊图像配对的完美地面真实清晰图像,我们将其用于我们的消融研究。TUM-RGBD[31]:TUM-RGBD数据集[31]中的手持SLAM序列也包含运动模糊图像。该数据集是使用微软XboxKinect传感器收集的,该传感器包含一个滚动快门彩色相机和一个飞行时间深度相机。由于该数据集旨在评估基于RGBD相机的SLAM方法的性能,因此运动模糊图像的影响不是他们的重点。此外,已经证明直接方法对滚动快门效应更敏感[29, 36]。02 https://www.unrealengine.com3https://www.vicon.com55550因此最好使用从全局快门相机收集的数据集,以避免滚动快门机制的影响。我们还在下一节中使用TUM-RGBD数据集评估了我们的方法。提出的运动模糊基准数据集:为了更清楚地展示我们方法的优势,我们提出了一个新的基准数据集,用于评估视觉里程计,特别针对运动模糊。通过向其他研究人员公开提供这个数据集,我们希望鼓励进一步研究,使视觉里程计更加稳健。我们的数据集是使用全局快门相机在752×480像素的分辨率和27帧/秒的帧率下收集的。由室内运动捕捉系统3以100Hz提供地面真实轨迹。通过手眼标定方法校准了运动捕捉标记和相机之间的外参,使地面真实轨迹能够与相机运动轨迹对齐。共收集了18个运动模糊序列。该数据集包含具有不同程度运动模糊的图像。有关数据集的更多详细信息可以在补充视频中找到。图5显示了来自新数据集的一些示例图像,其中包含不同程度的运动模糊。05. 实验评估0实现细节:DSO的原始跟踪器[7]采用半密集直接图像对齐。为了提高效率,我们对高梯度像素进行子采样,以获得稀疏的关键点,这些关键点在图像中均匀分布。我们进一步定义了每个采样的稀疏关键点周围的9×9局部补丁,以获得更好的收敛性。能量函数以粗到细的方式进行优化,并且还应用了鲁棒的Huber损失函数以提高鲁棒性。我们的跟踪器在一台笔记本级别的Nvidia RTX2080显卡上实现和评估。平均处理一张模糊图像需要34.4毫秒,适用于实时应用。我们尝试了两种最先进的去模糊网络,SRNDeblurNet [32]和DeblurGANv2[16]。我们使用官方预训练模型,并将其推广到我们的数据集上,没有进行任何微调。特别是,我们考虑了DeblurGANv2的移动网络,因为它可以在高端GPU上实时运行。SRNDeblurNet在笔记本级别的Nvidia RTX2080显卡上以752×480像素的分辨率处理一张图像需要大约140毫秒。然而,与DeblurGANv2移动网络相比,它提供了更高质量的去模糊图像,并且时间消耗已经足够用于局部建图。最近还提出了更先进的去模糊网络,例如Gao等人的工作[9]。然而,它们通常比SRNDeblurNet[32]更耗时,并且不适合集成到我们的系统中。0本地映射器。0基准方法和评估指标:选择了两种最先进的单目视觉里程计流水线进行基准测试。具体而言,我们选择了ORB-SLAM[23]作为稀疏特征方法的代表。作为直接方法的代表,我们与DSO[7]进行比较。对于定量比较,我们测量绝对轨迹误差的RMSE(即RMSEATE)[31],因为它是视觉里程计算法的重点,并且被文献[7,29]常用。首先通过匹配具有相同时间戳的姿态将估计的轨迹与地面真值对齐。然后通过平均对齐轨迹之间的平移差异来计算ATE的RMSE。此外,我们还使用帧丢失的百分比来衡量不同算法的鲁棒性。0动机示例:为了清楚地证明对运动模糊感知的视觉里程计的需求,我们首先在ArchVizInterior数据集上分别评估ORB-SLAM和DSO在清晰图像和相应的运动模糊图像上的性能。有关数据集的详细信息,请参见第4节。表1表明,运动模糊图像对ORB-SLAM和DSO都有影响,无论是在估计的轨迹准确性还是鲁棒性方面。虽然ORB-SLAM的准确性没有大幅下降,但存在显著的帧丢失。ArchVizInterior数据集收集了周围区域的图像,并且几乎每个图像之间存在场景重叠。即使有很多帧丢失,一旦图像质量变好,ORB-SLAM仍然可以通过其重新定位模块恢复,假设与先前映射区域有足够的视觉重叠。然而,如果相机在未探索的场景中移动,可能需要执行重置。DSO没有帧丢失。然而,与清晰图像相比,其准确性大幅下降。请注意,我们使用与ETH3D[29]数据集相同的轨迹渲染了该数据集。结果表明,相机运动不是导致ORB-SLAM和DSO在ETH3D数据集上失败的主要因素。这进一步证明了我们创建新数据集的动机。0消融研究:由于ArchvizInterior数据集具有与运动模糊图像配对的地面真实清晰图像,因此我们对其进行消融研究以进行更好的比较。我们的消融研究包括两个部分,即去模糊网络的选择以及展示我们的运动模糊感知跟踪器的有效性的实验。我们在ArchvizInterior数据集上评估了去模糊网络SRNDeblurNet [32]和DeblurGANv2-mobileNet[16]的泛化性能和效率。评估是在一台笔记本级别的NvidiaRTX2080显卡上进行的。表2表明,DeblurGANv2-mobileNet能够实时运行。ArchViz-1ArchViz-2ArchViz-3ArchViz-1ArchViz-2ArchViz-355560图5. 提出的用于基准测试运动模糊图像序列的视觉里程计数据集示例图像。该数据集包含多个具有不同运动模糊程度的序列。0ORB-SLAM [23] DSO [7]0ATE(米)FD(%)ATE(米)FD(%)ATE(米)FD(%)ATE(米)FD(%)ATE(米)FD(%)ATE(米)FD(%)0锐化 0.020 0 0.005 0 0.014 0 0.020 0 0.004 0 0.014 0 模糊 0.033 22.1 0.012 1.1 0.101 19.5 0.213 0 0.166 0 0.129 0 去模糊0.018 15.6 0.007 2.8 0.020 16.7 0.207 0 0.161 0 0.048 00表1.ORB-SLAM和DSO在ArchVizInterior数据集上的性能。Sharp,Blur和Deblur分别表示流水线在地面真实清晰图像、运动模糊图像和DeblurGANv2 [16]去模糊图像上运行。FD列显示了丢帧的百分比。ATE和FD指标越小越好。0PSNR(分贝)↑ SSIM↑ 时间(毫秒)0模糊图像 26.80 0.7887 N.A. DeblurGANv2m [16] 28.660.8156 38.1 SRNDeblurNet [32] 30.01 0.8491 140.30表2. DeblurGANv2-mobileNet [16]和SRNDeblurNet[32]在ArchVizInterior数据集上的泛化性能。0然而,DeblurGANv2-mobileNet的去模糊性能较SRNDeblurNet差。为了验证DeblurGANv2-mobileNet的性能是否足以提高VO算法的性能,我们通过DeblurGANv2-mobileNet对ArchVizInterior数据集的每个图像进行去模糊处理。我们使用去模糊后的图像运行ORB-SLAM和DSO。表1中的实验结果表明,它只能在具有轻微运动模糊的图像上提高VO算法的性能,但提升幅度较小。原因是DeblurGANv2[16]作为模型尺寸较小的代价,其泛化性能有限。这表明,将每个输入帧都去模糊(使用高效的实时去模糊网络),并将去模糊后的图像输入标准VO流程并不是使VO对运动模糊具有鲁棒性的正确方法。这证明了我们进行混合运动模糊感知VO的动机,该方法可以利用更强大的具有较大模型尺寸的去模糊网络来恢复严重模糊图像的相机运动,而无需以帧率去模糊它们。由于SRNDeblurNet处理一张752×480像素分辨率的图像大约需要140毫秒的时间,足以去模糊选定的关键帧图像,并提供更好的去模糊效果。0为了研究MBA-VO的有效性,我们分别使用清晰图像和模糊图像进行实验。表3的实验结果表明,如果图像没有运动模糊,MBA-VO能够达到与ORB-SLAM和DSO相似的性能。对于运动模糊的图像,MBA-VO能够在没有任何帧丢失的情况下实现竞争性的准确性。为了进一步证明我们的运动模糊感知跟踪器的有效性,在估计相机姿态时,我们将相机曝光时间设置为0(即公式(7))。它强制跟踪器将当前模糊图像视为清晰图像,并进行正常的姿态估计。其他设置保持不变(例如,我们仍然使用SRNDeblurNet对关键帧图像进行去模糊)。对于ArchVizInterior数据集,得到的ATE指标分别为0.22米、0.1558米和0.2113米。实验结果因此证明了进行运动模糊感知跟踪的必要性。图6展示了MBA-VO在ArchVizInterior数据集的运动模糊序列上估计的轨迹。定量和定性结果都证明了我们提出的算法对于运动模糊图像序列的有效性。0使用TUMRGB-D数据集进行评估:为了评估MBA-VO在真实运动模糊图像上的性能,我们从TUMRGB-D数据集[31]中选择了三个具有较大运动模糊的序列。特别地,我们选择了手持SLAM类别中的fr1-desk、fr1-desk2和fr1-room。由于相机是手持的,类似于头戴相机,手的晃动会导致快速旋转运动,尽管平移速度很小。fr1-deskfr1-desk2fr1-roomATE (m) FD (%) ATE (m) FD (%) ATE (m) FD (%)ORBSLAM0.1785.10.30133.80.06646.5DSO0.49600.77600.2990MBA-VO0.10200.39900.1440ATE (m) FD (%) ATE (m) FD (%) ATE (m) FD (%)Seq00.1277.00.27200.0580Seq10.08436.80.43300.0690Seq20.19911.90.19600.0450Seq3xx0.40400.1620Seq4xxxx0.132055570ArchViz-1 ArchViz-2 ArchViz-3 图6.MBA-VO从ArchVizInterior数据集的运动模糊图像序列中估计的轨迹。它表明,尽管相机运动非常具有挑战性,MBA-VO能够估计准确的轨迹。0ArchViz-1 ArchViz-2 ArchViz-30ATE(米)FD(%)ATE(米)FD(%)ATE(米)FD(%)0清晰 0.020 0 0.010 0 0.016 0 模糊 0.026 0 0.018 0 0.020 00表3.MBA-VO在ArchVizInterior数据集上的性能。Sharp和Blur分别表示该流水线在真实清晰图像和运动模糊图像上运行。FD是丢帧的百分比。0表4. 在TUMRGB-D数据集[31]上的比较。尽管ORB-SLAM提供了准确的估计,但它存在严重的帧丢失问题。提出的方法MBA-VO在DSO的基础上改进,并在没有帧丢失的情况下提供更准确的估计。0对于增强/虚拟/混合现实应用,头部旋转运动是严重运动模糊的主要原因。表4展示了MBA-VO在TUMRGB-D数据集上针对ORB-SLAM和DSO的性能。结果表明,MBA-VO能够改进原始的DSO算法的准确性,并且相对于基于稀疏特征的方法,在运动模糊图像上更具鲁棒性。需要注意的是,ORB-SLAM在这些序列上存在严重的帧丢失问题,尽管它通常提供更准确的姿态估计(低ATE)。0使用我们的真实世界数据集进行评估:由于TUMRGB-D数据集的目标不是评估单目VO/SLAM算法的鲁棒性,我们创建了一个特定的大型真实数据集,其中包含不同程度的运动模糊(参见第4节)。我们使用ORB-SLAM、DSO和MBA-VO进行评估。由于空间限制,我们在表5中展示了数据集的子集的实验结果。更多实验结果可以在我们的补充材料中找到。实验结果表明,ORB-SLAM0ORB-SLAM [23] DSO [7] MBA-VO0表5.MBA-VO在我们的数据集上的性能。x表示对应的算法在该序列上失败。结果表明,MBA-VO改善了DSO的准确性,同时在没有帧丢失的情况下对运动模糊具有鲁棒性。0总的来说,ORB-SLAM在所有序列上普遍存在严重的帧丢失问题,尽管通常更准确。与没有帧丢失的DSO相比,MBA-VO具有更好的准确性。总的来说,MBA-VO在真实的运动模糊图像序列上实现了更好的鲁棒性和准确性,相比于DSO和ORB-SLAM。0讨论:实验结果表明,在ATE指标方面,DSO[7]在运动模糊图像上的表现通常比ORB-SLAM[23]差。这是因为我们评估的数据集中有更多严重模糊的图像。在这种情况下,ORB-SLAM[23]只是简单地丢弃严重模糊的图像,而不影响其余帧的准确性。相反,DSO[7]不会丢弃帧,导致估计的整体准确性下降,因为包含了更具挑战性的帧。需要注意的是,ATE指标仅从ORB-SLAM成功跟踪的帧计算。06. 结论0我们提出了一种对运动模糊具有鲁棒性的混合视觉里程计算法。我们还提出了一个新颖的基准数据集,针对运动模糊感知的视觉里程计算法。实验结果表明,我们的算法在合成和真实世界数据集上都提高了准确性和鲁棒性。我们相信我们的方法和数据集将是鲁棒视觉里程计算法发展的宝贵一步。[1] Jos´e-LuisBlanco-Claraco,Francisco- ´AngelMoreno-Due˜nas, and Javier Gonz´alez-Jim´enez. The m´alaga urbandataset: High-rate stereo and lidar in a realistic urban sce-nario. International Journal of Robotics Research (IJRR),2014. 3[2] Michael Bloesch, Jan Czarnowski, Ronald Clark, StefanLeutenegger, and Andrew J Davison. CodeSLAM: learning acompact, optimisable representation for dense visual SLAM.In Computer Vision and Pattern Recognition (CVPR), 2018.2[21] Peidong Liu, Joel Janai, Marc Pollefeys, Torsten Sattler, andAndreas Geiger. Self-supervised linear motion deblurring.In IEEE Robotics and Automation Letters (RAL), 2020. 2[22] Andr´as L Majdik, Charles Till, and Davide Scaramuzza. Thezurich urban micro aerial vehicle dataset. International Jour-nal of Robotics Research (IJRR), 2017. 3[23] Raul Mur-Artal and Juan D Tard´os. Orb-slam2: An open-source slam system for monocular, stereo, and rgb-d cam-eras.IEEE Transactions on Robotics, 33(5):1255–12
下载后可阅读完整内容,剩余1页未读,立即下载
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)