肖海鴻,吳秋遐,李玉瓊,康文雄*
(1.華南理工大學 自動化科學與工程學院,廣東 廣州 510640;2.華南理工大學 軟件學院,廣東 廣州 510006;3.中國科學院 力學研究所 國家微重力實驗室,北京 100190)
近年來,隨著深度學習和傳感器技術的快速發(fā)展,三維視覺受到了學術界和工業(yè)界的廣泛關注,在目標檢測[1]、語義分割[2]、三維重建[3]等領域都取得了突破性的進展。然而,一個固有的問題仍然存在,即由于物體遮擋、表面反射、材料透明、視角變換和傳感器分辨率的限制,傳感器在真實場景下所獲取的數(shù)據(jù)并不完整,阻礙了下游任務的研究進展。在無人駕駛領域,三維補全技術可為環(huán)境感知任務提供精確的物體識別和跟蹤信息[4]。在生產制造領域,三維補全技術可為機械臂抓取任務提供準確的物體位姿信息[5]。在文物保護領域,三維補全技術可為數(shù)字化的文物鑒定、檢測和修復提供依據(jù)[6]。此外,三維補全技術還可為虛擬數(shù)字人的重建[7]和元宇宙生態(tài)體系的構建[8]奠定基礎,如圖1 所示。理解三維環(huán)境是人類的一種自然能力,人們可以利用學到的先驗知識估計出缺失區(qū)域的幾何和語義信息,然而,這對計算機而言是比較困難的[9]。

圖1 研究目的導向圖Fig.1 Research purpose oriented map
針對上述問題,研究人員開展了一系列圍繞三維形狀補全、三維場景補全和三維語義場景補全方面的研究工作。其中,三維形狀補全可以提高場景理解的準確度,其目的是根據(jù)已觀測到的局部形狀恢復出物體的完整幾何形狀,其補全對象通常是單個物體[10]。傳統(tǒng)的三維形狀補全方法主要是通過幾何對稱性[11-12]、表面重建[13-16]、模板匹配[17-20]等方式進行補全。近年來,隨著深度學習的發(fā)展,基于學習的形狀補全工作[21-24]取得重要進展。然而,基于學習的形狀補全方法目前大多是在合成數(shù)據(jù)集上進行,在真實場景下的補全效果仍然存在較大的提升空間。
三維場景補全是形狀補全的擴展,需要在掃描的場景中對缺失部分進行補全[25],其核心在于補全后場景細粒度的保持。相較于形狀補全,場景補全具有補全面積大和補全對象多的特點[25]。當缺失區(qū)域較小的時候,可以采用平面擬合[26]和插值[27]的方法。當缺失區(qū)域較大的時候,這類方法難以達到令人滿意的結果。因此,一些工作試圖通過模型擬合的方法[28-30]來得到干凈而緊湊的場景表示。最近,利用深度神經網絡直接作用于整個場景的生成補全方法[31-32]顯示出了很大的研究潛力。然而,這類方法忽略了語義信息對場景補全的輔助,當補全的場景過于復雜時,其精度會有所下降。
三維語義場景補全是在場景補全的幾何基礎上同時估計出場景的語義信息。事實證明,語義信息和幾何信息是相互交織耦合的[33]。換句話說,當在未完整觀測一個物體的情況下,已知它的語義信息有助于估計出它可能占據(jù)的場景區(qū)域。如圖2 所示,看到桌子后面的椅子頂部,推斷出椅子的座位和腿的存在。同理,已知一個對象的完整幾何信息,有助于識別其語義類別。然而,語義場景補全是相對復雜的,表現(xiàn)為數(shù)據(jù)的稀疏性和沒有真實完整的地面參考值(通過多幀融合形成的參考值僅能提供較弱的監(jiān)督信號)。相較于形狀補全,語義場景補全需要深入了解整個場景,嚴重依賴于學習到的先驗知識來解決歧義性。伴隨著大規(guī)模語義場景數(shù)據(jù)集[34-37]的出現(xiàn),基于深度學習的語義場景補全方法[38-41]相繼被提出并取得不錯的結果。然而,現(xiàn)有的方法在物體幾何細節(jié)、模型內存占用、場景不確定性估計等方面還存在諸多不足。

圖2 場景信息觀測視角圖Fig.2 Scene information observation perspective map
在過去幾年,關于三維視覺的相關工作,如三維深度學習[42]、三維目標檢測[43]、三維語義分割[44]、三維重建[45]、實時重建[46]等方面都有相對應的綜述,但系統(tǒng)總結三維補全的工作幾乎沒有,而與本文并行的工作[47]也僅是總結基于點云輸入的形狀補全。本文將系統(tǒng)地介紹國內外在三維形狀補全、三維場景補全和三維語義場景補全這三方面所展開的相關研究工作,并選取其中部分具有代表性的算法進行客觀評價和歸納總結。最后,本文討論了該領域目前存在的問題并展望了未來的發(fā)展趨勢。希望本文能夠對剛進入這一新興領域的研究者起到導航的作用,同時,也希望能夠對相關領域的研究者提供一些參考和幫助。
本文的后續(xù)內容安排為:第2 節(jié)整理三維補全相關數(shù)據(jù)集和評價指標;第3 節(jié)根據(jù)模型構建過程中有無神經網絡的參與,將現(xiàn)有的形狀補全算法分為傳統(tǒng)方法和基于深度學習方法兩大類并進行梳理與小結;第4 節(jié)分別從模型擬合和生成式的角度梳理了場景補全任務中具有代表性的算法并進行小結;第5 節(jié)根據(jù)輸入數(shù)據(jù)的不同類型,分別從深度圖輸入、深度圖聯(lián)合彩色圖像輸入、點云輸入三方面梳理了語義場景補全任務中具有代表性的算法并進行小結;第6 節(jié)討論了三維補全領域存在的問題,并對未來可能的發(fā)展方向進行展望;第7 節(jié)對本文內容進行總結。
隨著傳感器技術的突破和三維視覺的快速發(fā)展,三維補全相關數(shù)據(jù)集的廣泛獲取成為可能。為了便于研究者能夠直接展開相關工作,本文匯總了常用的數(shù)據(jù)集,并根據(jù)數(shù)據(jù)集的類型不同,將其劃分為合成數(shù)據(jù)集和真實數(shù)據(jù)集。其中,合成數(shù)據(jù)集包括:ShapeNet-Part(ShapeNet[48]子 集)、SUNCG[33]、Fandisk[49]、Raptor[49]和NYUCAD[31],真實數(shù)據(jù)集包括:KITTI[50]、Scan-Net[51]、Matterport3D[52]、DFAUST[52]、MHAD[53]、NYUv2[54]、tabletop[31]、Semantic KITTI[35]和SemanticPOSS[37]。數(shù)據(jù)集的詳細介紹如表1 所示。

表1 三維補全相關數(shù)據(jù)集Tab.1 3D completion related datasets

