自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

高質(zhì)量多視角圖像生成,完美復(fù)刻場(chǎng)景材質(zhì)!SFU等提出MVDiffusion

人工智能 新聞
不怕多視角圖像變化大,MVDiffusion整合圖片全局意識(shí),內(nèi)容一致性更高!

逼真的圖像生成在虛擬現(xiàn)實(shí)、增強(qiáng)現(xiàn)實(shí)、視頻游戲和電影制作等領(lǐng)域有廣泛應(yīng)用。

隨著擴(kuò)散模型(Diffusion Models)在近兩年的快速發(fā)展,圖像生成取得了很大突破,從Stable Diffusion衍生出的一系列根據(jù)文本描述產(chǎn)生圖像的開(kāi)源或商業(yè)模型已經(jīng)對(duì)設(shè)計(jì)、游戲等領(lǐng)域產(chǎn)生了巨大影響。

然而,如何根據(jù)給定的文本或其他條件,產(chǎn)生高質(zhì)量的多視角圖像(multiview images)仍然是一個(gè)挑戰(zhàn),已有的方法在多視圖一致性上存在明顯的缺陷。

目前常見(jiàn)的方法可以大致分為兩類(lèi)。

第一類(lèi)方法致力于生成一個(gè)場(chǎng)景的圖片以及深度圖,并得到對(duì)應(yīng)的mesh,如Text2Room,SceneScape——首先用Stable Diffusion生成第一張圖片,然后使用圖像扭轉(zhuǎn)(Image Warping)和圖像補(bǔ)全(image inpainting)的自回歸方式生成后續(xù)的圖片以及深度圖。

但是,這樣的方案容易導(dǎo)致錯(cuò)誤在多張圖片的生成過(guò)程中逐漸累積,并且通常存在閉環(huán)問(wèn)題(比如在相機(jī)旋轉(zhuǎn)一圈回到起始位置附近時(shí),生成的內(nèi)容與第一張圖片并不完全一致),導(dǎo)致其在場(chǎng)景規(guī)模較大或圖片間視角變化較大時(shí)的效果欠佳。

第二類(lèi)方法通過(guò)拓展擴(kuò)散模型的生成算法,并行生成多張圖片以產(chǎn)生比單張圖片更豐富的內(nèi)容(如產(chǎn)生360度全景圖,或?qū)⒁粡垐D片的內(nèi)容向兩側(cè)無(wú)限外推),如MultiDiffusion和DiffCollage。但是,由于沒(méi)有考慮相機(jī)模型,這類(lèi)方法的生成結(jié)果并不是真正的全景圖。

MVDiffusion的目標(biāo)是產(chǎn)生內(nèi)容上嚴(yán)格符合給定的相機(jī)模型,且全局語(yǔ)義統(tǒng)一的多視角圖片。其方法的核心思想是同步去噪(simultaneous denoising)和基于圖片之間對(duì)應(yīng)關(guān)系(correspondence)的一致性學(xué)習(xí)。

論文鏈接:https://arxiv.org/abs/2307.01097

項(xiàng)目網(wǎng)站:https://mvdiffusion.github.io/

Demo: https://huggingface.co/spaces/tangshitao/MVDiffusion

代碼:https://github.com/Tangshitao/MVDiffusion

發(fā)表會(huì)議:NeurIPS(spotlight)

MVDiffusion的目標(biāo)是產(chǎn)生內(nèi)容高度一致且全局語(yǔ)義統(tǒng)一的多視角圖片,其方法的核心思想是同步去噪(simultaneous denoising)和基于圖片之間對(duì)應(yīng)關(guān)系的全局意識(shí)(global awareness)。

具體地,研究人員對(duì)已有的文本-圖片擴(kuò)散模型(如Stable Diffusion)進(jìn)行拓展,首先讓其并行地處理多張圖片,并進(jìn)一步在原本的UNet中加入額外的「Correspondence-aware Attention」機(jī)制來(lái)學(xué)習(xí)多視角間的一致性和全局的統(tǒng)一性。

通過(guò)在少量的多視角圖片訓(xùn)練數(shù)據(jù)上進(jìn)行微調(diào),最后得到的模型能夠同步生成內(nèi)容高度一致的多視角圖片。

MVDiffusion已經(jīng)在三種不同的應(yīng)用場(chǎng)景取得了良好的效果:

1. 根據(jù)文字生成多視圖以拼接得到全景圖;

2. 將透視圖像外推(outpainting)得到完整的360度全景圖;

3. 為場(chǎng)景生成材質(zhì)(texture)。

應(yīng)用場(chǎng)景展示

應(yīng)用1:全景圖生成(根據(jù)文字)

