天天看點

Stable diffusion AI畫圖插件ControlNet 的功能介紹

作者:技術宅老張

插件的使用,我覺得應該從 ControlNet 開始,因為這是目前每一個使用 Stable diffusion 的人都避免不了的一個插件。從名字就可以看出,它可以直接控制 Stable diffusion 的神經網絡,讓其按我們的要求生成圖檔,很強大。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

更新之後的 ControlNet 插件界面比原來更加簡潔了,舊版的 Invert Input Color 反轉顔色已經合并到了預處理器裡面,名稱為 Invert(from white bg & black line),而且 RGB轉BGR也已經取消了,取而代之的是 Pixel Perfect (完美解析度)、Allow Preview(允許預覽) 這兩個選項。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

如果開啟 Pixel Perfect 完美解析度,系統就會自動控制每張圖檔的解析度,讓每一個像素都能完美對應,不需要再像舊版本一樣需要另外調整預處理器的解析度了。而 Allow Preview 允許預覽選項則是舊版本裡面的 【預覽處理結果】按鈕,新版本将其搬到了上方,想要預覽預處理器的處理結果就可以把這個選項勾上,然後點選預處理器右側出現的 【爆炸】 按鈕就可以看到預處理結果。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

原版本的建立空白畫布按鈕也移動到了 image 圖檔框的下方,并擴充成了 4 個按鈕,從左往右,點選第一個可以打開建立畫布的選項,設定好寬高後點選 Create New Canvas 建立畫布按鈕,就可以建立一張空白的畫布,可以在上面進行塗鴉繪畫等操作。第二個按鈕可以打開電腦的攝像頭,直接用攝像頭拍一張照片進行處理,前提是你的電腦安裝有攝像頭。第三及第四個按鈕是将目前寬高設定應用到 Stable diffusion 的寬高裡面,可以避免因圖檔尺寸對不上而産生變形。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

以上就是新版本修改過的功能,下面幾個是與原版一緻的功能。

Enable 可用選項表示是否啟用目前 ControlNet 插件,打勾則表示啟用, ControlNet 就會影響 Stable diffusion 的出圖效果。

Low VRAM 選項是針對低顯存裝置的,如果你的電腦顯存低于 6G,則把這個選項勾上,雖然勾上後出圖速度會慢很多,但總比崩顯存好。

Guess Mode 猜測模式,簡單的了解就是是否允許 ControlNet 自作主張來控制最終的出圖效果,選中該選項後可以不填寫提示詞,ControlNet 也能自己腦補一幅完整的圖像出來,但很多時候可能會不盡如人意,是以看需求選用。

再接下來就是 Control Weight 權重選項,這個值表示目前 ControlNet對出圖結果的影響程度,跟提示詞的權重差不多,最大值是 2 ,最小值是 0 ,預設是 1 ,一般使用預設的就好,如果不想讓 ControlNet 過多的參與,可以把權重調小一點。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

然後就是 Starting Control Step 開始控制的頻數與 Ending Control Step 結束控制的步數,這兩個值最大是 1 ,最小是 0,表示指定 ControlNet 從什麼時候開始參與作圖,到什麼時候結束,以百分比表示。如下圖則表示 ControlNet 從 20% 的步數開始參與作圖,到 90% 的步數結束參與作圖。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

再往下就是縮放模式的三個選項,分别是 僅縮放 / 裁剪與縮放 / 縮放與填充。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

這個意思是當 ControlNet 的尺寸與 Stable diffusion 的尺寸不一緻時,要用什麼樣的模式來參作圖。為了更好的展示效果,這裡做一個簡單的對比:Stable diffusion 尺寸設為正方形 512×512,ControlNet 預處理圖檔為豎屏 432×768,分别選擇不同的縮放模式進行出圖。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

可以看到,當兩者尺寸不一緻時,為了比對 Stable diffusion 的圖檔尺寸,ControlNet 把預處理的圖檔分别按對應的縮放模式進行了處理,每一種效果看起來都不太好。是以為了更好的使用 ControlNet 來控制出圖,建議将兩者的尺寸設為一樣的,以便能達到更好的效果。

然後相信大家在看網上的教程時應該都會看到别人的 ControlNet 都是有好幾組的,類似下面這樣的。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

這個可以在 ControlNet 的設定裡面找到 Multi ControlNet 這一項,這個值就是你需要的 ControlNet 的數量,想要多少就把這個數字設為對應的值就可以,然後在使用界面把 Enable 選項勾上,并調整一下權重,就能讓多個 ControlNet 同時影響作圖效果,這個方法在人物姿态控制以及室内設計等方面會經常使用到。不過啟用的 ControlNet 數量越多,出圖速度也就越慢,對電腦的性能要求也就越高,是以并不是越多越好,還得結合實際情況使用。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

最後再分享一些我自己使用提示詞的思路,供大家參考。

我在使用提示詞的時候比較喜歡對提示詞進行分類,然後按權重高低進行填寫,比如:畫質類、人物類、景物類、輔助模型(如lora),把提示詞分類之後也可以更好的進行閱讀以及修改。

首先是畫質類,要想出一張好圖,好的畫質是必不可少的。打個比方,我們平時基本上都是用手機進行拍照,用現在的智能手機拍照跟用十幾年前的手機拍照,效果可以說是天差地别,是以畫質也是一樣,指定好的畫質出圖就跟指定用現在的智能手機拍照一樣,都是為了能出一張好圖。

我常用的畫質類正向提示詞主要有以下幾個:masterpiece(傑作),best quality(最佳品質) ,ultra highres(超高清),realistic photo(逼真照片),raw photo(原始照片),當然也還有其他的,大家可以從網站上别人的作品裡面借鑒一些。

有了正向提示詞,對應的就會有反向提示詞,比如:worst quality(最差品質),low quality(低品質),normal quality(正常品質)等,同樣也可以從别人的作品裡面借鑒一些。

畫質類提示詞作為一張圖檔最重要的組成部分,一般都是放在提示詞的最前面,這樣無論生成什麼圖檔,都不會差到哪去。

第二部分為主體或人物描寫,比如:1 girl,cute, solo,nose blush, smile,closed mouth, medium breasts,beautiful detailed eyes, transparent collared shirt, usiness attire, jeans, long hair,black hair, white skin,beautiful hands,這部分主要用于描述人物的姿态服飾等。同樣的也會有反向提示詞:lowers,monochrome,grayscales,skin spots,acnes,skin blemishes,age spot,6 more fingers on one hand,deformity,bad legs,error legs,bad feet,malformed limbs,extra limbs,主要避免生成各種沒見過的怪物。這部分提示詞根據出圖的需求填寫就可以,沒有一個标準,反向提示詞可以在多次出圖中找到不好的元素,填上去。

第三部分為環境景物以及附加屬性的描寫,比如:garden,on grass, evening,cinematic light,street light,這類提示詞屬于附加性的,依據出圖需求填寫就可以,沒有一個标準,可有可無。

第四部分為附加模型,比如 lora、embedding 模型等。

提示詞分類整理好之後,再對單個詞進行權重的調整,就可以愉快的出圖了,不用再擔心圖檔會崩。

Stable diffusion AI畫圖插件ControlNet 的功能介紹

分類整理好之後的提示詞,可以把通用的部分儲存到 Styles 裡面(比如畫質類提示詞),下次再使用的時候直接讀取就可以,避免每次都要重新輸入,省事了很多。