續(xù)表1 三維補全相關數(shù)據(jù)集Tab.1 3D completion related datasets
2.2.1 形狀補全結果評價指標
由于三維形狀表示的不同形式,補全結果的評價標準也是不同的。針對體素網格形式的補全評價標準,主要采用一定分辨率下的誤差率衡量補全性能的好壞(誤差率即補全形狀和真值之間的差異體素網格數(shù)除以真值體素網格總數(shù))[55]。針對三角網格或多邊形網格形式的補全評價標準,主要是通過計算補全網格頂點和真值網格頂點之間的平均歐幾里得距離(Euclidean Distance,ED)進行評估[56]。針對點云表示的補全評價標準,大多數(shù)方法采用補全點云與真值點云之間的倒角距離(Chamfer Distance,CD)[10]或地球移動距 離(Earth Mover′s Distances,EMD)[10]進行評估,其公式定義如下:
其中:P1和P2分別表示生成的點云和真實完整點云,a和b分別表示P1和P2中的點,φ表示雙向映射函數(shù)。
Shu 等[57]提出弗雷歇點云距 離(Fr′echet Point Cloud Distance,F(xiàn)PD)用于衡量補全點云與真實點云之間相似度,其公式定義如下:
其中:mP1和mP2分別表示生成點云和真實點云的特征向量,ΣP1和ΣP2分別表示生成點云和真實點云的協(xié)方差矩陣,Tr(A)表示矩陣A 的主對角線元素之和。
Wu 等[58]提出密度感知倒角距離(Density-Aware Chamfer Distance,DCD),和 原始CD 相比,它對密度分布的一致性更加敏感,而和EMD相比,它更擅長于捕捉局部細節(jié),其公式定義如下:
其中:α表示溫度標量,P1和P2分別表示生成的點云和真實完整點云。
Chen 等[59]提出視覺相似度評價指標——光場描述符(Light Field Descriptor,LFD)。它的原理是對3D 形狀渲染的2D 視圖通過Zernike 矩陣和傅里葉變換(Fourier Transform,F(xiàn)T)進行相似度分析。對于一些無監(jiān)督的點云補全方法,由于沒有真值參考,使用單向倒角距離(Unidirectional Chamfer Distance,UCD)[60]或單向豪斯多夫距離(Unidirectional Hausdorff Distance,UHD)[60]進行評估。
2.2.2 場景補全結果評價指標
在場景補全任務中,由于最終輸出場景的表示形式不同,因此也有不同的評價標準。大多數(shù)方法輸出的場景表示是TSDF[25]編碼的矩陣,因此常用L1距離[32]作為評價標準。其中,一些方法的輸出是網格或點云。因此,可以使用CD[10]、EMD[10]、FPD[57]和DCD[58]作為評價指標。對于基于模型擬合的場景補全方法,其評價標準大多采用模型對齊精度[28]作為評價指標。Dahnert等[30]使用混淆分數(shù)(Confusion Score,CS)衡量嵌入空間的學習程度,以此進一步衡量補全模型和CAD 模型之間的平衡程度。
2.2.3 語義場景補全結果評價指標
在三維語義場景補全任務中,評價指標是相對統(tǒng)一的,為預測結果和真值結果之間的交并比(Intersection over Union,IoU)[33]或平均交并比(Mean Intersection over Union,mIoU)[33],其 公式定義如下:
其中:NTP表示“正陽性”即預測已占用體素結果中的預測正確的樣本數(shù)量,NFP表示“假陽性”即預測錯誤的樣本數(shù)量,NFN表示“假陰性”即未被檢測到的已占用體素數(shù)量,C表示類別。
3.1.1 基于對稱的方法
對稱是自然界廣泛存在的一種現(xiàn)象,對稱性是重要的科學思維方法之一,最初的形狀補全方法主要是利用物體或空間呈現(xiàn)的幾何對稱性[11-12]恢復缺失區(qū)域的重復結構。該方法假設了缺失的幾何部分在現(xiàn)有的部分觀測信息中具有重復結構,對于大部分呈現(xiàn)立體對稱結構的簡單物體是有效的。然而,對稱性假設并不適用于自然界中的所有物體。
3.1.2 基于表面重建的方法
現(xiàn)有的表面重建方法主要分為插值和擬合兩種方式[13]。插值是將表面上集中的數(shù)據(jù)點作為初始條件,通過不同算法執(zhí)行插值操作得到密集表面。擬合是利用采樣點云直接重建近似表面,通常以隱式形式表示。
Lee 等[14]提出基于多層B 樣條的快速分散數(shù)據(jù)插值算法。該算法在插值效果和計算時間上都具有較好的優(yōu)勢。但在選點方式和定義權重上存在一定的困難,導致重建的表面存在不連續(xù)情況。Price 等[15]采用分形插值方法來重建三維曲面。與傳統(tǒng)插值方法相比,分形插值在擬合具有分形特征或較為復雜的事物時具有優(yōu)勢。但它計算復雜,并且分形的參數(shù)H較難估計。泊松表面重建[13]是一種隱函數(shù)表面重建方法,它通過平滑濾波指示函數(shù)構建泊松方程,將表面重建問題等同為泊松方程的求解問題。通過對該方程進行等值面提取,得到具有幾何實體信息的表面模型;其構建的表面能容忍一定程度的噪聲,但存在過度平滑問題。針對泊松表面重建的過度平滑問題,Kazhdan 等[16]通過引入樣本點的位置約束,將其表示為屏蔽泊松方程進行求解,生成更為貼合的表面,但該方法比較依賴于準確的點云法向量。盡管以上基于插值和擬合的表面重建方法都取得了較好的結果,但這類方法通常用于孔洞修復,存在補全面積小的限制。
3.1.3 基于模板匹配的方法
基于模板匹配的形狀補全方法主要包括部分形狀匹配方法[17]和整體形狀匹配方法[18]。部分形狀匹配主要是在預先定義的大型形狀模型庫中尋找能夠最佳擬合的對象部件,然后將它們組裝起來獲得完整形狀。整體形狀匹配是在模型庫中直接檢索完整的最佳擬合形狀。其中,尋優(yōu)算法的選取對最終模板匹配的結果起到至關重要的作用。
Rock 等[19]提出模型變形的匹配方法,其核心是將從數(shù)據(jù)庫中檢索到的候選模型執(zhí)行非剛性曲面對齊使其形狀變形以擬合輸入。Sun 等[20]進一步提出基于補丁的檢索-變形方法。該方法首先從輸入形狀中選擇候選補丁,其次,對檢索到的候選對象執(zhí)行變形操作并縫合成完整形狀。該方法可以重建在拓撲結構上不同于訓練數(shù)據(jù)的形狀。盡管基于模板匹配的方法取得了較好的補全結果。但這類方法通常存在尋優(yōu)速度慢和對噪聲比較敏感的問題。同時,它依賴于較大的模型庫來覆蓋補全的全部形狀,這在真實世界中往往是不切實際的。
目前常用的三維數(shù)據(jù)表示形式包括點云[61]、體素[62]和網格[63]。盡管最近基于深度隱式表示的方式,如占用網絡(Occupancy Networks)[64]、連續(xù)符號距離函數(shù)(Sign Distance Function,SDF)[65]和神經輻射場(Neural Radiance Field,NeRF)[66]在三維重建和三維語義場景補全任務中有相關的工作。但在形狀補全任務中,目前大多數(shù)補全方法都依賴于點云的數(shù)據(jù)形式,這不僅與點云自身的特性有關,即存儲空間小且表征能力強,還與點云數(shù)據(jù)集相對容易獲取有關。
基于學習的形狀補全方法根據(jù)其算法原理,可歸納為6 種主要類型:基于逐點的多層感知機(Multi-layer Perceptron,MLP)方法[10,21-24,67-68]、基于卷積的方法[69-72]、基于圖的方法[56,73-76]、基于生成對抗的方法[77-81]、基于Transformer 的方法[82-83]和其他方法[65,84-85],其發(fā)展歷程如圖3 所 示。下面,本文將對其中具有代表性的一些算法進行介紹和總結。

