編輯任何場景! 3DitScene:通過語言引導(dǎo)的解耦 Gaussian Splatting開源來襲!
文章:https://arxiv.org/pdf/2405.18424
項目:https://zqh0253.github.io/3DitScene/
HuggingFace: https://huggingface.co/spaces/qihang/3Dit-Scene
場景圖像編輯在娛樂、攝影和廣告設(shè)計中至關(guān)重要?,F(xiàn)有方法僅專注于2D個體對象或3D全局場景編輯,導(dǎo)致缺乏一種在3D層面上以不同粒度有效控制和操作場景的統(tǒng)一方法。
本研究提出了3DitScene,這是一種新穎且統(tǒng)一的場景編輯框架,利用語言引導(dǎo)的解耦Gaussian Splatting實現(xiàn)從2D到3D的無縫編輯,允許對場景組成和個體對象進行精確控制。首先結(jié)合通過生成先驗和優(yōu)化技術(shù)細化的3D Gaussian Splatting。然后通過CLIP引入的語言特征為3D幾何體賦予語義,實現(xiàn)對象的解耦。借助解耦的Gaussian Splatting,3DitScene允許在全局和個體層面上進行操作,革新了創(chuàng)意表達并增強了對場景和對象的控制。實驗結(jié)果展示了3DitScene在場景圖像編輯中的有效性和多樣性。
介紹
場景圖像編輯在娛樂、專業(yè)攝影和廣告設(shè)計等多個領(lǐng)域具有重要意義。內(nèi)容編輯能夠為觀眾創(chuàng)造沉浸式和引人入勝的體驗,有效傳達藝術(shù)愿景,并實現(xiàn)預(yù)期的美學(xué)效果。隨著深度生成建模的快速發(fā)展,許多嘗試已被用于有效編輯圖像。然而,這些方法遇到了限制,阻礙了它們的潛力。
以往的方法主要集中在2D圖像空間的場景編輯。它們通常依賴于生成先驗,如生成對抗網(wǎng)絡(luò)(GANs)和擴散模型(DM),并采用修改交叉注意力機制和優(yōu)化網(wǎng)絡(luò)參數(shù)等技術(shù)來編輯場景圖像中的外觀和對象身份。盡管有些嘗試擴展了這些方法到3D編輯,但它們忽視了3D線索,在改變相機姿態(tài)時難以保持3D一致性。此外,這些方法通常專注于全局場景,缺乏準確解耦對象的能力,導(dǎo)致在3D層面上對個體對象的控制有限。
為了編輯任意場景圖像并實現(xiàn)對場景及其個體對象的3D控制,本文提出了3DitScene,一種利用新場景表示的場景編輯框架——語言引導(dǎo)的解耦Gaussian Splatting。具體來說,給定的圖像首先被投影到3D Gaussian Splatting中,這些Gaussian Splatting通過2D生成先驗進一步細化和豐富。因此獲得了一個綜合的3D場景表示,自然支持給定圖像的新視角合成。
此外,CLIP的語言特征被提取到相應(yīng)的3D Gaussian Splatting中,引入語義到3D幾何中。這些語義3D Gaussian Splatting幫助從整個場景表示中解耦出個體對象,形成語言引導(dǎo)的解耦Gaussian Splatting用于場景分解。它們還允許更用戶友好的交互,即用戶可以通過文本查詢特定對象或興趣點。為此,3DitScene實現(xiàn)了從2D到3D的無縫編輯,并允許在全局和個體層面上進行修改,賦予創(chuàng)作者對場景構(gòu)圖和對象級別編輯的精確控制。
這一流程稱為3DitScene。不同于以前專注于單一類型編輯的工作,3DitScene在一個統(tǒng)一框架內(nèi)整合了編輯需求。示意圖展示了3DitScene的多功能性,展示了其在各種場景圖像中的應(yīng)用。在不同設(shè)置下對3DitScene進行了評估,結(jié)果顯示相比基線方法有顯著改進。
相關(guān)工作
使用生成模型進行圖像編輯隨著生成對抗網(wǎng)絡(luò)(GANs)和擴散模型的發(fā)展,2D圖像合成領(lǐng)域取得了顯著進展。許多研究利用生成模型中embedding的豐富先驗知識進行圖像編輯。一些研究使用GANs進行各種圖像編輯任務(wù),包括圖像到圖像翻譯、潛在空間操作以及文本引導(dǎo)的操作。
然而,由于在大規(guī)模數(shù)據(jù)上訓(xùn)練的限制,GANs在處理現(xiàn)實場景圖像時常表現(xiàn)不佳。隨著擴散模型的顯著進步,社區(qū)越來越關(guān)注利用強大的文本到圖像擴散模型進行真實圖像編輯。然而,這些方法局限于2D領(lǐng)域,難以在3D空間中編輯對象。同時,其他研究試圖解決3D感知的圖像編輯,但在編輯過程中引入了不一致性,且無法改變整個場景的相機視角。相反,本文的模型利用顯式3D高斯將2D圖像轉(zhuǎn)換為3D空間,同時借助語言引導(dǎo)解耦對象。該方法不僅使本文的模型能夠一致地執(zhí)行3D感知對象編輯,還能促進場景級的新視角合成。
單視角3D場景合成在3D場景生成領(lǐng)域中,基于單視角的條件生成提出了獨特的挑戰(zhàn)。先前的方法通過訓(xùn)練一個通用模型來應(yīng)對這一挑戰(zhàn),該模型能夠基于單個輸入圖像推斷場景的3D表示。然而,這些方法需要大量的數(shù)據(jù)集進行訓(xùn)練,且在面對相機視角的顯著變化時,往往會產(chǎn)生模糊的紋理。最近,一些工作采用擴散先驗來獲取未見視角的概率分布,從而獲得更好的合成效果。然而,這些方法通常集中于對象中心的場景或缺乏3D一致性。本文的方法通過顯式3D高斯連接2D圖像和3D場景,并結(jié)合擴散知識,克服了上述挑戰(zhàn)。
方法
本文的目標是提出一個3D感知的場景圖像編輯框架,允許對相機和對象進行同步控制。為實現(xiàn)這一目標,先介紹了一種新穎的場景表示方法,稱為語言引導(dǎo)的解耦Gaussian Splatting。為了實現(xiàn)對象級控制,進一步將語言特征提取到Gaussian Splatting表示中,實現(xiàn)對象級解耦。接著詳細說明了優(yōu)化過程,最后展示了本文的框架在推理過程中所提供的靈活用戶控制。
從單個圖像生成3D Gaussian Splatting
其中,K和T分別是相機的內(nèi)參矩陣和外參矩陣。這些點云P然后被用來初始化3DGS,通過直接復(fù)制位置和顏色值來進行初始化,其他與GS相關(guān)的參數(shù)則隨機初始化。為了優(yōu)化3DGS的外觀,采用重建損失:
其中,??是渲染函數(shù)。進一步利用圖像生成基礎(chǔ)模型(即Stable Diffusion)的先驗知識來增強渲染質(zhì)量。它以Score Distillation Sampling損失(記為LSDS)的形式,為當(dāng)前3DGS渲染的圖像提供更新方向。
通過修補擴展3D GS當(dāng)相機視角發(fā)生變化時,由于遮擋或超出原始視錐的新區(qū)域,渲染視圖會出現(xiàn)空洞。使用Stable Diffusion來修補未覆蓋的區(qū)域。然后,需要將新添加的像素準確地轉(zhuǎn)換到3D空間,以無縫對齊現(xiàn)有的3D高斯。
之前的方法首先預(yù)測深度值,然后使用啟發(fā)式方法調(diào)整這些值以對齊現(xiàn)有的3D結(jié)構(gòu)。然而,依賴啟發(fā)式方法往往忽略了各種場景,導(dǎo)致深度不連續(xù)或形狀變形等問題。
相反,本文提出了一種新方法,將新的內(nèi)容提升到3D,同時確保無縫對齊而無需任何啟發(fā)式過程。關(guān)鍵見解是將問題視為圖像修補任務(wù),并利用最先進的基于擴散的深度估計模型作為先驗來解決任務(wù)。在去噪步驟中,不是使用模型預(yù)測整個圖像的噪聲,而是采用前向擴散過程來確定固定區(qū)域的值。這種方法保證了最終結(jié)果在去噪后符合原始固定部分的深度,確保了平滑擴展。
在通過深度修補平滑擴展3DGS后,將設(shè)想的全新視圖作為參考視圖,并應(yīng)用重建損失Lrecon來監(jiān)督更新的3DGS。對于從用戶提供的視點和新設(shè)想視圖之間插值的相機視角渲染的視圖,采用SDS損失LSDS。
語言引導(dǎo)的解耦Gaussian Splatting
基于單個輸入圖像生成的3DGS,用戶可以生成新視圖。進一步將CLIP語言特征提取到3D高斯中。這將語義引入到3D幾何中,有助于從整個場景表示中解耦個體對象。
其中,g是CLIP的圖像編碼器,⊙表示元素逐次相乘。根據(jù)LangSplat,還訓(xùn)練了一個自編碼器來壓縮embedding空間,以優(yōu)化語言embedding e的內(nèi)存消耗。
場景分解在提取語言特征后,可以將場景分解為不同的對象。這使得用戶能夠查詢并定位特定對象,并對單個對象進行編輯(例如平移、旋轉(zhuǎn)、移除、重新造型)。值得注意的是,這種場景分解特性不僅在推理階段允許更靈活的編輯,還在優(yōu)化過程中提供了對場景布局的增強。由于現(xiàn)在可以獨立查詢和渲染每個對象,對對象應(yīng)用隨機平移、旋轉(zhuǎn)和移除。這種對場景布局的增強顯著改善了遮擋區(qū)域的外觀,最終提升了編輯視圖的整體質(zhì)量。
訓(xùn)練總體訓(xùn)練目標可以表示為:
推理
由于本文的表示方法具有解耦的特性,用戶現(xiàn)在可以以靈活的方式與對象進行交互和操作。這里,主要討論通過兩種不同模態(tài)來提示對象:
文本提示用戶可以通過文本提示查詢對象,如下圖3所示。
邊界框用戶還可以通過在輸入圖像上繪制一個大致的邊界框來選擇對象。首先識別邊界框內(nèi)的3D高斯,然后根據(jù)它們的語言embedding e進行K均值聚類。假設(shè)對象是邊界框內(nèi)最顯著的一個,數(shù)量不超過閾值比例的聚類將被丟棄。
同時,用戶還可以通過指定內(nèi)參和外參來調(diào)整相機視點。
實驗
###設(shè)置
實現(xiàn)細節(jié):為了將圖像提升到3D,使用GeoWizard估計其相對深度。采用Stable Diffusion的修補流程為3DGS的擴展生成新內(nèi)容。利用MobileSAM和OpenCLIP對渲染視圖進行分割和計算特征圖,這些特征圖進一步用于監(jiān)督3D高斯的語言embedding。在優(yōu)化過程中,使用Stable Diffusion進行Score Distillation Sampling。得益于顯式3DGS初始化的良好圖像質(zhì)量,采用低分類器無關(guān)指導(dǎo)的比例。
基線:將本文的方法與以下場景圖像編輯工作進行比較:
- AnyDoor是一種基于2D擴散模型的方法,可以將目標對象傳送到給定的場景圖像中。它通過微調(diào)Stable Diffusion來利用其強大的圖像生成先驗。
- Object 3DIT旨在通過語言指令進行3D感知的對象中心圖像編輯。它在包含原始圖像、語言指令和編輯圖像對的合成數(shù)據(jù)集上微調(diào)Stable Diffusion。
- Image Sculpting也旨在進行3D感知的對象中心圖像編輯。它從輸入圖像中的對象估計3D模型,以實現(xiàn)對幾何形狀的精確3D控制。它還使用Stable Diffusion來優(yōu)化編輯后的圖像質(zhì)量。
- AdaMPI側(cè)重于相機視角的控制。它利用單目深度估計和顏色修補,采用自適應(yīng)分層深度表示。
- LucidDreamer通過使用稠密相機軌跡查詢Stable Diffusion的修補流程來處理新視圖合成。
定量結(jié)果
研究者們進行用戶研究,以比較本文方法與已建立基線方法的編輯結(jié)果。每種方法生成20個樣本,并要求用戶根據(jù)與原始圖像的一致性和每個樣本的質(zhì)量投票選擇其偏好。收集了25名用戶的反饋,并在下表1中報告結(jié)果。
本文的方法在一致性和圖像質(zhì)量方面始終優(yōu)于以前的基線。根據(jù)之前的研究建議,GPT-4v具有評估3D一致性和圖像質(zhì)量的能力。因此,將GPT-4v作為額外的評估標準。GPT-4v的偏好與人類偏好高度一致,這再次證明了3DitScene的優(yōu)越性。
定性結(jié)果
下圖4展示了本文框架生成的新視圖及其相應(yīng)的特征圖。特征圖顯示出在捕捉圖像的語義內(nèi)容方面具有顯著的準確性。這種能夠清晰分離語義信息的能力在實現(xiàn)精確的對象級控制中起著關(guān)鍵作用。接下來,展示了本文框架實現(xiàn)的對場景圖像的靈活編輯,并與基線方法進行了比較。
對象操作
由于不同的方法在不同的坐標系中定義對象操作,特別是平移操作,因此在統(tǒng)一和公平的設(shè)置下評估它們變得具有挑戰(zhàn)性。因此,根據(jù)各自的特定設(shè)置評估每種方法,以達到最佳結(jié)果。如下圖5所示,AnyDoor在操作對象布局時難以維持對象身份和3D一致性,主要是由于缺乏3D線索。
Object 3DIT,在合成數(shù)據(jù)集上訓(xùn)練,展示了有限的對真實圖像的泛化能力。通過利用從輸入圖像中導(dǎo)出的3D模型,Image Sculpting取得了更好的結(jié)果。盡管如此,在操作對象時仍然遇到一致性問題。這是因為它們僅依賴3D模型提供粗略指導(dǎo),導(dǎo)致在優(yōu)化過程中丟失了更細微的細節(jié)。
相比之下,本文的方法提供了令人滿意的3D感知對象級編輯結(jié)果。在重新排列布局后,它保持了編輯對象的準確3D一致性。此外,它保留了場景內(nèi)的遮擋關(guān)系,例如將女孩移動到最后一行示例中被前景對象部分遮擋。
相機控制將本文的方法與AdaMPI和LucidDreamer進行相機控制的比較。如下圖6所示,AdaMPI僅專注于相機放大的情況,并不考慮新視圖合成。因此,當(dāng)需要大范圍相機控制時,此方法不適用于需要3D感知圖像編輯。LucidDreamer還利用Stable Diffusion的修補能力進行新視圖合成。然而,它在幀內(nèi)內(nèi)容的突然轉(zhuǎn)換中遇到問題(參見底部行的示例)。它還需要密集的相機姿態(tài)。相比之下,本文的方法只需要盡少至三個相機姿態(tài),并實現(xiàn)了從輸入視圖到新視圖的平滑過渡,增強了用戶對相機視角的控制。
消融研究
優(yōu)化過程中的布局增強由于表示在對象級別上進行了解纏,可以在優(yōu)化過程中進行布局增強。在這里,研究了解纏屬性是否有助于優(yōu)化過程。使用移除對象的任務(wù)來評估解纏程度。如下圖7所示,在優(yōu)化過程中禁用布局增強時,可以觀察到浮動偽影。發(fā)現(xiàn)這些高斯位于對象內(nèi)部。它們被表面上的高斯遮擋。由于它們不會對渲染結(jié)果產(chǎn)生影響,因此它們在優(yōu)化過程中不會被梯度下降更新,導(dǎo)致它們的語言embedding無監(jiān)督。
相比之下,在優(yōu)化過程中應(yīng)用布局增強,當(dāng)前景對象移開時,這些高斯將會暴露出來,因此得到更新。通過這種消融,得出結(jié)論:所提出的表示的解纏屬性不僅能夠?qū)崿F(xiàn)更靈活的推斷,而且有助于優(yōu)化過程。
綜上所述,SDS和重建損失對于獲得體面的圖像質(zhì)量至關(guān)重要。
深度修補在擴展3DGS到新視圖時,需要估計未見區(qū)域的深度圖。這里將基于修復(fù)的深度估計與啟發(fā)式方法進行了比較。下圖9顯示了左側(cè)部分具有深度圖像的圖像。任務(wù)是預(yù)測右側(cè)部分的深度圖。依賴啟發(fā)式對齊的方法會導(dǎo)致深度不連續(xù)等偽影。相比之下,本文提出的方法能夠生成準確的深度圖,與左側(cè)已知部分很好地對齊。
結(jié)論與討論
本文提出了一個新的框架,3DitScene,用于場景圖像編輯。主要目標是在統(tǒng)一的框架內(nèi)促進對對象和整個場景的3D感知編輯。通過利用新的場景表示,即語言引導(dǎo)的解纏場景表示,實現(xiàn)了這一目標。通過將CLIP的語言特征蒸餾到3D高斯中來學(xué)習(xí)此表示。語義3D高斯有效地從整個場景中解纏出單個對象,從而實現(xiàn)了局部對象編輯。通過在不同的設(shè)置下測試了3DitScene,并證明了與先前方法相比其優(yōu)越性。
本文轉(zhuǎn)自 AI生成未來 ,作者:QiHang Zhang等
