日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Patch2Pix(CVPR 2021)特征点检测与匹配论文精读笔记

發(fā)布時(shí)間:2023/12/31 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Patch2Pix(CVPR 2021)特征点检测与匹配论文精读笔记 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言

論文地址
論文補(bǔ)充材料 / 附錄
代碼地址

??翻譯并記錄閱讀每段的感受和寫作邏輯。大概了解特征點(diǎn)檢測(cè)和目標(biāo)檢測(cè)的大致方法的話,不用遞歸式讀論文也能基本理解本文的方法。

參考文獻(xiàn)
檢測(cè):
[5] SuperPoint
[6] D2-Net
[7] Beyond cartesian representations for local descriptors (CVPR 2019)
[16] Contextdesc: Local descriptor augmentation with cross-modality context (CVPR 2019)
[17] Aslfeat
[28] R2D2
[40] Learning feature descriptors using camera pose supervision (ECCV 2020)

匹配:
[3] Neural-guided ransac: Learning where to sample model hypotheses (ICCV 2019)
[10] S2dnet: Learning accurate correspondences for sparse-to-dense feature matching (ECCV 2020)
[22] Learning to find goodcorrespondences (CVPR 2018)
[33] SuperGlue
[38] Acne: Attentive context normalizationfor robust permutation-equivariant learning (CVPR 2020)
[42] Learning two-view correspondences and geometry using order-aware network (ICCV 2019)

檢測(cè) + 匹配:
[13] Dual-resolution correspondence networks (NIPS 2020)
[29] Convolutional neural network architecture for geometric matching (CVPR 2017)
[30] Efficient neighbourhood consensus networks via submanifold sparse convolutions (ECCV 2020)
[31] Neighbourhood consensus networks (NIPS 2018)

1. Introduction

??尋找圖像的對(duì)應(yīng)關(guān)系(也就是特征點(diǎn)檢測(cè)與匹配)是 SfM、SLAM 等任務(wù)的基本步驟,包括3個(gè)步驟:(1)檢測(cè)特征點(diǎn)并提取描述符;(2)用描述符匹配特征點(diǎn);(3)排除錯(cuò)誤匹配。任務(wù)的適用領(lǐng)域和流程。

??傳統(tǒng)算法局限性。[5,6,7,16,17,28,40] 用 CNN 學(xué)習(xí)特征點(diǎn)檢測(cè)和描述,效果不錯(cuò)。[3,22,38,42] 建議學(xué)一個(gè)過濾函數(shù)來做第三步排除錯(cuò)誤匹配,而不是專注于優(yōu)化第一步的效果。簡(jiǎn)單描述 SuperGlue 的做法。結(jié)合特征檢測(cè)器和匹配器作為一個(gè)完整的 pipeline 是個(gè)好方向。傳統(tǒng)算法到深度方法,并引出要把檢測(cè)和匹配合并到一個(gè)網(wǎng)絡(luò)里。

??[13,30,31] 已經(jīng)做了這個(gè)工作,用單個(gè)網(wǎng)絡(luò)輸入圖像對(duì),直接得到對(duì)應(yīng)關(guān)系。難點(diǎn)是達(dá)到像素級(jí)精度并匹配準(zhǔn)確。[29] 在低分辨率上做匹配,精度不夠。[30] 用稀疏卷積在高分辨率上匹配,但還是不能實(shí)現(xiàn)像素級(jí)匹配。[30,31] 的優(yōu)點(diǎn)是用弱監(jiān)督最大化匹配對(duì)的得分并最小化非匹配對(duì)的得分,但是在像素級(jí)匹配上學(xué)習(xí)效率太低。和需要 ground truth(GT) 的強(qiáng)監(jiān)督方法 [SuperPoint, D2-Net, S2dnet, Aslfeat, R2D2, SuperGlue] 對(duì)比,GT 雖然很準(zhǔn)但也可能增加學(xué)習(xí)的誤差,譬如稀疏的關(guān)鍵點(diǎn)作為 GT 可能會(huì)簡(jiǎn)單的學(xué)習(xí)這些點(diǎn)而不是更一般的特征(個(gè)人理解就是由數(shù)據(jù)導(dǎo)致的過擬合)。[40] 利用相機(jī)姿態(tài)做弱監(jiān)督來解決這種問題,并且和 [30,31] 相比更精確。現(xiàn)有的一些方法和他們的缺點(diǎn),因?yàn)楸疚挠玫暮?[40] 一樣的弱監(jiān)督,就說明了一下這種訓(xùn)練模式的好處。

??本文提出 Patch2Pix,用一個(gè)新的角度來設(shè)計(jì)網(wǎng)絡(luò)。受目標(biāo)檢測(cè)的啟發(fā),首先得到 patch-level 的匹配,再細(xì)化到 pixel-level 的匹配。網(wǎng)絡(luò)用相機(jī)姿態(tài)計(jì)算得到的對(duì)極幾何(epipolar geometry)做弱監(jiān)督,回歸出 patch proposal 中的像素級(jí)匹配。和 [40] 相比,本文從匹配位置學(xué)匹配,從匹配得分學(xué)特征描述符。本文方法 SOTA。本文貢獻(xiàn):(1)提出了一個(gè)新的角度來學(xué)對(duì)應(yīng)關(guān)系,先得到 patch-level 的匹配,再細(xì)化到 pixel-level 的匹配。(2)一種新的匹配細(xì)化網(wǎng)絡(luò),可以同時(shí)細(xì)化匹配并排除錯(cuò)誤匹配,且訓(xùn)練不需要像素級(jí)的 GT 對(duì)應(yīng)關(guān)系。(3)模型在圖像匹配、單應(yīng)性估計(jì)、視覺定位等方面提高了匹配精度。(4)模型可以直接推廣到強(qiáng)監(jiān)督方法,且取得 SOTA 結(jié)果。因?yàn)橛?xùn)練數(shù)據(jù)是和 [40] 一樣的,而在這個(gè)領(lǐng)域感覺做數(shù)據(jù)的方法是個(gè)很重要的部分,這邊就提了一句訓(xùn)練策略上的不同,其他的就是常規(guī)的本文貢獻(xiàn)。從這段來看,本文的核心是一種細(xì)化的策略,并且細(xì)化策略可以推廣到別的方法上的,通常的方法是在低分辨率特征圖上得到結(jié)果再用插值還原到原圖分辨率,而本文用了更好的細(xì)化方法。