圖3 基于深度學習的三維形狀補全方法發(fā)展歷程Fig.3 Development history of 3D shape complementation methods based on deep learning
3.2.1 基于逐點的MLP 方法
點云是三維形狀補全任務中最常使用的數(shù)據(jù)形式。盡管它具有存儲空間小且表征能力強的優(yōu)點,但是它的無序性和不規(guī)則性也給特征提取帶來了巨大挑戰(zhàn)。PointNet[61]是首個被提出直接作用于點云數(shù)據(jù)的深度學習網絡,它采用MLP 對每個點進行獨立地特征提取。然后,使用最大池化(Max Pooling)函數(shù)得到點云的全局特征。得益于這項工作的啟發(fā),基于逐點的MLP 形狀補全算法相繼被提出[10,21-24,67-68]。
作為點云形狀補全的開創(chuàng)性工作,PCN[10]遵循編碼器-解碼器范式來完成點云補全任務。編碼器主要由堆疊的MLP 層構成,解碼器包括全連接層解碼器[21]和折疊解碼器[22]兩部分。其中,全連接層解碼器負責估計點云的幾何形狀,而折疊解碼器負責近似出局部幾何形狀的光滑表面。盡管該算法能夠獲得較好的完整點云和稠密點云,基于折疊的二維網格變形操作在某種程度上會限制三維點云的幾何表達。Tchapmi 等[23]提出分層的樹結構點云補全網絡TopNet,其核心思想是采用基于MLP 的樹解碼器生成結構化的完整點云。該算法允許網絡學習任意的拓撲結構,而不是強制執(zhí)行某一種拓撲結構。然而,該算法需要足夠的冗余空間來學習任意的體系結構,因此,解碼器的容量在某種程度上會限制學習到的拓撲結構。
Huang 等[24]提出點云分形網絡PF-Net。首先,該算法使用FPS 采樣方法將輸入點云下采樣為不同分辨率的點云。其次,使用提出的組合多層感知機(Combined Multi-layer Perception,CMLP)分別進行特征提取并融合成全局特征向量。最后,將得到的全局特征向量輸入到點云金字塔解碼器(Point Pyramid Decoder,PPD)進行多階段預測。該算法采用的多分辨率特征提取方法能夠更好地捕獲輸入點云的局部特征。然而,PF-Net 僅預測缺失的點云,對已有的部分不進行預測,導致生成的點云和已有的點云在拼接時存在間隙。Liu 等[67]提出兩階段的稠密點云補全算法MSN。首先,該算法通過自動編碼器預測一個完整但粗粒度的點云。其次,通過采樣算法將粗粒度的預測和輸入點云合并生成致密點云。值得一提的是,為了防止參數(shù)化表面元素的重疊,文中提出擴展懲罰損失來引導表面元素集中在一個局部區(qū)域。Tang 等[68]提出基于關鍵點-骨架-形狀預測的點云補全算法LAKe-Net,該算法主要包括3 個步驟:(1)使用非對稱關鍵點定位器(Asymmetric Keypoint Locator,AKL)定位出輸入點云和完整點云中對齊的關鍵點;(2)利用基于幾何先驗的關鍵點生成表面骨架來充分顯示拓撲信息;(3)使用遞歸細化模塊輔助點云骨架的精細化完成。該算法嚴重依賴于缺失和完整的形狀匹配對進行監(jiān)督訓練。在某些情況下,完整的點云數(shù)據(jù)是無法獲取的,從而限制了其在實際場景下的適用性。
盡管基于逐點的MLP 形狀補全算法表現(xiàn)出不錯的性能,但仍然存在著以下局限:
(1)基于逐點的MLP 算法大多沿用PointNet的特征提取思路,而這種方式是獨立的處理每個點,忽略了相鄰點之間的幾何關系。
(2)一些方法采用了由粗到細的點云生成策略,但是它們對形狀的高頻信息并不敏感,難以對復雜的拓撲結構進行友好生成。
3.2.2 基于卷積的方法
卷積神經網絡(Convolutional Neural Network,CNN)[86]近年來在視覺圖像領域取得了巨大的成功,其相關工作也啟發(fā)了研究者使用體素來表示三維形狀。相較于點云的無序形式,體素更貼近于規(guī)則像素的表達方式,同時也更容易使用CNN 進行特征提取和學習。
3D-EPN[69]使用三維卷積層組成的編碼-解碼器網絡預測部分輸入的完整形狀,但是隨著分辨率的提升,計算量會呈指數(shù)增加,給網絡的訓練帶來了極大挑戰(zhàn)。Xie 等[70]提出網格殘差網絡GRNet,通過將無序點云轉為規(guī)則網格的中間表示,然后利用3DCNN 進行特征提取和中間數(shù)據(jù)生成,最后將生成的網格單元再次轉化為點云形式。此外,該算法設計了立方特征采樣(Cubic Feature Sampling,CFA)層來提取相鄰點信息和上下文信息。然而,該方法存在以下2 個缺點:(1)點云體素化的過程不可避免的導致信息丟失;(2)體素表示僅適用于低分辨率的形狀重建。
Wang 等[71]提出基于體素的多尺度點云補全網絡VE-PCN。相比于GRNet 采用逆體素點云化策略生成粗糙點云,VE-PCN 增加了邊生成器(Edge Generator)將補全對象的高頻結構信息注入到形狀補全分支中,并取得較好的補全結果。需要注意的是,這里的高頻結構信息指代三維對象的邊緣結構信息[71]。Liu 等[72]提出多分辨率各向異性卷積網絡MRAC-Net。文中設計了一種多分辨率各向異性卷積編碼器(Anisotropic Convolutional Encoder,ACE)提取三維對象的局部和全局特征,以提高網絡對語義和幾何信息的理解能力。此外,該網絡提出的組合金字塔解碼器能夠分層輸出不同分辨率的完整結構點云,實現(xiàn)更好的監(jiān)督。
盡管基于卷積的形狀補全算法均表現(xiàn)出不錯的性能,但是仍然存在著以下局限:
(1)內存隨分辨率呈立方增加,現(xiàn)有的網絡算法依舊局限于相對較低的分辨率。
(2)使用體素的中間表示會不可避免的導致細節(jié)丟失。
3.2.3 基于圖的方法
點云作為一種無序的非歐幾里德結構數(shù)據(jù),無法直接將經典的CNN 應用于點云學習,點云中的拓撲信息由點之間的距離隱式表示。因此,一種可行的思路是將點云中的點看作圖頂點,使用圖卷積網 絡(Graph Convolutional Network,GCN)[87]提取鄰域頂點間的結構信息。動態(tài)圖CNN(Dynamic Graph CNN,DGCNN)[87]使用一種可插拔的邊卷積(EdgeConv.)模塊動態(tài)地捕獲點云的鄰域特征,該工作也啟發(fā)了后續(xù)基于圖卷積的形狀補全工作[56,73-76,88]。
Litany 等[56]提出基于可變形的形狀補全方法GCNet,其核心是通過一個帶有圖卷積的變分自動編碼器(Variational Autoencoder,VAE)來學習完整真實形狀的潛在空間表示。然而,該方法假定所有的形狀都與一個共同的參考形狀相對應,從而限制了對某些類別形狀的適用性。Zhang等[73]提出3D 目標檢測網絡PC-RGNN。他們首次使用點云補全技術輔助三維目標檢測任務,設計了一種基于注意力的多尺度圖卷積(Attention Based Multi-scale Graph Convolution,AMSGCN)模塊來編碼點之間的幾何關系,增強對應特征的傳遞。在點云生成階段,該方法沿用了PF-Net 的思路,采用PPD 生成多階段的完整點云,在補全數(shù)據(jù)集和檢測數(shù)據(jù)集上均表現(xiàn)良好。Pan[74]提出具有圖卷積的邊緣感知點云補全網絡ECG。該網絡包括兩個階段,第一階段生成粗糙的骨架,以方便捕獲有用的邊緣特征;第二階段采用圖卷積層次編碼器來傳播多尺度邊緣特征,以實現(xiàn)局部結構的細化。為了在上采樣時保留局部幾何細節(jié),作者進一步提出邊緣感知特征擴展(Edge-aware Feature Expansion,EFE)模塊來平滑上采樣點的特征。實驗結果表明,該算法在稠密點云的生成方面具有一定的優(yōu)勢。
Shi 等[75]提出一種以輸入數(shù)據(jù)和中間生成為控制點和支撐點的圖引導變形網絡GGD-Net,通過利用網格變形方法模擬最小二乘的拉普拉斯變形過程,這為建模幾何細節(jié)的變化帶來了自適應。據(jù)公開文獻[75],這是第一個通過使用GCN引導變形操作來模擬傳統(tǒng)圖形算法優(yōu)化的點云補全工作,在室內和室外數(shù)據(jù)集上均表現(xiàn)良好。Cai 等[76]提出無監(jiān)督 點云補全方 法LSLS-Net。他們認為不同遮擋程度的缺失點云共享統(tǒng)一完整的潛在空間編碼,其核心思想是引入遮擋碼對潛在空間的統(tǒng)一編碼進行掩碼,再通過解碼器對掩碼的潛在編碼解碼成不同遮擋比例的殘缺點云。編碼器主要包括多個EdgeConv 層,解碼器主要由多層MLP 組成。盡管該方法在泛化性上取得了較好的結果,但是該方法設計的解碼器較為簡單,在補全結果的細節(jié)性上還有待提升。
基于圖的形狀補全算法在鄰域特征提取上表現(xiàn)出良好的性能,但是仍然存在著以下局限:
(1)基于圖的形狀補全方法大多是采用K 近鄰(K-nearest Neighbor,KNN)算法選取每個點的n個最近點作為它的鄰居集合,然后利用圖濾波操作來學習這些點的表示。然而,n的取值會極大地影響網絡的性能。此外,KNN 算法對點云的密度分布非常敏感。
(2)基于圖的算法是相對耗費時間的,當點云數(shù)據(jù)更大或者堆疊的圖模塊更多時,其內存消耗更為明顯。因此針對點云的圖濃縮(Graph Condensation)[88]技術是值得探討的。
3.2.4 基于生成對抗的方法
生成對抗網絡(Generative Adversarial Network,GAN)[89]創(chuàng)新性地采用了相互對抗的網絡框架,通過生成模型和判別模型進行最小化和最大化博弈學習不斷提升數(shù)據(jù)的生成能力。為了提升點云的生成質量,相關研究者結合GAN 來完成形狀補全任務。
Sarmad 等[77]提出將自動編碼器(Autoencoder,AE)、GAN 和強化學習(Reinforcement Learning,RL)相結合的點云補全網絡RL-GANNet。通過RL 代理優(yōu)化GAN 的潛在變量輸入,并使用預訓練解碼器對GAN 生成的潛在全局特征向量解碼為完整點云。然而,多階段訓練過程增加了網絡的復雜性。此外,基于RL 的代理控制難以找到最優(yōu)的潛在變量輸入。Wang 等[78]提出級聯(lián)細化補全網絡CRNet,該方法遵循由粗到細的生成策略。在第1 階段采用PCN 的特征提取方式通過全連接層生成粗糙點云,在第2 階段引入條件迭代細化子網絡生成高分辨的點云。為了提升生成點云的逼真性,文中提出了塊判別器(Patch Discriminator)來保證每個區(qū)域都是真實的。此外,該方法加入類別的平均形狀先驗信息來提升補全結果的完整性,但同時也降低了類內補全結果的多樣性。此外,由于塊之間的互斥性易導致生成點云的不均勻分布。
Hu 等[79]將點云的補全問題轉化為深度圖補全問題。通過將點云從固定視角渲染成8 個多視圖,并執(zhí)行每個視圖的補全。值得一提的是每個視圖的補全并不是獨立的,而是利用所有視圖的信息來輔助每一個視圖的補全。此外,為了提升深度圖補全的逼真性,采用深度圖判別器對補全結果和真實點云的渲染結果進行真假判斷。然而,該方法缺乏對點云的直接監(jiān)督,通過渲染的方式會導致信息的丟失。Xie 等[80]提出基于風格生成和對抗渲染的點云補全網絡SpareNet。該算法分別從特征提取、點云生成和優(yōu)化三個方面進行了改進。針對特征提取部分,引入通道注意力的邊卷積(Channel-attentive EdgeConv,CAEdgeConv)模塊來增強點云的局部特征提取能力。針對點云生成部分,通過將學習到的特征作為樣式碼(Style Code)來提高折疊生成能力。為了進一步優(yōu)化生成質量,引入了可微分對抗渲染器來提升點云的視覺逼真度。該方法在ShapeNet-part和KITTI數(shù)據(jù)集上均表現(xiàn)良好。
Wen 等[81]提出雙向循環(huán)的無監(jiān)督點云補全網絡Cycle4Completion,與現(xiàn)有的無監(jiān)督形狀補全方法不同[60,76],之前的方法都只考慮從缺失點云到完整點云的正向對應關系,而該算法同時考慮了正向和逆向的對應關系。此外,該算法中判別器的輸入是潛在表示而不是點云。潛在表示在這里代表一個完整點云的特征向量,根據(jù)這個特征向量能夠恢復出點云結構。然而,雙向循環(huán)網絡需要單獨建模,這對訓練過程提出了較大的挑戰(zhàn)。Zhang 等[60]提出無監(jiān)督形狀反演補全網絡ShapeInversion,首次將GAN 逆 映射(GAN Inversion)引入到點云補全任務中。類比GAN 逆映射在二維圖像修復中的應用,文中提出了kmask 退化函數(shù)將生成的完整點云轉化為與輸入點云對應的殘缺點云。利用GAN 提供的先驗知識,ShapeInversion 在多個數(shù)據(jù)集上表現(xiàn)出優(yōu)異的結果,甚至超過了部分有監(jiān)督方法。然而,該方法需要額外的預訓練生成模型,降低了其在實際情況下的適用性。
盡管基于生成對抗的形狀補全算法在相關數(shù)據(jù)集上均表現(xiàn)良好,但是仍然存在著以下限制:
(1)雖然相比于直接訓練GAN 生成完整點云的方式,在潛在空間表示上訓練GAN 會相對容易。但是,訓練GAN 需要達到納什均衡,因此其訓練過程充滿著不穩(wěn)定性。
(2)在無監(jiān)督形狀補全方法中,一些算法需要借助額外的預訓練生成模型,這會大大降低算法在實際情況下的適用性。
3.2.5 基于Transformer 的方法
近 兩年,Transformer[90]在自然語言處理、計算機視覺和語音處理領域取得了巨大成功,吸引了研究者的廣泛關注。原始的Transformer 模型主要包括編碼器和解碼器,其中編解碼器主要由多頭注意力(Multi-head Self-attention,MSA)模塊和前饋神經網絡(Feed-forward Network,F(xiàn)FN)組成;而解碼器的內部結構與編碼器類似,在MSA 模塊和FFN 模塊之間額外插入了一個交叉注意力(Cross-attention,CA)模塊。受此啟發(fā),Zhao 等[91]提出Point transformer 框架,在點云分類和語義分割任務上達到了當時的最先進水平。幾乎同一時間,Guo 等[92]提出了Point cloud transformer 網絡,在點云分類、法向量估計和語義分割任務上均表現(xiàn)優(yōu)異。
Yu 等[82]首次將Transformer 應用到點云補全任務中,即PointTr。該方法將無序點云表示為一組帶有位置嵌入的無序點組,從而將點云轉換為一系列點代理,并使用幾何感知的Transformer 編碼-解碼器生成缺失部分的點代理(Point Proxy)。最后,基于生成的點代理結合折疊網絡生成細粒度的缺失點云。然而,Transformer 模型的二次方計算量需要極大的顯存和內存占用。Zhang 等[83]提出具有骨架-細節(jié)Transformer 的點云補全框架SDTNet,該方法遵循由粗到細的生成策略。該算法探索了局部模塊和骨架點云之間的相關性,有效地恢復出點云細節(jié)。此外,文中引入了一種選擇性注意力機制(Selective Attention Mechanism,SAM),在顯著降低Transformer 記憶容量的同時而不影響整體網絡性能。
盡管基于Transformer 的形狀補全方法在相關數(shù)據(jù)集上表現(xiàn)優(yōu)異,但仍然存在著以下局限:
(1)Transformer 的二階計算量和內存復雜度極大地限制了它的可適用性。
(2)由于Transformer 的計算復雜度會隨著上下文長度的增加而增長,這使其難以有效地建模長期記憶。
(3)Transformer 對形狀補全的增益需要更多的訓練數(shù)據(jù)作為基礎。
3.2.6 其他方法
Pan 等[84]提出變分關系點云補全網絡VRCNet,它由概率建模子網絡和關系增強子網絡級聯(lián)而成。在第1 階段,通過重建路徑引導補全路徑學習生成粗粒度完整點云,實現(xiàn)從高層次的特征分布到低層次的信息流動。在第2 階段,通過并聯(lián)的多尺度自注意力模塊增強點云的細節(jié)生成,該算法顯著提升了點云的細節(jié)生成能力。
Zhang 等[85]提出視覺引導的跨模態(tài)點云補全網絡ViPC。不同于現(xiàn)有的算法僅依賴部分點云作為輸入,該算法從額外輸入的單視圖中挖掘缺失點云的全局結構信息作為引導。此外,該算法引入動態(tài)偏移預測器(Dynamic Offset Predictor,DOP)和差分精調策略(Differential Refinement Strategy,DRS)對低質量點進行維精調,對高質量點執(zhí)行重度精煉,并在所提出的ShapeNet-ViPC 數(shù)據(jù)集上取得了最好的結果。
Park 等[65]提出基于學習的深度隱式形狀補全算法DeepSDF。該方法利用連續(xù)SDF 生成像水一樣密集的封閉形狀表面,不僅具有良好的視覺效果,需要的內存空間也大幅降低,為在復雜形狀的生成方面提供了新的思路。
分析不同類型的三維形狀補全方法,并根據(jù)表2、表3 和圖4 所示的部分方法對比結果,得出下列結論:

