CVPR 2021 | 基于稠密場(chǎng)景匹配的相機(jī)定位學(xué)習(xí)
Learning Camera Localization via Dense Scene Matching
論文、代碼地址:在公眾號(hào)「3D視覺工坊」,后臺(tái)回復(fù)「相機(jī)定位」,即可直接下載。
相機(jī)定位算法是SLAM或者增強(qiáng)現(xiàn)實(shí)的一部分,主要有基于回歸和基于結(jié)構(gòu)兩種,基于回歸的定位算法精度較低,現(xiàn)在比較流行的是基于結(jié)構(gòu)的相機(jī)定位算法,基于結(jié)構(gòu)的定位算法有兩個(gè)階段:1、建立二維圖像與三維場(chǎng)景點(diǎn)之間的對(duì)應(yīng)關(guān)系;2、估計(jì)相機(jī)位姿。對(duì)于SLAM來說,相機(jī)定位算法屬于前端工作,是視覺里程計(jì)的一部分,論文結(jié)合深度學(xué)習(xí)的方式對(duì)傳統(tǒng)前端進(jìn)行了優(yōu)化,近幾年神經(jīng)網(wǎng)絡(luò)與SLAM的結(jié)合越來越多,論文提出的算法是對(duì)特征匹配的方式進(jìn)行了改進(jìn),通過卷積神經(jīng)網(wǎng)絡(luò)對(duì)圖像進(jìn)行特征提取,并用CNN進(jìn)行特征點(diǎn)的匹配操作,很符合當(dāng)前流行的SLAM趨勢(shì)。這篇文章中提到的DSM算法主要是對(duì)2D和3D場(chǎng)景進(jìn)行匹配,計(jì)算特征點(diǎn)的坐標(biāo),再通過計(jì)算的坐標(biāo),使用PNP+RANSAC算法求解位姿。
注1:文末附【VSLAM】交流群
注2:整理不易,請(qǐng)點(diǎn)贊支持!
作者:Amber | 來源:3D視覺工坊微信公眾號(hào)
【摘要】
求解相機(jī)的6D位姿時(shí),傳統(tǒng)方法是對(duì)圖像和預(yù)建立的3D模型之間的興趣點(diǎn)進(jìn)行提取和匹配,近些年基于學(xué)習(xí)的算法將場(chǎng)景結(jié)構(gòu)融進(jìn)特殊的卷積神經(jīng)網(wǎng)絡(luò)中,從而能從RGB圖像中估計(jì)稠密坐標(biāo)。但大多數(shù)算法需要對(duì)新場(chǎng)景進(jìn)行重新訓(xùn)練或重新自適應(yīng),而且由于網(wǎng)絡(luò)容量有限很難處理大規(guī)模場(chǎng)景。因此論文提出一種場(chǎng)新的景無關(guān)的相機(jī)定位算法,該算法使用了稠密場(chǎng)景匹配,在圖像和場(chǎng)景間構(gòu)造一個(gè)cost volume。通過一個(gè)CNN網(wǎng)絡(luò),生成cost volume和對(duì)應(yīng)坐標(biāo),從而來估計(jì)稠密坐標(biāo),然后通過PNP算法求解相機(jī)位姿。此外,我們的方法還可以擴(kuò)展到時(shí)域,從而在測(cè)試期間獲得更好的性能提升。
【引言】
論文重點(diǎn)研究了坐標(biāo)映射回歸算法,近年提出的算法大多需要一個(gè)共享的PointNet來單獨(dú)對(duì)每個(gè)像素點(diǎn)進(jìn)行預(yù)測(cè),從而使得位姿估計(jì)準(zhǔn)確性不高且計(jì)算量大。為解決這個(gè)問題,論文提出一種基于稠密場(chǎng)景匹配的場(chǎng)景無關(guān)相機(jī)定位網(wǎng)絡(luò)。通過端到端的訓(xùn)練,cost volume會(huì)促使場(chǎng)景點(diǎn)與輸入像素有很精確的聯(lián)系。而場(chǎng)景結(jié)構(gòu)是不規(guī)則的,這使得每個(gè)圖像像素的場(chǎng)景關(guān)聯(lián)數(shù)量是不同的,因此我們提出一個(gè)簡單有效的解決辦法來統(tǒng)一所有cost volume的大?。号判虿⑦x擇最佳的K個(gè)候選值,并將它們輸入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行稠密坐標(biāo)回歸。
【總體結(jié)構(gòu)】

