ScribbleDiff:使用涂鴉精細引導擴散,實現無需訓練的文本到圖像生成
ScribbleDiff可以通過簡單的涂鴉幫助計算機生成圖像。比如你在紙上隨意畫了一些線條,表示你想要的圖像的輪廓。ScribbleDiff會利用這些線條來指導圖像生成的過程。
首先,它會分析這些涂鴉,確保生成的圖像中的對象朝著你畫的方向。比如,如果你畫了一條向右的線,生成的貓就會朝右看,而不是朝左。其次,這個方法會將你的涂鴉進行擴展,使得生成的圖像更加完整和細致。
這樣,即使你的涂鴉很簡單,計算機也能理解并生成出你想要的圖像。通過這種方式,ScribbleDiff讓我們與計算機的互動變得更加直觀和有效。
相關鏈接
論文鏈接:http://arxiv.org/abs/2409.08026v1
項目地址:https://github.com/kaist-cvml-lab/scribble-diffusion
論文閱讀
涂鴉引導擴散:實現無需訓練的文本到圖像生成
摘要
文本到圖像擴散模型的最新進展已顯示出顯著的成功,但它們往往難以完全捕捉用戶的意圖。現有的使用文本輸入結合邊界框或區域蒙版的方法無法提供精確的空間引導,常常導致對象方向錯位或非預期。為了解決這些限制,我們提出了涂鴉引導擴散(ScribbleDiff),這是一種無需訓練的方法,它利用用戶提供的簡單涂鴉作為視覺提示來指導圖像生成。然而,將涂鴉納入擴散模型會帶來挑戰,因為它們具有稀疏和薄弱的性質,很難確保準確的方向對齊。為了克服這些挑戰,我們引入了矩對齊和涂鴉傳播,這使得生成的圖像和涂鴉輸入之間可以更有效、更靈活地對齊。在 PASCAL-Scribble 數據集上的實驗結果顯示空間控制和一致性有了顯著改善,展示了基于涂鴉的引導在擴散模型中的有效性。
方法
整體架構。 無需訓練的 Scribble-Guided Diffusion (ScribbleDiff) 由兩個主要組件組成:矩對齊和涂鴉傳播。紅色箭頭表示分布的主要方向。相似度較高的錨點(紅色矩形)是根據涂鴉的錨點(黃色矩形)收集的。(文字提示:云朵在天空中飄浮,在平靜的河流上投下柔和、變幻的陰影。一座中世紀的橋梁橫跨水道的寬度。)
力矩損失對物體方向的影響。力矩損失可改善物體方向與涂鴉方向之間的對齊。如果沒有力矩損失,貓會面向涂鴉方向的反方向。
涂鴉傳播的效果。通過穩定擴散中的涂鴉傳播,涂鴉會隨時間顯著擴大,從而改善物體形狀并增強視覺連貫性。
實驗
使用涂鴉提示對文本到圖像生成方法進行定性比較。ScribbleDiff 產生的結果與涂鴉輸入更加一致,特別是在對象的方向和抽象形狀方面。
PASCAL-Scribble 數據集的定性結果。各種文本到圖像生成方法的比較,包括在訓練數據集上微調的 ControlNet。ScribbleDiff 表現出與輸入涂鴉的出色對齊效果,特別是在處理抽象形狀和對象方向時。
PASCAL-Scribble數據集的消融研究。 同一隨機種子加關鍵成分與不加關鍵成分定性結果的比較。
結論
ScribbleDiff方法克服了傳統邊界框和區域蒙版的局限性,這些局限性通常無法有效捕捉抽象形狀和物體方向。然而,涂鴉的稀疏和稀疏性質可能會妨礙精確控制,通過引入兩個關鍵組件來緩解這種情況:
- 矩損失以使物體方向與涂鴉方向對齊
- 涂鴉傳播以增強稀疏涂鴉輸入到完整蒙版中。
實驗結果表明,ScribbleDiffurpass 在各種指標(包括新的涂鴉比率)中都通過了無訓練和微調方法。我們的方法在保持對文本提示的保真度的同時,持續改進了物體方向和空間對齊