圖4 部分形狀補全方法結果對比Fig.4 Comparison of the results of some shape completion methods

表2 基于深度學習的三維形狀補全主要方法對比Tab.2 Comparison of the main methods of 3D shape completion based on deep learning

續(xù)表2 基于深度學習的三維形狀補全主要方法對比Tab.2 Comparison of the main methods of 3D shape completion based on deep learning

表3 Completion3D 數(shù)據(jù)集上部分方法的定量結果Tab.3 Quantitative results of partial methods on the Completion3D dataset
(1)在基于深度學習的三維形狀補全工作中,點云因其存儲空間小、表征能力強的特點,成為廣泛使用的三維數(shù)據(jù)表示形式。因此,基于點云的深度學習補全算法也成為當今的研究熱點之一。
(2)之前的形狀補全方法嚴重依賴于形狀匹配對的形式進行監(jiān)督訓練,在域內數(shù)據(jù)集上能夠表現(xiàn)出較好的結果,當擴展到其他部分形狀數(shù)據(jù)集或真實世界所觀測的部分數(shù)據(jù)時,模型泛化性還存在較大的提升空間。同時,考慮到在真實情況下獲取的數(shù)據(jù)是沒有對應真值的。因此,無需匹配對的無監(jiān)督形狀補全方法仍然是進一步研究的方向。
(3)現(xiàn)有方法難以對形狀細節(jié)進行精細補全。同時,很少有方法考慮補全結果的忠實性,即補全生成的點能否忠實地落在真值參考點或面上。在最近的深度隱式重建[65]和點云上采樣[93]工作中,忠實性問題有被提到。因此,點云補全的忠實性也是形狀補全任務需要考慮的因素。
圍繞三維形狀補全的研究已經有較多的工作,但關于場景補全的工作仍然較少。一方面原因在于相較于形狀補全,場景補全具有補全面積大和補全對象多的特點[28]。另一方面在于場景補全任務希望補全的缺失內容與現(xiàn)有場景內容的語義信息是一致的[32],而這也是場景補全的主要挑戰(zhàn)。
盡管場景補全面臨著以上挑戰(zhàn),但其中仍不乏優(yōu)秀的研究工作,根據(jù)場景補全算法所遵循的主要策略,可將其歸納為2 種主要類型:基于模型擬合的場景補全方法[28-30,94]和基于生成式的場景補全方法[25,31-32,95-98],其發(fā)展歷程 如圖5 所示。下面,本文將對發(fā)展進程中具有代表性的算法進行介紹和總結。