??Fig. 1:Patch2Pix 的一個(gè)樣例。上半張圖由匹配的置信度得分來著色,得分越低越藍(lán),主要在路上和空白的墻上。下半張圖說明了靠里的一些匹配可以在這種大視角變化下成功匹配。論文第一幅圖是一個(gè)結(jié)果的可視化,直觀地表明論文是干啥的。

2. Related Work

??介紹了一下 [6,17,28,40] 的做法,這些都是學(xué)局部特征,需要一個(gè)匹配步驟得到對(duì)應(yīng)關(guān)系。

??Matching and Outlier Rejection. 有了特征點(diǎn)和描述符,就可以計(jì)算描述符的歐氏距離并用最近鄰搜索得到匹配。異常值通常用一致性或匹配得分過濾。 [3,22,38,42] 讓網(wǎng)絡(luò)做二分類來排除異常值,或者用 RANSAC 對(duì)輸入匹配做加權(quán),這些方法并由讓網(wǎng)絡(luò)學(xué)習(xí)用來匹配的特征或匹配函數(shù),而是改進(jìn)已有的匹配和對(duì)應(yīng)關(guān)系。[10,33] 學(xué)了匹配函數(shù)。SuperGlue[33] 用帶注意力機(jī)制的圖神經(jīng)網(wǎng)絡(luò)優(yōu)化 SuperPoint[5] 的描述符,并用 Sinkhorn algorithm 計(jì)算匹配。S2DNet[10] 提取一幅圖像 SuperPoint[5] 特征點(diǎn)位置的局部特征(稀疏),對(duì)另一幅圖像全圖提取特征(密集),利用相似度得分峰值計(jì)算匹配。這些方法主要是優(yōu)化特征點(diǎn)的描述符,但沒有優(yōu)化特征點(diǎn)檢測(cè)方面的問題。列舉了一些單做匹配和排除異常值的方法,他們的問題是不參與特征點(diǎn)的檢測(cè),不過把檢測(cè)和匹配一起做,匹配效果應(yīng)該會(huì)更好。

??End-to-End Matching. [13,30,31] 一個(gè)正向傳遞完成檢測(cè)、匹配、排除異常值。NC-Net[31] 用一個(gè) correlation layer[29] 做匹配操作,用 4D 卷積層算鄰域一致性得分優(yōu)化匹配得分,但是受內(nèi)存限制,在下采樣16倍的特征圖上做匹配精度太低。SparseNCNet[30] 用前10的相似度得分作為相關(guān)性張量的稀疏表示,并用稀疏卷積代替密集的 4D 卷積,從而可以在下采樣4倍的特征圖上做匹配。和本文同期的 DualRC-Net[13] 結(jié)合粗分辨率和細(xì)分辨率的特征圖得到匹配得分。本文和 [13,30] 不一樣,是用回歸層將匹配細(xì)化到原圖分辨率。一些也把檢測(cè)匹配全做了的方法以及和本文的不同。

??Full versus Weak Supervision. (個(gè)人翻譯為強(qiáng)監(jiān)督和弱監(jiān)督)作者認(rèn)為需要精確的 GT 來指導(dǎo)損失為強(qiáng)監(jiān)督,不需要 GT 為弱監(jiān)督。大多數(shù)方法都是用 GT 的,譬如 D2-Net[6]、S2dnet[10]、Aslfeat[17] 利用相機(jī)姿態(tài)和深度圖,SuperPoint[5]、R2D2[28] 利用合成單應(yīng)性變換,少數(shù)方法如 CAPS[40] 用對(duì)極幾何做弱監(jiān)督。S2DNet[10] 和 SuperGlue[33] 也要 GT。[3,22,38,42] 這些排除異常值的方法由圖像對(duì)間的幾何變換做弱監(jiān)督。DualRC-Net[13] 是強(qiáng)監(jiān)督,SparseNCNet[30] 和 NC-Net[31] 用弱監(jiān)督優(yōu)化圖像對(duì)的平均匹配得分,而不是單個(gè)匹配。本文用對(duì)極幾何做弱監(jiān)督,匹配坐標(biāo)直接回歸和優(yōu)化。相比之下 CAPS[40] 用同樣的監(jiān)督學(xué)特征描述符,用匹配得分優(yōu)化損失,匹配得分的索引給出匹配位置。基于 SparseNCNet[30] 和 NC-Net[31] 作者提出了 two-stage 匹配網(wǎng)絡(luò),在原圖分辨率上預(yù)測(cè)匹配。這段像是報(bào)菜名,各種方法用的監(jiān)督策略,不過用弱監(jiān)督的只有 CAPS[40],并再次強(qiáng)調(diào)了一下和 [40] 的區(qū)別。

3. Patch2Pix: Match Refinement Network

??匹配網(wǎng)絡(luò)(correspondence network)的好處是可以直接優(yōu)化特征匹配,而不需要明確定義特征點(diǎn)。網(wǎng)絡(luò)所發(fā)現(xiàn)的匹配關(guān)系可以反映出特征點(diǎn)檢測(cè)和描述。現(xiàn)有匹配網(wǎng)絡(luò)不準(zhǔn)確的兩個(gè)原因:(1)內(nèi)存的限制導(dǎo)致要用下采樣的特征圖做匹配。(2)SparseNCNet[30] 和 NC-Net[31] 用弱監(jiān)督訓(xùn)練的時(shí)候讓不是匹配對(duì)的匹配得分變低,是匹配對(duì)的得分變高,這樣并不能讓網(wǎng)絡(luò)識(shí)別出好的匹配或壞的匹配,導(dǎo)致無法得到像素級(jí)精確的匹配。分析其他方法精度不夠的原因。

??為了解決這兩個(gè)問題,提出了一個(gè)兩階段的 detect-to-refine 方法,靈感來自 Faster R-CNN。在第一個(gè)檢測(cè)階段,用一個(gè)匹配網(wǎng)絡(luò),譬如 NC-Net,得到 patch-level 的匹配。第二個(gè)階段用兩種方法細(xì)化匹配:(1)用分類得到匹配的置信度;(2)用回歸得到以 patch 為中心的像素級(jí)分辨率的匹配。作者的直覺是匹配網(wǎng)絡(luò)用高級(jí)特征得到 patch-level 的語義匹配,而細(xì)化網(wǎng)絡(luò)可以關(guān)注局部結(jié)構(gòu)的細(xì)節(jié),得到精確的匹配位置。網(wǎng)絡(luò)用弱監(jiān)督的對(duì)極損失訓(xùn)練,使匹配滿足相機(jī)姿態(tài)的幾何約束。網(wǎng)絡(luò)結(jié)構(gòu)看 Fig. 2。下面以 NC-Net 為基線做匹配,本文的方法可以推廣到其他類型的匹配方法上。解決問題的方法,并且明確了本文主要是以目標(biāo)檢測(cè)為靈感做的一個(gè)細(xì)化網(wǎng)絡(luò),可以代替通常的插值細(xì)化,讓匹配的精度變高。

