Latest News

首頁 » AI 人工智慧 » Stable Diffusion 它有那些功能?(電腦的硬體基本要求有那些?)

Stable Diffusion 它有那些功能?(電腦的硬體基本要求有那些?)

AI人工智能的蓬勃發展,目前已經有好多人在使用Stable Diffusion

Stable Diffusion 有那些功能?
Stable Diffusion是2022年發布的深度學習文字到圖像生成模型。
它主要用於根據文字的描述產生詳細圖像,儘管它也可以應用於其他任務,如內補繪製、外補繪製,以及在提示詞指導下產生圖生圖的轉變。
它是一種潛在擴散模型,由慕尼黑大學的CompVis研究團體開發的各種生成性類神經網路之一。

Stable Diffusion 電腦版安裝基礎概念:
在安裝 Stable Diffusion 電腦版前,首先須確認電腦配備規格,由於 Stable Diffusion 是使用 AI 運算生成繪圖,所需的硬體設備需求相對也會比一般軟體來的更高!

使用 Stable Diffusion 最低基本硬體條件包含:

Nvidia 顯示卡
6.9GB VRAM
8GB 記憶體(RAM)
10GB 硬碟空間

其次,則要準備適合 Stable Diffusion 的運行環境
Stable Diffusion 是以 Python 搭建而成,並使用 GitHub 來儲存程式碼及外掛程式

因此在安裝 Stable Diffusion 前,必須先安裝好 Python、Git 這兩個軟體,後續才能順利運行。

過往有許多人因為電腦規格條件不足,因而選擇使用 Google Colab 免費版,在雲端安裝並執行 Stable Diffusion
但在 2023 年 4 月份時,Google Colab 公告由於使用者人數暴增,未來僅限付費 Pro 版才可以運行 Stable Diffusion。

 

它是一種潛在擴散模型,由慕尼黑大學的CompVis研究團體開發的各種生成性類神經網路之一。
 它是由初創公司StabilityAI、CompVis與Runway合作開發,並得到EleutherAILAION的支援。
截至2022年10月,StabilityAI籌集了1.01億美元的資金。 

Stable Diffusion的原始碼和模型權重已分別公開發布在GitHub和Hugging Face,可以在大多數配備有適度GPU的電腦硬體上運行。
而以前的專有文生圖模型(如DALL-E和Midjourney)只能通過雲端運算服務訪問。 

技術架構


Stable Diffusion使用的潛在擴散結構圖。
 
擴散模型所用的去噪過程。

Stable Diffusion是一種擴散模型(diffusion model)的變體,叫做「潛在擴散模型」(latent diffusion model; LDM)。
擴散模型是在2015年推出的,其目的是消除對訓練圖像的連續應用高斯噪聲,可以將其視為一系列去噪自編碼器。
Stable Diffusion由3個部分組成:變分自編碼器(VAE)U-Net一個文字編碼器
與其學習去噪圖像數據(在「像素空間」中),而是訓練VAE將圖像轉換為低維潛在空間。

添加和去除高斯噪聲的過程被應用於這個潛在表示,然後將最終的去噪輸出解碼到像素空間中。

在前向擴散過程中,高斯噪聲被迭代地應用於壓縮的潛在表徵。

每個去噪步驟都由一個包含ResNet骨幹的U-Net架構完成,通過從前向擴散往反方向去噪而獲得潛在表徵。
最後,VAE解碼器通過將表徵轉換回像素空間來生成輸出圖像。
研究人員指出,降低訓練和生成的計算要求是LDM的一個優勢。 

去噪步驟可以以文字串、圖像或一些其他數據為條件。
調節數據的編碼通過交叉注意機制(cross-attention mechanism)暴露給去噪U-Net的架構。
為了對文字進行調節,一個預訓練的固定CLIP ViT-L/14文字編碼器被用來將提示詞​轉化為嵌入空間。

Stable Diffusion 用法:

Stable Diffusion模型支援通過使用提示詞來產生新的圖像,描述要包含或省略的元素, 以及重新繪製現有的圖像,其中包含提示詞中描述的新元素(該過程通常被稱為「指導性圖像合成」(guided image synthesis) )通過使用模型的擴散去噪機制(diffusion-denoising mechanism)。 
此外,該模型還允許通過提示詞在現有的圖中進行內補繪製和外補繪製來部分更改,當與支援這種功能的使用者介面使用時,其中存在許多不同的開源軟體。 

Stable Diffusion建議在10GB以上的視訊記憶體(GDDR或HBM)下運行, 但是視訊記憶體較少的使用者可以選擇以float16的精度載入權重,而不是默認的float32,以降低視訊記憶體使用率。

 

Stable Diffusion  文生圖

