2023年2月27日 星期一

繪圖AI - Midjourney 的進階使用技巧(二)

接續上篇,繼續來說明關於Midjourney 的進階使用技巧。相信很多用過Stable Diffusion 這類的AI繪圖都會知道,我們在控制AI生成的圖形,除了一般的提詞外,還可以設置"負提詞"或稱為反向提詞,也就是我不希望出現的元素,另外,我們還可以利用"種子"來讓生成的場景或人物非常接近,尤其是人物。這兩個重要元素,在SD中,都是直接在介面上可以選擇的,但是Midjourney 似乎都沒有。今天主要就是來說明,SD中常見的一些指令用法,在Midjourney中的對應使用方式。

進階技巧-1:負提詞

負提詞,就是跟提詞相反,如果畫面中有一些你不想出現的元素,你可以在這邊加入,畫面中就會排除這些元素。在Stable Diffusion 常常用於避免一些如人體變形、手指變形、18禁畫面或是過於"3D"等等,有時負提詞比正常提詞還要更長。在Midjourney要是排除如元素或色調,例如下面的例子:

--no+負面提示,--no plants 會嘗試從畫面中移除植物。--no red 會嘗試將畫面中紅色調移除或減少。你可以藉此移除各項元素,如人物、交通工具、光源、窗戶等等等。

進階技巧-2:權重與多提示

有使用過SD的朋友,應該會了解(((提詞)))、(提詞:1.2)或是{提詞}這些用法,這些括號以及裡面的數字,但表不同強度的提詞,但這是SD的語法,Midjourney 也有類似的,不過在講解權重前,要先說明一下多提示。

我們一般在提詞時,有兩種情況,一種會是直接輸入一句完整的帶有主詞、形容詞等的句子,另外一種方式是把每個提詞用逗號分開。所謂多提詞,是此一串提詞指令有幾個重點的要素,而這些重點都很重要,官方用了一個很有趣的例子,就是"熱狗",hot dog在一句話裡面的意義跟hot, dog,是兩個不同的意思。而出現hot, dog,這兩個提詞之後,才有權重的需求,也就是你的hot到底要多強烈。官方的用法如下:

在提示中添加雙冒號:: ,例如:hot:: dog,就會出現很熱的狗,而不是一份熱狗。




有了多個提詞後,我們就可以在這些關鍵的提詞上,給他權重,這樣就能改變每個提詞的分量,類次於我們在SD的這個做法((hot)),權重是一種比例的概念,在預設都是0(也就是權重相等),因此你輸入1、2、3、0.5,這樣的數字就可以了。官方的例子如下:

提詞: hot::2 dog,可以看到hot這個關鍵字的權重增加了,火焰也就更大了。


剛剛提到的負提詞"--no+負面提示"這個用法,其實也可以用權重的方式來代替,例如,如果你不想要某個元素,例如我不想要畫面中有出現人,那我可以這樣提詞:people:: -0.5或people:: -1,這樣也就等於負向提詞,因為把人這個元素變成負值,那麼然的元素就可以排除。



進階技巧-3:Seed種子的控制

所有的AI繪圖,都是利用亂數的一個起始值來當作運算的基準,而這個值我們稱為Seed(種子),我們可以把它真的當成植物的種子來理解,同一個品種的種子,長出來的植物會是極為相同的,因此我們如果使用相同的Seed(種子)來進行運算,那麼算出來的結果也是會極為相同的。

種子的數值是0–4294967295,也就是說,理論上如果用相同的提詞,在各主相同的條件下,可以有四億多種不同的結果,更別說如果再加上各種不同的提詞組合了。正常運算下Seed值是每個圖像隨機生成的,MJ允許使用--seed或 --sameseed參數來指定Seed。使用相同的種子和相同的提詞將產生相似的圖像,但倒底會有多相似,則看版本不同而定。我們來實驗一下。

我的提詞:a beautiful modern wooden chair --seed 226543 




以目前Midjourney V4C這個版本來看,在同樣條件下,是幾乎完全相同的。我們在延續試試看,如果我們增加場景在提詞中,造型是否還會延續。

