Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

前言

Hello,大家好,言川又來寫教程啦!!這是一篇繼《外婆都能看懂的 Stable Diffusion 入門教程》教程之后的一篇文章,如果你還沒有安裝并了解 stable diffusion 這個軟件,那么你一定要先去看看入門教程的文章,然后安裝 stable diffusion。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

一、Controlnet(圖像精準控制)是什么?

ControlNet 是一個用于控制 AI 圖像生成的插件。它使用了一種稱為"Conditional Generative Adversarial Networks"(條件生成對抗網絡)的技術來生成圖像。與傳統的生成對抗網絡不同,ControlNet 允許用戶對生成的圖像進行精細的控制。這使得 ControlNet 在許多應用場景中非常有用,例如計算機視覺、藝術設計、虛擬現實等等。總之,ControlNet 可以幫助用戶精準控制 AI 圖像的生成,以獲得更好的視覺效果。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

看著有點復雜是不是,沒關系,我給你們總結一下:

在 ControlNet 出現之前,我們在生成圖片之前,永遠的不知道 AI 能給我們生成什么,就像抽卡一樣難受。

ControlNet 出現之后,我們就能通過模型精準的控制圖像生成,比如:上傳線稿讓 AI 幫我們填色渲染,控制人物的姿態、圖片生成線稿等等。

這下看懂了嗎,就很哇塞,大家可能網上看到一些線稿生成的圖片,就是用到的這個 ControlNet,Stable Diffusion 必裝的插件之一。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

二、Controlnet 插件安裝

首先,咱們先打開秋葉大佬的啟動器,并且點擊更新(切換)到最新版本,這一步的目的是為了防止出現奇奇怪怪的報錯。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

然后我們啟動 "web-UI",打開擴展,并在這里輸入該網址: https://jihulab.com/hanamizuki/sd-webui-controlnet ,然后點擊安裝等待一會...(安裝沒反應或者錯誤的注意網絡問題,網上還有別的辦法,我測試了下,這個是成功安裝的)

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

等待一會,在這邊底部就有一個信息提示,實際上就是告訴你安裝的地址,這里我已經提前安裝了,所以顯示的可能跟大家不一樣。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

然后回到”已安裝“這里,可以看到下面就出現了擴散控制網絡(Controlnet 插件)了,然后點擊”應用并重啟用戶界面"。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

回到”文生圖“這里,就看到 Controlnet 已經成功安裝了。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

三、Controlnet 模型安裝

插件安裝完成之后,還沒完,我們需要安裝下模型,跟著我做,首先去這個鏈接下載: https://huggingface.co/lllyasviel/ControlNet/tree/main/models

把下載的模型全部選中復制(ctrl+c)一下,我們需要移動到對應文件夾中。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

看我的文件路徑,別搞錯了,把文件復制到這里來(一定不要復制到 Stable Diffusion 模型中去了)

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

重啟 UI,耐心等待一下......

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

look,這就是成功安裝的樣子,很可愛呢~如果你沒有,那說明你模型沒安裝到位置,仔細檢查下吧。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

四、模型說明及案例演示

介紹幾個常用的 controlnet 模型教程,注意看哦。跟著我一步步的操作就沒什么問題的,加油!

1. Canny 邊緣檢測 (Canny edge detection)

Canny 用于識別輸入圖像的邊緣信息。從上傳的圖片中生成線稿,然后根據關鍵詞來生成與上傳圖片同樣構圖的畫面。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

來跟著我的操作來一遍。

首先我們把模型和 lora 選擇好,因為我這里上傳的是一個真實的模特,所以像最大程度的還原,模型一定要對。這里我用到的是這兩個模型。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

然后輸入關鍵詞:

1girl, solo, smile, realistic, grin, looking at viewer, brown eyes, brown hair, ponytail, upper body, simple background, small breasts, breasts, blue background, teeth, lips, bare shoulders, long hair, black hair

女孩,獨奏,微笑,現實,咧嘴笑,看著觀眾,棕色的眼睛,棕色的頭發,馬尾辮,上身,簡單的背景,xxx,xx,藍色的背景,牙齒,嘴唇,裸露的肩膀,長發,黑發

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

打開 Controlnet,選擇 Canny 邊緣檢測,模型選擇對應的 canny 模型。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

上傳圖片,并勾選啟用。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

點擊下方的“預覽預處理結果”這一步是生成線稿。然后就會出現上面那張線稿圖。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