圖5 三維場景補全方法發(fā)展歷程Fig.5 Development history of 3D scene complementary methods
針對場景缺失區(qū)域較小時,可以通過平面擬合[26]和表面插值[16]這類早期方法進行補全。然而,這與藝術家所需求的精細化場景模型相比是遠遠不夠的。一個可行的思路是通過從預先創(chuàng)建的形狀數(shù)據(jù)庫中檢索一組CAD 模型,并將它們與不完整掃描場景中的形狀對象進行對齊、替換,以此來得到干凈而緊湊的場景表示,如圖6所示。

圖6 模型擬合場景Fig.6 Model fitting scenario
Avetisyan 等[28]提出CAD 模型對齊的場景補全算法Scan2CAD。首先,將RGB-D 掃描的場景數(shù)據(jù)通過體融合(Volumetric Fusion)方式[99]轉換成有符號距離場表示,并使用Batty 提供的SDFGen 工具包計算CAD 模型的無符號距離場。其次,使用3DCNN 學習場景對象和CAD 模型對象之間的嵌入關系,并預測出對應的熱圖。最后,基于對應的熱圖,通過變分優(yōu)化公式(Variational Optimization Formulation,VOF)優(yōu)化對齊的結果。該算法在Scan2CAD 基準上超越了基于手工特征的方法和基于CNN 的方法。Avetisyan等[29]提出一種端到端的CAD 模型檢索對齊算法RALNet。該算法提出了可微概率對齊策略和對稱幾何感知策略,并通過全卷積網絡(Fully Convolutional Network,F(xiàn)CN)一次對齊場景中檢測到的所有對象,在速度上具有較大的提升。Dahnert 等[30]提出聯(lián)合嵌入的場景補全方法,簡稱JENet。利用堆疊沙漏方法(Stacked Hourglass Approach)從掃描場景中分離出對象并將其轉化成類似CAD 模型的表示形式,以學習一個共享的嵌入空間用于CAD 模型檢索。該算法在實例檢索精度方面比當時最先進的CAD 模型檢索算法提高12%。Zeng 等[94]提出基于數(shù)據(jù)驅動的三維匹配描述符3DMatch。該算法通過學習局部空間塊的描述符來建立局部三維數(shù)據(jù)的對應關系。為了獲取訓練數(shù)據(jù),提出了一種自監(jiān)督的特征學習方法在現(xiàn)有的RGB-D 重建結果中獲取大量的對應關系。實驗結果表明該描述符不僅在重建的局部幾何匹配上表現(xiàn)良好,還可以泛化到不同的任務和空間尺度中。
盡管基于模型擬合的場景補全方法取得了一定的進展,然而,這類方法存在固有的自身局限性,主要包括兩個方面:
(1)模型庫中模型并不能包括真實場景中的所有對象。
(2)模型擬合方法對場景中的實例對象進行補全,但對場景中的背景信息通常不進行補全,例如墻壁和地面。
近兩年,基于深度學習從部分RGB-D 觀測信息中生成完整場景的方法顯示出較大的研究前景。其中,基于截斷符號距離函數(shù)(Truncated Signed Distance Function,TSDF)[25]的體素編碼是常用的數(shù)據(jù)處理形式和場景輸出表征形式,如圖7 所示。

