CVPR 2024 Highlight | 讓SD乖乖學會文本生360°全景!PanFusion 強勢來襲!
論文鏈接:https://arxiv.org/pdf/2404.07949.pdf
工程鏈接:https://chengzhag.github.io/publication/panfusion
生成模型,例如Stable Diffusion模型,已經使從文本prompt生成逼真圖像成為可能。然而,從文本生成360度全景圖仍然是一項挑戰,特別是由于缺乏成對的文本-全景數據和全景與透視圖之間的領域差異。本文介紹了一種名為PanFusion的新型雙分支擴散模型,用于從文本prompt生成360度圖像。本文利用Stable Diffusion模型作為一個分支,以提供自然圖像生成的先驗知識,并將其與另一個全景分支注冊,以進行整體圖像生成。本文提出了一種具有投影意識的獨特交叉注意力機制,以在協作去噪過程中最小化失真。實驗驗證了PanFusion超越現有方法,并且得益于其雙分支結構,可以集成額外的約束,如房間布局,以定制全景輸出。
部分成果展示
介紹
從文本prompt創建360度全景圖像是計算機視覺中一個新興但至關重要的前沿領域,對于需要廣泛環境表征的應用具有深遠的意義,例如環境照明、虛擬現實/增強現實、自動駕駛和視覺導航。盡管在文本到圖像的合成方面取得了重大進展,但要實現生成完整的360度水平和180度垂直視場(FOV)的全景圖仍然具有挑戰性。
實現這一目標面臨兩大主要障礙。第一個障礙是數據稀缺。與眾多的文本到常規圖像對比,文本到全景圖像對的可用性顯著較少。數據的匱乏使得生成模型的訓練和finetuning變得復雜。第二個障礙在于幾何和領域的變化。全景圖像不僅在它們的長寬比(2:1)上有所不同,還在于使用的等距圓柱投影(ERP)幾何,這與大多數生成模型訓練中使用的典型正方形透視投影圖像有顯著差異。
為了緩解特定于全景的訓練數據的稀缺性,之前的解決方案遵循一個常見原則,即利用預訓練生成模型的先驗知識。然而,馴服像Stable Diffusion這樣的強大模型生成高保真全景圖像仍然是一項非瑣碎的任務。早期嘗試將360度生成定義為一個迭代的圖像修復或變形過程。這種解決方案會遭受錯誤累積,并且未能處理閉環問題。為了解決這個問題,MVDiffusion提出了通過引入一個對應感知的注意力模塊來同時生成多個透視圖像,從而促進多視角一致性,然后將這些透視圖像拼接成一個完整的全景圖。盡管性能有所提高,但MVDiffusion中相鄰透視之間的像素級一致性無法確保全局一致性,通常會導致重復元素或語義不一致,如下圖1所示。
因此,本文提出了一種新型雙分支擴散模型,名為PanFusion,旨在解決先前模型在生成高質量360度全景圖像方面的限制。具體來說,PanFusion設計為同時在全景和透視領域操作,采用一個全局分支來創建一個連貫的全景“畫布”,和一個專注于渲染細節豐富的多視角透視的局部分支。PanFusion的局部-全局協同顯著改善了結果全景圖像,解決了先前模型中普遍存在的錯誤傳播和視覺不一致問題。為了增強兩個分支之間的協同作用,本文進一步提出了一個等距透視投影注意力(EPPA)機制,該機制遵循等距圓柱投影,以維持整個生成過程中的幾何完整性。此外,采用參數映射進行位置編碼也是向前邁出的一大步,增強了模型的空間意識,進一步確保生成的全景圖的一致性。進一步,PanFusion的全景分支可以輕松地適應全景級別的補充控制輸入,如房間布局,從而允許創建符合精確空間條件的圖像。本文的主要貢獻如下。
- 本文首創了一種雙分支擴散模型PanFusion,利用全球全景和局部透視潛在領域,從文本prompt生成高質量、一致的360度全景圖像。
- 為了增強兩個分支之間的交互,本文引入了一個“等距透視投影注意力”機制,該機制在全局全景和局部透視分支之間建立了新的對應關系,解決了全景合成的獨特投影挑戰。
- 本文的PanFusion不僅在質量和一致性上超越了以往的模型,還通過加入房間布局支持對生成過程的擴展控制。廣泛的實驗結果證明了本文提出的框架的優越性。
相關工作
Stable Diffusion。近年來,隨著擴散模型在圖像生成領域引起轟動,這些模型變得更快,在圖像質量和分辨率方面的能力也得到了顯著提升。這種成功促使人們開發了各種擴散模型的應用程序,如文本到圖像、基于圖像的生成、圖像修復以及以主體為驅動的生成。這些應用大多試圖利用預訓練擴散模型的先驗知識來緩解特定任務數據的稀缺性,通過finetuning技術如LoRA,或引入輔助模塊來提取知識。本文也采用同樣的原則,利用預訓練的潛在擴散模型來生成全景圖像。
全景圖像生成。全景圖像生成涉及多種設置,包括全景外繪制和文本到全景圖像生成。
全景外繪制關注于從部分輸入圖像生成360度全景圖。不同的方法,如StyleLight 和BIPS ,已針對特定用例進行了處理,專注于HDR環境照明和機器人導航場景。近期的工作通過使用擴散模型提高了現實感,但通常缺乏利用預訓練模型的豐富先驗信息,限制了其泛化能力。
另一方面,生成模型的最新發展開啟了從文本輸入合成沉浸式視覺內容的新前沿。作為一種基于圖像的表現形式,從文本生成全景圖已受到廣泛關注。Text2Light 采用VQGAN 結構從文本合成HDR全景圖像。為了用預訓練的擴散模型生成任意分辨率的圖像,DiffCollage、MultiDiffusion和SyncDiffusion提出融合擴散路徑的方法,而PanoGen 則通過迭代修復解決這一問題。然而,它們未能模擬360度全景的等距圓柱投影。Lu等人采用自回歸框架,但存在效率低下的問題。MVDiffusion 設計了一個感知對應關系的注意力模塊,能夠同時生成多視圖圖像以拼接,但結果呈現重復元素和不一致性。相比之下,本文提出的PanFusion是一個雙分支框架,通過考慮全局全景視圖和局部透視視圖,解決了現有方法的局限性,為文本驅動的360度全景圖像生成提供了全面的解決方案。
方法
初步介紹
雙分支擴散模型
直接使用預訓練的潛在擴散模型,例如Stable Diffusion(SD),以迭代方式或同步方式從多個視角圖像生成全景圖像,會因缺乏全局理解而無法處理循環閉合或產生重復元素(見上圖1)。為了解決這個問題,本文提出了一個雙分支擴散模型,該模型包括一個基于SD的UNet的全景分支和視角分支,如下圖2所示。全景分支旨在提供全局布局指導,并注冊視角信息以獲得最終全景,無需拼接;而視角分支則利用SD豐富的視角圖像生成能力,并提供指導以減輕視角投影下的變形。這兩個分支在擴散過程中共同工作,生成一個去噪的全景潛在映射。最后,這個潛在映射通過SD的預訓練解碼器D運行,以產生最終的全景圖像。
在仔細檢查 SD 模型后,本文發現循環不一致主要是由于 UNet 主干中的卷積層引起的,因為缺乏一種機制來在全景圖像的兩端傳遞信息。因此,本文對 UNet 進行了調整,通過在每個卷積層之前添加額外的環形填充,然后將輸出特征圖裁剪到原始大小。此外,本文還在解碼前對潛在映射添加環形填充,以減輕解碼器引起的較不明顯的環路不一致。上述技術的組合——潛在旋轉和環形填充——使得生成環路一致的結果幾乎不增加計算成本,因此可以作為另一個強大的基線。然而,這些措施本身并沒有充分利用 SD 擁有的視角生成能力。
EPP注意力機制
本文在交叉注意力的輸出處添加了初始化為零的 1×1 卷積層,并將其作為殘差加到目標特征圖上。這確保了UNet在訓練初期保持未修改狀態,并可以逐漸適應EPPA模塊。本文在UNet的每個下采樣層之后和每個上采樣層之前加入獨立的EPPA模塊,以連接兩個分支,詳細內容在補充材料中。考慮到指導信息是根據相同的等距圓柱-透視投影規則在兩個方向上傳遞的,這種規則在本質上是雙射的,本文共享兩個方向上EPPA模塊的權重。
布局條件生成
在全景生成的重要應用之一是根據給定的房間布局生成全景。這對于全景新視角合成特別有用,并且可能對室內3D場景生成有益。然而,這個問題對于基于擴散的全景生成來說還沒有得到充分的研究,主要是因為在同時利用SD在透視格式中的豐富先驗知識時,引入布局約束存在困難。對于從多視角生成全景,一個簡單的解決方案是將布局條件投影到不同視圖中,以局部地控制透視圖像的生成。相反,對于本文的雙分支擴散模型,本文可以自然地利用全景分支的全局性質來強制執行更強的布局約束。具體來說,本文將布局條件渲染為距離圖,然后使用它作為ControlNet的輸入來約束全景分支。
訓練
實驗
實驗設置
數據集。本文遵循 MVDiffusion使用 Matterport3D 數據集,該數據集包含了10,800幅全景圖像和2,295個房間布局注釋。本文使用 BLIP-2 為每幅圖像生成簡短的描述。
實現細節。對于文本條件生成,保持訓練和推理計劃與 MVDiffusion相同,以便進行公平比較。對于文本-布局條件生成,本文在其他參數固定的情況下訓練額外的 ControlNet。
評估指標。按照之前的工作,本文評估全景和透視域中的圖像質量。對于布局條件生成,本文提出一個新的指標來評估生成的全景圖像如何遵循輸入布局。具體來說,本文使用以下指標:
- 全景圖。本文遵循 Text2Light 報告全景圖像的 Fréchet Inception Distance (FID) 和 Inception Score (IS),以衡量現實感和多樣性。此外,還使用 CLIP Score (CS) 來評估文本與圖像的一致性。雖然 FID 廣泛用于圖像生成,但它依賴于一個在透視圖像上訓練的 Inception 網絡,因此對全景圖像不太適用。因此,為了更好地比較現實感,使用了專為全景定制的 FID 變體,即 Fréchet Auto-Encoder Distance (FAED) 。
- 透視視圖。為了模擬用戶可以自由導航全景并從不同透視視圖查看的真實世界場景,本文也報告了20個隨機抽樣視圖的 FID 和 IS,以與生成 180°垂直視場的方法進行比較。本文還遵循 MVDiffusion 報告 8 個水平抽樣視圖的 FID、IS 和 CS 分數。值得注意的是,這組指標偏好 MVDiffusion,因為它是通過測量其直接輸出來實現的,而本文的方法涉及透視視圖的插值。
- 布局一致性。本文提出了一個布局一致性指標,該指標使用布局估計網絡 HorizonNet 來估計從生成的全景中的房間布局,然后計算其與輸入布局條件的 2D IoU 和 3D IoU。
對比先前方法
Baseline。本文將其提出的 PanFusion 與以下 baseline 進行比較(詳情見原文補充材料):
- MVDiffusion 利用多視圖擴散模型生成 8 個水平視圖,這些視圖可以拼接成具有 90°垂直視場的全景。它在訓練時需要單獨的prompt,同時提供從單一prompt生成的選項。
- Text2Light 從文本prompt中生成 180° 垂直視場的全景,采用兩階段自回歸方式。
- SD+LoRA 是本文的 baseline 模型,它使用 LoRA 對Stable Diffusion模型(Stable Diffusion)進行finetuning,用于全景圖像。
- 全景分支是 SD+LoRA,其中包括第 3.2 節描述的額外修改,以確保循環一致性。
定量結果。上表1展示了定量比較結果。在這里,本文將真實感賦予圖像生成中的最高價值,通過 FAED 和 FID 來衡量。在這兩個指標上,本文的方法在全景和透視兩方面都超過了基準方法。對于 IS,本文的方法的表現略低于基準。這可能是因為 IS 評估生成圖像中對象的多樣性,使用分類器進行評估,而本文的模型與基準模型不同,傾向于不生成意外的對象。類似地,可以說基準模型呈現略高的 CS 是因為對象的重復加強了與prompt的對齊。考慮到 SD+LoRA 在 FAED 上優于全景分支,并且在其他指標上不相上下,本文只在下面與 SD+LoRA 進行定性比較。
定性結果。下圖4展示了定性比較結果。由于缺乏左右邊界之間的信息傳遞,Text2Light 和 SD+LoRA 可以觀察到循環不一致性。它們還受到透視視圖中線條扭曲的影響,這意味著生成的全景圖未能遵循正確的等距圓柱投影。另一方面,MVDiffusion 遭受重復對象和不合理家具布局的問題,這可能是因為缺乏全局上下文。本文的方法生成了最逼真的場景,并且在文本條件下的對齊性最好,透視視圖中的扭曲也較少。
消融研究
在上文和下表中,本文展示了所提出的完整模型比 Pano Branch(本文方法的baseline 模型,不含透視分支)的表現更好。在這里,如下表2和下圖5所示,本文進一步進行了消融研究,以驗證本文方法中每個組件的有效性。為了保持一致的比較,本文通過采樣相同的噪聲進行潛在地圖初始化,在不同的消融版本之間保持布局相似。
聯合潛在地圖初始化。 本文通過分別初始化全景和透視分支的潛在地圖來消融聯合潛在地圖初始化。在所有指標和定性結果中都可以觀察到顯著的性能下降,這證明了聯合潛在地圖初始化的重要性。有趣的是,本文的聯合版本在 FID 上甚至比 Pano Branch 還要差。這可能是因為聯合潛在地圖初始化幫助相應的像素從擴散過程開始就共享類似的噪聲分布,這對于 EPPA 對齊重疊區域的內容至關重要。
EPP SPE 和注意力mask。從 EPPA 模塊中去除了球形位置編碼(Ours-SPE)和注意力mask(Ours-mask)。從表2可以看到,缺少 SPE 對 FAED 和 FID 產生了負面影響,這可能是因為 SPE 幫助模型學習兩個分支之間像素的相對位置。而缺少注意力遮罩雖然使 FID 有所改善,但卻對 FAED 產生了不利影響,FAED 更準確地評估了全景的質量,因為它是為目標數據集定制的。這兩種情況都會導致圖像中出現明顯的點光源周圍的偽影、地面紋理的不一致性,以及高亮投影中的扭曲,如圖5所示。
雙射 EPPA。本文對雙射 EPPA(Ours-bijective)進行了消融實驗,使用了 EPPA 模塊中兩個方向的獨立參數。Ours-bijective 的 FAED 和 FID 表現均有下降。此外,消融版本在圖5中的走廊兩個方向上生成一致的地板和天花板紋理方面存在困難。相反,本文的完整模型能夠生成具有一致風格的地板和天花板,顯示出對場景的更好的全局理解。
應用:布局條件生成
為了展示本文的方法在生成具有額外布局條件的全景圖像方面的優勢,根據前文的描述,在MVDiffusion中添加了一個ControlNet來構建基線模型。本文將布局條件渲染成距離圖,然后將其投影到透視視圖中,以此來約束多視圖圖像的生成。訓練設置與本文的PanFusion保持一致。
如下表3所示,本文的方法在布局一致性上超越了基線模型,同時保持了透視投影的真實性優勢。將布局條件以線框形式疊加在生成的全景圖像上,可以在上圖6中看到,本文生成的全景圖像更好地遵循了它們的布局條件,特別是在透視視圖中突出顯示。更多細節請參考原文補充材料。
結論
PanFusion,這是一種新穎的文本到360度全景圖像生成方法,可以從單一文本prompt生成高質量的全景圖像。特殊之處在于,引入了一種雙分支擴散架構,以利用Stable Diffusion在透視領域的先驗知識,同時解決了先前工作中觀察到的重復元素和不一致問題。此外,還引入了一個EPPA模塊,以增強兩個分支之間的信息傳遞。本文還擴展了PanFusion用于布局條件的全景圖像生成的應用。全面的實驗表明,PanFusion能夠生成具有更好真實感和布局一致性的高質量全景圖像,優于以前的方法。
限制。盡管PanFusion的雙分支架構結合了全景和透視領域的優勢,但它也帶來了更高的計算復雜性。此外,本文的方法有時無法生成室內場景的入口,如圖7所示,這對于虛擬旅游等用例來說是必需的。
參考文獻
[1] Taming Stable Diffusion for Text to 360? Panorama Image Generation
本文轉自 AI生成未來 ,作者:Cheng Zhang等
