邁向統一擴散框架!Adobe提出RGB?X:雙重利好下游編輯任務 | SIGGRAPH'24
文章鏈接:https://arxiv.org/pdf/2405.00666
最近的研究表明,現實前向渲染、逐像素反向渲染和生成圖像合成這三個領域可能看起來是獨立且不相關的圖形和視覺子領域。然而,最近的工作已經證明了基于擴散架構的對每個像素的固有通道(反照率、粗糙度、金屬度)的估計的改進;將其稱為RGB→X問題。
進一步表明,基于固有通道合成真實圖像的反向問題,X→RGB,也可以在擴散框架中解決。在室內場景的圖像領域,引入了一個改進的RGB→X擴散模型,該模型還估計了光照,以及能夠從(完整或部分)固有通道合成真實圖像的第一個擴散X→RGB模型。
X→RGB模型探索了傳統渲染和生成模型之間的一種折衷方案:可以指定只應遵循某些外觀屬性,并且允許模型自由地虛構其余部分的合理版本。這種靈活性允許使用混合的異構訓練數據集,這些數據集在可用通道方面有所不同。使用多個現有數據集并通過合成和真實數據進行擴展,得到一個比以前的工作更好地提取場景屬性并生成室內場景高度逼真圖像的模型。
介紹
從圖像中估計幾何、著色和光照信息是計算機視覺社區(qū)長期以來一直在研究的問題,自從經典的固有圖像分解工作開始。由于其受限性質,包括照明和材料之間的歧義性,這個問題本質上是困難的。最近的工作集中在與逐像素反向渲染相關的問題上。這產生了物理材料和光照估計,具體包括漫反射反照率、鏡面粗糙度和金屬度,以及各種空間變化的光照表示。將所有這些信息緩沖區(qū)稱為固有通道,并用符號X表示,將估計它們的問題稱為RGB→X。
另一方面,計算機圖形學,尤其是基于物理的渲染子領域,長期以來一直專注于將詳細的場景描述(包括幾何、光照和材料)轉化為逼真圖像的反向任務。最先進的渲染方法采用蒙特卡洛光傳輸模擬,通常跟隨著一個神經去噪器,該去噪器封裝了關于合理無噪圖像的先驗知識。將從給定描述合成圖像的問題稱為X→RGB。
最近一種產生高度逼真圖像的方法,與傳統渲染非常不同,是基于生成模型的圖像合成,特別是基于大型擴散模型的合成。這些模型通過迭代去噪圖像運行,通過從純噪聲開始將神經去噪器方法推向極限。
這三個領域看似毫不相關,但我們認為它們應該以統一的方式進行研究。探索擴散模型、渲染和固有通道估計之間的聯系,重點放在材料/光估計和以材料/光為條件的圖像合成,全部在同一擴散框架中。最近的工作已經表明,基于擴散架構可以改進固有通道的估計。
Kocsis等人觀察到,在這個領域進一步取得進展可能會使用生成建模,因為問題的受限性和歧義性。本文進一步遵循這個方向。除了一個改進了Kocsis等人的RGB→X模型之外,還引入了第一個X→RGB擴散模型,該模型可以從(完整或部分)固有通道合成逼真圖像。與RGB→X類似,X→RGB問題需要一個強大的(理想情況下是生成的)先驗來引導合成朝著一個合理的圖像,即使在信息不完整或過于簡單的固有通道信息X的情況下也是如此。典型的生成模型易于使用,但難以精確控制。另一方面,傳統的渲染精確但需要完整的場景規(guī)范,這是有限的。我們的X→RGB模型探索了一個折衷方案,我們只指定應該遵循的某些外觀屬性,并允許模型虛構其余部分的合理版本。
固有通道X包含每個像素的反照率、法向量、粗糙度,以及表示為場景表面上每個像素的輻照度的光照信息。此外,X→RGB模型是使用通道丟棄訓練的,這使得它能夠使用任何子通道合成圖像作為輸入。這反過來又使得可以使用具有不同可用通道的混合異構訓練數據集成為可能。使用多個現有數據集,并添加自己的合成和真實數據——這是一個關鍵的優(yōu)勢,使能夠將訓練數據擴展到超出以前模型的范圍。本文提出以下貢獻:
- 通過使用來自多個異構數據集的更多訓練數據并增加對光照估計的支持,改進了之前的RGB→X模型;
- 能夠從給定的固有通道X合成逼真圖像的X→RGB模型,支持部分信息和可選文本提示。結合現有數據集并添加一個新的、高質量的室內場景數據集,以實現高逼真度。
總之,本文提出了一個統一的基于擴散的框架,可以實現逼真的圖像分析(描述幾何、材料和光照信息的固有通道估計)和合成(給定固有通道的逼真渲染),在逼真室內場景圖像領域得到了證明;請參見下圖1。我們的工作是統一的圖像分解和合成框架的第一步。相信它可以為各種下游編輯任務帶來好處,包括材料編輯、重新照明和從簡單/不明確的場景定義中實現逼真渲染。
相關工作
圖像的生成模型。 在過去的十年中,基于深度學習的圖像生成迅速發(fā)展,尤其是生成對抗網絡(GANs)的出現以及隨后的一系列研究,改進了生成圖像的質量和穩(wěn)定性。然而,GANs的對抗式方法容易陷入模式崩潰,使它們難以訓練。最近,擴散模型已被證明可以擴展到數億張圖像的訓練集,并產生極高質量的圖像。然而,這樣的模型訓練成本高昂,促使研究對預先訓練的模型進行微調,以用于各種領域或條件,而不是從頭開始訓練。利用了這一領域的最新進展,在Stable Diffusion v2.1的基礎上設計了我們的網絡架構,添加了條件和丟棄作為測試時靈活輸入的手段。
固有分解。固有圖像分解問題由Barrow等人幾乎五十年前定義,作為近似圖像??的一種方式,將其視為漫反射反照率(反照率)、漫反射陰影(輻照度)和可選的鏡面項的組合。需要先驗來估計每個像素的多個值。早期的先驗包括視覺整理理論,該理論指出陰影傾向于比反射變化緩慢。Grosse等人總結了2009年之前的方法,而Garces等人總結了更近期的方法。將我們的反照率估計與Careaga和Aksoy的最新方法進行了比較。
一些最近的工作將傳統的固有分解擴展到每個像素估計更多的值,包括鏡面粗糙度和/或金屬度,以及光照表示。他們的訓練數據集側重于室內場景。Li等人是第一個使用大型合成數據集對RGB渲染和分解進行訓練的卷積架構的固有通道估計。用于訓練這種方法的合成數據集后來得到了改進,并作為OpenRooms發(fā)布。通過從卷積架構轉換到視覺Transformer架構,進一步取得了改進。更近期,Zhu等人引入了一個新的、更逼真的室內合成數據集,并訓練了一個卷積架構,優(yōu)于Li等人的方法,主要是由于更逼真的數據集。
一個更近期的替代方法是從預訓練模型(如StyleGAN或預訓練擴散模型)中提取固有圖像。在這個精神上,固有圖像擴散建議將通用擴散模型微調到每個像素的反向渲染問題上,通過利用為圖像生成學習的先驗知識,而不是在每個像素上預測可行解的平均值,超越了以前的方法。他們的模型是在InteriorVerse上訓練的,這是一個室內渲染的合成數據集。通過在更多數據源上使用不同的架構訓練類似的RGB→X模型,并進一步將其與新的X→RGB模型耦合,從這些緩沖區(qū)合成逼真圖像,有效地將其回到RGB。
法向量估計。每個像素的法向量估計與固有分解相關,因為它為每個像素估計了3D信息,這與著色高度相關。然而,與深度估計相比,這個問題通常是孤立研究的,并且最近受到的關注有限。
為了展示我們方法的競爭力,考慮了一種內部方法,即基于金字塔視覺Transformer的PVT-normal方法,并在類似于MiDaS的數據集上進行了訓練以估計法向量。在測試中,PVT-normal的性能優(yōu)于當前可用的最先進的法向量估計方法。該模型不專門針對室內場景,而是在多樣化數據集上訓練的。
從分解中進行神經圖像合成。 一些先前的工作探索了與X→RGB問題類似的問題。Deep Shading通過在合成數據上學習的CNN架構解決了學習屏幕空間著色效果的問題(例如,環(huán)境遮擋、基于圖像的照明、表面散射),從而實現了快速渲染,競爭力或優(yōu)于手工調整的屏幕空間著色器。Deep Illumination是一種基于每個場景條件GAN的方法,能夠有效地根據屏幕空間固有緩沖區(qū)預測全局照明,而直接照明則是通過解析計算的。Zhu等人介紹了一種屏幕空間光線追蹤方法,用于從固有通道合成圖像。與之相反,我們的方法同時考慮了圖像分解和合成,不需要任何光線追蹤,并且其模型在室內場景領域通用。
重新照明。已經提出了使用顯式和隱式表示的單圖像場景重新照明方法。這些工作僅限于簡單的照明:單一方向光源或低階球諧函數。與我們的工作更接近的是,Li等人構建了一種逐像素逆渲染方法,用于從單個圖像中重新照明室內場景。此外,他們引入了一種混合神經和經典渲染系統,根據固有通道和光照信息合成重新照明的圖像,類似于我們的X→RGB。雖然我們認為我們的框架可以成為重新照明的工具箱的一部分,但我們并沒有專門解決重新照明問題,因為這超出了我們的范圍。
內在通道和數據集
本節(jié)討論了模型中使用的固有通道X,以及我們使用或準備的帶有配對RGB圖像和固有通道的數據集。
固有通道
在RGB→X和X→RGB模型中,使用以下通道:
曾考慮添加每個像素的深度通道,但最終發(fā)現這是不必要的,因為深度可以從法向量中估計,而法向量通常包含更多有關高頻局部變化的信息。
與傳統渲染框架中的材質系統不同,上述屬性相對不太精確。例如,它們無法表示玻璃。相反,我們將玻璃視為具有零粗糙度和金屬度。這通常不會造成問題:模型根據上下文推斷出一個對象是窗戶還是玻璃柜,并且合理地補充玻璃后面的對象或光照。
數據集中的所有固有通道都與相應的RGB圖像具有相同的分辨率,并且由RGB→X以全分辨率進行估計。然而,有時候將X→RGB的條件降采樣到的通道是有益的,如所討論的那樣。
數據集
為了訓練我們的模型,理想情況下希望擁有一個大規(guī)模、高質量的圖像數據集,其中包含我們需要的所有通道的配對信息:法向量n、反照率a、粗糙度r、金屬度m、漫反射輻照度E、相應的RGB圖像I(理想情況下是真實照片或至少是非常逼真的渲染圖像),以及描述圖像的文本標題。然而,目前沒有現有的數據集能夠滿足這些要求,因此我們需要拼湊具有部分信息的數據集,并構建新的數據集來填補空白。下表1總結了我們使用的數據集的大小和通道可用性。
InteriorVerse是一個合成的室內場景數據集,包含超過50,000張渲染圖像,除了渲染圖像I外還有法向量n、反照率a、粗糙度r和金屬度m通道。該數據集存在一些問題。首先,渲染圖像包含噪音;這對RGB→X估計不構成問題,但X→RGB合成模型學會了復制不受歡迎的噪音。我們通過應用現成的去噪器(NVIDIA OptiX去噪器)來解決這個問題。此外,我們發(fā)現粗糙度和金屬度值通常是可疑的,因此決定不使用它們來處理該數據集。該數據集還具有合成風格,如果僅對其進行訓練,X→RGB模型會學會模仿該風格。
物體和材料的種類較少會導致一些偏見,例如,綠色反照率與植物具有很強的相關性,因此如果僅在InteriorVerse上進行訓練,那么綠色反照率的墻壁會合成具有葉狀紋理。
Hypersim是另一個合成的逼真數據集,包含超過70,000張渲染圖像,其中包含法向量n、反照率a以及最重要的漫反射輻照度E數據。該數據集不包括粗糙度和金屬度等其他材料信息,并且有時會將鏡面照明嵌入到反照率中。幸運的是,這種情況并不常見,不會阻止我們使用反照率數據。盡管Hypersim擴展了場景的外觀多樣性,但仍不足以進行高度逼真的合成。
使用了兩個我們自己的數據集來補充這些不足。第一個是Evermotion,這是一個類似于InteriorVerse的合成數據集,由藝術家創(chuàng)建的合成場景渲染而成,隨機放置相機沿著預先錄制的相機路徑,并渲染了85個室內場景的17,000張圖像。Evermotion的主要好處是它為我們提供了粗糙度r和金屬度m,對于這些數據集,這是目前唯一可靠的來源。
為了進一步增強訓練數據,并幫助我們的X→RGB模型合成逼真的圖像,使用了50,000張高質量的商業(yè)室內場景圖像。這些圖像來自照片或高質量渲染圖像,沒有額外的通道可用。因此,使用RGB→X模型估計法線、反照率、粗糙度、金屬度和漫反射輻照度。圖像和估計通道的組合形成我們的ImageDecomp數據集。
為了在對X→RGB進行微調時更好地保留基礎擴散模型的現有文本理解能力,我們使用BLIP-2模型為上述所有數據集中的所有圖像預先計算圖像標題。
RGB→X模型
我們的RGB→X模型,用于從輸入RGB圖像I估計固有通道X。輸出包含了在前面討論的所有通道。與Kocsis等人類似,我們微調了一個預先訓練好的文本到圖像潛空間擴散模型,即Stable Diffusion2.1。下圖2顯示了我們模型的高級概述。
處理多個輸出通道。 原始Stable Diffusion模型的輸出是一個4通道的潛在圖像,可以解碼為單個RGB圖像。由于我們的目標是產生額外的輸出通道(反照率a、法向量n、粗糙度r、金屬度m和光照E),可能期望擴展更多的潛在通道可以更好地編碼信息,就像以前的工作所做的那樣。然而,發(fā)現擴展原始模型的潛在通道數量會導致質量較低的結果。事實上,向擴散模型的操作潛在空間添加更多的潛在通道會迫使我們從頭開始重新訓練輸入和輸出卷積層。從某種意義上說,模型突然“掉落”到一個新的領域,使得訓練更加具有挑戰(zhàn)性。
我們使用各種數據集來訓練模型以增加多樣性,如前面所述,但這帶來了另一個問題,即異構固有通道,這對我們的方法來說是具有挑戰(zhàn)性的,因為將所有固有通道堆疊成一個更大的潛在。一個直接的方法是在每個訓練迭代中僅包括可用圖中的損失。然而,發(fā)現這種方法的表現很差。
X→RGB模型
現在描述我們的X→RGB模型,從固有通道X執(zhí)行逼真的RGB圖像合成,如圖2所示。
與RGB→X類似,我們從Stable Diffusion2.1開始微調擴散模型,考慮了幾個不同的因素。
這種方法讓訓練期間處理異構數據集,并選擇在推斷時提供哪些輸入;例如,不提供反照率或照明將導致模型生成合理的圖像,利用其先驗來彌補缺失的信息(見下圖6)。
低分辨率照明。RGB→X模型成功地估計了高度詳細的照明,以漫反射輻照度圖E的形式,緊密跟隨高分辨率的幾何和法線。雖然這對某些應用可能有益,但如果我們想要使用這些詳細的照明緩沖區(qū)進行X→RGB呈現,將會出現問題,因為我們希望實際編輯詳細的法線,并使用E的粗略解釋來控制照明。換句話說,希望將照明作為對X→RGB模型的“提示”,而不是精確的像素控制。與將完整分辨率的照明E編碼到潛空間不同,我們只是將其降采樣到與潛變量相同的分辨率。通過這樣做,為X→RGB模型提供了一種更粗糙的照明提示,而沒有像素細節(jié),同時仍然實現了對整體照明條件的遵循。這在編輯下圖7中的法線時很重要。
結果
關于從生成模型中選擇結果的說明。將生成模型應用于RGB→X和X→RGB問題意味著輸出不是唯一的,而是從分布中抽樣的。雖然我們可以評估多個樣本并取它們的平均值,但我們不建議這種方法,因為它可能會模糊每個樣本中已經合理估計的細節(jié)。相反,在論文中選擇一個單獨的樣本進行展示,并在補充材料中提供更多樣本。反照率、照明和法線樣本通常可用,但由于缺乏可靠的訓練數據和這些屬性的固有歧義,對于粗糙度和金屬性則需要更多的關注。
合成和真實輸入上的RGB→X
下圖3和圖4展示了我們在合成和真實示例上進行的內在通道估計的結果。這些合成輸入示例中沒有一個是訓練數據的一部分。
反照率。將合成和真實輸入的反照率估計與以前的工作進行了比較,如圖3(a)所示合成輸入和圖4(a, b)所示真實輸入。一般來說,我們發(fā)現我們的模型最擅長從輸入中去除反射、高光、陰影和色彩偏差,同時提供應該是恒定的反照率區(qū)域的最平坦估計。Zhu等人的方法在合成和真實輸入上表現更差,暗示著非生成模型的局限性,也沒有設計包含有關反照率估計問題的特殊知識的模型。Careaga和Aksoy最近的內在分解方法提供了良好的結果,但我們的模型實現了更平坦的恒定區(qū)域和更合理的白平衡。
雖然他們也展示了令人印象深刻的結果,但對于Kocsis等人的擴散模型來說也是如此。例如,圖4(a, 頂部行)中的臥室照片上,我們的模型是唯一正確預測所有床單像素應該具有相同白色反照率的模型。圖4(b)中的具有挑戰(zhàn)性的真實圖像也產生了非常清晰的反照率估計結果,優(yōu)于其他方法,盡管我們的模型可能會刪除木地板上的一些磨損,可能是由于在合成材料上進行訓練而不考慮磨損。
漫反射輻照度(照明)。在圖3(b)中,看到我們的模型在合成數據上產生了與真實情況非常接近的漫反射輻照度估計,即使在具有復雜陰影模式的輸入上,也很少或幾乎沒有材料屬性泄漏到估計中。輻照度中的顏色也被合理地偏離了純白色,以適應有色照明。我們的估計結果在真實輸入上也是真實而合理的,如圖4(b)所示。Careaga和Aksoy沒有直接提供輻照度,因此我們將原始圖像除以他們預測的反照率,使用得到的近似輻照度作為基線。
金屬性和粗糙度。如圖3(c, d)和圖4(c, d)所示,RGB→X模型針對給定的輸入圖像生成了更加合理的粗糙度和金屬性估計,比先前公開的最先進方法。這些材料屬性的準確恢復具有挑戰(zhàn)性,原因有兩個。首先,它們的可靠訓練數據量最低。其次,只有在適當的高頻照明下照亮時,它們才會顯著影響表面反射;否則,模型必須返回先驗知識,估計對象可能是什么以及這種對象是否傾向于粗糙或金屬。這些問題導致我們的模型的抽樣方差更高,而“好”的樣本數量更少。在補充材料中展示了我們估計的這種變化性。
法線。 在合成測試(圖3(e))以及真實測試(圖4(e))中,展示了我們的模型合理地估計了法線,包括高頻幾何,同時在平坦表面上正確預測了平坦法線,即使它們具有紋理或高頻照明。結果優(yōu)于Zhu等人,并且在最先進的PVT-normal方法上略有改進。雖然觀察到我們的模型法線估計在一般情況下表現合理(請參閱補充材料中的更多示例),但我們并不聲稱在這個領域有普遍改進,因為PVT-normal專門設計為在一般圖像上表現良好。提供這個比較是為了完整起見。
定量比較。對于反照率、法線、粗糙度和金屬性估計,在表2中與相應的先前方法進行比較。發(fā)現我們的RGB→X在所有通道上都具有最佳的PSNR和LPIPS值,唯獨輻照度我們沒有現有的方法進行比較。
X→RGB模型結果
與路徑跟蹤參考的比較。在下圖5中,驗證了我們的X→RGB模型生成的結果與傳統的蒙特卡羅路徑跟蹤非常接近,只要輸入通道X不遠離合成室內訓練分布。在這里,我們使用一個常見的合成廚房場景,不屬于我們的訓練數據。我們使用所有內在通道(顯示在左側)并將它們與文本提示一起輸入到我們的模型中。結果在材料外觀和全局照明方面與路徑跟蹤參考很好地匹配。也可以注意到一些差異:例如,在輸入通道中,爐灶具有一種暗金屬材料,這在訓練數據中很少見。我們的模型生成了一個更明亮的鋁材料,與金屬性而不是反照率通道相匹配。
輸入通道子集和文本提示。下圖6展示了我們的X→RGB模型通過僅指定一部分外觀屬性作為輸入來生成合理圖像的能力。此外,文本提示可以用于額外的控制。在這里,我們控制照明(a)或物體顏色(b)。通常,當只有少數物體時(例如,一個沙發(fā)和幾個靠墊),文本控制效果很好。通過文本控制特定對象的顏色是困難的,但這個問題對所有擴散模型都是一個普遍的挑戰(zhàn)。
應用
材料替換。在前面圖7的左上示例中,編輯了沙發(fā)的法線和反照率(由RGB→X估算),并使用我們的修復X→RGB模型重新合成圖像,結果是一個更模糊、更凹凸不平的紅色沙發(fā)。在右上方,我們將內在估計應用于經典的康奈爾盒圖像,并將右墻反照率編輯為藍色。觀察到右側箱子中的顏色滲透正確更新了。這里的修復mask包括一個較大的區(qū)域,允許進行顏色滲透校正。在底部示例中,我們更改了原始房間的法線和反照率,以編輯地板外觀為木地板。
對象插入。在前面圖1(c)中,使用我們的框架將新的合成對象插入RGB圖像中。我們渲染新對象的內在通道,并將它們合成到估算的通道中。我們使用帶有矩形MASK的修復X→RGB模型來生成具有正確照明和陰影的合成圖像,最后使用更緊的mask將其與原始圖像混合。雕像和咖啡車很好地融入了場景中。
結論
本文探討了一種用于從圖像估算內在通道(稱為RGB→X)并從這些通道合成逼真圖像(X→RGB)的統一擴散框架。內在信息X包含反照率、法線、粗糙度、金屬度和照明(輻照度)。RGB→X模型與或超過了先前方法的質量,這些方法專門針對我們內在通道的子集。X→RGB模型能夠合成逼真的最終圖像,即使我們只指定了應該遵循的某些外觀屬性,并給予模型生成其余部分的自由。我們展示了結合兩個模型可以實現材料編輯和對象插入等應用。相信我們的工作是通向統一擴散框架的第一步,這種框架能夠進行圖像分解和渲染,可以為廣泛的下游編輯任務帶來好處。
本文轉自 等 AI生成未來 ,作者:Zheng Zeng