我的提詞:a beautiful modern wooden chair, in the room --seed 226543



我們可以發現,增加了場景到提詞中後,造型發生了很大的變化,型態已經很難再延續下去。

我們在繼續做實驗,我們用同一組種組值,來用人物造型進行測試。

我的提詞:A little girl with blond hair and blue eyes, with a ponytail and a red dress. --seed 226543



我們使用同一組提詞,加上同一組SEED,最後加上動作,我們讓小女孩躺下。

我的提詞:A little girl with blond hair and blue eyes in a ponytail in a red dress lies down and sleeps --seed 226543 


你會發現,人物的型態似乎是比較延續的,跟先前的差異不會太大,不至於是兩種不同的形態。我們再試試給她不同的表情。

我的提詞:A little girl with blond hair and blue eyes, with a ponytail and a red dress. Surprised expression --seed 226543 


把這張圖跟第一張圖對比,你可以看到小女孩雖然表情誇張,髮型也有了一點的改變,但是還算是第一張的延續,並沒有太嚴重的變化。我們就可以利用種子來延續畫面中主角的造型,這對製作連續性的故事或繪本有很大的幫助。

那為什麼椅子的造型差異這麼大,而人物就相對來說型態行能控制能。我覺得主因是我們對家具設計的提詞不夠,也就是提詞越少,AI自行發揮的空間越大,你要型態延續,就必須給AI更多的條件限制。


進階技巧-4:如何找到Seed

剛剛的示範,是由我手動,隨便輸入一個Seed值,但我們多數使用時,是讓AI隨機生成,如果我隨機生成後,選到一張我想要的圖,要如何找到Seed值。我們用這張圖來當範例:

當我們想查詢某一張圖時,要查詢的這張圖的右邊,可以看到一個添加表情符號的位置,然後再命令列輸入"envelop",就會出現信封的表情符號,請選擇第一個信封。伺服器就會以私信的方式把資訊寄給你。


可以看見他提供你的資訊包含了Job ID,也就是你作品的編號,另外還有這張圖所用的Seed值。


進階技巧-5:過程影片

有些人可能會看過,有人製作作品從無到有生成的漸變過程影片,這也是一個參數,只要再結尾使用--video參數,就能製作生成的初始到成品影像的短片。只要使用表情符號的信封符號將完成的影片寄給你。

例如:Vibrant California Poppies --video

最後MJ會提供一串連結,就會是生成過程的影片。


進階技巧-6:Remix

Remix顧名思義,是一種混和,這個字我們比較常見於音樂中,很多會在我們熟悉的原版曲目中,在我們熟悉的原版曲目中,增加更種不同的元素。在這裡也是同樣的功能,使用Remix模式,可以在已經完成的圖上,再更改提詞、參數、模型版本和長寬比等。

Remix屬於命令,而不是參數,必須使用/settings來打開Remix(或是/prefer remix也可以),開啟後在放大的圖像下面"Make Variations"(Remix開啟點擊是綠色的,一般模式點擊是藍色的),點擊後就會出現改變提詞的對話框。順序如下:

先利用/settings來打開功能表,把Remix mode打開。



點擊放大圖下面的"Make Variations"(Remix開啟點擊是綠色的,一般模式點擊是藍色的)



在這邊可以重新提供新的提詞,你可以增加新的元素進去,AI會以這個Seed等基本條件重新計算。



這是Remix增加火焰後的結果。


使用Remix模式其實相當便利,可以讓我們不必去特別尋找seed,可以在已經完成的圖上,再更改提詞、參數、長寬比等,甚至可以更換計算的模型版本等。尤其是我們希望在既有畫面上增減一些元素,或是做更多的變化時,不妨使用這個功能試試。

以上就是我針對Midjourney 的進階使用技巧的分享,有任何問題也歡迎留言討論。之後如果有什麼其他的新資訊或是特殊的使用方法,我會再另外寫文章分享。


沒有留言:

張貼留言

RHINO 8 練習題 範例--錄音筆