【论文简述】MVS2D: Efficient Multi-view Stereo via Attention-Driven 2D Convolutions(CVPR 2022)
一、論文簡述
1. 第一作者:Zhenpei Yang
2. 發表年份:2022
3. 發表期刊:CVPR
4. 關鍵詞:MVS、注意力、單目、深度學習
5. 探索動機:現在的方法比較慢。
While such end-to-end learning of planesweeping stereo advances public benchmarks’ accuracy,they are typically very slow to compute.
6. 工作目標:如何結合單視圖深度線索和多視圖深度線索。
- Single-view depth prediction roots in learning feature representations to capture image semantics, which is orthogonal to correspondence-computation in multi-view techniques.
- A natural question is how to combine single-view depth cues and multi-view depth cues.
7. 核心思想:提出了MVS2D,結合了單視圖和多視圖深度估計的優勢。核心貢獻是提出了一種注意力機制,聚合了參考圖像上每個查詢像素沿極線的特征。該模塊從參考圖像中獲得了豐富信息。
- 注意力機制具有兩個特征:1)該網絡只包含2D CNNs。2)依靠2D CNNs表達能力,該網絡無縫加入了單視圖特征表示和多視圖特征表示。因此,與最先進的算法相比,MVS2D是最高效的方法。
- MVS2D的優勢來自中間特征表示的較早的融合。結果是中間特征表示包含豐富的3D信號。此外,MVS2D提供了足夠的空間,可以設計注意力模塊的位置來處理不同的輸入。例如,當輸入相機位姿不準確時,對應的像素偏離輸入參考圖像上的極線。當在編碼器-解碼器網絡上安裝多尺度注意力模塊,MVS2D自動檢測和校正對應,下采樣的參考圖像中的對應像素更靠近極線。
8. 實驗結果:由于MVS2D僅構建在2D卷積上,它比NAS快48倍,比DPSNet快39倍,比MVSNet]快10倍,比FastMVSNet快4.7倍,比最近的最快方法PatchmatchNet快近2倍。此外,該算法可以產生精確的深度估計和3D重建,在具有挑戰性的基準測試ScanNet、SUN3D、RGBD和經典的DTU數據集上獲得了最先進的結果,在不準確的相機姿勢設置上也優于其他所有算法。定性上,與最近期方法相比,MVS2D有助于生成更高質量的3D重建輸出。下圖為ScanNet上的FPS和AbsRel的比較。模型顯著減少了推理時間,同時保持了最先進的準確性。
9.論文&代碼下載:
https://openaccess.thecvf.com/content/CVPR2022/papers/Yang_MVS2D_Efficient_Multi-View_Stereo_via_Attention-Driven_2D_Convolutions_CVPR_2022_paper.pdf
https://github.com/zhenpeiyang/MVS2D
二、實現過程
1. MVS2D概述
本文目標是估計源圖像I0∈h×w×3的深度圖,給定具有相同大小的周圍視圖作為參考圖像{Ii},源圖像和參考圖像共享內參K。源圖像和參考圖像之間相對位姿為Ti = (Ri|Ti)。使用2D UNet結構F對I0進行深度預測,同時通過極線自注意力模塊輸入使用G提取的多視圖線索。虛線箭頭只存在于ours -robust模型中。極線自注意力模塊可以輕松嵌入到大多數2D CNNs中。
2.?網絡設計
該方法與大多數單視圖深度預測網絡類似,逐步計算源圖像的多尺度激活圖,并輸出單個深度圖。不同之處在于,某些中間激活圖結合了前一個激活圖應用2D卷積后的輸出和聚合多視圖深度線索的注意力模塊的輸出。該注意力模塊將源圖像的每個像素與參考圖像上相應的極線像素進行匹配。匹配過程都使用了學習到的源圖像和參考圖像的特征激活。輸出使用與源圖像的激活圖相匹配的學習的深度碼進行編碼。
從形式上講,目標是學習一個具有L層的前饋網絡F。用Fj∈hj×wj×mj表示第j層的輸出,其中mj是特征維數。第一層F1∈ h1×w1×3表示輸入,最后一層FL∈hL×wL表示包含深度預測的輸出層。在兩個連續的層之間是一個普通卷積Cj:hj×wj×mj→hj×wj×mj+1(包含如下采樣,上采樣和最大池化)和一個可選的注意力模塊Aj:hj×wj×mj → hj×wj×mj:
該網絡設計的另一個特點是卷積Cj隱式地聚合了在相鄰像素處提取的多視圖深度線索。這種方法促進了共享同一極線或具有相鄰極線的相鄰像素之間的一致對應關系。
3. 極線注意力模塊
繼續定義Aj(p0),j對每個像素p0,它由兩部分組成:
Aep j (p0,{Ii})使用可訓練深度碼來編碼p0與參考圖像之間的匹配結果。A0 j:由一個恒等映射和一個可訓練的線性映射組成,該映射轉換了Fj中與p0相關的特征。
Aep j (p0,{Ii})使用了p0的極線上下文。它由參考圖像上p0的極線上的采樣組成。這些采樣是通過對p0的深度值d0采樣,然后應用單應性變化得到的。用pk i表示第i個參考圖像上的第k個采樣。
為了匹配p0和pk i,我們引入了一個與Fjmax具有相同結構(除了注意力模塊)的特征提取網絡G,其中jmax是f的任何注意力模塊的最大深度。Gj(I0, p0)∈Rmj和Gj(Ii, pki)∈Rmj分別表示p0和pk i的提取特征。遵循標度點積注意的實踐,引入兩個額外的可訓練線性映射fj 0: Rmj→Rmj和fj ref: Rmj→Rmj對提取的特征進行變換。在此設置下,定義p0和pk i之間的匹配分數為:
它仍然是1)在參考圖像中出界的模型樣本,2)將權重wik j與卷積Cj的輸入進行連接。為此,首先引入對應于第k個深度采樣的可訓練掩碼cjk∈Rmj。然后引入vj in∈Rmj和vj out∈Rmj,分別是內部采樣和外部采樣的可訓練碼,定義:
為了增強Gj的表達能力,進一步包含了一個可訓練的線性映射A1j,它只依賴于p0的特征,而不依賴于匹配結果,定義:
?其中N是softmax歸一化函數。將(5)代入(2),最終得到的注意力模塊為:
?
不同層的注意力模塊有不同的權重。式3可視為源像素與對應候選像素之間的相似度得分。下圖可視化查詢像素的學習的注意力分數。參考圖像上的真實對應像素沿極線具有較大的學習權重。
圖3. 注意力分數的可視化。左:帶有查詢像素的源視圖。右圖:帶有候選像素的參考視圖,其中不透明度為學習的注意力得分。
4. 魯棒MVS的注意力設計
由于注意力模塊假設對應的像素位于極線上,MVS2D的精度取決于參考圖像與源圖像之間的相對姿態的精度。當輸入姿態準確時,實驗表明在F的第二層有一個注意力模塊就足夠,因此實現了高效的多視圖立體網絡。當輸入位姿不準確時,通過在不同的F層上加上注意力模塊來解決這個問題。這種方法確保相應的像素在粗分辨率下足夠接近這些分辨率的極線,并提高了性能。
5. 實驗
5.1. 數據集
DTU:盡管該方法為多視圖深度估計而設計,但還在DTU數據集上進行驗證了驗證。
ScanNet:該數據集包含807個不同場景,從不同的相機軌跡獲得圖像序列。采樣了86324張三元圖像(一張源圖像和兩張參考圖像)用于訓練,666張三元圖像用于測試。設置確保測試圖像的場景不包含在訓練集中。
DeMoN:該數據集用于多視圖深度估計的數據集,由三個數據源組成:SUN3D,RGBD, Scenes11。SUN3D和RGBD包含真實的室內場景,而Scenes11是合成的。SUN3D總共有79577訓練對,RGBD為16786,Scenes11為71820。
5.2. 評估指標
效率。在推理過程中,比較了該方法與基線方法每秒的幀數(FPS)。
深度的準確性。使用深度估計的常用指標。請注意,與單目深度估計評估相比,在評估前不考慮深度尺度。正確預測尺度的能力將使該方法更加適用。
場景重建質量。遵循PatchmatchNet[將每個視圖的深度圖融合到3D模型中。
噪聲輸入姿態下的魯棒性。在訓練過程中擾動輸入的相對位姿Tj,并在表8中報告ScanNet測試集上的模型性能。
5.3. 實現細節
基于Pytorch實現。對于ScanNet和DeMoN,簡單地優化了預測深度和實深度之間的L1損失。對于DTU,我們引入一個簡單的修改,同時訓練一個置信度預測。使用Adam優化器。
5.4. 效率
- Ours-mono:沒有極線注意力模塊,因此相當于單視圖深度估計。
- Our-mono *:去除全局尺度。
- Ours-robust:多尺度極線注意力模塊應用于F。
- Ours:只在F的第二層應用極線注意力模塊。
FPS (V)即使用V張圖像進行預測,僅適用于多視圖方法。使用單個Nvidia V100 GPU來測量FPS。
DTU數據集。在三種輸入分辨率下顯示FPS(幀每秒),使用一個源圖像和4個參考圖像。
5.5. 與先進技術的比較
ScanNet等:SOTA
DTU:使用4個參考視圖和96個深度均勻,在逆深度空間中[1/935,1/425],SOTA。
5.6.?噪聲姿態下的魯棒性比較
在ScanNet上,不同方法在噪聲輸入下的性能。當輸入位姿準確時,Ours-robust(多尺度線索)和our(單尺度線索)表現相似。當輸入姿態有噪聲時,多尺度聚合表現更好,具有魯棒性。大多數方法在噪聲輸入下都有顯著的性能下降。
5.7. 深度編碼的消融研究
測試了四種深度代碼類型?!癠niform”是一種健全檢查,對所有深度假設使用相同的編碼向量。換句話說,網絡并沒有從參考圖像中提取有用的信息?!熬€性”通過將基碼向量與相應的深度值進行縮放來改進統一編碼?!坝嘞摇贝a與[43]中使用的相同?!皩W習”代碼被端到端優化。端到端學習的碼會帶來顯著的性能提升。一種解釋是,這些學習的碼可以適應源圖像的單視圖特征表示。
?5.8. 局限性
網絡的訓練方式很好地適應了數據分布,這可能使它很難泛化到非分布的測試數據。在未來,希望通過開發魯棒的訓練損失來解決這個問題。另一個限制是所提出的注意力機制沒有明確地模擬同一極線上不同像素之間的一致性。計劃是通過開發新的注意力機制來明確地執行這些約束來解決這個問題。
總結
以上是生活随笔為你收集整理的【论文简述】MVS2D: Efficient Multi-view Stereo via Attention-Driven 2D Convolutions(CVPR 2022)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 逆矩阵 求矩阵的逆
- 下一篇: 中兴V889DRoot后可删和不可删