圖7 場景生成補全Fig.7 Scene generation complementary
Dai 等[25]提出能夠處理任意比例大小的場景補全網絡SCNet。首先,將RGB-D 觀測的局部場景深度圖通過體融合方法生成TSDF 編碼的場景表示;其次,利用3DCNN 進行場景生成補全。其算法補全過程遵循由粗到細的策略,在補全質量和處理速度方面都有大幅度的提升。Firman 等[31]提出一種結構化預測的場景補全算法Voxlets。算法核心是使用結構化的隨機森林(Structured Random Forest,SRF)從局部觀測的深度圖中估計出周圍表面形狀。然而,該算法補全的場景較小,僅適用于桌面大小的場景。Wang 等[95]提出基于八叉樹卷積神經網絡(Octree-based Convolutional Neural Networks,OCNN)的場景補全算法。該算法以類似U-Net[100]的結構進行特征提取,并引入以輸出為引導的跳躍連接方式來更好地保持輸入數(shù)據(jù)的幾何信息。值得一提的是,該算法具有較高的計算效率,并支持深層次的O-CNN 結構,在形狀補全數(shù)據(jù)集和場景補全數(shù)據(jù)集上取得了較好的實驗結果。Azinovi? 等[96]同時使用NeRF 和TSDF 實現(xiàn)高質量的場景表示。該方法具有兩個優(yōu)勢:(1)雖然目前使用NeRF 的體渲染新視圖合成方法顯示出了良好的結果,但是NeRF 不能重建實際的表面,當使用標記立方體(Marching Cube,MC)提取曲面時,基于密度的曲面體積表示會導致偽影。因此,該方法使用隱式函數(shù)來表示場景曲面。在這里,隱式函數(shù)為截斷符號距離函數(shù)。(2)該方法整合了深度先驗信息,并提出了姿態(tài)和相機細化技術來改善重建質量,在真實數(shù)據(jù)集ScanNet 上取得了較好的場景表示結果。Han等[101]提出基于深度強化學習的場景表面生成算法。該算法創(chuàng)新性地引入了深度強化學習策略來確定場景補全的最優(yōu)視點序列。此外,為了保證不同視點之間的一致性和更好地利用上下文信息,該算法進一步提出了體素引導的視圖補全框架產生高分辨率的場景輸出。
盡管上述方法在大規(guī)模域內數(shù)據(jù)集,如SUNCG[33]、ShapeNet[48]和NYUv2[54]上,取得了較好的補全效果,但擴展到其他觀測的不完整場景數(shù)據(jù)集時,由于數(shù)據(jù)集間的域差距,其補全的效果仍然是有限的。同時,在大部分真實場景下,是沒有與之對應的完整場景真實值的。為了解決上述有監(jiān)督方法的缺陷,一些無監(jiān)督的場景補全方法被提出。
Dai 等[32]首次提出自監(jiān)督的場景補全算法SG-NN,該算法直接在不完整場景數(shù)據(jù)上進行訓練,其核心思想是在RGB-D 掃描的場景信息中移除部分圖像以此得到更加不完整的場景信息。然后,通過在這兩個不同程度的缺失場景中構建自監(jiān)督信號進行訓練,并最終得到以TSDF 表示的高分辨率場景。受SG-NN 的啟發(fā),Dai 等[97]提出一種能夠同時補全場景幾何信息和顏色信息的自監(jiān)督算法SPSG。值得一提的是該算法對于幾何信息和顏色信息的推斷不是依賴于模型補全的3D 損失,而是依賴于在模型渲染所得到的2D 圖像上進行監(jiān)督引導,這樣充分利用了原始RGD-D 掃描的高分辨率圖像信息。Chen 等[98]介紹了一種基于點云中間表示的場景補全框架CIRCLE。該算法首先將RGB-D 深度圖在已知相機位姿的情況下轉化為點云數(shù)據(jù),其轉換過程遵 循Kinectfusion[102]。其 次,分別使用Point Encoder、UNet 和SDF Decoder 進行特征提取和幾何補全。最后,使用可微分隱式渲染(Differentiable Implicit Rendering,DIR)模塊進行補全細化。該算法不僅具有更好的重建質量,而且在速度上比第2 名快10~50 倍。
盡管以上無監(jiān)督場景補全方法在真實數(shù)據(jù)集上取得了令人振奮的結果,但是他們在復雜場景的生成方面仍存在不足。由于缺乏先驗信息的引導,在面對更加復雜的場景時,不同對象的生成結果具有歧義性。
對比分析不同類型的三維場景補全方法,并根據(jù)圖8 和表4、表5 中的部分方法對比結果,得出下列結論:

表4 三維場景補全主要方法對比Tab.4 Comparison of the main methods of 3D scene completion

表5 SUNCG 數(shù)據(jù)集上部分方法的定量結果Tab.5 Quantitative results of partial methods on the SUNCG dataset

圖8 部分場景補全方法結果對比Fig.8 Comparison of the results of some scenario complementary methods
(1)對于三維場景補全任務,三維TSDF 矩陣是常用的場景表示形式。相較于模型擬合場景補全方法的自身局限性,基于生成式的場景補全方法表現(xiàn)出更好的優(yōu)勢。
(2)在場景補全任務中,由于合成數(shù)據(jù)集與真實數(shù)據(jù)集之間存在域差距,采用直接作用于真實數(shù)據(jù)集的無監(jiān)督場景補全方法取得了令人振奮的結果。因此,基于無監(jiān)督的場景補全方法仍然是接下來的重要研究方向。
(3)現(xiàn)有的場景補全方法大多在室內場景數(shù)據(jù)集上進行補全,在室外場景上的補全工作相對較少,希望在之后的研究中能有更多關于室外場景的補全工作。
(4)以上的場景補全方法沒有考慮語義信息對場景補全的輔助,當補全的場景過于復雜時,補全的精度會下降,因此將語義信息和幾何信息相結合的方式也是進一步研究的方向。這方面的工作在接下來的語義場景補全任務中將會介紹。此外,顏色信息也是場景補全任務中需要考慮的重要因素。
三維場景的全面理解對許多應用領域而言都是至關重要的,如機器人感知、自動駕駛、數(shù)字孿生等。較早的場景理解工作大多是從語義分割或場景補全的角度分別展開研究。然而,文獻[33]表明語義分割和場景補全并不是相互獨立的,其語義信息和幾何信息是相互交織耦合的,是相互促進的,并由此引出了語義場景補全(Semantic Scene Completion,SSC)的概念。語義場景補全是指從局部觀測信息中推斷出場景的完整幾何信息與語義信息,實現(xiàn)與現(xiàn)實世界更好地交互。
目前,三維語義場景補全方法根據(jù)輸入數(shù)據(jù)的不同類型,可以歸納為3 種主要類型:基于深度圖的語義場 景補全方法[33,38-41,103-105]、基于深度圖聯(lián)合彩色圖像的語義場景補全方法[106-113]和基于點云的語義場景補全方法[114-117],其發(fā)展歷程如圖9 所示。下面,本文將對研究發(fā)展進程中具有代表性的算法進行介紹和總結。

圖9 三維語義場景補全方法發(fā)展歷程Fig.9 Development history of 3D semantic scene complementation methods
Song 等[33]開創(chuàng)性地提出語義場景補全網絡SSCNet。該網絡以單張深度圖作為輸入,使用擴展上下文卷積模塊同時進行場景的體素網格占用和語義標簽預測。該算法對深度圖的體素編碼采用翻轉的截斷符號距離函數(shù)(Flipped Truncated Signed Distance Function,f-TSDF)。普通的TSDF 容易在離物體表面較遠的地方出現(xiàn)強梯度,基于投影的截斷符號距離函數(shù)(Projective Truncated Signed Distance Function,p-TSDF)有嚴重的視角依賴性,而f-TSDF 在離物體較近的表面進行強梯度引導,如圖10 所示。該算法在其提出的SUNCG 數(shù)據(jù)集[33]上取得了當時最好的結果。

