國(guó)家企業(yè)信息年報(bào)系統(tǒng)優(yōu)化方案
簡(jiǎn)介
論文地址
使用擴(kuò)散模型來推斷文本相關(guān)圖像作為內(nèi)容先驗(yàn),并使用單目深度估計(jì)方法來提供幾何先驗(yàn),并引入了一種漸進(jìn)的場(chǎng)景繪制和更新策略,保證不同視圖之間紋理和幾何的一致性
實(shí)現(xiàn)流程
簡(jiǎn)單而言:
文本-圖片擴(kuò)散模型生成一張初始圖片 I 0 I_0 I0?,將 I 0 I_0 I0?扭曲,得到同一z平面的多個(gè)圖片,也就是 Support set S 0 S_0 S0?,注意,這里的 S 0 S_0 S0?是由 I 0 I_0 I0?扭曲得到,所以存在很多空白,但是我們可以根據(jù) S 0 S_0 S0?重建初始的NeRF模型。
利用初始NeRF模型渲染新視角圖片,這是殘缺的,但是可以通過擴(kuò)散模型來補(bǔ)全,注意,為了保持場(chǎng)景的一致性,視角從 I 0 I_0 I0?旁邊小幅度的偏移,讓擴(kuò)散模型盡量多的從 I 0 I_0 I0?中獲取信息,然后就可以更新NeRF模型了。
由于圖像扭曲的影響,必然導(dǎo)致圖像尺度差距和距離差距(體現(xiàn)在空間點(diǎn)深度在不同視角存在差異的情況)。為此,采用了深度對(duì)齊策略。
Support Set
采用了 DIBR(Depth-image-based rendering (dibr), compression, and transmission for a new approach on 3d-tv) 方法生成 S 0 S_0 S0?
具體而言為:
從擴(kuò)散模型中獲得初始圖片 I 0 I_0 I0? ,再通過深度預(yù)測(cè)網(wǎng)絡(luò)獲得深度 D 0 D_0 D0?,對(duì)于 I ? 0 I-0 I?0的每個(gè)像素q 和其深度 z,利用下述公式進(jìn)行轉(zhuǎn)換,得到 S 0 S_0 S0?。
K K K 和 P i P_i Pi? 是視圖 i 中的固有矩陣和相機(jī)姿態(tài)。
為了在大視野范圍內(nèi)生成3D場(chǎng)景,將相機(jī)位置設(shè)置在輻射場(chǎng)內(nèi)部,并使相機(jī)向外看,但是該方法不能像其他設(shè)置相機(jī)查看內(nèi)部的方法那樣生成單獨(dú)的3D對(duì)象。
以當(dāng)前攝像機(jī)位置 P 0 P_0 P0? 為中心,對(duì)其半徑為 r 的環(huán)繞圓,生成有相同的 z 坐標(biāo),統(tǒng)一采樣 n 點(diǎn)作為攝像機(jī)位置,并使用與當(dāng)前視圖相同的攝像機(jī)方向來生成支持集中的翹曲視圖,一般 r=0.2,n=8,偏移方向一般為 上、下、左、右、上左、下左、上右和下右。
這時(shí)候就可以開始重建初始三維模型了。
Text-Driven Inpainting
除了初始視圖 I 0 I_0 I0? 之外的渲染結(jié)果不可避免地會(huì)有內(nèi)容缺,這時(shí)候就可以使利用基于預(yù)訓(xùn)練擴(kuò)散模型的文本驅(qū)動(dòng)的補(bǔ)圖方法了。
首先,渲染一個(gè)新視角 P 1 P_1 P1? 圖像 I k R I^R_k IkR?,通過對(duì)比 I 0 I_0 I0?扭曲到 P 1 P_1 P1?后的圖像和 I k R I^R_k IkR?,我們得到了掩膜 M k M_k Mk?。然后就丟給擴(kuò)散模型,這樣就擴(kuò)展了場(chǎng)景信息。
但是呢,擴(kuò)散模型的生成質(zhì)量不一定很好,因此采用多次繪制過程,通過CLIP的圖像編碼器評(píng)估,比較補(bǔ)全的圖像與初始圖像的差距,選出最優(yōu)的。論文采用30個(gè)候選。
Depth Alignment
補(bǔ)全的圖片與初始的圖片在重疊部分會(huì)存在深度沖突。體現(xiàn)為:
尺度差距: 圖像中沙發(fā)和墻壁對(duì)應(yīng)的空間點(diǎn)的距離應(yīng)該是唯一的,但是在不同視圖可能存在差異
距離差距: 不同視圖擬合的空間點(diǎn)不一致
論文通過補(bǔ)償平均比例尺和距離差異來全局對(duì)齊這兩個(gè)深度圖
對(duì)應(yīng)渲染圖像 和補(bǔ)全的圖像,表示為 { ( x j R , x j E ) } j = 1 M \{(x^R_j,x^E_j)\}^M_{j=1} {(xjR?,xjE?)}j=1M?,計(jì)算平均尺度分?jǐn)?shù) s 和深度偏移 δ 來近似平均尺度和距離差異
縮放后的點(diǎn) x ^ j E = s ? x j E \hat{x}^E_j = s \cdot x^E_j x^jE?=s?xjE? ,z(x) 表示預(yù)測(cè)深度
這里定義全局深度 D k g l o b a l = s ? D k E + δ D^{global}_k = s \cdot D^E_k + \delta Dkglobal?=s?DkE?+δ,最小化渲染深度接近全局深度
Progressive Inpainting and Updating
為了保證場(chǎng)景繪制過程中視圖的一致性,避免幾何和外觀的模糊性,采用逐視圖更新亮度場(chǎng)的漸進(jìn)式繪制和更新策略
在每次補(bǔ)全后更新亮度場(chǎng)。這意味著之前繪制的內(nèi)容將在后續(xù)的效果圖中反映出來,這些部分將被視為已知區(qū)域,不會(huì)在其他視圖中再次繪制
受(Zeroshot text-guided object generation with dream fields)啟發(fā),設(shè)計(jì)了一個(gè)深度感知透射損失 L T L_T LT?,以促使NeRF網(wǎng)絡(luò)在相機(jī)光線到達(dá)預(yù)期深度之前產(chǎn)生空密度
m(t)是一個(gè)掩膜,當(dāng) t< z ^ \hat{z} z^ 時(shí),m(t) = 1,否則為0, z ^ \hat{z} z^是對(duì)齊深度圖 D ^ \hat{D} D^ 中逐像素深度值,T (T)為累積透過率
效果