少於 1 分鐘閱讀

使用ai生成圖片,這些年來依序有三種方式。(1)GAN 生成對抗網路、(2)Diffusion Models、(3)LLM生成圖片。今天我們要分享的Fooocus,是屬於第二種。

接下來的操作,可先到github,將fooocus的colab程式複製一份到自己的Google Drive後執行,就可使用fooocus的功能。

用Fooocus生圖

今日主題包括:

  1. FaceSwap: 換臉
  2. CPDS: 做動作控制
  3. PyraCanny:描邊圖
  4. inPaint or outPaint

用Images prompt 生成圖

先練習換臉(FaceSwap)。你可以上傳一張圖片,在prompt寫出你要圖片中的人物做什麼動作?地點在哪?ai就會依照你的描述來生成圖片。 這次,我上傳林欣榮院長的圖片,然後用他的臉來完成我的promt描述。


A handsome Taiwanese man using a laptop in a cozy coffee shop. Warm ambient lighting, wooden tables, soft window light, relaxed atmosphere, shallow depth of field, realistic skin texture, natural pose, high-resolution photography style.

gen-lin

  • 小結論:我們發現有點不像!因為ai沒有學過畫這個人,所以畫出來不像是正常的!

用ai生成的人,重新用prompt畫就很像

因為你用fooocus畫出來的ai人,當作下一次生圖用的input,特徵就會一模一樣。因為這個ai圖是他生成的,他會知道他的特徵向量,所以接下來的人物特徵就會一模一樣。


A man standing at the classroom podium, writing on the chalkboard. Bright classroom lighting, wooden desks, clear chalk dust texture, natural pose, realistic style, high detail.

pic2


用CPDS控制動作

我們再嘗試用這個人臉(設定FaceSwap),指定這個動作(設定CPDS)。看看效果如何?!

當然,我們必須準備一個動作圖給fooocus參考。我的經驗是這張圖最好是去背的PNG,圖片中只有動作,這樣生圖比較不會錯誤。另外,圖片尺寸Aspect Radio要調成跟這個原始動作圖的長寬比一致。

這樣,我就得到一張虛擬院長在教室裡跳舞的圖了~(但我不知道為啥右邊的會變成女性)

小提醒:prompt提示詞最好要寫出國籍,不然可能會生成歐洲人。

pic3


用PyraCanny描邊

我們拿一張chatGPT生成的圖(帥氣男醫師站在南港展覽館前),然後放到fooocus請他描邊。stop值設定0.5,看看描邊效果如何?

描邊

效果不錯!動作、場景都一致。但畢竟不是fooocus自己畫的ai角色,所以描邊結果的人物臉孔會有點不像。

擴展功能(inPaint or outPaint)

如果你需要把小圖放大,無論是哪個方向,都可以用此功能請ai處理。如果你沒寫prompt的話,他就會依照自我認知去生成內容。

所以我先上傳院長到南港展覽館醫療科技展的小圖,用此功能請他生成右邊部分區域。我給他的promt是希望要有醫療儀器相關元素(如下)。


adding several realistic modern medical devices such as patient monitors, infusion pumps, ultrasound machines, ventilators, and small diagnostic instruments. Keep the lighting, shadows, and perspective consistent with the original photo. Clean, bright medical environment, seamless extension, no extra people.

原來小圖

原來小圖

擴展後大圖(一次兩張)

原來小圖

結論

  • 這是一個diffusion model(fooocus)生成圖片的demo。
  • 如果你要創造一個角色,且未來生成圖片都要有這個角色,並且要穩定生成,這方式可考慮。

更新時間: