>>點擊進入→3D視覺之心技術(shù)交流群 擺脫稀疏輸入的限制從一組視角集合中進行新視角合成(NVS),盡管在照片級真實感渲染方面取得了成效,但對密集支持視角的要求阻礙了其實用性。先前的研究通過利用神經(jīng)輻射場(NeRF),一種能夠捕捉場景細節(jié)的強大隱式3D表示,結(jié)合體積渲染技術(shù),提出了減少視角需求的方法。它們通常會導(dǎo)致巨大的計算需求,進而對實時性能產(chǎn)生不利影響。在實現(xiàn)實時渲染速度和理想的照片級真實感、高分辨率輸出質(zhì)量之間仍存在明顯差距。 本文介紹的FSGS(Few-Shot Gaussian Splatting)[1]研究了在稀疏輸入上部署3D-GS的挑戰(zhàn)。3D-GS的有效性關(guān)鍵在于稠密化過程,它將稀疏的初始點云轉(zhuǎn)變?yōu)楦敿毜?D環(huán)境表示。然而,由空間梯度決定的新高斯的放置往往噪聲較大且代表性不足,特別是在稀疏視角場景中。此外,在視角數(shù)量有限的情況下依賴光度損失通常會導(dǎo)致紋理過于平滑。 ![]() 為了解決這些問題,F(xiàn)SGS引入了基于鄰近性的高斯解池,一種專門針對稀疏輸入的新策略。
具體方法概述如圖2所示。FSGS處理從靜態(tài)場景捕獲的一組有限圖像。使用結(jié)構(gòu)化運動(SfM)軟件COLMAP導(dǎo)出相機姿態(tài)和點云。3D高斯的初始化基于稀疏點云,包含顏色、位置以及形狀和不透明度的預(yù)定義轉(zhuǎn)換規(guī)則等屬性。通過實現(xiàn)基于鄰近性的高斯解池策略,解決了極其稀疏點的問題。該方法通過評估現(xiàn)有高斯之間的鄰近性并在最具代表性的區(qū)域放置新的高斯,從而密集化高斯并填充空白區(qū)域,增強了場景細節(jié)。為了減輕標(biāo)準(zhǔn)3D-GS在稀疏視角數(shù)據(jù)下的過擬合問題,F(xiàn)SGS引入了圍繞訓(xùn)練相機生成偽相機視點的方法。該方法與幾何正則化相結(jié)合,引導(dǎo)模型準(zhǔn)確重建場景的幾何結(jié)構(gòu)。 問題表述3D高斯?jié)姙R(3D-GS)通過一組3D高斯來顯式表示3D場景,具有如下屬性:位置向量 和協(xié)方差矩陣。每個高斯按照3D高斯分布影響3D空間中的點: ![]() 為了確保是半正定的并且具有實際物理意義,通過進行分解,其中是表示旋轉(zhuǎn)的四元數(shù)矩陣,是縮放矩陣。 每個高斯還存儲一個不透明度對數(shù)值,以及由個球諧系數(shù)(SH系數(shù))表示的外觀特征:。其中是度數(shù)為D的SH系數(shù)的數(shù)量。為了渲染2D圖像,3D-GS對所有有助于像素的高斯進行排序,并使用以下函數(shù)混合重疊的高斯: ![]() 其中是由第個高斯的SH系數(shù)計算得出的顏色。Σ' ∈ R^^{2x2}Σ'Σ' = JWΣW^TJ^TJW$是視圖變換矩陣。3D-GS中引入了一種啟發(fā)式高斯密集化方案,其中高斯基于視圖空間位置梯度的平均幅度超過閾值來進行密集化。雖然這種方法在使用全面的SfM點進行初始化時是有效的,但在稀疏視角輸入圖像的情況下,它不足以完全覆蓋整個場景。此外,一些高斯趨向于增長為極大的體積,導(dǎo)致結(jié)果在訓(xùn)練視角上過擬合,對新視角的泛化能力較差(見圖3)。 ![]() 然而,3D-GS是從SfM點初始化的,其性能嚴(yán)重依賴于初始化點的數(shù)量和準(zhǔn)確性。盡管后續(xù)的高斯密集化可以在欠重建和過重建的區(qū)域增加高斯數(shù)量,但在少樣本設(shè)置下,這種直接策略難以滿足需求:初始化不足導(dǎo)致過于平滑的結(jié)果,并且在訓(xùn)練視角上過擬合。 基于鄰近性的高斯解池場景建模的粒度在很大程度上取決于表示場景的3D高斯的質(zhì)量;因此,解決有限的3D場景覆蓋問題對于有效的稀疏視角建模至關(guān)重要。 鄰近性評分和圖構(gòu)建在高斯優(yōu)化過程中,我們構(gòu)建了一個有向圖,稱為鄰近圖,通過計算鄰近性(即歐幾里得距離)將每個現(xiàn)有高斯與其最近的K個鄰居連接起來。具體來說,我們將起始高斯稱為“源”高斯,而將尾部的高斯稱為“目標(biāo)”高斯,這是“源”高斯的K個鄰居之一。這些“目標(biāo)”高斯通過以下規(guī)則確定: ![]() 這里,通過公式計算,表示高斯和高斯的中心之間的歐幾里得距離。分配給高斯的鄰近性評分計算為其個最近鄰居的平均距離: ![]() 鄰近圖在優(yōu)化過程中隨著密集化或修剪過程進行更新。實際上將設(shè)置為3。 高斯解池提出了基于鄰近圖和每個高斯的鄰近性評分來解池高斯。具體來說,如果高斯的鄰近性評分超過閾值,將在每條連接“源”和“目標(biāo)”高斯的邊的中心生成一個新的高斯,如圖4所示。新創(chuàng)建的高斯的縮放和不透明度屬性設(shè)置為匹配“目標(biāo)”高斯的屬性。同時,其他屬性如旋轉(zhuǎn)和SH系數(shù)初始化為零。高斯解池策略鼓勵新密集化的高斯分布在代表性位置周圍,并在優(yōu)化過程中逐步填補觀測間隙。 ![]() 高斯優(yōu)化的幾何引導(dǎo)通過高斯解池實現(xiàn)密集覆蓋后,我們應(yīng)用具有稀疏視角線索的光度損失來優(yōu)化高斯。然而,在稀疏視角設(shè)置中,不足的視差限制了3D高斯優(yōu)化的全局一致方向,容易在訓(xùn)練視角上過擬合,并且在新視角上的泛化能力較差。為了在優(yōu)化中引入更多的正則化,我們提出創(chuàng)建一些訓(xùn)練中未見過的虛擬相機,并將像素級的幾何對應(yīng)作為額外的正則化。 合成偽視角為了應(yīng)對稀疏訓(xùn)練視角過擬合的固有問題,我們采用未觀察到的(偽)視角增強,通過2D先驗?zāi)P蛷膱鼍爸幸敫嘞闰炛R。合成視角是從歐幾里得空間中兩個最近的訓(xùn)練視角中采樣,計算平均相機方向,并在它們之間插值出一個虛擬視角。隨機噪聲應(yīng)用于相機位置的3個自由度(3DoF),如公式5所示,然后渲染圖像。 ![]() 其中,表示相機位置,而q是從兩個相機中平均得到的四元數(shù)表示的旋轉(zhuǎn)。通過在線合成偽視角,可以實現(xiàn)動態(tài)幾何更新,因為3D高斯將逐步更新,減少過擬合的風(fēng)險。 從單目深度中注入幾何一致性使用預(yù)訓(xùn)練的Dense Prediction Transformer(DPT)在訓(xùn)練和偽視角上生成單目深度圖,DPT使用140萬圖像-深度對進行訓(xùn)練,是一個便捷且有效的選擇。為了減輕真實場景尺度和估計深度之間的尺度模糊性,在估計和渲染的深度圖上引入了一個放松的相對損失,皮爾遜相關(guān)系數(shù)。它測量2D深度圖之間的分布差異,遵循以下公式: ![]() 這個放松的約束允許在不受絕對深度值不一致性影響的情況下對齊深度結(jié)構(gòu)。 可微分深度光柵化為了實現(xiàn)從深度先驗到引導(dǎo)高斯訓(xùn)練的反向傳播,我們實現(xiàn)了一個可微分深度光柵化器,允許接收渲染深度和估計深度之間的誤差信號。在3D-GS中使用alpha混合渲染進行深度光柵化,其中有助于像素的有序高斯的z-buffer被累積以生成深度值: ![]() 其中表示第個高斯的z-buffer,與公式2中的相同。這個可微分實現(xiàn)支持深度相關(guān)損失。 優(yōu)化綜合所有方法,可以總結(jié)訓(xùn)練損失為: ![]() 其中,L1和代表預(yù)測圖像與真實圖像C之間的光度損失項。表示在訓(xùn)練視角和合成偽視角上的幾何正則化項。通過網(wǎng)格搜索,將、、分別設(shè)置為0.8、0.2、0.05。偽視角采樣在2000次迭代后啟用,以確保高斯能夠大致代表場景。 實驗效果![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 總結(jié)一下FSGS是一種實時的少視角新視圖合成框架,即使在視角重疊不足的情況下也能工作。FSGS從極度稀疏的點云開始,采用基于點的表示,并通過測量每個高斯點與其鄰居的鄰近性來提出一種有效的鄰近性引導(dǎo)高斯解池技術(shù)。通過生成偽視角和使用單目相對深度對應(yīng)關(guān)系來引導(dǎo)擴展的場景幾何,F(xiàn)SGS可以:
局限性:無法推廣到訓(xùn)練期間未觀察到的遮擋視角。 參考[1] FSGS: Real-Time Few-shot View Synthesis using Gaussian Splatting 投稿作者為『3D視覺之心知識星球』特邀嘉賓,歡迎加入交流! |
|