圖10 TSDF 變體Fig.10 TSDF variants
Guo 等[38]提出視圖-體 素卷積網絡VV-Net,該網絡將2DCNN 與3DCNN 相結合。相較于SSCNet 直接使用3DCNN 對TSDF 編碼的體素網格進行特征提取,VV-Net 先使用2DCNN 從深度圖中提取幾何特征并投影為三維體素網格,從而降低了一定的計算量。Zhang 等[39]將密集條件隨機場(Conditional Random Field,CRF)引 入SSC 任務中,首先將深度圖通過f-TSDF 編碼為體素矩陣。其次,將SSCNet 輸出的概率圖與經過CRF 處理后的深度圖相結合,組成VD-CRF模 型。該算法分別 在SUNCG、NYUv2 和NYUCAD 數(shù)據(jù)集上驗證了其有效性,并分別取得了2.5%、3.7%和5.4%的提升。Zhang 等[40]提出通過高效的空間分組卷積(Spatial Group Convolution,SGC)來加速密集任務的計算。為了避免3DCNN 過大的計算量,目前常用的方法是通過稀疏卷積網絡[118]或閔可夫斯基卷積網絡[119]進行特征提取。然而,與這些方法不同,SGC 是沿著空間維度來創(chuàng)建組,同時使每個組中的體素網格更加稀疏,進一步降低網絡的計算量。為了便于對比分析,文中將該方法簡稱為ESSCNet。Zhang 等[41]提出級聯(lián)上下文金字塔網絡CCPNet,該算法不僅改進了金字塔上下文中的標簽一致性,還提出了基于引導的殘差細化(Guided Residual Refinement,GRR)模塊漸進式地恢復場景的精細化結構,在SUNCG 和NYUv2數(shù)據(jù)集上取得了有競爭力的結果,尤其在場景細節(jié)的生成方面更具優(yōu)勢。
Wang 等[103]提出多分支結構的語義補全網絡ForkNet,該網絡包括1 個共享的編碼器分支和3 個獨立的解碼器分支,3 個分支分別預測不完整的表面幾何形狀、完整的幾何體積和完整的語義體積。此外,該方法還引入多個判別器來提升語義場景補全任務的準確性和真實性。Chen等[104]提出一種融合特征聚合策略(Feature Aggregation Strategy,F(xiàn)AS)與條件預測模塊(Conditioned Prediction Module,CPM)的實時語義場景補全算法RTSSC。首先,該方法通過具有擴張卷積的編碼器來獲得較大的感受野。其次,利用分階段FAS 融合全局上下文特征。最后,采用逐步CPM 進行最終結果預測。該算法在單張1080Ti GPU 上實現(xiàn)了110 FPS 的速度。Li 等[105]提出具有位置重要性感知損失的語義場景補全網絡PAL-Net。該算法通過考慮局部各向異性來確定場景內不同位置的重要性,有利于恢復對象的邊界信息和場景角落信息。實驗表明所提出的位置重要性感知損失在訓練過程中收斂速度更快,可以取得更好的性能。
盡管以上基于深度圖的語義場景補全算法取得了不錯的結果,但RGB 圖像包含的豐富顏色信息和紋理信息并沒有被充分地利用。接下來,將介紹基于深度圖聯(lián)合彩色圖像的語義場景補全方法。
RGB 圖像具有豐富的顏色信息和紋理信息,可以作為深度圖的重要補充,進一步提升三維語義場景補全的性能。
Garbade 等[106]提出基于雙流卷積的語義場景補全網絡 TS3D,該方法首先使用Resnet101[122]對RGB 圖 像進行語義分割。其 次,將圖像的語義分割結果映射到由深度圖生成的3D 網格上,得到不完整語義體。最后,使用具有上下文感知的3DCNN 推斷出完整的語義場景信息。實驗表明,引入RGB 圖像作為輸入可以顯著地提高SSC 任務,在NYUv2 數(shù)據(jù)集上相較于第2 名提升了9.4%。Li 等[107]提出一種輕量級的維度分解殘差網絡DDRNet。該方法通過引入維度分解殘差(Dimensional Decomposition Residual,DDR)模塊降低網絡的參數(shù)。同時,使用多尺度融合策略提升網絡對不同大小物體的適應能力。相較于SSCNet 算法,該方法僅使用了21%的參數(shù)量。Li 等[108]提出各向異性卷積的語義場景補全網絡AICNet。相較于標準3DCNN的固定感受野,該算法使用提出的各向異性卷積(Anisotropic Convolution,AIC)模塊將三維卷積分解為三個連續(xù)的一維卷積實現(xiàn)各向異性的三維感受野,每個一維卷積的核大小是自適應的。實驗表明,疊加多個AIC 模塊,可以進一步提升該算法在SSC 任務上的性能。
Liu 等[109]提出首個使用門控循環(huán)單元(Gated Recurrent Unit,GRU)的語義場景補全的網絡GRFNet。該方法根據(jù)DDRNet 網絡進行擴展,改進了多尺度融合策略,并構建具有自主選擇和自適應記憶保存的多模態(tài)特征融合模塊。此外,通過引入非顯著性參數(shù)融合不同層級特征并進一步提出多階段的融合策略。該算法在SSC 數(shù)據(jù)融合方面顯示出優(yōu)越的性能。Cai 等[110]提出場景到實例與實例到場景的迭代語義補全網絡SISNet。具體而言,場景到實例指通過編碼實例對象的上下文信息,將實例對象與場景解耦,以此得到更多細節(jié)信息的高分辨率對象。而實例到場景指將細粒度的實例對象重新集成到場景中,從而實現(xiàn)更精確的語義場景完成。該算法在合成數(shù)據(jù)集和真實數(shù)據(jù)集上均表現(xiàn)出良好的性能。
Li 等[111]提出基于注意力機制的多模態(tài)融合網絡AMFNet。該算法使用2D 分割結果指導SSC 任務。值得一提的是,相較于以前直接從深度圖中提取幾何信息的方法,該方法先將深度圖轉換成3 通道的HHA 編碼格式再進行特征提取。HHA 編碼圖像[112]的三個通道依次代表水平視差、高于地面的高度和像素的局部表面法線與重力方向的傾角,如圖11 所示。該算法在SUNCG 和NYUv2 數(shù)據(jù)集上分別有2.5% 和2.6%的相對增益。Liu 等[113]提出一種解糾纏的語義場景補全網絡SATNet。該方法首先使用編碼-解碼網絡結構得到語義分割圖像。其次,通過2D 到3D 重投影變換得到不完整場景的語義體素表示。最后,通過3DCNN 得到完整場景的語義體素表示。實驗結果表明該算法在合成數(shù)據(jù)集和真實數(shù)據(jù)集上均表現(xiàn)出良好的性能。

圖11 HHA 圖像Fig.11 HHA map
盡管基于深度圖聯(lián)合彩色圖像的語義場景補全方法具有較好的性能。然而,基于體素的三維表示仍然受到分辨率和內存的限制,當在室外場景下時,其內存缺陷尤其明顯。接下來,將介紹基于點云的語義場景補全方法。
Cheng 等[114]提出基于點云輸入的語義場景補全網絡S3CNet。由于雷達點云具有的稀疏性導致直接提取其空間特征較為困難。因此,該算法首先將點云依次通過球形投影算法、擴展算法[123]、基于修改的f-TSDF 編碼方法得到高效的稀疏三維張量。其次,將稀疏3D 張量投影的鳥瞰圖進行語義分割。最后,將得到的2D 分割結果用于強化3D SSC。值得一提的是該方法對體素的融合是動態(tài)的,抵消了對3D 卷積的顯著內存要求。
Yan 等[115]提出上下文形狀先驗的稀疏雷達點云語義分割框架JS3C-Net。該方法將雷達獲取的多幀進行配準合并,其合并結果不僅可以作為場景補全任務的參考真值,還可以捕獲那些顯著對象形狀的先驗信息,而這些得到的形狀先驗信息有利于進一步的語義分割任務。此外,該算法還引入了點云-體素交互(Point-voxel Interaction,PVI)模塊,用于語義分割和語義場景補全之間的隱式信息融合。該算法分別在SemanticKITTI 和SemanticPOSS 基準上提升了4%和3%。Zhong 等[116]提出一種融 合RGB 圖像紋理信息與點云幾何信息的場景補全網絡IPF-SPCNet。該算法首先使用2D 分割網絡得到語義分割圖像。其次,將分割圖像的語義信息重投影到對應的點云上,得到包含語義信息的不完整場景點云。最后,再通過基于點云的觀測編碼器和遮擋解碼器得到完整的語義場景補全點云。實驗結果表明該算法在場景補全和語義場景補全任務上均表現(xiàn)良好。Rist 等[117]提出基于局部深度隱式函數(shù)的語義場景補全網絡LMSCNet。該方法與之前的場景補全方法不同,采用非體素化的連續(xù)場景表示,并引入自由空間信息作為監(jiān)督信號,在室外場景數(shù)據(jù)集Semantic KITTI 上得了較好的實驗結果。然而,該方法在不確定性估計方面仍然還有提升的空間。
盡管上述基于點云的語義場景補全方法在大規(guī)模室外場景數(shù)據(jù)集上表現(xiàn)出了良好的性能,但這方面的研究工作仍然較少。此外,現(xiàn)有的點云處理方法尚沒有統(tǒng)一認可的特征提取范式,還沒有一種點云特征提取算法能夠像CNN 或Transformer 在圖像領域獲得那么高的認可度。盡管近幾年基于點云的特征提取方法蓬勃發(fā)展,但是人們依然還是使用相對較早的點云特征提取算法,如:PointNet[61]和DGCNN[87]。
分析不同類型的語義場景補全方法,并根據(jù)表6、表7 和圖12 所示的部分方法對比結果,得出下列結論:

