2023-06-12|閱讀時間 ‧ 約 3 分鐘

Stable Diffusion進階 -- ControlNet向外擴展(Outpaint)

前言

最近ControlNet最新版1.222引入了新的Inpaint模型 -- Inpaint_only+lama,是一個比Inpaint_only更能推論新圖象的模型。在啟動時,ControlNet會將原圖送進LAMA這個模型中先製造出一個新圖,再送進Stable Diffusion的模型中算圖。
經過這種預先產圖的手段,向外擴展(Outpaint)的輸出品質就大大的進步了,與我上次介紹的基本Outpaint手法,穩定性進步不少,除了這個方法產出的大圖都是上下左右四個方向平均擴展,沒辦法指定是否置中之外,整體的效果非常好,而且還不需要提示詞就能產出不錯的結果,非常適合快速使用。

步驟

第一步,我們選擇要Outpaint的圖片,打開txt2img的頁面,然後打開ControlNet的設定,將圖片放進裡面。
原始圖
原始圖
原始圖的尺寸為512x768,我們要將它擴展成1024x768,所以將設定設置成:
提示詞:無。你不需要提示詞也能做到向外擴展!
寬與高:1024x768像素。
CFG Scale:4,給AI較高的自由度生成新背景。
txt2img設定
在ControlNet裡面,依照這樣的設定:
Preprocessor:inpaint_only+lama
Control Mode:ControlNet is more important。因為我們提示詞根本是空的。如果提示詞裡面有東西的話,要調整成Balanced。
Resize Mode:Resize and Fill,讓ControlNet自動擴展Inpaint的範圍並填充新外擴的地方。
ControlNet的設定
這樣就能產生品質非常不錯的外擴圖了!
成品圖
從成品旁的ControlNet預覽圖可以看見,在LAMA模型處理之後,新擴展的部分已經有了合理的大致結構了:
被白色遮罩擋住的就是經由LAMA模型擴展的區域
這也就是為什麼Inpaint_only+lama可以生成結構一致的成品圖。但是經我實際測試後,發現它在肢體被切分的情況下,外擴產生的肢體與手指還是非常糟糕,所以在外擴時,如果邊緣是肢體與手腳趾,依然很難算出成效良好的圖。但是在生成存粹背景這方面,成果相當良好。

參照

參考影片

分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.