??Fig. 2
??Top:輸入一對(duì)圖像,先用 ResNet34 做 backbone 提取特征,然后送到 correspondence network 網(wǎng)絡(luò),譬如 NC-Net 的匹配層得到 match proposals。Patch2Pix 利用之前提取的特征圖來細(xì)化這些 proposals。
??Bottom:設(shè)計(jì)了兩個(gè)不同等級(jí)但具有相同架構(gòu)的回歸器來逐步細(xì)化 match proposals 到原圖分辨率。以一個(gè) match proposal mim_imi? 為中心的一對(duì) S×SS\times SS×S local patches,收集 patches 的特征輸入到 mid-level 回歸器并輸出 (1) 置信得分 ci^\widehat{c_i}ci?? 代表 match proposal 的質(zhì)量 (2) 在 local patches 中找到的像素級(jí)局部匹配 δi^\widehat{\delta_i}δi??。更新后的 match proposal mi^\widehat{m_i}mi?? 通過新的 local patches 更新搜索空間。 fine-level 回歸器輸出最終的 ci~\widetilde{c_i}ci??δi~\widetilde{\delta_i}δi?? 以及像素級(jí)匹配 mi~\widetilde{m_i}mi??。整個(gè)網(wǎng)絡(luò)在弱監(jiān)督下訓(xùn)練,不需要明確的 GT 對(duì)應(yīng)關(guān)系。

3.1. Refinement: Pixel-level Matching

??Feature Extraction: 輸入圖像對(duì) (IA,IB)(I_A,I_B)(IA?,IB?) 給一個(gè) LLL 層的 CNN 提取特征圖。令 flA,flBf_l^A,f_l^BflA?,flB?(IA,IB)(I_A,I_B)(IA?,IB?)lll 層的特征圖,l=0l=0l=0 時(shí)為原圖,即 f0A=IAf_0^A=I_Af0A?=IA?。特征圖只提取一次,用到檢測(cè)和細(xì)化兩個(gè)階段。檢測(cè)只用最后一層特征,包含更多高級(jí)信息;細(xì)化用最后一層之前的特征,包含更多低級(jí)細(xì)節(jié)。

??From match proposals to patches: 給定一個(gè)匹配 mi=(piA,piB)=(xiA,yiA,xiB,yiB)m_i=(p_i^A, p_i^B)=(x_i^A,y_i^A,x_i^B,y_i^B)mi?=(piA?,piB?)=(xiA?,yiA?,xiB?,yiB?),細(xì)化階段的目標(biāo)是在 patch-level 匹配的局部區(qū)域上找到 pixel-level 的精確匹配。由于在縮小的特征圖上匹配,因此在特征圖上誤差1個(gè)像素會(huì)導(dǎo)致在原圖上有 2L?12^{L-1}2L?1 的誤差。因此,定義搜索區(qū)域?yàn)橐?piAp_i^ApiA?piBp_i^BpiB? 為中心的 S×SS \times SS×S local patch,讓 S>2L?1S>2^{L-1}S>2L?1 使其比原來 2L?1×2L?12^{L-1}\times2^{L-1}2L?1×2L?1 的 patch 覆蓋更多的區(qū)域。從所有的 match proposals 中得到一組 local patch pairs 后,網(wǎng)絡(luò)從 local patch pairs 的特征圖中回歸出 pixel-level 的匹配。

??Local Patch Expansion: 提出了一個(gè) patch 擴(kuò)展機(jī)制,如 Fig. 3,用鄰域擴(kuò)展搜索區(qū)域。將 piAp_i^ApiA? 沿 xxx 軸和 yyy 軸4個(gè)角各移動(dòng) ddd 個(gè)像素。這給了我們4個(gè) piAp_i^ApiA? 的 anchor points 來匹配 piBp_i^BpiB? 得到4個(gè)新的 match proposals。同樣擴(kuò)展 piBp_i^BpiB? 并與 piAp_i^ApiA? 匹配也得到4個(gè)新的 match proposals。8個(gè) proposals 確定了8對(duì) S×SS \times SS×S 的 local patches。設(shè)置 d=S/2d=S/2d=S/2,擴(kuò)展的搜索區(qū)域大小為 2S×2S2S \times 2S2S×2S,并且仍然覆蓋原來的 S×SS \times SS×S 區(qū)域。patch 擴(kuò)展 MpatchM_{patch}Mpatch? 在訓(xùn)練的時(shí)候很有用,因?yàn)榭梢詮?qiáng)迫網(wǎng)絡(luò)在空間接近且相似的特征中得到正確的匹配。這個(gè)擴(kuò)展機(jī)制可以加快學(xué)習(xí)過程并提高模型性能。雖然在測(cè)試的時(shí)候也可以用來擴(kuò)大搜索范圍,但是計(jì)算量比較高,所以在測(cè)試過程中沒用。初看有點(diǎn)懵,沒明白是干啥的。


??Fig. 3:描述和段落中的基本一樣