以生成全景圖(panorama)為例,輸入一段描述場(chǎng)景的文字(prompt),MVDIffusion能生成一個(gè)場(chǎng)景的多視角圖片。

如輸入「This kitchen is a charming blend of rustic and modern, featuring a large reclaimed wood island with marble countertop, a sink surrounded by cabinets. To the left of the island, a stainless-steel refrigerator stands tall. To the right of the sink, built-in wooden cabinets painted in a muted」,能得到以下8張多視角圖片:

圖片

這8張圖片能夠拼接成一張全景圖:

MVDiffusion也支持為每張圖片提供不同的文字描述,但是這些描述之間需要保持語(yǔ)義上的一致性。

應(yīng)用2:全景圖生成(根據(jù)一張透視圖像)

MVDiffusion能夠?qū)⒁粡埻敢晥D像外推(outpainting)成完整的360度全景圖。

比,如輸入下面這張透視圖:

MVDiffusion能進(jìn)一步生成下面的全景圖:

可以看到,生成的全景圖在語(yǔ)義上對(duì)輸入圖片進(jìn)行了擴(kuò)展,而且最左和最右的內(nèi)容是相連的(沒(méi)有閉環(huán)問(wèn)題)。

應(yīng)用3:生成場(chǎng)景材質(zhì)

給定一個(gè)無(wú)材質(zhì)的場(chǎng)景mesh,MVDiffusion可以為其生成材質(zhì)(texture)。

具體地,我們首先通過(guò)渲染mesh得到多視角的深度圖(depth map),通過(guò)相機(jī)位姿(pose)以及深度圖,我們可以獲得多視角圖片的像素之間的對(duì)應(yīng)關(guān)系。

接著,MVDiffusion以多視角depth map作為條件,同步生成一致的多視角RGB圖片。

因?yàn)樯傻亩嘁暯菆D片能保持內(nèi)容的高度一致,將它們?cè)偻痘豰esh,即可以得到高質(zhì)量的帶材質(zhì)的mesh(textured mesh)。

更多效果示例

全景圖生成




 值得一提的是,在這個(gè)應(yīng)用場(chǎng)景中,雖然訓(xùn)練MVDiffusion時(shí)用到的多視角圖片數(shù)據(jù)都是來(lái)自室內(nèi)場(chǎng)景的全景圖,風(fēng)格單一。

但是,由于MVDiffusion沒(méi)有改變?cè)镜腟table Diffusion的參數(shù)而只是訓(xùn)練了新加入的Correspondence-aware Attention。

最后,模型依然能根據(jù)給定的文本產(chǎn)生各種不同風(fēng)格的多視角圖片(如室外,卡通等)。

單視圖外推

圖片


圖片


圖片

場(chǎng)景材質(zhì)生成

具體方法介紹我們將先介紹MVDiffusion在三個(gè)不同的任務(wù)中具體的圖片生成流程,最后再介紹方法的核心,「Correspondence-aware Attention」模塊。圖1:MVDiffusion概覽

1. 全景圖生成(根據(jù)文字)

MVDiffusion同步生成8張帶有重疊的圖片(perspective image),然后再將這8中圖片縫合(stitch)成全景圖。在這8張透視圖中,每?jī)蓮垐D之間由一個(gè)3x3單應(yīng)矩陣(homographic matrix)確定其像素對(duì)應(yīng)關(guān)系。

在具體的生成過(guò)程中,MVDiffusion首先通過(guò)高斯隨機(jī)初始化生成8個(gè)視角的圖片。

然后,將這8張圖片輸入到一個(gè)具有多分支的Stable Diffusion預(yù)訓(xùn)練Unet網(wǎng)絡(luò)中,進(jìn)行同步去噪(denoising)得到生成結(jié)果。

其中UNet網(wǎng)絡(luò)中加入了新的「Correspondence-aware Attention」模塊(上圖中淡藍(lán)色部分),用于學(xué)習(xí)跨視角之間的幾何一致性,使得這8張圖片可以被拼接成一張一致的全景圖。

2. 全景圖生成(根據(jù)一張透視圖片)

MVDiffusion也可以將單張透視圖補(bǔ)全成全景圖。與全景圖生成相同,MVDiffusion將隨機(jī)初始化的8個(gè)視角圖片(包括透視圖對(duì)應(yīng)的視角)輸入到多分支的Stable Diffusion Inpainting預(yù)訓(xùn)練的UNet網(wǎng)絡(luò)中。

不同的是,Stable Diffusion Inpainting模型中的UNet通過(guò)額外的輸入掩碼(mask)來(lái)區(qū)分作為條件的圖片和將要生成的圖片。

