前往
大廳
主題

Stable diffusion ControlNet使用心得

塔克蘭斯 | 2023-02-18 20:24:07 | 巴幣 9876 | 人氣 50244

ControlNet是Stable diffusion一個插件,簡單的說,就是在AI產圖之初就將一個型先印在最一開始的圖中,再由AI去補剩下的東西,整體來說是個Game changer,至少在這AI產生的圖中你現在有了10%的貢獻

1.插件安裝
這是ControlNet的GIT,載下來然後丟到extensions資料夾裡就好;不過如果你的Stable diffusion webui有更新的話,在Extensions頁簽應該是找得到的,在這邊也能裝
2.模組安裝
ControlNet除了插件,同時也要抓他底下的計算Model,你需要在這裡下載你需要用到的ControlNet Model(你沒必要全抓),請把他們丟在extensions\sd-webui-controlnet-main\models
3.模組簡述
模組 效果
Canny 會用演算法詳細的抓圖片的邊緣線做為參考生成圖片
mlsd 會嘗試抓圖片中明顯的直線做為參考生成圖片
hed 會嘗試抓取圖片中的特徵做為參考生成圖片
Scribbles 會嘗試以提供的線條為結構做為參考生成圖片
openpose 會嘗試從圖片中的人物生成骨架後做為參考生成圖片
seg 會將圖片用一個大略的色塊取代後做為參考生成圖片
depth 會嘗試從圖片中抓取圖片的深淺遠近做為參考生成圖片
normal 與depth類似,也會嘗試從圖片中抓取圖片的深淺遠近做為參考生成圖片
個人推薦嘗試:Scribbles、openpose、normal,文中也會以這三個為範例,其他model的展示可以在這裡看到

4.使用
插件安裝完畢後,不管在txt2img還是img2img應該都能看到多了Controlnet(如果你發現你上方的介面不太一樣,我建議你更新)
點開之後會看到這個畫面
勾選enable,才會啟動Controlnet
Scribbles mode是給Scribbles專用的,其他的模式請不要勾它
RGB to BGR反轉紅與藍,我不確定這能幹啥
low VRAM如果你顯卡RAM不夠請勾它
Guess Mode會讓Controlnet完全去猜你丟進去的圖適合哪種模式
Preprocessor 與 Model就是選第三大項提到的模組
Preprocessor的意思是要先對圖片做哪一種模式的預處裡,選Scribbles就會抓線、選Openpose會抓肢體等等,不過如過你今天丟進去的是已經處理過的圖片(如在其他地方抓來的Openpose圖),這一項請選None
Model則是會已選定的模式去告訴AI該怎麼畫,原則上你Preprocessor選甚麼Model就選甚麼,除非你知道你自己丟進去的圖片可以對應哪個Model
Weight是Controlnet的強度,不過太強的話還蠻容易畫崩的
Resize mode用於設定Create blank canvas產生的畫布大小(不設定不影響產圖)
最下面的Create blank canvas則是在圖片的地方生一個空白圖片讓你畫(應該是給Scribbles用的?)
Preview annotator result是預覽在這樣的設定與輸入的圖片下會產生甚麼樣的參考圖/骨架/深淺(這對應你選的模式,一片黑就代表抓取失敗,請換圖片或換模式)
Preview annotator result是把前項的預覽收起來
選擇使用Model後會有像這樣的bar條出現,是用於設定ControlNet判斷圖片讀取的設定,但每個Model不一樣,除了第一個bar條是設定取樣精細度算是共通的外其他都不一樣,請用Preview去看看產出的骨架/深淺圖那些的是不是你想要的

5.使用成果(Scribbles、openpose與normal)
Scribbles
以及...產出的九個範例


從中可以看到大部分的情況AI會依照你給的東西嘗試去畫,仔細看的話你還是可以看到一開始給的線都嵌在圖片中,不過AI會怎麼補你給的線仍然是難以預測,畫崩也是可以預料的事情,這個部分就只能靠關鍵詞、嵌入檔讓AI畫出更好的結果

openpose
openpose會從你給的圖片中嘗試去抓骨架,並以其為基底去畫圖,如果畫崩的話通常是姿勢太奇特(沒錯,大部分的jojo立會崩)
(猜猜看這誰的姿勢?)
不過有些圖片openpose沒辦法算出人物骨架,我不確定原因,反正產出時會有顯示他的參照骨架,如果是一片黑就代表它抓不到骨架
ps.參照骨架應該會長這樣

Normal
Normal會將輸入的圖片弄成一個型,接著AI會依據關鍵詞去把人給畫出來,而這不像img2img,原本圖片的元素完全不會影響到你的產出,不會因為圖片背景有森林而導致你不管怎麼畫都離不開那個森林

--------------
ControlNet大概就寫到這邊
我會選文中提到的三個純粹是我覺得我比較會用到這些,全部抓下來實在是太佔空間了

歡迎提問與交流
*2/22因介面有變動而小更新
*3/3更正Preprocessor 與 Model的使用

創作回應

哈囉
https://i.imgur.com/4l06fTm.jpg 你好,想問基本問題 ControlNet的Model我下載後也有放入資料夾內, 但是進去ui操作介面時 要出輸卻沒東西可以選? 請問我還缺什麼東西還是哪裡選項沒設定好嗎[e11]
2023-04-13 18:56:24
打擊狂徒
我只用過control_openpose-fp16先去下載FP16 然後放進\stable-diffusion-webui\models\ControlNet資料夾中 重開就會在MODEL看到FP16了
2023-04-13 22:03:43
打擊狂徒
下載FP16在https://huggingface.co/webui/ControlNet-modules-safetensors/blob/main/control_openpose-fp16.safetensors
2023-04-13 22:04:10
漿糊冥菌練舞功
請問一下,如果安裝了controlNet可是下面找不到Create blank canvas那三個按鈕的話,是要重裝那些東西才可以解決呢?
2023-04-22 15:52:02
塔克蘭斯
新版的Controlnet把那個按鈕藏在Drawing canvas裡,預覽處裡效果也收在preprocessor選擇的右邊一個爆炸圖示
2023-04-22 16:31:32
漿糊冥菌練舞功
原來是介面改了啊,感謝 :)
2023-04-23 15:58:59

相關創作

更多創作