??Progressive Match Regression: 細(xì)化任務(wù)是在一對(duì) local patches 中找到好的匹配。用了兩個(gè)相同架構(gòu)做 mid-level 和 fine-level,逐步得到最終的匹配。給定一對(duì) S×SS \times SS×S 的 patches,先提取特征圖中對(duì)應(yīng)的特征信息 flA,flB{f_l^A},{f_l^B}flA?,flB?。patch 上的每個(gè)點(diǎn) (x,y)(x,y)(x,y),在 lll 層特征圖上對(duì)應(yīng)的位置為 (x/2l,y/2l)(x/2^l,y/2^l)(x/2l,y/2l)。選擇了 {0,…,L?1}\{0, \dots,L-1\}{0,,L?1} 層中所有的特征連接成一個(gè)特征向量。將兩個(gè) feature patches PFiA,PFiBPF_i^A, PF_i^BPFiA?,PFiB? 沿特征維度拼接并輸入到 mid-level 回歸器中。回歸器首先用兩個(gè)卷積把輸入特征合成為特征向量,然后用兩個(gè)全連接層處理,最后網(wǎng)絡(luò)的預(yù)測(cè)為兩個(gè)全連接層的輸出。一個(gè)做回歸,輸出一組與 S×SS \times SS×S local patches 中心像素相關(guān)的 local matches M^Δ:={δ^i}i=1N?R4\widehat{M}_{\Delta}:=\left\{\widehat{\delta}_{i}\right\}_{i=1}^{N} \subset R^{4}MΔ?:={δi?}i=1N??R4,其中 δi^=(δxiA^,δyiA^,δxiB^,δyiB^)\widehat{\delta_{i}}=\left(\widehat{\delta x_{i}^{A}}, \widehat{\delta y_{i}^{A}}, \widehat{\delta x_{i}^{B}}, \widehat{\delta y_{i}^{B}}\right)δi??=(δxiA??,δyiA??,δxiB??,δyiB??)。另一個(gè)做分類,用 sigmoid 得到置信得分 C^pixel=(c1^,…,cN^)∈RN\widehat{\mathcal{C}}_{pixel}=\left(\widehat{c_{1}}, \ldots, \widehat{c_{N}}\right) \in R^{N}Cpixel?=(c1??,,cN??)RN,表示匹配的有效性。把 local matches 和 patch matches 加起來從而得到了 mid-level 匹配 M^pixel:={m^i}i=1N\widehat{M}_{pixel}:=\left\{\widehat{m}_{i}\right\}_{i=1}^{N}Mpixel?:={mi?}i=1N?m^i=mi+δ^i\widehat{m}_{i}=m_i+\widehat{\delta}_{i}mi?=mi?+δi?。以 mid-level 的匹配為中心得到新的 S×SS \times SS×S patch pairs,把它們的特征輸入到 fine-level 回歸器,按照 mid-level 回歸一樣的流程得到 pixel-level 匹配 M~pixel:={mi~}i=1N\widetilde{M}_{pixel}:=\left\{\widetilde{m_{i}}\right\}_{i=1}^{N}Mpixel?:={mi??}i=1N? 和置信得分 C~pixel=(c1~,…,cN~)∈RN\widetilde{\mathcal{C}}_{pixel}=\left(\widetilde{c_{1}}, \ldots, \widetilde{c_{N}}\right) \in R^{N}Cpixel?=(c1??,,cN??)RN

??看完這段大致理解了本文的做法,圖像對(duì)先經(jīng)過一個(gè) CNN 提取特征,將最后一層特征按 NC-Net 的匹配方式得到一些匹配結(jié)果,原本這些匹配結(jié)果也是點(diǎn)對(duì)點(diǎn)的,但是因?yàn)槭窃诘头直媛侍卣鲌D上得到的結(jié)果,所以把它當(dāng)做兩個(gè) S×SS \times SS×S 大小區(qū)域的匹配。通過特定方式提取出了這兩個(gè)區(qū)域的特征,并且拼到一起輸入到細(xì)化網(wǎng)絡(luò),經(jīng)過一些卷積和全連接,得到一個(gè) mid-level 的匹配坐標(biāo)和匹配置信度;按同樣的方式迭代一次得到 fine-level 也就是 pixel-level 的結(jié)果。此時(shí)也大致明白了 patch 擴(kuò)展機(jī)制,一對(duì)匹配擴(kuò)展成8對(duì),擴(kuò)大匹配搜索的范圍。
??此時(shí)不太清楚 patch 對(duì)應(yīng)的特征是什么形式的,從 Fig. 2 來看是把原圖像和前三層的特征圖拼起來,但是這些特征圖分辨率都不一樣,應(yīng)該需要采樣到一個(gè)統(tǒng)一的分辨率。而且把兩張圖像的特征圖拼接起來進(jìn)去卷積加全連接得到結(jié)果總感覺怪怪的,似乎與找到精確的匹配和置信度沒有很強(qiáng)的聯(lián)系。

3.2. Losses

??pixel-level 匹配損失 Lpixel\mathcal{L}_{pixel}Lpixel? 包含兩項(xiàng):(1)置信得分的分類損失 Lcls\mathcal{L}_{cls}Lcls?,預(yù)測(cè)是不是真的匹配;(2)幾何損失 Lgeo\mathcal{L}_{geo}Lgeo? 用了判斷回歸的準(zhǔn)確性。最終 Lpixel=αLcls+Lgeo\mathcal{L}_{pixel} = \alpha\mathcal{L}_{cls}+\mathcal{L}_{geo}Lpixel?=αLcls?+Lgeo?,其中 α=10\alpha=10α=10

??Sampson distance: 為了得到像素級(jí)匹配,監(jiān)督網(wǎng)絡(luò)尋找圖像對(duì)上對(duì)極幾何一致的對(duì)應(yīng)關(guān)系。它定義了兩個(gè)正確匹配的點(diǎn)應(yīng)該在使用相對(duì)相機(jī)姿態(tài)變換投影到另一個(gè)圖像時(shí)位于它們對(duì)應(yīng)的對(duì)極線上。可以通過 Sampson distance 精確測(cè)量有多少預(yù)測(cè)的匹配滿足對(duì)極幾何。給定一個(gè)匹配 mim_imi? 和由圖像對(duì)的相對(duì)相機(jī)姿態(tài)計(jì)算得到的 fundamental matrix F∈R3×3F\in R^{3\times3}FR3×3,Sampson distance ?i\phi_i?i? 計(jì)算了匹配的幾何誤差:
?i=((PiB)TFPiA)2(FPiA)12+(FPiA)22+(FTPiB)12+(FTPiB)22\phi_{i}=\frac{\left(\left(P_{i}^{B}\right)^{T} F P_{i}^{A}\right)^{2}}{\left(F P_{i}^{A}\right)_{1}^{2}+\left(F P_{i}^{A}\right)_{2}^{2}+\left(F^{T} P_{i}^{B}\right)_{1}^{2}+\left(F^{T} P_{i}^{B}\right)_{2}^{2}}?i?=(FPiA?)12?+(FPiA?)22?+(FTPiB?)12?+(FTPiB?)22?((PiB?)TFPiA?)2?

??其中,PiA=(xiA,yiA,1)TP_{i}^{A}=\left(x_{i}^{A}, y_{i}^{A}, 1\right)^{T}PiA?=(xiA?,yiA?,1)TPiB=(xiB,yiB,1)TP_{i}^{B}=\left(x_{i}^{B}, y_{i}^{B}, 1\right)^{T}PiB?=(xiB?,yiB?,1)T(FPiA)k2\left(F P_{i}^{A}\right)_{k}^{2}(FPiA?)k2?(FPiB)k2\left(F P_{i}^{B}\right)_{k}^{2}(FPiB?)k2? 代表向量第 kkk 項(xiàng)的平方。

