没有合适的资源?快使用搜索试试~ 我知道了~
65890ASLFeat: 学习准确形状和定位的局部特征0Zixin Luo 1 Lei Zhou 1 Xuyang Bai 1 Hongkai Chen 1 Jiahui Zhang 20Yao Yao 1 Shiwei Li 3 Tian Fang 3 Long Quan 101 香港科技大学 2 清华大学 3 Everest InnovationTechnology0{ zluoag,lzhouai,xbaiad,hchencf,yaoag,quan } @cse.ust.hk0jiahui-z15@mails.tsinghua.edu.cn { sli,fangtian } @altizure.com0摘要0本文重点解决局部特征检测器和描述符联合学习中的两个限制。首先,在密集特征提取过程中经常忽略了特征点的局部形状(尺度、方向等)估计能力,而形状感知对于获得更强的几何不变性至关重要。其次,检测到的关键点的定位精度不足以可靠地恢复相机几何,这已成为诸如3D重建等任务中的瓶颈。在本文中,我们提出了ASLFeat,通过三种轻量级但有效的修改来减轻上述问题。首先,我们采用可变形卷积网络来密集估计和应用局部变换。其次,我们利用固有的特征层次结构来恢复空间分辨率和低级细节,以实现准确的关键点定位。最后,我们使用峰值度量来关联特征响应并得到更具指示性的检测分数。我们对每个修改的效果进行了深入研究,并在各种实际场景中进行了广泛的评估。我们报告了最先进的结果,证明了我们方法的优越性。[代码发布]01. 引言0设计强大的局部特征是广泛的计算机视觉任务的基础[31,43,44,30,40,15,40]。在过去的几年中,局部特征检测器和描述符的联合学习越来越受到关注,并在实际应用中取得了有希望的结果。然而,我们认为有两个限制可能阻碍了性能的进一步提升:1)缺乏特征点的形状感知能力,以获得更强的几何不变性;2)关键点定位精度不足以可靠地解决相机几何问题。传统上,局部形状是通过手工参数化的。0通过手工制作的尺度/旋转估计[17,29]或仿射形状适应[20],最近出现了基于数据驱动的方法[23,22,39],这些方法构建了一个单独的网络来回归形状参数,然后在提取特征描述之前转换补丁输入。由于与关键点检测[6,25,27,7,4]的联合学习越来越普遍,最近的研究重点已经转向从图像输入中密集提取特征的框架,而不提供预定义的关键点,因此以前的基于补丁的形状估计变得不适用。作为一种替代方法,LF-Net[25]通过空间变换网络(STN)[12]提取密集特征并转换中间特征图,但需要多次前向传递,而且只有稀疏的形状参数预测是实际可行的。从这个角度来看,在密集预测框架中仍然缺乏一种能够实现高效局部形状估计的解决方案。此外,学习到的关键点的定位精度在解决几何敏感问题时仍然存在问题。例如,LF-Net [25]和D2-Net[7]在两视图匹配中经验性地产生低精度,或者在结构运动(SfM)任务中引入大的重投影误差,本质上可以归因于缺乏空间精度,因为检测是从低分辨率特征图(例如原始尺寸的1/4)中得出的。为了恢复空间分辨率,SuperPoint[6]学习使用来自人工点的像素级监督来上采样特征图,而R2D2[27]采用扩张卷积来保持空间分辨率,但会导致过多的GPU计算和内存使用。此外,深层次的检测是否能够识别低级结构(角点、边缘等)的问题是值得怀疑的,而关键点通常位于这些结构上。虽然在密集预测任务中广泛讨论[28,10,16],但在我们的背景下,关键点定位精度和关键点检测的低级性质都没有得到足够的关注。为了减轻上述限制,我们提出了ASLFeat,采用三种轻量级但有效的修改。首先,我们采用可变形卷积网络来密集估计和应用局部变换。其次,我们利用固有的特征层次结构来恢复空间分辨率和低级细节,以实现准确的关键点定位。最后,我们使用峰值度量来关联特征响应并得到更具指示性的检测分数。我们对每个修改的效果进行了深入研究,并在各种实际场景中进行了广泛的评估。我们报告了最先进的结果,证明了我们方法的优越性。[代码发布]65900在密集预测框架中使用可变形卷积网络(DCN)[5,45],不仅可以对局部变换进行像素级估计,还可以通过堆叠多个DCN进行渐进形状建模。其次,我们利用固有的特征层次结构,提出了一种多级检测机制,不仅可以恢复空间分辨率而无需额外的学习权重,还可以提供低级细节以实现准确的关键点定位。最后,我们基于改进的D2-Net[7]从头开始训练我们的方法,并进一步提出了峰值度量以实现更有选择性的关键点检测。尽管上述修改的关键见解是熟悉的,但我们在我们的具体背景下解决了它们的重要性,以非平凡的方式完全优化了实现,并通过与不同设计选择的比较彻底研究了其影响。总之,我们的目标是回答两个关键问题:1)局部描述符需要什么样的变形参数化(几何约束[23,22, 39]还是自由形式建模[5,45]),2)什么样的特征融合对于关键点检测器有效(多尺度输入[27,7],网络内多尺度推理[25],或多级融合[28])。最后,我们在各种实际场景下广泛评估我们的方法,包括图像匹配[1,2],3D重建[32]和视觉定位[30]。我们在骨干架构D2-Net上实现了显著的改进,并在流行的基准测试中报告了最新的结果。02. 相关工作0在[1,32]中广泛评估了手工制作的局部特征,我们在这里主要关注学习方法。局部形状估计。大多数现有的描述符学习方法[19, 18, 21, 37, 36,40]并没有明确地对局部形状进行建模,而是依赖于几何数据增强(缩放/旋转扰动)或手工制作的形状估计(尺度/旋转估计[17, 29])来获得几何不变性。相反,OriNet[23]和LIFT [39]提出学习特征点的规范方向,AffNet[22]预测更多的仿射参数以提高建模能力,并使用对数极坐标表示[8]来处理特别的尺度变化。尽管有着有希望的结果,这些方法仅适用于以图像块为输入,并引入了相当数量的计算,因为需要构建两个独立的网络来分别预测块形状和块描述。作为一种替代方法,LF-Net[25]以图像为输入,在中间特征上执行STN[12],而需要多次前向传递来转换单个“特征块”,因此只有在稀疏位置上的预测才是实际可应用的。同时,局部形状的建模在图像识别任务中被证明是关键的,这启发了诸如用于灵活尺寸的可变尺度卷积(SAC)之类的工作0采用扩张[42]和可变形卷积网络(DCN)进行可调节的网格采样位置[5,45]。在本文中,我们采用了类似的思想,并提出了为密集局部变换预测配备DCN的方法,其推理仅需要一次前向传递,因此具有高效率。联合局部特征学习。特征检测器和描述符的联合学习越来越受到关注,其中构建了一个统一的网络来共享两个任务的大部分计算,以实现快速推理。在描述符学习方面,排名损失[25, 7, 6, 4,27]主要被用作事实上的标准。然而,由于获取无偏真实数据的困难,关于关键点检测器学习的有效损失设计尚未达成一致意见。例如,LF-Net[25]对检测图进行变形,并在两个视图中的选定像素上最小化差异,而SuperPoint[6]在合成数据上进行自我监督范式的引导训练,并在真实数据上进行多轮适应。最近的R2D2[27]通过强制网格方面的峰值性以及可靠性预测来进行描述符,而UnsuperPoint [4]和Key.Net[14]学习网格偏移以定位关键点。相比之下,D2-Net[7]避免了为关键点检测器学习额外的权重,而是手工制定了一个选择规则,从用于提取特征描述符的相同特征图中导出关键点。这种设计本质上将特征检测器和描述符的能力相结合,结果是一个没有复杂启发式损失公式的清晰框架。然而,众所周知,D2-Net在关键点定位的准确性方面缺乏精度,因为关键点是从低分辨率特征图中导出的。在本文中,我们基于D2-Net的方法,并通过一种轻量级的修改来减轻上述局限性,以便廉价地恢复空间分辨率和低级细节。03. 方法03.1. 先决条件0本文中的骨干架构基于1)可变形卷积网络(DCN)[5,45],用于预测和应用密集的空间变换,以及2)D2-Net[7],用于联合学习关键点检测器和描述符。可变形卷积网络(DCN)[5,45]旨在学习动态感受野以适应几何变化建模的能力。形式上,给定一个对输入特征图x进行采样的规则网格R,对于每个空间位置p,标准卷积的输出特征y可以写成:0y (p) = 0p n ∈R w (p n) ∙ x (p + p n)。0DCN通过附加方式增强了常规卷积𝐻4 × 𝑊4𝐻×𝑊𝐻2 × 𝑊2𝐻×𝑊S = λR(θ) = λ� cos(θ)sin(θ)− sin(θ)cos(θ)�.(6)A = SA′ = λR(θ)A′= λ� cos(θ)sin(θ)− sin(θ)cos(θ)� �a′110a′21a′22�,(7)65910conv0/10conv2/30L2范数0描述符图0带有峰值度量的检测0带有峰值度量的检测0带有峰值度量的检测0检测得分图(加权和)0deform_conv6/7/80得分图@conv10得分图@conv30得分图@conv80输出得分图0输入图像conv4/504×上采样2×上采样1×上采样0图1. 网络架构,包括可变形卷积网络(DCN),多级检测(MulDet)和关键点评分的峰值度量。0同时学习采样偏移[5]{△ p n | n = 1,...,N}和特征幅度[45]{△m n | n = 1,...,N},其中N = |R|,并将Eq. 1重写为:0y (p) = 0p n ∈R w (p n) ∙ x (p + p n + △ p n) ∙ △ m n。0由于偏移△ p n通常是小数,所以通过双线性插值来实现Eq.2,而特征幅度△ m n限制在(0,1)之间。在训练过程中,△ pn和△ mn的初始值分别设置为0和0.5,遵循[45]中的设置。D2-Net[7]提出了一种描述和检测的策略来同时提取特征描述和检测。在最后的特征图y∈RH×W×C上,D2-Net应用通道级L2归一化来获得密集的特征描述符,而特征检测则来自于1)局部得分和2)通道级得分。具体而言,对于y c(c=1,2,...,C)中的每个位置(i,j),局部得分通过以下方式获得:0α c ij = e0(i′,j′) ∈N (i,j) exp y c i′j′。0其中N(i,j)是(i,j)周围的邻近像素,例如由3×3的卷积核定义的9个邻居。接下来,通道级得分通过以下方式获得:0β c ij = y c ij / max t y t ij。0最终的检测得分组合为:0s ij = max t (α c ij β c ij)。0检测得分将在损失函数(第3.4节)中用作加权项,并允许在测试过程中选择前K个关键点。03.2. 带有几何约束的DCN0原始的自由形变DCN预测高自由度的局部变换,例如9×2的偏移量0对于3×3的卷积核,DCN可以模拟复杂的非平面形变,但也存在过度参数化的风险,简单的仿射变换或透视变换通常被认为是很好的近似方法。为了确定我们的上下文中需要哪种形变,我们通过在DCN中强制不同的几何约束来比较三种形状建模,包括1)相似性,2)仿射变换和3)单应性。所研究变体的形状属性总结如表1所示。0变体 建模能力 DOF0非约束的非平面性 2 k 20s.t. 相似度尺度,旋转 2 s.t.仿射尺度,旋转,剪切 4 s.t. 单应性透视 60表1.DCN变体的形状属性,其中DOF表示自由度,k表示卷积的核大小。由于关键点的平移是固定的,因此被省略。0基于仿射约束的DCN。传统上,局部形状通常通过相似变换来建模,估计旋转和尺度[17, 29]。在像[23,25]这样的学习框架中,这种变换被分解为:0此外,一些工作,如HesAff[20],进一步包括了剪切的估计,AffNet[22]将其作为一个可学习的问题。在这里,我们遵循AffNet,并将仿射变换分解为:0其中 det A ′ = 1 。网络被实现为预测一个标量用于缩放(λ ),另外两个用于旋转( cos( θ ) , sin( θ )),而另外三个用于剪切( A ′ )。ˆM(i) =�00−ui−viv′iuiv′iviuivi00−u′iui−u′ivi�,(8)ˆMˆh = ˆb.(9)βcij = softplus(ycij − 1C�tytij),(11)+++αcij = softplus(ycij −1|N(i, j)|�(i′,j′)∈N (i,j)yci′j′),(12)ˆs =1�l wl�lwls(l).(13)65920基于单应性约束的DCN。在实际上,局部变形可以通过单应性(透视)变换 H更好地近似,我们采用可微的张量直接线性变换(TensorDLT)[24]以不同iable的方式解决 H的4点参数化问题。形式上,可以创建一个线性系统来解决Mh = 0 ,其中 M ∈ R 8 × 9 , h 是一个由 H的元素组成的9个元素的向量,每个对应关系在 M中提供两个方程。通过强制 h的最后一个元素等于1[11]并省略平移,我们设置 H 33 =1 和 H 13 = H 23 = 0 ,然后将上述方程组重写为 ˆ M (i ) ˆ h = ˆ b ( i ) ,其中 ˆ M ( i ) ∈ R 2 × 6,对于每个对应关系,0ˆ b ( i ) = [ − v ′ i , u ′ i ] T ∈ R 2 × 1 , ˆ h 包含来自 H的前两列的6个元素。通过堆叠4个对应关系的方程,我们得到最终的线性系统:0假设对应点不共线,可以通过使用 ˆ A 1的可微伪逆来高效地求解 ˆ h 。在实践中,我们在 { ( − 1 ,− 1) , (1 , − 1) , (1 , 1) , ( − 1 , 1) }上初始化4个角点,并实现网络以预测位于 ( − 1 , 1)的8个相应偏移量,以避免共线性。在形成上述变换 T ∈ {S , A , H } 之后,通过以下方式获得方程2中的偏移值:0△ p n = Tp n − p n , 其中 p n ∈ R , (10)0以便在DCN中强制执行几何约束。有关更多实现细节,请参见附录。03.3. 选择性和准确的关键点检测0关键点峰值度量。如第3.1节所介绍的,D2-Net根据空间和通道响应对关键点进行评分。在许多可能的度量中,D2-Net实现了一个与最大值的比值(Eq. 4)来评估通道方面的极端性,然而,可能的局限性之一在于它只与沿通道的所有响应的实际分布弱相关。为了研究这种效果,我们首先通过通道级的softmax对Eq. 4进行了简单修改,然而,这种修改在我们的实验中降低了性能。相反,受到[27,41]的启发,我们提出在D2-Net中使用峰值度量作为关键点度量,将Eq. 4 重写为:01 通过TensorFlow中的tf.matrix_solve函数实现。0(a)多尺度(金字塔)0(b)多尺度(网络内)0(c)多级(U-Net)0图2. 利用特征层次结构的不同设计选择,简称为MulDet的变体。0其中,softplus函数将峰值激活为正值。为了平衡两个分数的尺度,我们还将公式3以类似的形式重写为:0两个分数再次按照公式5进行组合。多级关键点检测(MulDet)。如前所述,D2-Net[7]的一个已知局限性是关键点定位精度不高,因为检测是从低分辨率特征图中获得的。恢复空间分辨率的方法有多种选择,例如通过学习额外的特征解码器(SuperPoint[6])或使用扩张卷积(R2D2[27])。然而,这些方法要么增加了学习参数的数量,要么消耗了大量的GPU内存或计算资源。相反,我们提出了一种简单而有效的解决方案,不引入额外的学习权重,而是利用卷积神经网络的金字塔特征层次结构,并结合来自多个特征层次的检测结果。具体来说,给定一个由不同级别的特征图{y(1), y(2), ..., y(l)}组成的特征层次结构,分别由{1, 2, ...,2(l-1)}进行步幅调整,我们在每个级别上应用前述的检测方法,得到一组分数图{s(1), s(2), ...,s(l)}。然后,将每个分数图上采样到与输入图像具有相同空间分辨率,并通过加权求和的方式进行组合:0为了更好地解决所提出方法的优越性,我们实现了以下内容:1)在D2-Net [7]和R2D2[27]中使用的多尺度检测(图4a),通过构建具有多次前向传递的图像金字塔;2)在LF-Net[25]中使用的网络内多尺度预测(图4b),通过调整中间特征图的大小;3)标准的U-Net架构[28](图4c),通过从低级特征图构建特征解码器和跳跃连接。所提出的多级检测(图4d)在三个方面具有优势。首先,它采用了符合经典尺度空间理论[17]的隐式多尺度检测。|�c∈Cˆscˆs′c�q∈C ˆsqˆs′qM(fc, f ′c),(14)̸̸65930通过具有不同感受野大小来定位关键点。其次,与U-Net架构相比,它可以在不引入额外学习权重的情况下廉价地恢复空间分辨率,以实现像素级的准确性。第三,与直接融合低级和高级特征的U-Net不同,它保持了低级特征的原样,但融合了多级语义的检测结果,有助于更好地保留角点或边缘等低级结构。上述变体的实现细节可以在附录中找到。03.4. 学习框架0网络架构。网络架构如图1所示。为了减少计算量,我们将D2-Net中使用的VGG骨干网络[34]替换为更轻量级的L2-Net[36]。与R2D2[27]类似,我们进一步将L2-Net的最后一个8×8卷积替换为三个3×3卷积,得到128维的特征图和输入分辨率的1/4倍。最后,将最后三个卷积层conv6、conv7和conv8替换为DCN(第3.1节)。选择conv1、conv3和conv8三个级别来执行所提出的MulDet(第3.3节)。公式13中的组合权重经验性地设置为w_i = 1, 2, 3,而在公式3中找到邻近像素N(i,j)的扩张率设置为3, 2,1,我们发现这样可以在低级和抽象特征之间取得最佳平衡。0损失设计。我们通过将I密集地变形到I',考虑地面真实深度和相机参数,为图像对(I,I')确定一组对应关系C。为了得到检测器和描述符的训练损失,我们采用了D2-Net [7]中的公式,写作:0L(I, I') = 10其中ˆsk和ˆs'k是图像I和I'中公式13中得到的组合检测分数,fk和f'k是它们对应的描述符,M(∙,∙)是表示学习的排序损失。我们没有使用D2-Net[7]中的最难三元组损失,而是采用了FCGF[3]中的最难对比形式,我们发现这种形式在从头开始训练和配备DCN时能够更好地收敛,写作:0M(fc, f'c) = [D(fc, f'c) - mp]+0[mn - min(mink�=c D(fc, f'k), mink�=c D(fk, f'c))] +,(15)0其中D(∙,∙)表示两个描述符之间的欧氏距离,mp和mn分别设置为0.2和1.0,用于表示正样本和负样本。与D2-Net[7]类似,设置了一个安全半径为3,以避免将空间上过近的特征点作为负样本。03.5. 实现0训练。与D2-Net[7]不同,D2-Net从一个ImageNet预训练模型开始,只对最后一个卷积进行微调,而我们从头开始训练我们的模型,使用来自[33, 26]的真实相机和深度数据(与[19,18]中使用的相同数据)。训练过程中使用了800K对大小为480×480的图像对,并进行了批处理,每个批次大小为2。对于至少有32个匹配的图像对,计算学习梯度,而最大匹配数限制为512。每个输入图像都被标准化为零均值和单位范数,并独立地进行随机光度增强,包括亮度、对比度和模糊度。使用动量为0.9的SGD优化器,并将基础学习率设置为0.1。尽管使用DCN进行端到端学习是可行的,但我们发现两阶段训练在实践中可以获得更好的结果。具体而言,在第一轮中,我们使用所有常规卷积对模型进行训练,迭代次数为400K。在第二轮中,我们仅对DCN进行微调,基础学习率除以10,迭代次数为400K。我们使用单个NVIDIA RTX2080Ti显卡在TensorFlow中实现,训练时间为42小时。0测试。对于空间上过近的检测结果,我们应用了尺寸为3的非极大值抑制(NMS)进行去除。与D2-Net类似,我们对关键点进行了类似SIFT的边缘消除(阈值设置为10)和亚像素细化的后处理,然后在细化的位置进行双线性插值得到描述符。我们根据公式13中得到的检测分数选择前K个关键点,并经验性地丢弃那些分数低于0.50的关键点。04. 实验0在接下来的几个部分中,我们将在几个实际场景中评估我们的方法,包括图像匹配、3D重建和视觉定位。附录中还有关于密集重建和图像检索的进一步实验。04.1. 图像匹配0数据集。首先,我们使用了流行的HPatches数据集[1],其中包含116个带有真实单应性的图像序列。与D2-Net[7]一样,我们排除了8个高分辨率序列,剩下52个具有光照或视角变化的序列和56个具有视角变化的序列。尽管HPatches数据集被广泛使用,但它只展示了单应性变换,可能不能全面反映在实际应用中的性能。因此,我们转而使用新提出的FM-Bench[2],该数据集包含在实际场景中捕获的四个数据集:室内SLAM设置中的TUM数据集[35],驾驶场景中的KITTI数据集[9],以及Tanks and Temples数据集65940(T&T)[13]用于宽基线重建,以及社区照片收集(CPC)[38]用于从网络图像中进行野外重建。对于每个数据集,随机选择1000个重叠图像对进行评估,并预先计算了基本矩阵的地面真值。评估协议。在HPatches数据集[1]上,使用三个标准指标:1)关键点重复性(%重复),即可能匹配和共享视图中最小关键点数的比率。2)匹配分数(%匹配分数),即正确匹配和共享视图中最小关键点数的比率。3)平均匹配准确率(%平均匹配准确率),即正确匹配和可能匹配的比率。在这里,如果点距离在某个误差阈值以下经过单应性包裹,并且正确匹配还需要在蛮力搜索期间是互相最近的邻居,那么匹配被定义为对应。对于上述指标,我们报告数据集中所有图像对的平均得分。在FM-Bench[2]方面,执行了完整的匹配流水线,包括异常值拒绝(例如,比率测试[17])和几何验证(例如,RANSAC),并评估最终的姿态恢复准确性。为了确定姿态估计的正确性,FM-Bench使用地面真值姿态生成一组虚拟对应关系,然后测量相对于姿态估计的归一化对称极线距离的平均值,并最终计算%召回率作为距离误差低于某个阈值(默认为0.05)的估计比例。在对应关系级别上,FM-Bench还报告了RANSAC之前/之后的内点比例(%内点/%内点-m)和对应关系数量(%对应关系/%对应关系-m)。0HPatches数据集(误差阈值@ 3px)0配置 %重复 %匹配分数 %平均匹配准确率0D2-Net原始 47.86 23.58 43.00 我们的实现 43.34 29.55 45.360峰度测量 46.24 32.27 48.540+ MulDet0多尺度(金字塔) 46.12 32.55 48.72 多尺度(内部)45.17 31.74 47.94 多级(U-Net) 75.35 40.12 66.420多级(我们的) 77.37 42.99 68.660相似性 78.33 44.79 71.67 + MulDet 相似性仿射 78.49 45.3571.800和仿射变换 78.39 45.08 71.890自由形式,1层 78.27 45.12 71.08 DCN 自由形式 78.31 46.2872.26 自由形式,多尺度 86.03 39.37 72.640表2.对所提出的修改的割除实验,其中峰度测量改进了D2-Net的检测评分,+ MulDet研究了不同特征融合策略的影响,+ MulDet &DCN进一步比较了不同变形参数化的效果。0比较方法。我们将我们的方法与1)基于图像块的描述符进行比较,包括使用SIFT [17]检测器的HardNet++[21](SIFT + HN++),或者加上一个形状估计器0HesAffNet [22](HAN + HN++)。此外,ContextDesc[18]与SIFT检测器(SIFT +ContextDesc)。2)联合局部特征学习方法,包括SuperPoint [6],LF-Net [25],D2-Net(微调)[7]和最新的R2D2[27]。除非另有说明,我们报告的结果要么是原始论文中报告的结果,要么是从作者的公开实现中使用默认参数推导出的结果。我们将我们的方法在HPatches数据集和FM-Bench上的最大特征数限制为5K和20K。在FM-Bench上,在RANSAC之前应用了互相检查和比率测试[17]来拒绝异常值。除了D2-Net和R2D2外,所有方法都使用0.8的比率。0基准线。为了避免夸大,我们首先将我们的重新实现的D2-Net(我们的实现)作为基准线呈现。如3.4节和3.5节所述,新的基准线与原始的D2-Net(原始)在三个方面有所不同:1)不同的主干架构(L2-Net [36]输出为128维 vs.VGG[34]输出为512维)。2)不同的损失函数(最难对比[3] vs.最难三元组[7])。3)不同的训练设置(从头开始训练 vs.仅微调预训练模型的最后一个卷积层)。如表2和表3所示,新的基准线在总体上优于原始的D2-Net,同时在模型大小方面更具参数和计算效率。0峰值度量的消融实验。我们首先采用峰值度量进行更具指示性的关键点评分(第3.3节)。如表2所示,这种修改(峰值度量)显著改善了HPatches数据集上所有评估指标的结果。这种效果在FM-Bench上得到了验证,如表3所示,适用于所有不同的场景(ASLFeat无峰值度量)。因此,我们的后续修改将基于这个模型。0MulDet的消融实验。如表2所示,仅应用多尺度检测并没有明显效果,因为空间精度仍然不足。相反,采用多级检测,恢复空间分辨率,显著提升了性能,这符合像素级精度的必要性,特别是在容忍小像素误差时。值得注意的是,尽管提出的多级检测的学习权重和计算量较少,但其性能优于U-Net变体,解决了这个任务的低级特性,更好地保留了低级特征的好处。尽管提出的多级检测还包括不同尺度的特征融合,但我们发现结合更明确的多尺度(金字塔)检测(自由形式,多尺度)特别有利于处理尺度变化。在接下来的内容中,这种组合将被称为ASLFeat(MS)。0DCN的消融实验。如表2所示,所有调查的02对于D2-Net,我们使用0.95,正如其原始论文中建议的那样,并对LF-Net、SuperPoint和R2D2进行参数搜索,分别获得0.8、0.8和0.9的比例,以实现最佳性能。1 2 3 4 5 6 7 8 9 100.00.2.4.60.81.0ASLFeatASLFeat (MS)R2D2 (MS)SuperPointD2-NetD2-Net (MS)LF-NetSIFT + ContextDescHes. Aff. + RootSIFTHAN + HN++1 2 3 4 5 6 7 8 9 1065950TUM [35](室内SLAM设置)KITTI [9](驾驶设置)0方法 %Recall %Inlier #Inlier-m #Corrs (-m) %Recall %Inlier #Inlier-m #Corrs (-m)0SIFT [17] 57.40 75.33 59.21 65 (316) 91.70 98.20 87.40 154 (525) SIFT + HN++ [21] 58.90 75.74 62.07 67 (315) 92.00 98.2191.25 159 (535) HAN + HN++ [22] 51.70 75.70 62.06 101 (657) 90.40 98.09 90.64 233 (1182) SIFT + ContextDesc [18] 59.7075.53 62.61 69 (325) 92.20 98.23 91.92 160 (541)0LF-Net (MS) [25] 53.00 70.97 56.25 143 (851) 80.40 95.38 84.66 202 (1045) D2-Net (MS) [7] 34.50 67.61 49.01 74 (1279) 71.4094.26 73.25 103 (1832) SuperPoint [6] 45.80 72.79 64.06 39 (200) 86.10 98.11 91.52 73 (392) R2D2 (MS) [27] 57.70 73.70 61.53260 (1912) 78.80 97.53 86.49 278 (1804)0D2-Net(我们的实现)39.10 70.09 61.58 64 (337) 70.80 97.04 91.97 81 (683) ASLFeat(无峰值度量)53.30 74.96 68.29 116 (703)89.60 98.47 95.36 223 (1376) ASLFeat 60.20 76.34 69.09 148 (739) 92.20 98.69 96.25 444 (1457) ASLFeat(MS)59.90 76.7269.50 258 (1332) 92.20 98.76 96.16 630 (2222)0T&T [13](宽基线重建)CPC [38](从网络图像中进行野外重建)0SIFT 70.00 75.20 53.25 85 (795) 29.20 67.14 48.07 60 (415) SIFT + HN++ 79.90 81.05 63.61 96 (814) 40.30 76.73 62.30 69(400) HAN + HN++ 82.50 84.71 70.29 97 (920) 47.40 82.58 72.22 65 (405) SIFT + ContextDesc 81.60 83.32 69.92 94 (728)41.80 84.01 72.21 61 (306)0LF-Net (MS) 57.40 66.62 60.57 54 (362) 19.40 44.27 44.35 50 (114) D2-Net (MS) 68.40 71.79 55.51 78 (2603) 31.30 56.57 49.8584 (1435) SuperPoint 81.80 83.87 70.89 52 (535) 40.50 75.28 64.68 31 (225) R2D2 (MS) 73.00 80.81 65.31 84 (1462) 43.0082.40 67.28 91 (954)0D2-Net(我们的实现)83.20 84.19 75.32 74 (1009) 46.60 83.72 77.31 51 (464) ASLFeat(无峰值度量)86.30 84.71 77.84 171(1775) 49.50 85.80 80.39 97 (780) ASLFeat 89.90 85.33 79.08 295 (2066) 51.50 87.98 82.24 165 (989) ASLFeat(MS)88.7085.68 79.74 327 (2465) 54.40 89.33 82.76 185 (1159)0表3. FM-Bench[2]上对成对图像匹配的评估结果,其中#Recall表示准确位姿估计的百分比,#Inlier和#Inlier-m,#Corrs和#Corrs-m分别表示RANSAC之后/之前的内点比例和对应点数。0DCN的各种变体是有效的,并且明显提升了性能。在这些设计中,自由形式的变体略优于约束版本,尽管HPatches数据集仅展示了单应性变换。这证实了对于局部特征来说,建模非平面性是可行且有用的,因此我们选择自由形式的DCN来更好地处理几何变化。此外,我们还实现了一个单层的DCN(自由形式,1层),仅替换了最后一个常规卷积(即图1中的conv8),结果显示堆叠更多的DCN是有益的,并且形状估计可以逐步学习。0MMA0总体01 2 3 4 5 6 7 8 9 10阈值[像素]0光照0视角0图3.在HPatches数据集[1]上的比较,使用不同的错误阈值评估平均匹配准确率(MMA),其中“MS”表示启用了多尺度推断。0与其他方法的比较。如图3所示,ASLFeat及其多尺度(MS)变体在HPatches数据集上取得了最佳结果,无论是在光照方面还是在视角变化方面。0在不同的错误阈值下,ASLFeat在其骨干架构D2-Net的基础上显著改进,尤其是在低错误阈值下,这特别表明关键点定位误差已大大减小。此外,ASLFeat在MMA@3整体上明显优于最新的R2D2(72.64对68.64),同时通过避免使用扩张卷积来恢复空间分辨率,更具计算效率。此外,如FM-Bench上的表3所示,ASLFeat在其他联合学习方法上明显优于其他方法。特别是,ASLFeat在两个MVS数据集(T&T和CPC)上大幅提高了最先进的结果,这些场景与训练数据一致。值得注意的是,我们的方法在未见过的场景(室内场景TUM和驾驶场景KITTI)上具有良好的泛化性。作为一种常见的做法,增加更多的任务特定训练数据有望进一步提高性能。0可视化。我们在图4中展示了FM-Bench上一些样本检测结果,并在附录中提供了更多可视化结果。04.2. 3D重建0数据集。我们使用ETH基准[32]来展示对3D重建任务的影响。按照[7]的方法,我们3https://www.visuallocalization.net/MadridRootSIFT500116K6.320.60px1.82MMetropolisGeoDesc495144K5.970.65px1.56MASLFeat61396K8.760.90px2.00MASLFeat (MS)649129K9.560.95px1.92MGendarmen-RootSIFT1035338K5.520.69px4.23MmarktGeoDesc1004441K5.140.73px3.88MASLFeat1040221K8.721.00px4.01MASLFeat (MS)1061320K8.981.05px4.00MTower ofRootSIFT804239K7.760.61px3.05MLondonGeoDesc776341K6.710.63px2.73MASLFeat821222K12.520.92px3.06MASLFeat (MS)846252K13.160.95px3.08MRootSIFT11K12833.752.065.3HAN + HN++11K12837.854.175.5SIFT + ContextDesc11K12840.855.180.665960TUM0T&T0KITTI0CPC0图4. 在FM-Bench上显示的前5000个关键点的一些样本检测结果。0在[38]中评估三个中等规模的数据集。0评估协议。我们使用COLMAP[31]对每个数据集的所有图像对进行了完全匹配,同时进行了0.8的比率测试和互相检查以进行异常值排除,然后通过COLMAP运行SfM和MVS算法。对于稀疏重建,我们报告了注册图像数量(#Reg. Images),稀疏点数量(#SparsePoints),平均轨迹长度(TrackLength)和平均重投影误差(Reproj.Error)。对于密集重建,我们报告了密集点数量(#DensePoints)。我们将ASLFeat的最大特征数量限制为20K。0结果。如表4所示,ASLFeat在恢复#Reg.Images和#DensePoints方面产生了最完整的重建结果。此外,ASLFeat的Reproj.Error与SuperPoint相当,并且
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++多态实现机制详解:虚函数与早期绑定
- Java多线程与异常处理详解
- 校园导游系统:无向图实现最短路径探索
- SQL2005彻底删除指南:避免重装失败
- GTD时间管理法:提升效率与组织生活的关键
- Python进制转换全攻略:从10进制到16进制
- 商丘物流业区位优势探究:发展战略与机遇
- C语言实训:简单计算器程序设计
- Oracle SQL命令大全:用户管理、权限操作与查询
- Struts2配置详解与示例
- C#编程规范与最佳实践
- C语言面试常见问题解析
- 超声波测距技术详解:电路与程序设计
- 反激开关电源设计:UC3844与TL431优化稳压
- Cisco路由器配置全攻略
- SQLServer 2005 CTE递归教程:创建员工层级结构
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功