系統(tǒng)以單獨(dú)的圖像或視頻序列作為查詢輸入。對(duì)于每一個(gè)查詢圖像,首先通過深度圖像檢索,檢索出N個(gè)最近場(chǎng)景圖像和相應(yīng)的坐標(biāo)映射。接著,通過特征金字塔網(wǎng)絡(luò)為每個(gè)查詢和場(chǎng)景圖像提取L層特征金字塔。然后用一種從粗到精的方式在每個(gè)金字塔層上設(shè)計(jì)一個(gè)稠密場(chǎng)景匹配來對(duì)分辨率和精度逐漸提高的稠密坐標(biāo)映射進(jìn)行回歸,最后,通過標(biāo)準(zhǔn)的RANSAC+PNP算法從最佳的坐標(biāo)映射估計(jì)相機(jī)位姿。
【DSM 稠密場(chǎng)景匹配】


DSM模塊對(duì)坐標(biāo)映射進(jìn)行了估計(jì)并從初始中估計(jì)了更多的細(xì)節(jié)。具體來說,DSM包括兩個(gè)步驟:即cost volume 構(gòu)造和坐標(biāo)回歸。首先構(gòu)造了測(cè)量2D查詢像素和場(chǎng)景點(diǎn)相關(guān)性的cost volume,然后從cost volume中回歸了查詢圖像的稠密坐標(biāo)映射。
1.Cost Volume 構(gòu)造
在Cost Volume中包括兩個(gè)過程:場(chǎng)景相關(guān)和時(shí)間相關(guān)。場(chǎng)景相關(guān)性量測(cè)了查詢圖像和場(chǎng)景點(diǎn)的相似度,而時(shí)間相關(guān)量測(cè)了檢索圖像像素與檢索視頻片段中相鄰兩幀的相似性論文在訓(xùn)練時(shí)只使用場(chǎng)景相關(guān),在測(cè)試時(shí)融合兩者。
1.1場(chǎng)景相關(guān)性


1.2時(shí)間相關(guān)性

2.坐標(biāo)回歸
我們?cè)O(shè)計(jì)一個(gè)網(wǎng)絡(luò)——來通過輸入cost volume、坐標(biāo)列和圖像特征從而估計(jì)最終的場(chǎng)景坐標(biāo)映射。首先將cost-coordinate volume輸入一個(gè)包括1*1卷積層的網(wǎng)絡(luò),并生成一個(gè)坐標(biāo)特征映射。然后將坐標(biāo)特征映射與圖像特征映射進(jìn)行拼接,輸入另一個(gè)包括3*3卷積層的網(wǎng)絡(luò)來估計(jì)最終的坐標(biāo)映射。
【訓(xùn)練損失函數(shù)】


【實(shí)驗(yàn)分析】
論文在室內(nèi)數(shù)據(jù)集7Scenes和室外數(shù)據(jù)集Cambridge Landmarks上進(jìn)行了性能測(cè)評(píng)。對(duì)于7Scenes數(shù)據(jù)集,包括7中不同的場(chǎng)景,由手持式Kinect RGB-D相機(jī)進(jìn)行捕捉。Cambridge Landmarks數(shù)據(jù)集包括6種不同的室外場(chǎng)景,另外論文中是使用ScanNet 數(shù)據(jù)集進(jìn)行訓(xùn)練的。

論文中將所提出的算法與當(dāng)前較先進(jìn)的算法進(jìn)行對(duì)比,上面的表格顯示出,論文的算法有較強(qiáng)的表現(xiàn)性。

另外還評(píng)估了相機(jī)軌跡,可以從圖中看到,我們的單幀定位軌跡中包含一些異常值,而我們的視頻定位能夠去除大部分異常值。

對(duì)DSM、SANet以及DSAC++等算法進(jìn)行坐標(biāo)映射可視化??偟膩砜?,由DSM生成的坐標(biāo)映射在質(zhì)量和細(xì)節(jié)性上更加優(yōu)于其他兩種算法。SANet通過球查詢從搜索空間中隨機(jī)抽取坐標(biāo),因此可能會(huì)丟失最佳匹配。因此其坐標(biāo)映射包括大量的殘影。
備注:作者也是我們「3D視覺從入門到精通」特邀嘉賓:一個(gè)超干貨的3D視覺學(xué)習(xí)社區(qū)
本文僅做學(xué)術(shù)分享,如有侵權(quán),請(qǐng)聯(lián)系刪文。
3D視覺工坊-VSLAM交流群
已建立3D視覺工坊-VSLAM微信交流群!想要進(jìn)VSLAM學(xué)習(xí)交流群的同學(xué),可以直接加微信號(hào):CV_LAB。加的時(shí)候備注一下:VSLAM+學(xué)校+昵稱,即可。然后就可以拉你進(jìn)群了。
強(qiáng)烈推薦大家關(guān)注3D視覺工坊知乎賬號(hào)和3D視覺工坊微信公眾號(hào),可以快速了解到最新優(yōu)質(zhì)的3D視覺與SLAM論文。