??雖然不懂 Sampson distance 的原理,但感覺可以理解為兩個(gè)點(diǎn)的間距,完美匹配則間距為0。

??Classification loss: 當(dāng)一對(duì)匹配 mi=(xiA,yiA,xiB,yiB)m_i=(x_i^A,y_i^A,x_i^B,y_i^B)mi?=(xiA?,yiA?,xiB?,yiB?)?i<θcls\phi_{i}<\theta_{cls}?i?<θcls? 則為正樣本,θcls\theta_{cls}θcls? 為閾值,其他的匹配則為負(fù)樣本。給定預(yù)測(cè)的置信度得分 C\mathcal{C}C 和二分類標(biāo)簽 C?\mathcal{C}^*C?,用交叉熵做損失:
B(C,C?)=?1N∑i=1Nwci?log?ci+(1?ci?)log?(1?ci)\mathcal{B}\left(\mathcal{C}, \mathcal{C}^{*}\right)=-\frac{1}{N} \sum_{i=1}^{N} w c_{i}^{*} \log c_{i}+\left(1-c_{i}^{*}\right) \log \left(1-c_{i}\right)B(C,C?)=?N1?i=1N?wci??logci?+(1?ci??)log(1?ci?)

??其中,權(quán)重 w=∣{ci?∣ci?=0}∣/∣{ci?∣ci?=1}∣w=\left|\left\{c_{i}^{*} \mid c_{i}^{*}=0\right\}\right| /\left|\left\{c_{i}^{*} \mid c_{i}^{*}=1\right\}\right|w={ci??ci??=0}/{ci??ci??=1} 用來平衡正負(fù)樣本數(shù)量。mid-level 和 fine-level 有各自的閾值 θ^cls\widehat{\theta}_{cls}θcls?θ~cls\widetilde{\theta}_{cls}θcls?,求和得到最終的分類損失 Lcls\mathcal{L}_{cls}Lcls?

??Geometric loss: 為了避免訓(xùn)練回歸器去細(xì)化那些不好的匹配,只有當(dāng)父級(jí)匹配的 Sampson distance 小于閾值 θgeo\theta_{geo}θgeo? 才計(jì)算損失。Geometric loss 是優(yōu)化匹配的平均 Sampson distance,同樣mid-level 和 fine-level 有各自的閾值 θ^geo\widehat{\theta}_{geo}θgeo?θ~geo\widetilde{\theta}_{geo}θgeo?,求和得到最終的幾何損失 Lgeo\mathcal{L}_{geo}Lgeo?

??兩個(gè)損失和檢測(cè)的也很像,看到這里也能理解 patch 擴(kuò)展時(shí)的 anchor points。分類損失對(duì)所有 anchor 計(jì)算,檢測(cè)里面用 IoU 閾值判定正負(fù)樣本,這里用 Sampson distance 的閾值,明確了正負(fù)樣本就能正常使用交叉熵了。幾何損失對(duì)應(yīng)檢測(cè)里的 box 回歸損失,同樣是只計(jì)算正樣本的損失,檢測(cè)里通過最小化 IoU,這里最小化 Sampson distance。

4. Implementation Details

??用預(yù)訓(xùn)練的 NC-Net 的匹配層來匹配從 backbone 中提取的特征。細(xì)化網(wǎng)絡(luò)在 MegaDepth 上訓(xùn)練,構(gòu)建了60661個(gè)匹配對(duì)。 mid-level 的閾值 θ^cls=θ^geo=50\widehat{\theta}_{cls}=\widehat{\theta}_{geo}=50θcls?=θgeo?=50,fine-level 的閾值 θ~cls=θ~geo=5\widetilde{\theta}_{cls}=\widetilde{\theta}_{geo}=5θcls?=θgeo?=5S=16S=16S=16,即 local patch 的大小在原圖分辨率上為 16 個(gè)像素。用 Adam 做優(yōu)化器,開始的5個(gè) epoch 學(xué)習(xí)率為 5e?45e^{-4}5e?4,然后用 1e?41e^{-4}1e?4 直到收斂。一個(gè) mini-batch 包含4對(duì) 480×320480\times320480×320 的圖像。

5. Evaluation on Geometrical Tasks

5.1. Image Matching

??第一個(gè)實(shí)驗(yàn)是在 HPatches 上做圖像匹配,檢測(cè)輸入圖像對(duì)之間的對(duì)應(yīng)關(guān)系。跟 D2Net 一樣算了1到10個(gè)像素下的平均匹配精度(mean matching accuracy,MMA),包括匹配和特征的數(shù)量。

??Experimental setup: 用 fine-level 回歸得到的置信得分來過濾異常值,用了兩個(gè)閾值 c=0.5/0.9c=0.5/0.9c=0.5/0.9。為了體現(xiàn)細(xì)化的有效性,與 baseline NCNet[31] 作比較。還和SparseNCNet[30] 作比較,他是和本文工作最像的,也是在 NCNet 的基礎(chǔ)上通過重新定位機(jī)制提高匹配準(zhǔn)確性。除了與幾種使用 NN 搜索匹配局部特征的方法比較外,還考慮了用 SuperGlue[33] 匹配 SuperPoint[5],并研究了他們?cè)谀J(rèn)閾值 c=0.2c=0.2c=0.2 和更高的閾值 c=0.9c=0.9c=0.9 過濾異常值的性能。

??Results: 如 Fig. 4 所示,NCNet 在光照變化但視角不變的情況下效果很好,因?yàn)樗玫氖枪潭ㄉ喜蓸?#xff0c;光照變化的性能體現(xiàn)了它在 patch-level 匹配的效率,視角變化的性能體現(xiàn)它在 pixel-level 匹配的不足。本文的細(xì)化網(wǎng)絡(luò)將 NCNet 預(yù)測(cè)的 patch-level 匹配細(xì)化到 pixel-level 匹配,大大提高視角變化下的精度,并進(jìn)一步提高光照變換下的精度。和所有弱監(jiān)督方法相比,兩個(gè)閾值在光照變化下的結(jié)果都是最好的。對(duì)于視角變化,我們的模型在 c=0.9c=0.9c=0.9 時(shí)效果最好,SparseNCNet 的效果和 c=0.5c=0.5c=0.5 時(shí)的效果差不多。和強(qiáng)監(jiān)督方法相比,光照變化下 c=0.9c=0.9c=0.9 時(shí)的效果優(yōu)于所有方法。視角變化下,我們的方法不如 SuperPoint + SuperGlue,但優(yōu)于其他所有的方法。結(jié)合圖表可以發(fā)現(xiàn),SuperPoint + SuperGlue 和我們的方法用高閾值過濾低置信度的預(yù)測(cè)都可以提高性能。