演示反向提示詞對圖像生成的影響。

  • 上: 無反向提示詞
  • 中: “綠樹”
  • 下: “圓形石頭”

Stable Diffusion中的文生圖採樣指令碼,稱為”txt2img”,接受一個提示詞,以及包括採樣器(sampling type),圖像尺寸,和隨機種子的各種選項參數,並根據模型對提示的解釋生成一個圖像檔案。 

生成的圖像帶有不可見的數位浮水印標籤,以允許使用者識別由Stable Diffusion生成的圖像, 儘管如果圖像被調整大小或旋轉,該浮水印將失去其有效性。

Stable Diffusion模型是在由512×512解析度圖像組成的數據集上訓練出來的,  這意味著txt2img生成圖像的最佳組態也是以512×512的解析度生成的,偏離這個大小會導致生成輸出品質差。

Stable Diffusion 2.0版本後來引入了以768×768解析度圖像生成的能力。 

每一個txt2img的生成過程都會涉及到一個影響到生成圖像的隨機種子;使用者可以選擇隨機化種子以探索不同生成結果,或者使用相同的種子來獲得與之前生成的圖像相同的結果。

使用者還可以調整採樣迭代步數(inference steps);較高的值需要較長的運行時間,但較小的值可能會導致視覺缺陷。

另一個可組態的選項,即無分類指導比例值,允許使用者調整提示詞的相關性(classifier-free guidance scale value); 更具實驗性或創造性的用例可以選擇較低的值,而旨在獲得更具體輸出的用例可以使用較高的值。 

反向提示詞(negative prompt)是包含在Stable Diffusion的一些使用者介面軟體中的一個功能(包括StabilityAI自己的「Dreamstudio」雲端軟體即服務模式訂閱制服務),它允許使用者指定模型在圖像生成過程中應該避免的提示,適用於由於使用者提供的普通提示詞,或者由於模型最初的訓練,造成圖像輸出中出現不良的圖像特徵,例如畸形手腳。

與使用強調符(emphasis marker)相比,使用反向提示詞在降低生成不良的圖像的頻率方面具有高度統計顯著的效果;強調符是另一種為提示的部分增加權重的方法,被一些Stable Diffusion的開源實現所利用,在關鍵詞中加入括號以增加或減少強調。

 

Stable Diffusion 圖生圖

Stable Diffusion包括另一個取樣指令碼,稱為”img2img”,它接受一個提示詞、現有圖像的檔案路徑和0.0到1.0之間的去噪強度,並在原始圖像的基礎上產生一個新的圖像,該圖像也具有提示詞中提供的元素;去噪強度表示添加到輸出圖像的噪聲量,值越大,圖像變化越多,但在語義上可能與提供的提示不一致。  圖像升頻是img2img的一個潛在用例,除此之外。

 

演示img2img修改

  • 左: 最初用Stable Diffusion 1.5製作的圖像
  • 右: 用Stable Diffusion XL 1.0修改後的圖像

 

2022年11月24日發布的Stable Diffusion 2.0版本包含一個深度引導模型,稱為”depth2img”,該模型推斷所提供的輸入圖像的深度,並根據提示詞​和深度資訊生成新圖像,在新圖像中保持原始圖像的連貫性和深度。 

內補繪製與外補繪製

Stable Diffusion模型的許多不同使用者介面軟體提供了通過img2img進行圖生圖的其他用例。內補繪製(inpainting)由使用者提供的蒙版描繪的現有圖像的一部分,根據所提供的提示詞,用新生成的內容填充蒙版的空間。  隨著Stable Diffusion 2.0版本的發布,StabilityAI同時建立了一個專門針對內補繪製用例的專用模型。  相反,外補繪製(outpainting)將圖像擴展到其原始尺寸之外,用根據所提供的提示詞生成的內容來填補以前的空白空間。 

在Stable Diffusion中使用img2img的內補繪製與外補繪製技術的演示
第一步: 使用txt2img生成新圖像。巧合的是,它無意中生成了這個缺少一隻手臂的人。
第二步: 通過外補繪製,圖像底部被擴展了512像素,並被AI生成的內容所填充。
第三步: 在準備內補繪製時,使用GIMP中的畫筆繪製了一個臨時的手臂。
第四步: 在臨時手臂上應用內補繪製蒙版,img2img生成一個新手臂,同時保持圖像的其餘部分保持不變。

 

關於

發佈留言


【網路技術密訓基地】莫忘記初衷! (堅持!直到成功!)

【洪總教頭】曾說:過去的理念已經實現的叫做:【成就】,而還未實現的就叫:【夢想】!我們從來沒因已有的【成就】而放棄【夢想】!
唯有你我知道的秘密,就不可能到處去說給別人聽,因為:到處宣揚的就不叫做【密技】!

E-Mail:ster168ster@gmail.com