AIGC初學者:Stable Diffusion高效實操指南

0 評論 3943 瀏覽 25 收藏 21 分鐘

Stable Diffusion是一款生成高質量圖像的工具,生成的圖像還很逼真。本文作者對這款軟件的使用方法及功能進行了詳細地介紹,希望能幫助到你的工作。

Stable Diffusion是一個文本到圖像的潛在擴散模型,這個數據庫擁有從互聯網上抓取的 58 億「圖像-文本」數據,它可以生成包括人臉在內的任何圖像,這些圖像可以是逼真的,如相機拍攝的圖像,也可以是藝術風格,就像由專業藝術家制作一樣。

它有兩個優勢:

  1. 開源:許多愛好者已經創建了免費的工具和模型
  2. 專為低功耗計算機設計:運行免費或便宜

因為有開源的預訓練模型,所以我們可以在自己部署機器上運行它。

一、界面部分

可以在頂部切換大模型checkpoint(可以在https://huggingface.co/下載嘗試)

  • Inkpunk-Diffusion-v2(偏賽博朋克 關鍵詞是nvinkpunk)
  • openjourney-v2/mdjrny-v4(中規中矩)
  • Protogen_V2.2/deliberate_v2.safetensors (偏人像寫實)
  • woolitize768(偏超現實)
  • chilloutmix_NiPrunedFp16Fix.safetensors(偏繪畫)
  • anything-v3-fp16-pruned(偏動漫)

1. Prompt 和 Negative prompt

Prompt內輸入的東西就是你所構思的場景,Negative prompt 內輸入的就是你不希望在圖中包含的。兩個輸入口只能輸入英文半角,詞語之間使用半角逗號隔開;一般越靠前權重越高(還是得多試)。

Negative Prompt(僅供參考):

cloned face, ugly, cross-eye,3d,render,realistic,((disfigured)), ((bad art)), ((extra limbs)),blurry, (((duplicate))), ((mutilated)),extra fingers, mutated hands, ((poorly drawn hands)), ((ugly)), ((bad anatomy)), (((bad proportions))), extra limbs, gross proportions, (malformed limbs), ((missing arms)), (((extra arms))),(fused fingers), (too many fingers), (((long neck))), tiling, (((nsfw))), (badhands)

(nsfw),EasyNegative,.badhandv4,ng_deepnegative_v1_75t,(worst quality:2),(lowquality:2),(normal quality:2),lowres,((monochrome)),((grayscale)),bad anatomy,DeepNegative,skin spots,acnes,skin blemishes,(fat:1.2),facing away,looking away,tilted head,lowres,bad anatomy,bad hands,missing fingers,extra digit,fewer digits,bad feet,poorly drawn hands,poorly drawn face,mutation,deformed,extra fingers,extra limbs,extra arms,extra legs,malformed limbs,fused fingers,too many fingers,long neck,cross-eyed,mutated hands,polar lowres,bad body,bad proportions,gross proportions,missing arms,missing legs,extra digit,extra arms,extra leg,extra foot,teethcroppe,signature,watermark,username,blurry,cropped,jpeg artifacts,text,error,Lower body exposureads, multiple people, group of people, fingers

結構建議:內容描述+風格描述+屬性描述

內容描述:主題內容

風格描述:藝術家/畫筆/攝影風格等 (可以參考以下個人比較常用的鏈接)

屬性描述:比如Midjourney或者人像相關的lora模型(可以參考網站

eg:字符分隔多個提示,則有四種可能的組合(始終保留提示的第一部分)

小Tips:

生成高質量圖像的快捷方式是反復嘗試調節現有描述。靈感收集可以從C站或者Midjourney熱圖,選擇您喜歡的圖像,然后學習不同作者的描述特點/方法論。

在尋找靈感收集人像Prompt時需可以注意Lora模型以及對應的Base Model,lora權重一般0.6-0.8(冒號后邊)。

eg:<dalcefo, realistic, chromatic aberration, cinematic light, finely detailed face)>, portrait, Best quality, masterpiece, full body, brilliant colors, a girl, strapless white dress, sky, complex background, flying, white butterfly wings, long black hair, looking down, looking into the camera, lake, reflection, flying birds, delicate face, <lora:dalcefoNocopyV2_dalcefoNocopyV2:1>

Emoji、顏文字 Emoji (??????????????) 表情符號也是可以使用并且非常準確的。因為 Emoji 只有一個字符,所以在語義準確度上表現良好。關于 emoji 的確切含義,可以參考Emoji List, v15.0 (unicode.org),同時 Emoji 在構圖上有影響。

關于c站lora下載導入SD

可以在C站下載插件:

https://civitai.com/images/359273?modelVersionId=31558&prioritizedUserIds=169238&period=AllTime&sort=Most+Reactions&limit=20

找到對應需求的lora鏈接

鏈接復制到Civitai這個tab中URL,點擊獲取

各個選項獲取信息之后,填寫下載的位置,目前/是根目錄

點擊下載即可,后續在生成按鈕下方的紅色選項卡選擇已下載的lora

2. 權重調節

(best quality:1.3) 可以對關鍵詞設置權重,一般權重設置在0.5~2之間。

eg:(8k, best quality, masterpiece:1.2),(best quality:1.0), (ultra highres:1.0),extremely luminous bright design, pastel colors, (ink:1.3), autumn lights, High Detail, Sharp focus, dramatic, photorealistic painting art by midjourney and greg rutkowski

使用括號人工修改提示詞的權重,方法如下(請注意,權重值最好不要超過 1.5):

  • (word) – 將權重提高 1.1 倍
  • ((word)) – 將權重提高 1.21 倍(= 1.1 * 1.1)
  • [word] – 將權重降低至原先的 90.91%
  • (word:1.5) – 將權重提高 1.5 倍
  • (word:0.25) – 將權重減少為原先的 25%
  • (word) – 在提示詞中使用字面意義上的 () 字符

( n ) = ( n : 1.1 ) (( n )) = ( n : 1.21 ) ((( n ))) = ( n : 1.331 ) (((( n )))) = ( n : 1.4641 ) ((((( n )))) = ( n : 1.61051 ) (((((( n )))))) = ( n : 1.771561 )

3. 采樣方式

  • Euler a:速度快的采樣方式,隨著采樣步數增加并不會增加細節(*常用)
  • DPM++ SDE:人像效果OK(*常用)
  • DPM++2S a Karras 和 DPM++ SDE Karras等:相對于Euler a來說,同等分辨率下細節會更多,但是速度更慢

4. 采樣步數

保持在20~30之間,較低圖片展示不完整,較高細節偏差大(類似銳化)。

5. 生成數量(批量生成)

Batch count:每批生成幾張圖片

Batch size:顯卡一共生成幾批圖片

生成的圖片數量=批次*數量(越多速度越慢,建議加一個Grid功能多圖進行拼圖)

6. 寬高比例(展示畫面內容大?。?/h3>

方圖512*512,傾向于出臉和半身像

高圖512*768,傾向于出站著和坐著的全身像

寬圖768*512,傾向于出斜構圖的半躺像

7. CFG(提示詞相關性)

CFG越小細節越少,CFG越高自由度越多(更飛);通常7-12,更豐富可以12-20,寫實(也可以是用ControlNet時越接近原圖)可以4-7,通過0.5為步微調。

image2image中Denoising strength是添加噪點的強度。也是類似噪點強度越高,AI的創作空間就越大,出圖也就和原圖越不相似。一般來講閾值是 0.7 左右,超過 0.7 和原圖基本上無關,0.3 以下就是稍微改一些。實際執行中,具體的執行步驟為 Denoising strength * Sampling Steps。

8. Seed(效果參數)

隨機寫一個參數(*-1是隨機效果)可以再次使用該參數生成效果進行微調,也就是同一個Seed生成的圖一般是一致的。

二、ControlNet 的使用

可以搭配服用,比如controlnet0用某張圖的風格style, congrolnet1要處理的圖(比如人像),這樣生成的圖既保持1的人像,又使用0的風格樣式。

1. 小Tips:

controlnet預處理的圖的mask分辨率和輸出圖的分辨率對不上,mask就會留邊。

eg:風格預設:clip_vision 對應模型:t2iadapter_style_sd14v1 [202e85cc]

所選的 ControlNet 模型必須與預處理器一致。如圖,對于hed應該選擇control_hed-fp16 [13fee50b] 作為模型。None使用輸入圖像作為控制圖。

Enable記得勾選應用。

2. Preprocessor&Model

帶 hed 一般用于人臉

帶softedge-hedsafe相較于hed質量更高更清晰。

最高結果質量:SoftEdge_HED > SoftEdge_PIDI > SoftEdge_HED_safe > SoftEdge_PIDI_safe

考慮到權衡,我們建議默認使用 SoftEdge_PIDI。在大多數情況下,它運行良好。

帶Openpose一般用于姿勢。

帶有 Canny一般用于偏毛發細節。

帶 M-LSD一般用于建筑。

帶 Scribble、fake_Scribble一般用于涂鴉。

帶 Depth一般用于輪廓比如人物(常用)。

帶 Normal一般用于物體細節,它是法線貼圖圖像,會一定程度上保留物體內部的細節,比如襯衫褶皺。

帶Lineart一般用于粗略的線條。

帶Shuffle一般用于重新組織圖像,隨機洗牌圖像來穩定擴散重構圖像。

帶Tile一般用于修復模糊圖像/補充細節。

3. outpainting

在SD繪圖中16:9和9:16比例生成的效果圖出現多頭,解決方法是:

第一步先1:1比例生成,第二步是outpainting功能實現擴展。

preprocessor: inpaint_only+lama

model: control_v11p_sd15_inpaint_fp16 [be8bc0ed]

resize mode: Resize and Fill

4. inpainting

在controlnet區域放上需要進行局部調整的圖片,點擊inapint預設,在需要調整的圖片上進行涂抹,并在描述區域寫上你的預期效果。

左:有缺陷的原始圖像。右:面部和手臂通過修復固定

5. 對比了不同產品Inpaint功能

Firefly-Generative fill、Imagine-Inpainting和ModelScope-Inpaint相比,前兩者對頭發和人物消除的處理更自然。試了一下Stable Diffusion對于衣服替換以及人物消除處理上,文本和圖像的實現不理想。

Firefly-Generative fill地址:

https://firefly.adobe.com/generate/inpaint

Imagine-Inpainting地址:

https://play.google.com/store/apps/details?id=com.vyroai.aiart

ModelScope-Inpaint地址:

https://modelscope.cn/models/damo/cv_stable-diffusion-v2_image-inpainting_base/summary

6. Weight(230719)

Control Weight:相對于提示給予控制圖的強調程度。它類似于提示中的關鍵字權重,但適用于控制圖。對于二維碼、文字相關建議數值調整為0.4-0.65。這里數值越大,圖案就會越明顯,但相對的,文字和圖片的融合度也會越差??梢宰约憾嘣嚕?strong>比較復雜的文字為了出效果可以調高點,簡單的圖案可以調低點。

Ending Control Step這個參數建議0.6-0.75,代表著ControlNet什么時候停止介入,**數值越大后面留給模型處理融合的時間就越少,文字融合度就會變差,**數值越小模型介入過早就會破壞已有的結構導致看不清文字。也得多嘗試,跟你圖案的復雜程度也有關系。

*文字光效或者將二維碼合成在衣服上的圖最近火遍即刻,看了歸藏老師的文章,效果圖主要是ControlNet的應用,具體可以見微信公眾號。

https://mp.weixin.qq.com/s/rvpU4XhToldoec_bABeXJw

7. Resize Mode

在t2t的controlnet模塊/i2i模塊,有幾個選項可以調整圖像大小:

  • Just resize 只需調整大小 – 只需將源圖像調整為目標分辨率,導致寬高比不正確
  • Crop and resize (*常用)裁剪和調整大小 – 調整源圖像保留縱橫比的大小,以便整個目標分辨率被它占據,并裁剪突出的部分
  • Resize and fill 調整大小和填充 – 調整源圖像保留縱橫比的大小,使其完全適合目標分辨率,并按源圖像中的行/列填充空白區域

8. Preview another result

查看預處理結果:

三、script小技巧操作

1. Script-X/Y/Z plot(選擇自己想要對比的變量)

點擊checkpoint-再點擊右側黃色書本選擇想要對比的大模型

對比lora權重可以選擇Prompt S/R(search/replace)比如我要切換不同同個風格的不同lora

eg:1girl, smile, brown hair, hair ornament, upper body, flower, looking back, hair flower, from behind, lips, illustration Tranquil beach waves and palm trees, Margo Selby, knitted tapestry,(sks),masterpiece, best quality, highly detailed, 8k lora:KnittedPattern-000008:0.68

Prompt S/R – 000008,000009,000010,000011

四、通過Chatgpt提高工作效率

可以這么問:

use Deliberate_deliberate_v2 model, create some prompt to make awesome anime style image

五、最后

很喜歡王建碩老師說的「不要把研究AI新聞當成研究AI」,如果有時間可以從最簡單的prompt開始學起,真正在業務中去實踐,比如效果圖光線太暗、背景太花等,這是「需求驅動」的意義,最終需要磨很多次才能有好的呈現。

畢竟AI對不同詞語理解能力是不同的,最重要的是好奇心和持續的練習。

原作者: Joma Tech;原文來自視頻:A recap of ChatGPT | tech news - by Joma Tech

本文由 @吳恬煊 翻譯發布于人人都是產品經理。未經許可,禁止轉載。

題圖來自 Unsplash,基于 CC0 協議。

該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發揮!