??Fig. 4:Image Matching on HPatches

5.2. Homography Estimation

??精確的匹配不一定能得到準(zhǔn)確的幾何關(guān)系,因?yàn)樵诠烙?jì)幾何關(guān)系的時(shí)候匹配的分布和數(shù)量也很重要。因此接下來依然在 HPatches 上做單應(yīng)性估計(jì)來評(píng)估網(wǎng)絡(luò)。

??Experimental setup: 和 [5,33,40] 一樣用 corner correctness metric,并給出單應(yīng)性估計(jì)正確的百分比(平均角誤差距離小于 1/3/5 個(gè)像素)。實(shí)驗(yàn)中,用基于 RANSAC 的求解器來估計(jì)幾何關(guān)系,取 c=0.25c=0.25c=0.25 作為置信度閾值。設(shè)置一個(gè)較低的閾值是為了過濾掉非常差的匹配,但盡可能留下更多的信息,然后讓 RANSAC 自己過濾異常值。我們與在匹配任務(wù)中更有競(jìng)爭(zhēng)力的方法進(jìn)行比較,這些方法按監(jiān)督類型分類:強(qiáng)監(jiān)督(full),弱監(jiān)督(weak),混合監(jiān)督(兩種都用)。我們?cè)谧约旱沫h(huán)境下運(yùn)行了所有的方法,并測(cè)量了匹配時(shí)間。

??Results: 從 Tab. 1 中可以看出,NCNet 依然是在光照變化下效果很好。這里驗(yàn)證了在視角變化下,單應(yīng)性估計(jì)的質(zhì)量也能反應(yīng)出 Patch2Pix 對(duì)匹配的改進(jìn)。SparseNCNet 和我們的方法一樣,都是通過尋找匹配的 local patches 在更高分辨率的特征圖上逐步定位更精確的匹配,從而提高匹配精度。但是我們的方法在原圖分辨率上預(yù)測(cè)匹配并且是完全可學(xué)習(xí)的(fully learnable),而他們不可學(xué)習(xí)的(non-learning)方法是在下采樣4倍的分辨率上得到的匹配(這里也不知道該咋翻譯這個(gè)可不可學(xué)習(xí))。我們的方法比他們好了很多,1個(gè)像素內(nèi)的整體精度高了 15%。光照變化下,我們是僅次于 NCNet 的第二優(yōu)方法,但比所有強(qiáng)監(jiān)督的方法都好。在視角變化下,我們是弱監(jiān)督方法中1個(gè)像素內(nèi)精度最高的,并得到了非常接近最優(yōu)的 SuperPoint + SuperGlue 的精度。


??Tab. 1:Homography Estimation on Hpatches

??看到這里發(fā)現(xiàn),雖然 Patch2Pix 并不是在所有的方法里面都達(dá)到了最優(yōu),但是作者按照監(jiān)督策略分了下類,在同類里面達(dá)到效果最好;文字?jǐn)⑹隼锩嬷饕槍?duì) baseline NCNet 和與自己方法比較相似的 SparseNCNet 做比較;像第一個(gè)實(shí)驗(yàn)整體沒到最優(yōu)就避開不談,聊單類的精度,第二個(gè)實(shí)驗(yàn)整體有一項(xiàng)最優(yōu)了就點(diǎn)一下。主要還是超不過 SuperPoint + SuperGlue,這個(gè)個(gè)人感覺是自監(jiān)督,整體的思路方法都很牛。

??Oracle Investigation: 由于我們的方法可以過濾掉錯(cuò)誤的匹配,但不能產(chǎn)生新的匹配,如果 NCNet 不能產(chǎn)生足夠的有效匹配,我們的性能也會(huì)受影響,這可能是在視角變化中性能較低的原因。為了驗(yàn)證這個(gè)假設(shè),我們用 Oracle matcher 替換 NCNet。給定一對(duì)圖像,Oracle 從 GT 中隨機(jī)選擇2.5K個(gè)匹配,然后在以 GT 為中心的 12×1212\times1212×12 范圍中隨機(jī)移動(dòng)匹配點(diǎn)。通過這種方式得到了合成的 match proposals,并且在以他們?yōu)橹行牡?16×1616\times1616×16 local patches 中至少存在一個(gè) GT 匹配,這樣可以測(cè)試我們的細(xì)化網(wǎng)絡(luò)的性能。如 Tab. 1 中所示,Oracle 的匹配精度是很低的,說明這個(gè)任務(wù)還是有一定的挑戰(zhàn)性。而我們的結(jié)果很好,說明細(xì)化網(wǎng)絡(luò)的性能受到了 NCNet 的限制。因此在接下來的實(shí)驗(yàn)中,為了看到我們網(wǎng)絡(luò)的潛力,也會(huì)把 SuperPoint + SuperGlue 作為 baseline 來生成 match proposals。

??這個(gè)實(shí)驗(yàn)有點(diǎn)巧妙,把效果不好的原因歸到了 NCNet 上,并且給了打不過就加入一個(gè)正當(dāng)?shù)睦碛?#xff0c;用 SuperPoint + SuperGlue 做 baseline,可以預(yù)想效果是會(huì)超過 baseline 的。這也體現(xiàn)了本文方法的優(yōu)點(diǎn),在這個(gè)領(lǐng)域的各種方法上運(yùn)用都能有性能提升,用最好的做 baseline 依然提升了,自然也就 SOTA 了。但是此文的創(chuàng)新也就不太算是流程上的創(chuàng)新了,只是提出了一種較好的優(yōu)化方法,可以提升精度,提升別的網(wǎng)絡(luò)的上限;而自身的上限依然受到他人的流程所限制。

5.3. Outdoor Localization on Aachen Day-Night

??在 Aachen Day-Night benchmark (v1.0) 上測(cè)試晝夜光照變化的室外定位的性能。

