IP-Adapter เป็นเครื่องมือที่มีประสิทธิภาพในการเพิ่มความสามารถให้โมเดล Stable Diffusion ให้สามารถรับ prompt เป็นรูปภาพ (IP ย่อมาจาก Image Prompt) ได้ดีมาก โดยสามารถถ่ายทอดลักษณะของวัตถุหรือสไตล์จากภาพอ้างอิงไปสู่ภาพที่สร้างขึ้นมาใหม่ได้อย่างง่ายดาย คิดง่ายๆ ก็คือ คล้ายกับสามารถทำ LoRA จำลองได้จากภาพแค่ภาพเดียวนั่นเอง
ข้อดีของ IP Adapter คือสามารถใช้ควบคู่กับเครื่องมือปรับแต่งภาพที่มีอยู่แล้วได้ นอกจากนี้ image prompt ยังสามารถใช้ร่วมกับ Text prompt รวมถึง ControlNet เพื่อสร้างภาพที่มีลักษณะผสมผสานจากโหมดต่างๆ ของการควบคุมได้อีกด้วย
ดังนั้นบอกได้เลยว่า IP Adapter คือหนึ่งในเครื่องมือที่ทรงพลังที่สุดของ Stable Diffusion เทียบเท่ากับการมีของ ControlNet เลยก็ว่าได้
สารบัญ
วิธีการ Install IP Adapter
ในการใช้งาน IP Adapter นั้น จำเป็นต้องติดตั้ง Custom Nodes คือ ComfyUI_IPAdapter_plus แต่ว่า ถ้าอยากจะใช้ให้เป็นประสิทธิภาพ จะต้องลงตัว library ที่เรียกว่า insightface ให้ได้ แต่หลายๆ คนจะมีปัญหาในการ install ตัวนี้กันมากที่สุด ซึ่งถ้าลงไม่ได้ จะใช้บาง features เช่น Face ID ไม่ได้ (ซึ่งเราจะพูดถึง Face ID ในบทถัดไป)
ดังนั้นในช่วงต้นของบทความ ผมจะสอนการใช้ IP Adapter แบบที่ยังไม่ยุ่งกับ FaceID ก่อน แล้วพอทำได้แล้ว จะมาสอน install เจ้า insightface อีกทีนึงนะครับ
ขั้นตอนการ Install และโหลดไฟล์ต่างๆ
- Install ComfyUI_IPAdapter_plus แล้ว Restart https://github.com/cubiq/ComfyUI_IPAdapter_plus
- โหลด Model ที่ IP Adapter ต้องการ ดังนี้ (เยอะอยู่ โมเดลทั้งหมดมาจาก huggingface )
/ComfyUI/models/clip_vision
- CLIP-ViT-H-14-laion2B-s32B-b79K.safetensors, เปลี่ยนชื่อไฟล์ตามนี้เป๊ะๆ
- CLIP-ViT-bigG-14-laion2B-39B-b160k.safetensors, เปลี่ยนชื่อไฟล์ตามนี้เป๊ะๆ
/ComfyUI/models/ipadapter
(สร้าง Folder ด้วย ถ้ายังไม่มี)- ip-adapter_sd15.safetensors, Basic model, average strength
- ip-adapter_sd15_light_v11.bin, Light impact model
- ip-adapter-plus_sd15.safetensors, Plus model, very strong
- ip-adapter-plus-face_sd15.safetensors, Face model, portraits
- ip-adapter-full-face_sd15.safetensors, Stronger face model, not necessarily better
- ip-adapter_sd15_vit-G.safetensors, Base model, requires bigG clip vision encoder
- ip-adapter_sdxl_vit-h.safetensors, SDXL model
- ip-adapter-plus_sdxl_vit-h.safetensors, SDXL plus model
- ip-adapter-plus-face_sdxl_vit-h.safetensors, SDXL face model
- ip-adapter_sdxl.safetensors, vit-G SDXL model, requires bigG clip vision encoder
IP Adapter เบื้องต้น
ฟังก์ชั่นหลักของ IP Adapter ซึ่งหลักการคือการทำ Image Prompt หรือสั่ง Prompt ด้วยภาพนั่นเอง ซึ่งหลายคนที่เคยใช้ Midjourney อาจจะคุ้นเคยกับ Concept นี้มาบ้างแล้ว แต่ของ IP Adapter มันเจ๋งกว่านั้นมากๆ มาดูกันว่าเป็นยังไง
เช่น ผมจะใช้ภาพในธีมชุดเกราะมาใช้ควบคู่กับ Prompt แมว โดยสมมติว่าผมเอา Workflow รูปแมวอันนี้มาแก้โดยมี Prompt ว่า
beautiful cat
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 2](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01377_-375x500.png)
แต่ว่าผมมีอีกรูปที่จะใช้เป็น Image Prompt ตามนี้
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 3](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01384_-375x500.png)
หากเราเอามาใช้เป็น Image Prompt กับ Text Prompt แมว ดูสิจะเป็นยังไง?
โดยกระบวนการจะเป็นการใช้ IPAdapter Unified Loader โหลด Model จาก Checkpoint+LoRA ที่ต้องการ แล้วส่งเข้า IPAdapter Advanced ซึ่งจะแก้ไข Model ตาม Image Prompt รูปชุดเกราะ ก่อนส่งไปให้ KSampler สร้างภาพรวมกับ Text Pormpt ว่า Beautiful Cat
ซึ่งใน IPAdapter Unified Loader จะเลือก Model ได้หลายแบบ เบื้องต้นในบทความนี้เราจะลองแบบ STANDARD (Medium Strength) กับ PLUS (High Strength) ก่อน
โดยตัวอย่างแรกเราจะใช้แบบ STANDARD (Medium Strength) ก่อนนะครับ
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 4](https://www.thepexcel.com/wp-content/uploads/2024/04/2024-04-14-09_59_43-ComfyUI-1024x478.png)
จะเห็นว่า แม้ผมใส่ Text Prompt เหมือนเดิม คือแค่ Beautiful Cat แต่มันกลับได้ผลเป็นชุดเกราะหูแมวแบบนี้ได้ เพราะมันมีผลมาจาก รูปชุดเกราะ ที่ส่งให้ IP Adapter นั่นเอง (รูปนี้มี Workflow ติดอยู่นะ เอาไปใช้ได้เลย)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 5](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01385_.png)
นอกจากนี้เรายังมีตัวเลือกในการปรับแต่งภาพได้มากมาย ด้วยการปรับค่า Weight, Weight Type, ใช้ Combine Embeds และใช้ IP Adapter Encoder เพื่อกำหนด Weight ของแต่ละภาพต้นฉบับได้
ปรับ Weight
ถ้า Weight 0.9 ภาพก็จะเปลี่ยนไป
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 6](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01395_-375x500.png)
ลด Weight ลง เหลือ 0.7
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 7](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01386_-375x500.png)
ลด Weight ลง เหลือ 0.5
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 8](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01396_-375x500.png)
ปรับ Weight Type
ตรง Weight Type อันนี้ ถ้าจะให้เข้าใจจริงๆ จะ Advanced มาก เพราะมันคือการกำหนดว่าจะให้ภาพ Image Prompt ของเราเข้าไปแก้ไข Model ตรงไหนของ UNET ซึ่งมันจะมีองค์ประกอบคือ In-Middle-Out เหมือนที่ผมเคยเขียนเรื่องการ Merge Model ในบทความนี้
ผมจะอธิบายแค่คร่าวๆ ว่าแต่ละ choice หมายถึงอะไร? แล้วให้ดูภาพผลลัพธ์ละกัน โดยที่ผมจะคง Weight ไว้ที่ 1.0 เพื่อให้เห็นภาพชัดที่สุดครับ
Linear = ใช้ Weight เท่าๆ กันหมด ในทุก Step ของ Unet (ในที่นี้เราใช้ 1.0)
Ease in = ใช้ Weight เยอะในช่วงแรก (In เริ่ม 1.0) น้อยในช่วงหลัง (Out)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 9](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01397_-375x500.png)
Ease out = ใช้ Weight น้อยในช่วงแรก (In ) เยอะในช่วงหลัง (Out ใช้ 1.0)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 10](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01398_-375x500.png)
Ease in-out คือ ใช้ Weight เยอะทั้งในช่วงแรก และ หลัง (1.0) แต่น้อยในช่วงกลาง (Middle)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 11](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01399_-375x500.png)
Reverse in-out คือ ตรงข้ามกับอันเมื่อกี๊ นั่นคืใช้ Weight น้อยในช่วงแรก และ หลัง แต่เยอะในช่วงกลาง (Middle คือ 1.0)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 12](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01400_-375x500.png)
Weak Input = ไม่ใส่ Weight ใน Input เลย (ใส่แต่ Middle และ Out)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 13](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01401_-375x500.png)
Weak Output = ไม่ใส่ Weight ใน Output เลย (ใส่แต่ In และ Middle)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 14](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01402_-375x500.png)
Weak Middle = ไม่ใส่ Weight ใน Middle เลย (ใส่แต่ In และ Out)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 15](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01403_-375x500.png)
Strong Middle = ใส่ Weight แต่ Middle เลย (ไม่ใส่ In และ Out)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 16](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01404_-375x500.png)
Composition = เอาโครงสร้างองค์ประกอบภาพมาใช้ ได้ผลดีมากกับ SDXL
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 17](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01406_-375x500.png)
Style Transfer = เอาไว้ทำ Style Transfer โดยเฉพาะ ได้ผลดีมากกับ SDXL
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 18](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01405_-375x500.png)
Strong Style Transfer = Style Transfer แบบรุนแรงกว่าปกติ (มักมีส่วนประกอบของภาพเดิมติดมาด้วย) ได้ผลดีมากกับ SDXL
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 19](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01407_-375x500.png)
ลอง Style Transfer แบบชัดๆ
เพื่อให้เห็นชัดๆ เดี๋ยวผมจะหารูปต้นฉบับที่ชัดเจนมากขึ้นมาทำ Style Transfer ให้ดู เช่น รูปนี้
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 20](https://www.thepexcel.com/wp-content/uploads/2024/04/41ec9d12e967a04426c4d02d9fbaea65-366x500.jpg)
แล้วถ้าเอาไปใช้กับ Prompt แมวเฉยๆ จะพบว่ามันยังดูไม่ค่อยได้อย่างที่คิดเท่าไหร่
beautiful cat
Style Transfer
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 21](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01704_-375x500.png)
Strong Style Transfer (มีส่วนประกอบของภาพเดิมติดมาด้วย เช่น การอ้าปาก)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 22](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01705_-375x500.png)
ถ้ายังเห็นไม่ชัด ผมจะลองปรับ Prompt แล้ว เพิ่ม Weight เป็น 1.4
painting of beautiful cat
Style Transfer
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 23](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01707_-375x500.png)
Strong Style Transfer (มีส่วนประกอบของภาพเดิมติดมาด้วย เช่น การอ้าปาก)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 24](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01708_-375x500.png)
ยิ่งถ้าลองเลือกตรง IP Adapter Unified Loader เป็น PLUS (High Strength) ผลที่ได้จะแรงขึ้นไปอีก
Style Transfer
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 25](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01709_-375x500.png)
Strong Style Transfer
Weight 0.8
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 26](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01716_-375x500.png)
Weight 1.0
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 27](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01718_-375x500.png)
ปรับ Combine Embeds
ตัวนี้จะมีผลก็ต่อเมื่อ มี Image มากกว่า 1 รูป ซึ่งผมจะใช้ Node Batch Image เพื่อใส่รูปอันนี้เพิ่มเข้าไปเป็น Image Prompt อีกอัน
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 28](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01347_-375x500.png)
ต่อ Node แบบนี้
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 29](https://www.thepexcel.com/wp-content/uploads/2024/04/2024-04-14-10_48_46-ComfyUI.png)
ต่อจากนี้ไป ผมใช้ Weight Type แบบ Linear โดย Weight เป็น 0.8 นะ
Concat เอา Embed 2 รูปมาต่อกัน ส่งไปประมวลผลทั้งคู่
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 30](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01409_-375x500.png)
add เอา Embed มาบวกกัน แล้วค่อยส่งเข้าไป
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 31](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01410_-375x500.png)
subtract เอาภาพแรกมาใช้ โดยลบสิ่งที่อยู่ในภาพ 2 (ภาพชุดเกราะ) ออกไป เราจะเห็นว่าพวกชุดแข็งๆ กับฉากหลังน้ำตาลจะหายไป
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 32](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01411_-375x500.png)
average = เอาค่า Embed มาเฉลี่ยกัน
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 33](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01412_-375x500.png)
norm average = Normalize Average
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 34](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01413_-375x500.png)
กำหนด Weight ของแต่ละรูปได้
เราสามารถกำหนด Weight ของแต่ละรูปต้นฉบับได้ โดยใช้ Node อีก set นึงแทน คือ IP Adapter Encoder เพื่อเปลี่ยนรูปเป็น Embed โดยกำหนด Weight ได้
แล้วส่งเข้า IP Adapter Combine Embed เพื่อเอา Embed หลายชุดรวมกัน
แล้วค่อยส่งเข้า IP Adapter Embed ที่เป็นตัวซึ่งไม่ได้รับ Input เป็นรูป แต่จะรับเป็น Embed แทน ก่อนส่งต่อเข้า KSampler เลย
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 35](https://www.thepexcel.com/wp-content/uploads/2024/04/2024-04-14-11_20_35-ComfyUI-1024x539.png)
ผลที่ได้ก็จะเปลี่ยนไปอีก
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 36](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01432_-768x1024.png)
ความสนุกไม่มีที่สิ้นสุด
จะเห็นว่าเราสามารถหยิบจับภาพต่างๆ มา Mix & Match ผสมผสานและปรับแต่งกันได้อย่างอิสระ เพื่อสร้างภาพใหม่ๆ ที่ไม่ซ้ำใคร ตามจินตนาการและความต้องการของเรา ความสนุกในการสร้างสรรค์ด้วย IP Adapter จึงไม่มีที่สิ้นสุด
และนี่คือตัวอย่างที่ผมทำเล่นๆ
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 37](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01490_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 38](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01494_-1-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 39](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01495_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 40](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01722_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 41](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01505_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 42](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01640_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 43](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01744_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 44](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01686_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 45](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01702_-768x1024.png)
ok หลังจากที่เราใช้ IP Adapter ปกติได้แล้ว ต่อไปเป็นการเตรียมพร้อม เพื่อใช้ความสามารถของ Insight Face กัน ซึ่งเป็นขั้นตอนที่ยากและมีปัญหามากที่สุด
วิธีติดตั้ง Insight Face
เราทำสิ่งนี้เพื่อให้สามารถใช้ Custom Node ที่เรียกว่า ReActor ได้ และสามารถใช้ FaceID ของ IP Adapter ได้ด้วย
จากที่ผมทำ วิธีที่ work สำหรับผม (วิธีใหม่) คือ ทำดังนี้
- (ComfyUI Portable) จากโฟลเดอร์ root ของ ComfyUI (ที่มีไฟล์ run_nvidia_gpu.bat วางอยู่) ให้ตรวจสอบเวอร์ชันของ Python โดยทำดังนี้
- เข้า CMD และพิมพ์
python_embeded\python.exe -V
- จำ version ของ Python ของคุณเอาไว้
- เข้า CMD และพิมพ์
- ดาวน์โหลดแพ็กเกจ Insightface ที่สร้างไว้ล่วงหน้า (ขึ้นอยู่กับ Version ในขั้นตอนก่อนหน้า)
- สำหรับ Python 3.10 ใช้อันนี้
- สำหรับ Python 3.11 ใช้อันนี้
- สำหรับ Python 3.12 ใช้อันนี้
- แล้ววางไฟล์ แพ็กเกจ Insightface ไว้ในในโฟลเดอร์ root ของ ComfyUI (ที่มีไฟล์ run_nvidia_gpu.bat วางอยู่)
- จากโฟลเดอร์ root : ให้รัน CMD จากนั้นอัปเดต PIP ของคุณ:
python_embeded\python.exe -m pip install -U pip
- จากนั้นติดตั้ง Insightface: โดยใช้คำสั่งนี้
python_embeded\python.exe -m pip install insightface-0.7.3-cp310-cp310-win_amd64.whl
(สำหรับ 3.10)python_embeded\python.exe -m pip install insightface-0.7.3-cp311-cp311-win_amd64.whl
(สำหรับ 3.11)python_embeded\python.exe -m pip install insightface-0.7.3-cp312-cp312-win_amd64.whl
(สำหรับ 3.12)
- จากนั้น Install ReActor Node for ComfyUI แล้ว Restart
https://github.com/Gourieff/comfyui-reactor-node - ถ้าใครทำแล้ว install ไม่สำเร็จ ให้ Update ComfyUI ก่อน แล้วลง Reactor อีกที
- โดยไปรันที่ …\ComfyUI_windows_portable\update\update_comfyui.bat หรือ update_comfyui_and_python_dependencies.bat
ทดลองใช้ ReActor Face Swap Custom Node
เมื่อติดตั้งเสร็จ ReActor แล้ว ให้ลองใช้ ReActor Custom Node เพื่อทดสอบการ Face Swap ด้วย InsightFace ก่อน ถ้าทำงานได้ปกติแสดงว่าพร้อมใช้งานแล้ว
ถ้า Install สำเสร็จ การใช้ Face Swap จะง่ายมากๆ คือแค่ต่อโดยเอา รูป 2 อันเข้า Node Fast Face Swap ก็จบเลย
รูปเดิม คือ อันนี้ จากบทที่แล้ว
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 46](https://www.thepexcel.com/wp-content/uploads/2024/04/2024-04-14-07_51_32-ComfyUI-1024x634.png)
ถ้าอยากให้เนียนขึ้น อาจเลือก Face Restore Model ด้วย เช่น GFPGAN 1.4
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 47](https://www.thepexcel.com/wp-content/uploads/2024/04/2024-04-14-07_54_35-ComfyUI-1.png)
ถ้าเทียบกัน 2 รูป ตัวที่ใช้ Face Restore จะคมชัดขึ้น (อันปกติจะ เบลอหน่อย) ซึ่งถ้ามองว่ามันคมชัดไป เราก็ปรับ Weight ได้นะ
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 48](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01281_-768x1024.png)
![สอนใช้ ComfyUI EP09 : IPAdapter สุดยอดเครื่องมือสั่งงานด้วยภาพ [ฉบับปรับปรุง] 49](https://www.thepexcel.com/wp-content/uploads/2024/04/ComfyUI_01381_-768x1024.png)
ReActor Node คือวิธีที่ทำให้เราสามารถ Deepfake แบบเต็มๆ ซึ่งใช้กับคลิป Video ได้ด้วย (มี Custom Node ที่แตกวีดีโอเป็นภาพแล้วค่อยส่งเข้า Face Swap)
ดังนั้นเวลาเจอคลิปอะไรที่ดูดีเกินจริง ให้ “เอ๊ะ” และสงสัยไว้ก่อนได้เลยนะ ยุคนี้ AI มันปลอมข้อมูลง่ายมากๆ
ok ถ้าใช้งาน ReActor Node ได้แล้ว คราวนี้ก็ถึงคราวโหลด Model FaceID เพิ่มกันแล้ว
โหลด Model FaceID สำหรับ IP Adapter
FaceID models
/ComfyUI/models/ipadapter
- ip-adapter-faceid_sd15.bin, base FaceID model
- ip-adapter-faceid-plusv2_sd15.bin, FaceID plus v2
- ip-adapter-faceid-portrait-v11_sd15.bin, text prompt style transfer for portraits
- ip-adapter-faceid_sdxl.bin, SDXL base FaceID
- ip-adapter-faceid-plusv2_sdxl.bin, SDXL plus v2
- ip-adapter-faceid-portrait_sdxl.bin, SDXL text prompt style transfer
- Deprecated ip-adapter-faceid-plus_sd15.bin, FaceID plus v1
- Deprecated ip-adapter-faceid-portrait_sd15.bin, v1 of the portrait model
FaceID LoRA
/ComfyUI/models/loras
- ip-adapter-faceid_sd15_lora.safetensors
- ip-adapter-faceid-plusv2_sd15_lora.safetensors
- ip-adapter-faceid_sdxl_lora.safetensors, SDXL FaceID LoRA
- ip-adapter-faceid-plusv2_sdxl_lora.safetensors, SDXL plus v2 LoRA
- Deprecated ip-adapter-faceid-plus_sd15_lora.safetensors, LoRA for the deprecated FaceID plus v1 model
หมายเหตุ : ของผมทำตามนี้แล้วไม่มีปัญหาการติดตั้ง แต่ติดปัญหาอีกตัวคือตอนรัน คือ Model ที่โหลดมามีปัญหา ดังนั้นถ้าใครทำตามแล้วใช้ไม่ได้ อาจต้องลบ Model บางตัวใน …\ComfyUI_windows_portable\ComfyUI\models\insightface แล้วลองใหม่นะครับ
สรุป+ตอนต่อไป
สรุปว่า IP Adapter นั้นเป็นเครื่องมือที่ทรงพลังของ Stable Diffusion ที่ช่วยให้เราปรับแต่งรายละเอียดของภาพได้อย่างรวดเร็ว มีประสิทธิภาพ และไม่ต้องเทรนโมเดลใหม่ เพียงแค่เลือกภาพอ้างอิงให้ดีและปรับแต่งพารามิเตอร์ต่างๆ ภาพในฝันก็สามารถกลายเป็นจริงได้ในพริบตา
หากสนใจในการทำให้นางแบบใส่เสื้อผ้าตามที่เรากำหนดได้ โปรดอย่าพลาดติดตามตอนต่อไป ที่ผมจะมาสอนเทคนิคนี้กันอย่างละเอียด รับรองว่าเป็นประโยชน์กับธุรกิจขายเสื้อผ้าอย่างแน่นอน!
Leave a Reply