最后我們勾選下“DPM++SDE Karras”,開始生圖

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

來看下原圖和生成圖片的對比,姿態構圖基本一致。如果你想換頭發顏色、面部細節、服裝等等,就可以通過關鍵詞來控制。這個功能學會了吧,那咱們講下一個。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

言川小知識:

可以看到上面生成的模特臉部頭發絲有點亂,可以調整這個預處理器分辨率(下面兩個同樣也是調整線稿的精細層度),越高生成的效果與原圖越相像,同樣也會越吃顯存,小心使用。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

下面這 2 個也是同樣的做法,它們的主要區別是邊緣檢測算法不同,具體選擇哪個各位去嘗試一下,玩法基本一致,我這里就不做演示了。(注意右側的模型要選擇對應的預處理器。)

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

2. M-LSD (建筑物繪制)

通過分析圖片中的線條結構和幾何形狀,可以構建建筑物的外框,適合建筑、室內設計的朋友使用。

①切換預處理器和相應模型。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

②上傳一張室內設計的圖片,然后點擊“預處理結果”,(第一次用這個,控制臺會更新一段時間)。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

③輸入關鍵詞

pearl white walls, windsor gray floors, bedroom, Natural lighting, earthly tones, simple and clean, trending on interior design, digital artwork by Audrey kawasaki, Smooth, Detailed, Artstation, Neutral colors, elegant

珍珠白的墻壁,溫莎灰色的地板,臥室,自然光,樸實的色調,簡單干凈,室內設計的趨勢,由 Audrey kawasaki 設計的數字藝術品,光滑,細節,藝術站,中性色,優雅

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

可以看到,圖片生成的效果還是不錯的,跟原圖的構圖基本一致,當然還有更多的細節需要調整,大家可以調整這塊的參數即可。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

3. 法線貼圖 (Normal map)

從原圖中提取 3D 物體的法線向量,繪制的新圖與原圖的光影效果完全相同。

①切換預處理器和模型

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

②上傳一張圖片,然后點擊“預覽預處理結果”,然后就會給你生成一張法線圖(懂 3 維的小伙伴應該都知道這個)

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

③繼續輸入關鍵詞,等待生圖....

Mercedes-Benz AMG GT, staring out of the window with regal air, Moody lighting, High detail, realistic fur texture, Digital painting, trending on artstation

梅賽德斯-奔馳 AMG GT,凝視窗外的皇家空氣,穆迪照明,高細節,逼真的皮毛紋理,數字繪畫,藝術站的趨勢

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

怎么說呢,就是牛!!!背景細節等都可以通過關鍵詞來控制,其他調整參數與上面一樣。

言川小知識:這個模型主要是通過 RGB 顏色通道來標記表示凹凸,生成的圖片立體感很強。

可以看到,圖片生成的效果還是不錯的,跟原圖的構圖基本一致,當然還有更多的細節需要調整,大家可以調整這塊的參數即可。

4. OpenPose 姿態檢測

通過姿勢識別實現對人體動作的精準控制,不僅可以生成單人的姿勢,還可以生成多人的姿勢。

此外,由于 AI 生成的手部有問題,OpenPose 還有一個手部檢測模型,大大改善了奇奇怪怪的手。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

①切換預處理器和模型。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

②上傳一張圖片,然后點擊“預覽預處理結果”,注意,第一次選中這個模型開始預處理的時候,會更新一段時間,可以在“控制臺”查看更新進度,更新完成之后再次點擊“預處理”就可以看到 AI 識別的圖了。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

看看預處理結果:

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

③輸入關鍵詞,等待生圖....

1girl, solo, dress, braid, hairband, earrings, smile, brown eyes, white dress, realistic, jewelry, long hair, black hair, looking at viewer, bare shoulders, lips, blue hairband, single braid, brown hair, simple background

女孩,獨奏,連衣裙,辮子,發帶,耳環,微笑,棕色眼睛,白色連衣裙,現實主義,珠寶,長發,黑發,看著觀眾,裸露的肩膀,嘴唇,藍色發帶,單發帶,棕色頭發,簡單的背景

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

這手奇奇怪怪的,沒事,可以試試 OpenPose 手部檢測模型,操作是一樣的,自己去嘗試哈,細節調起來操作很多,一點點嘗試,肯定能成功的。

5. Scribble (涂鴉)