??Experimental setup: 為了 localize Aachen night-time queries,我們參照了 https://github.com/tsattler/visuallocalizationbenchmark 的評(píng)估設(shè)置。為了同時(shí)評(píng)估白天和夜晚的圖像,我們采用了 https://github.com/cvg/Hierarchical-Localization 中提出的 hierarchical localization pipeline (HLOC)。然后將匹配方法插入到 pipeline 中來估計(jì) 2D 對(duì)應(yīng)關(guān)系。我們給出了特定閾值下 correctly localized queries 的百分比。用 NCNet 和 SuperPoint + SuperGlue 做 baseline 測(cè)試了我們的模型,但是訓(xùn)練只在 NCNet 上。由于 localization pipeline 中的三角測(cè)量階段 (triangulation stage),我們用平均位置間距小于4個(gè)像素的特征點(diǎn)來量化匹配。

??Results: 在 night-time queries 上測(cè)試,由于其他兩個(gè)弱監(jiān)督算法。雖然比 SuperPoint + CAPS 差一些,但它同時(shí)涉及強(qiáng)監(jiān)督和弱監(jiān)督,而我們比其他強(qiáng)監(jiān)督方法要好點(diǎn)或差不多。對(duì)于 full localization on all queries using HLOC,我們證明了比 SuperPoint + NN 要好。通過進(jìn)一步用 SuperGlue 取代 NCNet ,在日間圖像上和 SuperGlue 差不多,并在夜間略超過他。我們的直覺是這是受益于對(duì)極幾何監(jiān)督,可以學(xué)習(xí)更一般的特征,而不會(huì)從訓(xùn)練數(shù)據(jù)中產(chǎn)生偏差,下一個(gè)實(shí)驗(yàn)進(jìn)一步證明這個(gè)觀點(diǎn)。

??Tab. 2:Evaluation on Aachen Day-Night Benchmark (v1.0)

??不太懂這個(gè)實(shí)驗(yàn)的評(píng)估。

5.4. Indoor Localization on InLoc

??在 InLoc benchmark 上測(cè)試室內(nèi)定位的性能,數(shù)據(jù)場(chǎng)景中有大量無紋理和重復(fù)結(jié)構(gòu)的區(qū)域。

??Experimental setup: 和 SuperGlue 一樣,用在 HLOC 中預(yù)測(cè)的對(duì)應(yīng)關(guān)系來評(píng)估匹配算法。我們給出了特定閾值下 correctly localized queries 的百分比。與在 Aachen Day-Night 上的評(píng)估相比,我們的方法由于量化損失了高達(dá)4個(gè)像素的精度,我們采用了更公平的比較在 InLoc 上(不用 triangulation)。這些結(jié)果直接反應(yīng)我們與其他方法結(jié)合時(shí)的細(xì)化效果。除了 SuperPoint + SuperGlue 以外,我們還評(píng)估了其他方法的一些組合,并與他們的最佳結(jié)果對(duì)比。

??Results: Patch2Pix 是弱監(jiān)督中效果最好的,并優(yōu)于除 SuperPoint + SuperGlue 以外的所有方法。注意,在 DUC2 上比 SparseNCNet 好了 14.5%,進(jìn)一步證明了我們的細(xì)化網(wǎng)絡(luò)比他們的手工重新定位方法更有效。表格最后一行,當(dāng)用 SuperPoint + SuperGlue 取代 NCNet 時(shí)取得了最好的整體性能。我們的網(wǎng)絡(luò)可以找到更準(zhǔn)確和魯棒的匹配,從而優(yōu)于 SuperPoint + SuperGlue。這說明對(duì)極幾何監(jiān)督在匹配任務(wù)中很有效。雖然 CAPS 也用這個(gè)對(duì)極損失訓(xùn)練,但它的性能主要依賴特征點(diǎn)檢測(cè)階段。相反,我們是直接處理潛在的匹配繞過了特征點(diǎn)檢測(cè)的錯(cuò)誤。

??Tab. 3:InLoc Benchmark Results

??Generalization: 通過在圖像匹配和單應(yīng)性估計(jì)上評(píng)估 Patch2Pix,與 NCNet 匹配相比有顯著改進(jìn),證明了我們的細(xì)化策略。雖然我們只在 NCNet 上訓(xùn)練,但是從 NCNet 切換到 SuperPoint + SuperGlue 上不需要再訓(xùn)練。這突出了我們的細(xì)化網(wǎng)絡(luò)所學(xué)習(xí)的是從一對(duì) local patches 中預(yù)測(cè)匹配的這種更通用的任務(wù),在不同的場(chǎng)景中都有效,并且與 local patches 的獲取方式無關(guān)。這種通用的匹配能力可以進(jìn)一步改進(jìn)現(xiàn)有方法。如實(shí)驗(yàn)中 SuperPoint + SuperGlue 和 SuperPoint + CAPS 都可以用我們的細(xì)化網(wǎng)絡(luò)來改進(jìn)。

個(gè)人總結(jié)&想法

??選擇這篇文章全文翻譯精度是因?yàn)楹芏嘞敕ú恢\而合,在看了一些特征點(diǎn)檢測(cè)和像素級(jí)對(duì)齊的論文以后,就產(chǎn)生了兩個(gè)想法:

(1)用不同分辨率的特征圖細(xì)化像素級(jí)對(duì)齊的精度
??像素級(jí)對(duì)齊的精度不夠主要也是因?yàn)樵诘头直媛噬暇偷玫搅私Y(jié)果,再用線性插值回到原圖分辨率。這主要也是受到內(nèi)存限制,因?yàn)榭催^的所有相關(guān)方法都離不開計(jì)算特征相似度,一些方法在全圖計(jì)算相似度,那自然特征圖的分辨率會(huì)比較低;有些方法通過一些方式可以縮小搜索范圍,這樣就能讓特征圖分辨率稍微高點(diǎn)。其實(shí)這樣自然就能有一個(gè)思路,先在低分辨率上大致對(duì)齊(patch-level),然后利用層級(jí)特征逐步細(xì)化,細(xì)化的時(shí)候搜索范圍也比較小。不過事實(shí)上這樣搞計(jì)算量也是很大的,做了些簡(jiǎn)單的實(shí)驗(yàn)效果也不太理想。印象中 Dual-resolution[13] 大概就是這樣的做法。

