









摘" 要: 針對當前多視角立體視覺方法在低紋理、重復紋理等復雜區域上的重建完整度低的問題,提出一種基于路徑聚合網絡的多視角立體視覺方法PathMVSNet。PathMVSNet在常規的特征金字塔網絡后增加一條自底向上的路徑聚合結構,強化底層定位特征在網絡中的傳遞,并將多尺度特征圖經過可變形卷積層和卷積注意力機制模塊增強特征;采用級聯的代價體構建方式,由粗到細的進行深度預測;多視角特征體通過可學習的自適應權重網絡對特征體進行加權聚合得到代價體。PathMVSNet在DTU數據集上進行訓練和評估,與CasMVSNet進行比較實驗,在平均完整度誤差(Comp)、平均準確度誤差(Acc)、平均整體性誤差(Overall)上分別降低了9.3%、7.9%、8.6%。通過消融實驗證明,PathMVSNet可以有效提升重建模型的完整度和整體質量。
關鍵詞: 三維重建; 多視角立體; 深度學習; 路徑聚合網絡; 深度預測; 代價體構建
中圖分類號: TN919?34; TP391" " " " " " " " " " 文獻標識碼: A" " " " " " " " " " "文章編號: 1004?373X(2024)17?0123?06
Deep learning multi?view stereo 3D reconstruction algorithm
based on path aggregation network
HU Jingyu, ZHANG Bin
(School of Electronic Engineering and Automation, Guilin University of Electronic Technology, Guilin 541004, China)
Abstract: In view of the low level of reconstruction completeness in the complex areas with low texture and repeated texture, an MVS (multi?view stereo) method PathMVSNet on the basis of path aggregation network (PANet) is proposed. After the conventional feature pyramid network, a bottom?up path aggregation structure PathMVSNet is incorporated to reinforce the transmit of underlying localization features in the network. In addition, the multi?scale feature map is subjected to feature enhancement by deformable convolutional layers and convolutional block attention module (CBAM). A cascading cost volume construction is adopted for depth prediction from coarse to fine. Additionally, the multi?view feature volume is weighted and aggregated by a learnable adaptive weighting network to obtain the cost volume. The PathMVSNet is trained and evaluated on the dataset DTU. Experiments are operated to make comparative analysis between the CasMVSNet and the PathMVSNet. The average completeness error, average accuracy error and average overall error of the PathMVSNet are reduced by 9.3%, 7.9% and 8.6%, respectively. The ablation experiments prove that the PathMVSNet can enhance the level of completeness and overall quality of the reconstruction model effectively.
Keywords: 3D reconstruction; MVS; deep learning; PANet; depth prediction; cost volume construction
0" 引" 言
隨著自動駕駛、虛擬現實(AR/VR)、醫學影像等領域對于場景或物體的三維模型需求增加,三維重建技術也在飛速發展。而多視角立體視覺(Multi?view Stereo, MVS)三維重建是一種從不同視角的圖像序列中重建出場景的三維模型。
多視角立體任務是指給定一系列圖像以及其對應的矯正后相機參數,對圖像進行深度預測,由預測出的深度圖來融合重建出場景的密集點云模型。因此多視角立體算法研究的重點是生成每幅圖像精確的深度圖,以進行深度圖融合生成稠密三維點云模型。傳統多視角立體算法依賴手工設計的特征算子提取特征,在理想朗伯體反射模型下可以有較好的重建效果,但是在非朗伯體區域以及低紋理、重復紋理區域表現較差,重建不完整。隨著深度學習在計算機視覺領域多項任務中取得卓越成果,研究人員開始將具備優異特征提取能力的卷積神經網絡引入多視角立體任務。
近年來基于深度學習的MVS算法主要是通過卷積神經網絡來預測輸入圖像的深度圖。借助卷積神經網絡提取圖像的全局信息和局部信息,使得在多視角視圖間的特征匹配具有強魯棒性,例如文獻[1]提出通過卷積神經網絡和3D?UNet預測每一幅視圖的深度圖像。文獻[2]將MVSNet應用于空間目標,為在軌服務衛星提供三維重建。文獻[3]通過引入雙U?Net網絡結構進行特征提取以及多尺度的代價體信息共享模塊來提升深度圖的重建質量。
相較于傳統的多視角立體算法,基于深度學習方法最終的三維模型在完整度和精度上有顯著的提升,且大幅減少了深度預測所需的時間。文獻[4]提出了SurfaceNet算法,是第一個基于深度學習的多視角立體視覺的端到端學習框架,在多視角序列圖像以及對應的相機參數作為輸入下直接到3D模型作為輸出。文獻[5]提出了DeepMVS,通過深度卷積神經網絡可以對任意數量的無序多視角圖像做視差估計。Yao等人提出了MVSNet,通過可微的單應變換生成源圖像和參考圖像的特征體,并對所有特征向量應用方差聚合成代價體,將代價體借助3D U?Net回歸預測深度,但通過3D CNN進行代價體正則化存在內存消耗較大的缺點,難以應用于高分辨率圖像。文獻[6]基于原有方法進行改進從而提出了R?MVSNet,將對代價體的正則化從原有的3D CNN改為GRUs,以順序的方法來正則化代價體,改善了原方案內存消耗較高的缺點,但帶來了并行性較差、運行效率較低等問題。文獻[7]提出的Cas?MVSNet通過引入一種由粗到細的深度預測方式來降低對代價體正則化時的復雜度,且有效降低了內存占用。文獻[8]提出一種用于多視圖深度估計的新型注意力感知MVS網絡(AttMVS),通過注意力增強的匹配置信體提高了匹配的魯棒性。文獻[9]通過對原始圖片進行下采樣構建圖像金字塔,以此由粗到細地構建代價體金字塔,得到較緊湊和輕量的網絡。文獻[10]將MVS表述為一個二分搜索問題,設計了一種高效的廣義二分搜索網絡,降低了3D代價體的內存使用。基于深度圖的MVS方法在計算效率和靈活性、魯棒性上的顯著優勢使其逐漸成為MVS的主流方法。
本文結合其他基于學習的多視角立體視覺方法,提出了新的基于深度學習的多視角立體視覺方法——PathMVSNet。其利用路徑聚合特征網絡,通過加入自底向上的路徑聚合結構,縮短了淺層特征的信息傳播路徑,加強了網絡底層特征的利用率,同FPN(Feature Pyramid Network)[11]一樣,輸入視圖最終會得到多尺度的特征圖。由于常規卷積神經網絡在處理大型且未知形狀變換場景時存在固有缺陷,而這種情況在多視點立體視覺任務中較為普遍,因此本文采用可變形卷積層(DCN)[12]對提取出來的多尺度特征進行處理,并對所有視圖的特征體應用方差聚合成一個代價體,以更加有效地捕捉場景特征。為了更充分地利用特征信息,本文方法在DCN之后引入了卷積注意力機制模塊(CBAM)[13],以優化特征圖的空間和通道維度,并進一步提高重建的完整性和精確性。在構建代價體時,考慮到MVS任務的特殊性,本文引入了聚合權重網絡來自適應地融合多個視圖特征體[14],以最大化地利用各個視圖的貢獻。
1" 方法架構
本節詳細闡述了PathMVSNet的主要內容,按照基于學習的MVS方案的通用流程進行闡述。圖1展示了網絡的整體架構。
1.1" 特征提取
圖2展示了PathMVSNet的特征提取網絡。與很多基于學習的MVS方法不同的是,本文方法在特征的提取階段引入了路徑聚合策略。許多MVS方法采用特征金字塔提取特征,通過對高層特征圖的上采樣操作后再與低層次特征信息進行橫向疊加來得到多尺度的特征信息,且由FPN得到的不同尺度特征圖可進行后續由粗到細的代價體構建。文獻[15]在實例分割中的研究證明,路徑聚合策略可以縮短低級和高級特征之間的距離,實現可靠的信息傳遞,利用低層準確定位特征增強特征金字塔網絡。圖2的a)部分為特征提取主干網絡,采用特征金字塔網絡(FPN)結構作為圖像多尺度特征提取手段。[{C1,C2,C3}]代表在FPN中自底向上路徑中提取出的不同尺度特征信息,通道數依次為8、16、32。FPN自底向上的特征提取過程由三層不同尺度的殘差模組構成,每個殘差模組由殘差塊構成。特征信息在自底向上過程中,通道數不斷翻倍,同時每一層第一個殘差塊步長為2,使特征圖尺寸逐層減半。自下而上地提取出不同尺度的特征信息,經過圖2的d)部分所示的橫向連接,完成自頂向下的特征融合。具體地,將高層語義特征通過雙線性插值上采樣還原,與自底向上帶有更準確定位的低層細節特征進行逐像素加法融合(低層特征信息[Ci]在融合之前需要經過一層1×1卷積層進行通道對齊)。最后,在融合之后的特征圖上經過一個3×3的卷積層得到[{P1,P2,P3}],使通道數與[{C1,C2,C3}]對齊。
1.1.1" 路徑聚合結構
在FPN結構中,高層的語義信息通常會因為網絡層傳輸喪失一些低級的細節信息,而低級別的細節特征信息有助于提升三維重建任務的準確性。特征信息隨著網絡結構不斷的卷積和上采樣,對于低級別特征的保留會逐漸困難,故本文方法引入了路徑聚合策略來提升對低級特征的利用率。PathMVSNet在FPN之后加上了如圖2中b)部分所示的自底向上路徑增強結構,如同[C3]與[P3]完全等價,[N1]也與[P1]完全等價。在自底向上的路徑增強結構中,頂層特征[Ni]不斷下采樣并與分辨率相同的[Pi]借助圖3所示的橫向連接實現特征融合。
如圖3右側所示,在特征融合過程中,借助步長為2的殘差塊對頂層特征[Ni]進行卷積,完成下采樣且調整其特征通道數與[Pi+1]對齊,再通過橫向連接將特征圖[Pi+1]與下采樣特征圖逐元素相加。融合后的新特征圖由另一層步長為1的3×3卷積層處理得到[Ni+1]。
經由路徑增強結構融合得到的多尺度特征圖[{N1,N2,N3}],相比于常規的特征金字塔網絡提取的多尺度特征圖[{P1,P2,P3}]有更豐富的低層定位細節特征信息,與簡單的對原始圖像或卷積神經網絡特征圖進行密集匹配相比,經由路徑聚合特征提取架構的特征圖顯著提高了重建質量。
1.1.2" 可變形卷積模塊
傳統卷積層在處理目標場景特征時,對場景或目標的形變不敏感,故若目標在多個視角中發生形變或姿態發生變化,傳統的卷積無法準確地提取出目標的特征。在MVS任務中,不同角度下的目標形態會有差異,且不同視角的圖像需要借助可微的單應變換轉換到共同的參考視角,使得目標進一步發生形變而更加復雜,加入可變形卷積[12]提高網絡對不同形狀和姿態的目標適應能力。
如圖4所示,可變形卷積在傳統卷積基礎上,通過另外的卷積網絡學習偏移量(圖4中上部箭頭),將偏移量應用于卷積核原感受野,即得到不規則的可變形感受野。
DCN不會改變特征圖的通道數,最終在三個尺度下輸出的特征圖通道數從上到下依次為32、16、8。
1.2" 特征體聚合與代價體回歸
采用級聯的代價體構建方式,由可微的單應變換得到各個視圖的特征體[ViNi=1],為考慮多個視圖以及適應任何數量的視圖,將多個特征體聚合成單個代價體[C]。PathMVSNet采用自適應聚合[14]來考慮不同視角像素的貢獻:
[C=1N-1i=2NWi⊙Vi-V12] (1)
式中:“[⊙]”為逐元素乘法;將源視圖特征體與參考視圖特征體逐元素相減,差取平方后,送入可學習的權重生成網絡得到[Wi]。
采用式(1)將特征體[ViNi=1]融合為一個代價體[C],以此完成代價體的構建。而為完成對參考視圖的深度估計,需要將代價體[C]進行回歸得到用于深度預測的概率體[P]。
本方案采用了標準的3D?Unet網絡作為代價體回歸網絡,三個階段的代價體回歸網絡參數并不共享,以此來盡可能提高各個階段的深度預測精度。代價體回歸網絡最終輸出一單通道代價體,沿著深度維度做softmax操作進行概率歸一化得到概率體[P],其對應參考圖像像素點在各個深度下的概率表達。對概率體[P]沿著深度方向計算期望值,即計算像素點在各個深度假設下的期望值,得到當前階段的深度預測。
1.3" 損失函數
不同的深度預測方式很大程度會影響損失函數的選擇,而對概率體做概率加權可以認為是對深度估計做回歸處理,故為了預測更平滑的深度圖,PathMVSNet在各階段選擇smooth [L1]損失函數:
[smooth L1=0.5(d-d)2,d-dlt;1d-d-0.5," "d-d≥1] (2)
式中:[d]與[d]分別是預測深度和真實深度。而對于[k]階段的級聯代價體構建,會有[k]組不同分辨率的深度預測和損失[Lk]。對不同階段的損失[Lk],賦予不同的權重[λk],總損失函數定義為:
[Loss=k=1Nλk?Lk] (3)
對于低分辨率階段粗略的深度預測,其權重[λ]相對較低。而隨著分辨率的提高,對其深度預測的要求更高,因此隨著階段的提升,其權重[λ]也越高。
2" 實驗及結果分析
本文方法在公開數據集DTU[16]上進行訓練和評估。使用深度學習框架PyTorch 1.13.0以及Python 3.8實現該模型。實驗的硬件平臺是Windows 10操作系統的臺式計算機,其主要硬件配置為:AMD Ryzen7 5700X CPU,NVIDIA GeForce GTX 3080Ti,16 GB的DDR4內存。
DTU數據集是一個主流的室內MVS數據集,包含7種不同光照條件,49個拍攝角度,128個不同場景。每幅視圖分辨率為1 600×1 200。同時為方便評估,數據集提供了真值點云用以評估重建效果。DTU數據集的三個主要評估指標分別是平均準確性誤差(Acc)、平均完整性誤差(Comp)、平均整體誤差(Overall)。其中Overall值為Acc與Comp的均值。
2.1" 實驗細節
實驗設置輸入圖片的分辨率為640×512,為方便與其他方法進行對比,設置輸入視圖數[N]為3。為完成由粗到細的深度預測,三個階段的深度假設平面數[Dk]分別為48、32、8,深度間隔衰減系數為0.5。三個階段損失函數的權重分別為0.5、1、2。
2.2" 評估結果
本節將PathMVSNet在DTU數據集上的重建結果與其他傳統的或基于學習的MVS方法一起進行比較,分別從評估指標和點云效果兩方面來比較重建效果。結果表明,PathMVSNet在完整率和整體誤差上領先于其他方法。
表1為PathMVSNet與其他方法在DTU數據集上的評估指標對比,其中前4行為傳統MVS方法,從CasMVSNet開始為基于學習的MVS方法。從表1中可以看出,PathMVSNet在平均完整率上領先于傳統算法,且在基于學習的MVS算法中處于領先。在總體指標上,PathMVSNet也領先于其他的方法。
圖5展示了另外兩種典型的MVS方法與PathMVSNet在DTU數據集上部分場景的重建效果,三種方法都在同一實驗設備上完成訓練和評估,且輸入視圖數都為3。從4個場景中黑框部分可以看出,PathMVSNet對于場景細節的重建完整度更高,更能保留場景細節。在scan29中,PathMVSNet對店鋪招牌的內容重建的更清晰細致;在scan34中,PathMVSNet對磚塊邊緣和面的重建更完整;在scan75中,本文方法在黑框中的離散點更少。在scan48中,本文方法對框中圖案的重建更清晰完整,且離散點較小。
從以上4個典型的場景在三種不同方法的重建點云模型可以看出,PathMVSNet相較于另外兩種重建方法,在重建結果中離散點更少,對于場景的重建完整度更高。
2.3" 消融實驗
為驗證本文方法和策略的有效性,本節通過消融實驗來證明本文方法對于重建質量有明顯的改進。以CasMVSNet為基準,在DTU數據集上進行訓練和評估。為公平比較,所有的實驗都在同一臺實驗設備上進行,且輸入視圖數都為3,參數設置相同。表2展示了對基準模型CasMVSNet逐步添加改動后的指標變化效果,其中“PA”為路徑聚合特征提取網絡,“AA”為特征體的自適應聚合方法。從消融實驗中可以看出,路徑聚合結構的特征提取網絡可以有效地提高MVS方法在重建任務中的整體表現。
3" 結" 語
本文提出了PathMVSNet,這是一種基于學習的多視角立體視覺方法,通過基于路徑聚合的特征提取網絡提取多尺度特征,以級聯的代價體構建方式,由粗到細地進行深度預測。路徑聚合特征提取網絡可以使得提取的特征在保留高級抽象特征的同時,強化低級定位特征在網絡中的傳遞,并通過可變形卷積和卷積注意力機制來強化特征。將PathMVSNet在主流的室內數據集DTU上完成了訓練和評估,在平均完整率上達到了0.342,平均準確率達到了0.362,平均整體評估達到0.352,其中平均完整率和總體指標在眾多視角立體視覺算法中領先。實驗表明,引入的路徑聚合特征提取網絡以及其他策略可以有效提高多視角立體視覺任務的重建完整度和總體質量。
注:本文通訊作者為張斌。
參考文獻
[1] YAO Y, LUO Z X, LI S W, et al. MVSNet: Depth inference for unstructured multi?view stereo [C]// Proceedings of the European Conference on Computer Vision (ECCV). Heidelberg, Germany: Springer, 2018: 785?801.
[2] 王思啟,張家強,李麗圓,等.MVSNet在空間目標三維重建中的應用[J].中國激光,2022,49(23):176?185.
[3] 劉萬軍,王俊愷,曲海成.多尺度代價體信息共享的多視角立體重建網絡[J].中國圖象圖形學報,2022,27(11):3331?3342.
[4] JI M Q, GALL J, ZHENG H T, et al. SurfaceNet: An end?to?end 3D neural network for multiview stereopsis [C]// Proceedings of the IEEE International Conference on Computer Vision. New York: IEEE, 2017: 2326?2334.
[5] HUANG P H, MATZEN K, KOPF J, et al. DeepMVS: Learning multi?view stereopsis [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2018: 2821?2830.
[6] YAO Y, LUO Z X, LI S W, et al. Recurrent MVSNet for high?resolution multi?view stereo depth inference [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2019: 5525?5534.
[7] GU X D, FAN Z W, ZHU S Y, et al. Cascade cost volume for high?resolution multi?view stereo and stereo matching [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2020: 2492?2501.
[8] LUO K Y, GUAN T, JU L L, et al. Attention?aware multi?view stereo [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2020: 1587?1596.
[9] YANG J Y, MAO W, ALVAREZ J M, et al. Cost volume pyramid based depth inference for multi?view stereo [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2020: 4876?4885.
[10] MI Z X, DI C, XU D. Generalized binary search network for highly?efficient multi?view stereo [C]// 2022 IEEE/CVF Con?ference on Computer Vision and Pattern Recognition (CVPR). New York: IEEE, 2022: 12981?12990.
[11] LIN T Y, DOLLáR P, GIRSHICK R B, et al. Feature pyramid networks for object detection [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2017: 936?944.
[12] DAI J F, QI H Z, XIONG Y W, et al. Deformable convolutional networks [C]// Proceedings of the IEEE International Conference on Computer Vision. New York: IEEE, 2017: 764?773.
[13] WOO S, PARK J, LEE J Y, et al. CBAM: Convolutional block attention module [C]// Proceedings of the European Conference on Computer Vision (ECCV). Heidelberg, Germany: Springer, 2018: 3?19.
[14] WEI Z Z, ZHU Q T, MIN C, et al. AA?RMVSNet: Adaptive aggregation recurrent multi?view stereo network [C]// Procee?dings of the IEEE/CVF International Conference on Computer Vision. New York: IEEE, 2021: 6167?6176.
[15] LIU S, QI L, QIN H F, et al. Path aggregation network for instance segmentation [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2018: 8759?8768.
[16] AANAS H, JENSEN R R, VOGIATZIS G, et al. Large?scale data for multiple?view stereopsis [J]. International journal of computer vision, 2016, 120(2): 153?168.
[17] FURUKAWA Y, PONCE J. Accurate, dense, and robust multiview stereopsis [J]. IEEE transactions on pattern analysis and machine intelligence, 2010, 32(8): 1362?1376.
[18] SCHONBERGER J L, FRAHM J M. Structure?from?motion revisited [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2016: 4104?4113.
[19] GALLIANI S, LASINGER K, SCHINDLER K. Gipuma: Massively parallel multi?view stereo reconstruction [J]. Publikationen der DGPF, 2016, 25(361?369): 2.
[20] TOLA E, STRECHA C, FUA P. Efficient large?scale multi?view stereo for ultra high?resolution image sets [J]. Machine vision and applications, 2012, 23(5): 903?920.
[21] LUO K, GUAN T, JU L, et al. P?MVSNet: Learning patch?wise matching confidence aggregation for multi?view stereo [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. New York: IEEE, 2019: 10451?10460.
[22] CHEN R, HAN S F, XU J, et al. Point?based multi?view stereo network [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. New York: IEEE, 2019: 1538?1547.
[23] YU Z H, GAO S H. Fast?MVSNet: Sparse?to?dense multi?view stereo with learned propagation and Gauss?Newton refinement [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2020: 1946?1955.