圖12 部分語義場景補全方法結果對比Fig.12 Comparison of the results of some semantic scene completion methods

表6 三維語義場景補全主要方法對比Tab.6 Comparison of the main methods of 3D semantic scene completion

表7 NYUv2 數(shù)據(jù)集上部分方法的定量結果Tab.7 Quantitative results of partial methods on the NYUv2 dataset
(1)現(xiàn)有的語義場景補全方法大多是通過3DCNN 對體素網格表示的三維空間進行特征提取。盡管其中有些算法使用了稀疏卷積、閔可夫斯基卷積或空間分組卷積來降低參數(shù)量,但當場景規(guī)模足夠大時或者針對室外場景時,其內存和顯存上的消耗仍然是致命的。
(2)最近,基于局部深度隱式的語義場景補全工作被提出,然而模型預測的不確定性問題還有待進一步的解決。
盡管目前圍繞三維形狀補全、三維場景補全和三維語義場景補全的研究取得了一定的成果,但在現(xiàn)有的方法中,還存在一些亟待解決的問題,本節(jié)將對此進行深入分析,并從技術角度對三維補全未來的發(fā)展趨勢進行展望。
(1)幾何細節(jié)丟失問題:由于局部觀測信息缺乏魯棒的幾何約束,現(xiàn)有的三維補全方法在對個體形狀或大面積場景進行補全時,往往會丟失細節(jié)或無法預測正確的幾何信息。盡管已有方法采用注意力機制[124]或Transformer 模型[82-83]實現(xiàn)細節(jié)生成,但其二階計算量和內存復雜度極大地限制了它的可適用性。
(2)模型泛化性不足問題:現(xiàn)有的大部分三維補全方法存在泛化性差的問題,這主要可以歸納為兩方面的因素,(a)依賴于缺失-完整匹配對的監(jiān)督訓練方式易導致模型過擬合和泛化性差。(b)不同合成數(shù)據(jù)集之間以及合成數(shù)據(jù)集與真實數(shù)據(jù)集之間存在域差距(Domain Gap)。
(3)計算資源受限問題:計算資源包括內存資源和顯存資源,其受限的主要因素來源于場景表征的方式和場景數(shù)據(jù)的規(guī)模。由于大部分方法依賴于三維TSDF 矩陣或大規(guī)模點云來表征場景信息,雖然可以直接或間接使用3DCNN 進行特征提取,但是其計算量隨分辨率呈立方增加。盡管有研究者通過和空間分組卷積[40]、稀疏卷積[125]和閔可夫斯基卷積[126]來緩解三維卷積參數(shù)量的問題,但當場景規(guī)模足夠大時,其計算資源的缺陷仍然是致命的。此外,部分研究者使用圖卷積神經網絡對點云進行特征提取,但是這類方法需要耗費較長的模型訓練時間和推理時間,對一些計算成本敏感和實時性較高的應用并不友好。
(4)實例區(qū)分模糊問題:針對三維形狀補全或部分場景補全任務,本文關注到大部分方法都遵循編碼器-解碼器的范式,而這種范式易導致補全的不同實例存在區(qū)分性不足的問題。不同實例包括相同對象類別下的實例和不同對象類別下的實例。
(5)數(shù)據(jù)集類別不平衡問題:深度學習能夠在大規(guī)模均衡數(shù)據(jù)集上取得顯著成績。但現(xiàn)有的三維補全數(shù)據(jù)集,特別是室外數(shù)據(jù)集,其類別分布存在嚴重的不平衡,如:Semantic KITTI 數(shù)據(jù)集[35]。這導致樣本量少的類別包含的特征過少,模型學習效果大打折扣,難以完成高質量的補全任務。
針對上述三維補全研究存在的主要問題,并結合實際的應用場景和當下的研究熱點,本文提出未來可能的研究方向:
(1)針對幾何細節(jié)丟失問題,可以從以下兩個層面展開研究:(a)常見的三維數(shù)據(jù)表示形式包括點云、體素和網格。點云表示具有存儲空間小和表征能力強的特點,但它不能描述拓撲結構,亦不能產生水密的表面[65]。體素表示易受分辨率和計算存儲空間的限制[69]。網格表示易受固定拓撲結構的限制[75]。相較于點云、體素和網格的離散表示形式,隱式函數(shù)能夠支持以任意分辨率的形狀恢復,處理不同的拓撲結構,并且輸出結果是連續(xù)的。因此,基于隱式函數(shù)的三維補全是值得進一步探討的研究方向。(b)通過引入幾何先驗信息、語義先驗信息、顏色先驗信息和場景圖信息解開復雜場景中不同對象之間的糾纏和構建不同語義對象之間的關聯(lián),從而進一步提升幾何信息預測的正確性,是值得進一步探討的研究方向。
(2)針對模型泛化不足問題,可以從以下三個方面進行探索:(a)由于在真實世界中收集大量完整的3D 數(shù)據(jù)是耗時甚至是不現(xiàn)實的,因此,無需匹配對的無監(jiān)督三維補全方法仍是接下來值得探討的方向。(b)對于合成數(shù)據(jù)集與真實數(shù)據(jù)集之間存在的域差距,使用無監(jiān)督域自適應方法縮小域差距是值得進一步探討的方向。(c)現(xiàn)有的三維補全方法依賴于已經對齊的訓練數(shù)據(jù)進行訓練,其測試的數(shù)據(jù)也需滿足與訓練數(shù)據(jù)一致的對齊要求,否則訓練好的模型在擴展到未對齊場景中時無法實現(xiàn)有效的補全。因此,實現(xiàn)三維補全算法在未對齊情況下的局部觀測輸入補全是值得進一步探討的研究方向。
(3)針對計算資源受限問題,可以分別從以下兩個角度深入挖掘:(a)使用隱式函數(shù)表征場景信息可以大幅降低內存的占用。但在場景補全任務中,模型預測的不確定性問題還有待進一步的解決。因此,結合概率統(tǒng)計學知識提升補全場景質量是很有價值的研究方向。(b)針對一些計算成本敏感的應用,通過模型壓縮[127]或圖濃縮技術[88]開發(fā)更輕便的實時應用模型是一個有趣和值得探討研究方向。
(4)針對實例區(qū)分模糊問題,可以從以下兩個方面進行探索:(a)從對比學習和實例持續(xù)學習的角度展開研究,實現(xiàn)不同實例的可區(qū)分性是值得進一步探討的研究方向。(b)引入額外的語義信息來指導三維補全任務是值得進一步探討的研究方向。例如,如果知道一個椅子缺失腿的數(shù)量是4 而不是3,那么模型在面對數(shù)據(jù)分布偏差時將提升預測結果的可靠性。
(5)針對數(shù)據(jù)集類別的不平衡問題,采用類別再平衡策略和主動學習策略緩解數(shù)據(jù)集類別的不平衡是值得進一步探討的方向。
(6)現(xiàn)有的三維補全方法還停留在相對獨立的領域展開研究,結合具體應用場景的工作相對較少。盡管已有相關工作將三維補全技術應用于目標檢測這類高階任務。然而,在高精度地形圖構建、數(shù)字虛擬人重建、機械臂精確抓取等應用領域,三維補全作為一種輔助技術的潛力還未充分挖掘。因此,基于三維補全技術結合具體應用領域的研究是值得進一步探討的方向。
三維補全是計算機視覺研究的基礎性課題,可以指導多種下游高階視覺任務的學習,且具有重要的理論意義和廣闊的應用前景,已成為計算機視覺領域的研究熱點。本文分別從三維形狀補全、三維場景補全和三維語義場景補全三方面對近年來的相關研究工作進行了梳理和小結,討論了現(xiàn)有的三維補全方法所存在的問題,并從技術角度提出了未來的研究趨勢。總而言之,深度學習為解決三維補全問題提供了新的技術,取得了較為顯著的成果,但將其應用到真實場景中仍然存在很多問題。后續(xù)可以在計算資源、模型泛化性、補全質量等方面開展進一步的研究,這對于促進三維視覺領域的發(fā)展具有重要的意義。