(2)利用目標(biāo)檢測(cè)網(wǎng)絡(luò)來檢測(cè)特征點(diǎn)
??起初的想法是把特征點(diǎn)當(dāng)做目標(biāo),譬如設(shè)定是個(gè)全是 11×1111\times1111×11 大小的單類目標(biāo)檢測(cè)任務(wù),直接套用現(xiàn)成的網(wǎng)絡(luò)就能訓(xùn)練。但是這樣的問題在于 GT 怎么來,看過 SuperPoint 就覺得特征點(diǎn)檢測(cè)的自學(xué)習(xí)似乎只能這樣做。自學(xué)習(xí)流程大致是先人工生成數(shù)據(jù)來訓(xùn)練網(wǎng)絡(luò),然后在真實(shí)數(shù)據(jù)上跑出一些結(jié)果,對(duì)這些結(jié)果進(jìn)行篩選優(yōu)化當(dāng)做 GT 繼續(xù)訓(xùn)練網(wǎng)絡(luò),不斷迭代來優(yōu)化網(wǎng)絡(luò)。這里的難點(diǎn)有兩個(gè):(1)第一個(gè)人工生成的種子數(shù)據(jù),這個(gè)數(shù)據(jù)一般不太自然但是絕對(duì)準(zhǔn)確,除了 SuperPoint 的方法想不到什么更好的做法;(2)如何過濾網(wǎng)絡(luò)的結(jié)果作為新的 GT,從人工數(shù)據(jù)轉(zhuǎn)到自然數(shù)據(jù)以后會(huì)有很多的噪聲,噪聲不能很好的過濾會(huì)導(dǎo)致網(wǎng)絡(luò)越來越差。
??另外,用這種強(qiáng)監(jiān)督的模式訓(xùn)練有個(gè)問題,那就是目標(biāo)檢測(cè)網(wǎng)絡(luò)的目標(biāo)損失,對(duì)于一個(gè) anchor 是否存在目標(biāo)是根據(jù) GT 做的一個(gè)交叉熵?fù)p失,這樣會(huì)導(dǎo)致網(wǎng)絡(luò)是在學(xué) GT 標(biāo)定的點(diǎn),而不會(huì)去發(fā)現(xiàn)潛在的點(diǎn)。
??另一種數(shù)據(jù)類型是只知道兩幅圖像的像素級(jí)對(duì)應(yīng)關(guān)系,譬如利用一些深度信息或者是人工做單應(yīng)性變換等,這種數(shù)據(jù)可以訓(xùn)練網(wǎng)絡(luò)提取特征描述符,但是比較難提取特征點(diǎn),很多都是和 D2-Net 一樣人工設(shè)計(jì)一種規(guī)則,特征向量滿足一定要求則認(rèn)為是特征點(diǎn)。通常創(chuàng)新點(diǎn)會(huì)在優(yōu)化網(wǎng)絡(luò)提取特征的過程和這個(gè)規(guī)則的設(shè)計(jì)。

1. Patch2Pix 方法總結(jié)

??捋一下 Patch2Pix 的方法。輸入一對(duì)圖像,用個(gè) ResNet-34 提取特征,得到4個(gè)層級(jí)輸出的特征圖 f1,f2,f3,f4f_1,f_2,f_3,f_4f1?,f2?,f3?,f4?f0f_0f0? 代表原圖像。把 f4f_4f4? 輸入到 NCNet 的匹配層中,得到了一些匹配。先跳過擴(kuò)展機(jī)制,以一對(duì)匹配點(diǎn)為例,把以這一對(duì)點(diǎn)為中心的 S×SS\times SS×S 局部區(qū)域拿出來作為一對(duì) local patches,并取出 patch 對(duì)應(yīng)的特征圖,即把 f0,f1,f2,f3f_0,f_1,f_2,f_3f0?,f1?,f2?,f3? 連在一起,得到 PFiA,PFiBPF_i^A,PF_i^BPFiA?,PFiB?。再把兩個(gè)特征圖連在一起送到細(xì)化網(wǎng)絡(luò)中,細(xì)化網(wǎng)絡(luò)就是做了些卷積和全連接的操作,輸出兩個(gè)坐標(biāo)的偏移量和匹配的置信度(這些操作看第3章的圖2會(huì)比較清楚)。可以感受到上一輪的匹配結(jié)果就是下一輪的 anchor。
??擴(kuò)展機(jī)制就是原本得到一對(duì)點(diǎn)的匹配 (p1,p2)(p_1,p_2)(p1?,p2?),把它轉(zhuǎn)化成 p1p_1p1?p2p_2p2? 周圍4個(gè)點(diǎn)匹配, p2p_2p2?p1p_1p1? 周圍4個(gè)點(diǎn)匹配,這樣一來一對(duì)匹配轉(zhuǎn)為8對(duì)匹配。這樣就擴(kuò)大了搜索匹配的范圍,并且因?yàn)閿U(kuò)展的范圍比較小,(p1,p2)(p_1,p_2)(p1?,p2?) 的匹配結(jié)果也在搜索范圍內(nèi)。其實(shí)也就是增加了 anchor 的數(shù)量。
??定義好了輸入輸出就看怎么設(shè)計(jì)損失來訓(xùn)練了,而損失是依賴數(shù)據(jù)集的形式的。這里用的對(duì)極幾何不是很了解,但總之可以衡量兩個(gè)點(diǎn)的匹配度。這樣就能衡量 anchor 本身的匹配度,用閾值決定這個(gè) anchor 是不是正樣本(對(duì)應(yīng) IoU 判斷 anchor 中有沒有目標(biāo)),正樣本的話計(jì)算輸出坐標(biāo)偏移的損失(對(duì)應(yīng)檢測(cè)中有目標(biāo)的 anchor 才算 xywh 的損失)。

2. 疑問&想法

??和實(shí)驗(yàn)部分說的一樣,最終的效果很大程度受了 NCNet 的影響,也就是根本的匹配機(jī)制沒有變,而是在這基礎(chǔ)之上提高匹配的精度,不能挖掘出別的潛在的匹配。當(dāng)然,要從根本上有創(chuàng)新是很難的。
??細(xì)化網(wǎng)絡(luò)按照論文中說的就是卷積+全連接,而輸入的是拼接的兩個(gè)區(qū)域特征,通常來說是用兩個(gè)區(qū)域的特征相似度、特征距離來映射出匹配關(guān)系,這邊直接用兩個(gè)區(qū)域的特征感覺可解釋性不強(qiáng)。后面有空看代碼的話再補(bǔ)充一些實(shí)施細(xì)節(jié)。

總結(jié)

以上是生活随笔為你收集整理的Patch2Pix(CVPR 2021)特征点检测与匹配论文精读笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。