使用 Scribbles 模型,可以根據草圖(涂鴉)繪制出精美的圖片,對于那些沒有接受過美術訓練或缺乏繪畫天賦的人來說,這是非常棒的。

①切換預處理器和模型。(第一次用這個,控制臺會更新一段時間)

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

②點擊“創建空白畫布”。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

③然后在這里畫線稿,這里我畫一盞煤油燈,我是用的鼠標繪制的,畫的不好,做個演示。有手繪板的同學可以用手繪板繪制一下。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

④輸入關鍵詞:

old electronic kerosene lamp in anthracite blue metal, warm orange metal reflections, Intricate, Highly detailed, Warm lighting, Sharp focus, Digital painting, Artstation, Concept art, trending, inspired by art by Zdenek Burian and frederick catherwood

舊電子煤油燈在無煙煤藍色金屬,溫暖的橙色金屬反射,錯綜復雜,高度詳細,溫暖的照明,銳利的焦點,數字繪畫,藝術站,概念藝術,趨勢,靈感來自藝術 zdenek burian 和 frederick catherwood

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

我畫的不標準哈,做個演示,這個模型是根據你繪畫的線稿精準控制物體的構圖、構造。細節根據關鍵詞來控制。

這里可能就有小伙伴疑問了,在 SD 里面直接繪制不是很方便,能不能通過其他軟件繪制之后上傳線稿生圖呢,of course,看下面:

1)上傳線稿圖,點擊“預覽預處理器結果”。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

2)輸入上面的關鍵詞,然后生成圖片:

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

完事,同樣細節需要你們自己去調整。

6. fake-scribble(偽涂鴉)

這個是不需要我們繪畫的,上傳一張圖片,它會幫我們生成涂鴉效果。

①切換預處理器,模型不用切換。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

②上傳圖片,然后點擊“預覽預處理器結果”。(第一次用這個,控制臺會更新一段時間)

說實話,畫的還不如我呢...

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

③輸入關鍵詞:

Espresso, set in a cozy office space with warm lighting, surrounded by office plants, books, and a cup of coffee on the desk, Detailed, Intricate, Smooth, Trending on Artstation, by artists such as loish and rossdraws and sam yang

意式濃縮咖啡,設置在一個舒適的辦公空間,溫暖的照明,周圍的辦公植物,書籍,和一杯咖啡在桌子上,詳細,復雜,流暢,在 Artstation 趨勢,由藝術家如 loish 和 rossdraw 和 sam yang

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

效果嘎嘎棒!!!

7. Semantic Segmentation(語義分割繪制)

Semantic Segmentation 語義分割是一種深度學習算法,重點關注 語義 一詞,這種算法將一個標簽或類別與圖像聯系起來,被用來識別形成不同類別的像素集合。具體還是看我的操作:

①切換預處理器和模型

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

②上傳圖片,然后點擊“預覽預處理器結果”。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

可以看到,預處理階段生成了一張五顏六色的圖片,這就是語義分割圖,這圖中的每一種顏色都代表了一類物品,比如紫色(#cc05ff)代表床(bed),橙黃色(#ffc207)代表墊子(cushion),金黃色(#e0ff08)代表臺燈(lamp)。

這是一份色值表格,大家自取!

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

③這里我就不輸入關鍵詞了,讓 sd 自由發揮

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

言川小知識:可以在 PS 上繪制一個色塊的物體(比如人,放在這個橋上,對應官方的色值),然后導入到語義分割這里來,輸入相應的關鍵詞,就可以精準控制圖像的效果了。

注意看注意看:

這里我講下這個小功能,前面兩個是打開攝像頭的功能,我沒試過,你們想玩可以試一下啊。主要講一下后面的那個小箭頭。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

這個箭頭的功能是把你上傳圖片的分辨率,自動填充上去。

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

(本文部分圖片素材來自網上)

七、寫在最后

以上就是這篇 Controlnet 插件的基礎教程啦,當中還有很多高級的玩法,我會在后續一步步分享給大家。

如果覺得對你有幫助,3 連(點贊、收藏、分享)一下吧,大家的支持才是我的動力,祝大家生活愉快

歡迎添加作者微信交流:

Stable Diffusion進階!姥姥都能看懂的ControlNet超全教程!

收藏 285
點贊 93

復制本文鏈接 文章為作者獨立觀點不代表優設網立場,未經允許不得轉載。