CVPR 2023(劍橋大學(xué)最新)| 自適應(yīng)迭代匹配和姿態(tài)估計
一般相機(jī)姿態(tài)估計問題通常分為兩階段來處理,即首先進(jìn)行特征匹配,然后根據(jù)匹配對應(yīng)關(guān)系估計姿態(tài),所以大家往往關(guān)注在要么提高匹配質(zhì)量,即研究更魯棒高效的特征檢測匹配算法,要么是研究如何過濾潛在的異常值。這樣導(dǎo)致匹配和姿態(tài)估計割裂開來,這篇文章則不同,他們利用了這兩個任務(wù)之間的幾何關(guān)聯(lián):幾個好的匹配就足以進(jìn)行大致準(zhǔn)確的姿態(tài),反過來,通過提供的幾何約束,大致準(zhǔn)確的姿態(tài)又可以用來引導(dǎo)匹配。為此,他們提出了一個迭代匹配和姿態(tài)估計框架,實現(xiàn)了一個基于幾何感知的遞歸注意力模塊,該模塊輸出稀疏匹配和相機(jī)姿態(tài)。
此外,為了提升效率,避免對無信息特征點(diǎn)進(jìn)行冗余操作,提出了一種采樣策略,將特征點(diǎn)的匹配和注意力得分以及預(yù)測姿態(tài)的不確定性相結(jié)合,自適應(yīng)去除關(guān)鍵點(diǎn),與之前主要基于注意力得分的采樣方法相比,有效克服了過采樣問題??蚣軓膬蓚€方面降低了時間成本:首先,與對所有情況采用固定次數(shù)的迭代相比,它對視點(diǎn)或外觀變化較少的簡單情況運(yùn)行較少的迭代,而對具有挑戰(zhàn)性的情況運(yùn)行較多的迭代;其次,它降低了每次迭代的成本,顯著降低了注意力計算的二次時間復(fù)雜性,表明了丟棄潛在的異常值不僅可以提高效率,還可以提高準(zhǔn)確性。
1.提出了一種迭代地執(zhí)行幾何感知的匹配和姿態(tài)估計的框架,允許這兩個任務(wù)以迭代的方式相互促進(jìn)。
2.采用了一種穩(wěn)健的采樣策略來自適應(yīng)地丟棄迭代過程中的冗余特性點(diǎn),顯著降低了時間復(fù)雜度。
3.將姿態(tài)不確定性應(yīng)用于采樣策略,進(jìn)一步提高了精度匹配和姿態(tài)估計。
方法基于transformer的迭代匹配:
首先,給定來自兩幅圖像的兩組特征點(diǎn),,m和n是特征點(diǎn)的數(shù)量,然后匹配器預(yù)測的匹配表示為:,其中表示匹配對,而每個特征點(diǎn)由由他的二維坐標(biāo),置信度,描述子,d是描述子維數(shù)。
這里,作者會將每個特征點(diǎn)的坐標(biāo)和他的置信度用MLP多層感知器編碼為一個高維向量,添加到原來的描述子中進(jìn)行一個擴(kuò)充。即. 操作如下:
其中 and 是用于的自注意力和交叉注意力機(jī)制,是FC層全連接層,是3層的MLP,是通道間串聯(lián),使用共享注意力機(jī)制來進(jìn)一步增加預(yù)計算的注意力矩陣的描述符:
之后,開始進(jìn)行迭代匹配預(yù)測,在上一步獲得擴(kuò)充描述子后,利用他們計算一個匹配矩陣,,當(dāng)匹配超過預(yù)定義的閾值時定義為預(yù)測匹配。與SuperGlue類似,采用最小化匹配矩陣的負(fù)對數(shù)似然的分類損失來強(qiáng)制網(wǎng)絡(luò)預(yù)測每次迭代的正確匹配,如下所示:
基于transformer的迭代匹配:
由于噪聲和退化,并非所有正確匹配都能給出良好的姿態(tài)。之前的操作僅保證具有判別性高的描述子的特征點(diǎn)有更高的匹配分?jǐn)?shù),并且首先被識別以參與姿態(tài)估計,但忽略了魯棒姿態(tài)估計所需的幾何要求。
因此,直接使用匹配分?jǐn)?shù)超過預(yù)定義閾值的所有潛在inliers進(jìn)行姿態(tài)估計可能是不準(zhǔn)確的。所以隱式地將幾何信息編碼進(jìn)匹配transformer中,強(qiáng)制匹配模塊首先關(guān)注不僅正確而且很有可能給出良好姿態(tài)的匹配。
為此,在每次迭代中,在中超過預(yù)定義閾值的匹配用來計算基本矩陣,其中是預(yù)測的基本矩陣,是預(yù)測的匹配,是匹配分?jǐn)?shù),然后聯(lián)合最小化位姿誤差和極線誤差來強(qiáng)制和真值之間的幾何一致性,如下:
是Sampson距離。和分別為真值和預(yù)測匹配。
對于每次迭代,最終損失為:
我們將L(t)應(yīng)用于每次迭代,并計算t次迭代的總損失:
自適應(yīng)幾何感知的采樣:事實上,許多關(guān)鍵點(diǎn)是無信息的,并且大量關(guān)鍵點(diǎn)在其他圖像中沒有對應(yīng)關(guān)系,更新這些關(guān)鍵點(diǎn)會帶來額外的時間,所以提出了一種有效的策略來去除這些關(guān)鍵點(diǎn)。
每個關(guān)鍵點(diǎn)所包含的信息由其在注意力矩陣中對其他關(guān)鍵點(diǎn)的貢獻(xiàn)來定義(m,n是關(guān)鍵點(diǎn)中query和key的數(shù)量,h是head的數(shù)量)。通過沿head和key對值取平均值來計算每個關(guān)鍵點(diǎn)的得分,。
在第t次迭代時,包含所有對的匹配置信度的匹配矩陣M(t)揭示了哪些關(guān)鍵點(diǎn)可能具有真正的對應(yīng)關(guān)系?;谄ヅ渚仃嘙(t),生成兩個子集和。由于 and 中的關(guān)鍵點(diǎn)是潛在的內(nèi)點(diǎn),它們可以為尋找更多信息提供指導(dǎo),即讓, s.t. 表示中關(guān)鍵點(diǎn)的自注意力得分,生成了另一組具有高自注意分?jǐn)?shù)的關(guān)鍵點(diǎn),, s.t. ,通過重復(fù)這個過程,從具有高交叉注意力得分的X(t)中獲得另一個子集作為,并且從Y(t)中具有高自和交叉注意力分?jǐn)?shù)的獲得兩個集合。最后的集合是信息關(guān)鍵點(diǎn)和匹配關(guān)鍵點(diǎn)的并集,
當(dāng)描述符不具有判別性時,匹配矩陣M(t)在最初的幾次迭代中可能不是非常準(zhǔn)確,從而損害準(zhǔn)確性。為了緩解這個問題,使用了預(yù)測的姿態(tài)。將姿態(tài)一致性的不確定性定義為
使用r(t)來調(diào)整采樣閾值θm,
姿態(tài)估計:在測試時,每次迭代后計算匹配M(t),并根據(jù)與RANSAC的匹配來估計姿態(tài),連續(xù)預(yù)測姿態(tài)P(t)和P(t?1)之間的相對誤差作為停止標(biāo)準(zhǔn)來確定是否繼續(xù)迭代,即如果旋轉(zhuǎn)和平移的最大誤差小于閾值時,則迭代停止。
實驗在YFCC100m、Scannet、Aachen Day-Night數(shù)據(jù)集上進(jìn)行測試。
YFCC100m是一個大型室外數(shù)據(jù)集,具有劇烈光照變換、季節(jié)變化和視點(diǎn)變化。
Scannet是一個室內(nèi)數(shù)據(jù)集,廣泛用于深度預(yù)測和姿態(tài)估計。
基線包括:簡單的匹配器,例如MNN和NN-RT,基于濾波的方法,例如OANet、AdaLAM、CLNet和LMCNet,最后還有基于transformer的匹配器SuperGlue, SGMNet,ClusterGNN。
定性實驗:
運(yùn)行時間:
提出了一種聯(lián)合迭代匹配和姿態(tài)估計框架,允許這兩項任務(wù)相互促進(jìn),從而提高了精度和效率。
將幾何信息嵌入到匹配模塊中,使模型能夠預(yù)測匹配,這些匹配不僅準(zhǔn)確,而且能夠給出良好的姿態(tài)。此外,在每次迭代中,利用預(yù)測的匹配、相對姿態(tài)和注意力得分來在每次迭代時自適應(yīng)地去除沒有潛在真實匹配的關(guān)鍵點(diǎn),提高了效率并保持了準(zhǔn)確性。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。