對(duì)于透視圖所對(duì)應(yīng)的視角,這個(gè)掩碼是1,這個(gè)分支的UNet會(huì)直接恢復(fù)該透視圖。對(duì)于其他視角,這個(gè)掩碼是0,對(duì)應(yīng)分支的UNet會(huì)生成新的透視圖。

同樣地,MVDiffusion使用「Correspondence-aware Attention」模塊來(lái)學(xué)習(xí)生成圖片與條件圖片之間的幾何一致性與語(yǔ)義統(tǒng)一性。

3. 場(chǎng)景材質(zhì)生成

MVDiffusion首先基于深度圖以及相機(jī)位姿生成一條軌跡上的RGB圖片,然后使用TSDF fusion將生成的RGB圖片與給定的深度圖合成mesh。

RGB圖片的像素對(duì)應(yīng)關(guān)系可以通過(guò)深度圖和相機(jī)位姿得到。

與全景圖生成一樣,我們使用多分支UNet,并插入「Correspondence-aware Attention」來(lái)學(xué)習(xí)跨視角之間的幾何一致性。

4. Correspondence-aware Attention機(jī)制

「Correspondence-aware Attention」(CAA),是MVDiffusion的核心,用于學(xué)習(xí)多視圖之間的幾何一致性和語(yǔ)義統(tǒng)一性。

MVDiffusion在Stable Diffusion UNet中的每個(gè)UNet block之后插入「Correspondence-aware Attention」block。CAA通過(guò)考慮源特征圖和N個(gè)目標(biāo)特征圖來(lái)工作。

對(duì)于源特征圖中的一個(gè)位置,我們基于目標(biāo)特征圖中的對(duì)應(yīng)像素及其鄰域來(lái)計(jì)算注意力輸出。

圖片

具體來(lái)說(shuō),對(duì)于每個(gè)目標(biāo)像素t^l,MVDiffusion通過(guò)在(x/y)坐標(biāo)上添加整數(shù)位移(dx/dy)來(lái)考慮一個(gè)K x K的鄰域,其中|dx|<K/2并且|dy|< K/2。

在實(shí)際使用中,MVDiffusion使用K=3,并選擇9點(diǎn)的鄰域來(lái)為全景圖提高質(zhì)量,而對(duì)于受幾何條件限制的多視圖圖像生成,為了提升運(yùn)行效率選擇使用K=1。

CAA模塊的計(jì)算遵循標(biāo)準(zhǔn)的注意力機(jī)制,如上圖的公式所示,其中W_Q、W_K和W_V是query、key和value矩陣的可學(xué)習(xí)權(quán)重;目標(biāo)特征不位于整數(shù)位置,而是通過(guò)雙線(xiàn)性插值獲得的。

關(guān)鍵的區(qū)別是基于源圖像中的對(duì)應(yīng)位置s^l與s之間的2D位移(全景)或1D深度誤差(幾何)向目標(biāo)特征添加了位置編碼。

在全景生成中(應(yīng)用1和應(yīng)用2),這個(gè)位移提供了本地鄰域中的相對(duì)位置。

而在深度到圖像生成中(應(yīng)用3),視差提供了關(guān)于深度不連續(xù)或遮擋的線(xiàn)索,這對(duì)于高保真圖像生成非常重要。

注意,位移是一個(gè)2D(位移)或1D(深度誤差)向量,MVDiffusion將標(biāo)準(zhǔn)頻率編碼應(yīng)用于x和y坐標(biāo)中的位移。

責(zé)任編輯:張燕妮 來(lái)源: 新智元
相關(guān)推薦

2024-10-08 09:25:00

3D模型生成

2023-11-30 13:04:56

LCM圖像

2025-01-07 13:19:48

模型AI訓(xùn)練

2023-08-21 10:57:17

3D模型

2011-05-31 13:43:46

外鏈

2017-07-14 09:54:47

代碼函數(shù)程序

2025-02-06 10:45:00

2024-02-20 13:44:00

AI數(shù)據(jù)

2023-11-20 12:49:01

2021-08-08 14:26:24

SQL數(shù)據(jù)庫(kù)開(kāi)發(fā)

2023-01-18 16:13:32

模型

2025-01-14 09:24:46

2024-01-07 23:05:19

圖像2D

2012-09-13 10:44:18

Python代碼

2011-03-04 10:11:09

JavascriptAPI

2011-07-20 15:26:52

C++

2015-08-19 08:54:23

Android開(kāi)發(fā)框架

2023-10-15 12:07:09

2023-10-20 12:54:00

數(shù)據(jù)訓(xùn)練
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)