# Stable Diffusion WebUI 操作指引 ## 1. 下載模型 * 到 https://civitai.com/ 找喜歡的模型  * 點擊進入分頁(以 XXMix_9realistic 為例)  * 複製該分頁網址(https://civitai.com/models/47274/xxmix9realistic ) * 到Stable Diffusion 的 Civirai Helper 頁面,在Download Model 的 Civitai URL 欄貼上  * 照順序點擊: * 1. Get Model Info * 在2. Pick Subfolder and Model Version 選擇Sub-folder(/ 即可) & Model Version * 最後按下3. Download Model等待下載完畢  * 便可以在頁面左上角按重新整理後,選擇該模型  ## 2. 文生圖 回到方才的模型分頁 頁面中有數個模型作者提供的範例圖 點擊圖片右下角的 i 便能得知該圖的生成條件,包含:  * **Prompt:** 圖片的正面描述 = 希望圖片裡出現的東西 * **Negative prompt:** 圖片的**負面**描述 = **不希望**圖片裡出現的東西 * **Sampler:** 採樣器 建議使用模形時,與範例圖片使用相同的Sampler * **CFG scale:** 圖片與文字描述的相關性 :::warning :warning:注意:CFG並非越大越好,太大產生的圖會像波普藝術 ::: * **Seed:** 隨機種子代碼 Stable Diffusion的原理是將一張充滿噪點的圖片,根據文字描述進行降噪。 故同樣的文字描述,用不同的噪點圖也會出現不同的結果。 因此,若想對圖片進行細微調整,需要將Seed固定下來以穩定產出結果。 * **Step:** 降噪的次數,通常會在28~50之間,越多細節越好,理論上不需要超過50。 參考這些參數與文字描述,便可以到自己的Stable Diffusion生成相似的圖片。 並開始調整或加入自己所需要的Prompt  * Clip skip: 跳過層,藉由跳過最後幾層神經網路,使模型輸出不同的結果 這個參數藏得比較裡面,要到「設定 」> Stable Diffusion 裡面調整  Clip skip雖會影響產出的結果,但因模型而異。 不同模型調整這個不一定會提高產圖品質。大多是設定為 2。  :::info 注意! 在「文生圖」模式,圖片的長&寬盡量維持在512~768這個範圍 因為大多數的模型都是用 512*512 解析度的圖片訓練。(SDXL除外) 若要求它產生更高解析度的圖片,很難得到預期的結果。 想生成高解析度的圖,需分成兩個步驟: 1. 用「文生圖」生成512左右解析度的圖 2. 到「圖生圖」或「更多」生成的圖片解析度拉高 ::: ## 3. 圖片放大(以 圖生圖 功能為例) 在「文生圖」生成解析度的圖片後,可以用圖片下方的「>>圖生圖」按鈕將圖片移至「圖生圖」,或在「圖片瀏覽器」下載並到「圖生圖」上傳。  在圖片下方選擇「填充」(「潛在放大」只會產生模糊的大圖 ) 並重新調整大小,以 寬*高 = 512*768 為例,等比例放大可以到1408*2048 :::warning **重點!! 「重繪幅度」要調整至0** 我們不希望放大完的圖片與原始圖片長得不一樣 :::  最後按下右上角的生成,就能得到原圖的高解析(1408*2048)版本  ## 4. 姿勢指定(Control Net) 前面有說過,Stable Diffusion的原理是將一張充滿噪點的圖片,根據文字描述進行降噪。 而直接提供一張圖片再讓它降噪,就能夠省去許多文字描述,得到我們想要的圖片。 先在「圖生圖」界面下方的ControlNet頁面,上傳「有我們要的姿勢」的圖片。  下方勾選「啟用」 Preprocesser 選 openpose,右邊模型選擇control_sd15_openpose 下面其他東西都不用改,然後點擊左下角Preview annotator result ControlNet就會生成一張用關鍵點&線條組成的姿勢分析圖  再將這個線條圖傳到上方的「圖生圖」裡,就可以更換模型與Prompt等參數(請參考2. 文生圖),讓生成的圖片也擺出該姿勢。 :::info **註:重繪幅度推薦調整為0.7** ::: 
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.