PuLID คืออะไร?
PuLID (Pure and Lightning ID customization) เป็นวิธีใหม่สำหรับการปรับแต่งตัวตน (ID) โดยไม่ต้องปรับจูนในโมเดลการสร้างภาพจากข้อความ มีเป้าหมายเพื่อฝัง ID เฉพาะ (เช่น ใบหน้าของบุคคล) ลงในโมเดลการสร้างภาพจากข้อความที่ผ่านการฝึกอบรมล่วงหน้าโดยไม่ทำให้ความสามารถดั้งเดิมของโมเดลเสียหาย ซึ่งช่วยให้สามารถสร้างภาพของบุคคลเฉพาะได้ในขณะที่ยังสามารถปรับเปลี่ยนคุณลักษณะ สไตล์ พื้นหลัง ฯลฯ ได้โดยใช้ข้อความ
PuLID ประกอบด้วยสองส่วนสำคัญ:
- สาขา "Lightning T2I" ที่สร้างภาพคุณภาพสูงอย่างรวดเร็วโดยใช้ไม่กี่ขั้นตอนในการลดเสียงรบกวน พร้อมกับสาขาการกระจายมาตรฐาน ซึ่งช่วยให้สามารถคำนวณความสูญเสียของ ID ได้อย่างแม่นยำเพื่อปรับปรุงความถูกต้องของใบหน้าที่สร้างขึ้น
- ความสูญเสียการจัดแนวเชิงเปรียบเทียบระหว่างเส้นทาง Lightning T2I ที่มีและไม่มีการปรับแต่ง ID นี่แนะนำโมเดลวิธีการฝังข้อมูล ID โดยไม่ทำให้ความสามารถในการติดตามคำสั่งและการสร้างภาพดั้งเดิมของโมเดลเสียหาย
PuLID ทำงานอย่างไร
สถาปัตยกรรมของ PuLID ประกอบด้วยสาขาการฝึกอบรมการกระจายแบบทั่วไปและสาขา Lightning T2I ใหม่:
- ในสาขาการกระจาย PuLID ปฏิบัติตามกระบวนการฝึกอบรมการกระจายมาตรฐานของการลดเสียงรบกวนทีละขั้นตอน เงื่อนไข ID ถูกครอบตัดจากภาพการฝึกอบรมเป้าหมาย
- สาขา Lightning T2I ใช้วิธีการสุ่มตัวอย่างที่รวดเร็วล่าสุดเพื่อสร้างภาพคุณภาพสูงที่มีเงื่อนไขตามคำสั่ง ID ในเพียง 4 ขั้นตอนการลดเสียงรบกวน เริ่มต้นจากเสียงบริสุทธิ์
- ภายในสาขา Lightning T2I สร้างเส้นทางสองเส้น - เส้นทางหนึ่งมีเงื่อนไขตามคำสั่งข้อความเท่านั้น อีกเส้นหนึ่งมีเงื่อนไขตามทั้ง ID และคำสั่งข้อความ คุณสมบัติ UNET ของเส้นทางเหล่านี้ถูกจัดแนวโดยใช้ความสูญเสียเชิงเปรียบเทียบ:
- ความสูญเสียการจัดแนวเชิงความหมายทำให้มั่นใจว่าการตอบสนองของโมเดลต่อคำสั่งข้อความมีความคล้ายคลึงกันทั้งที่มีและไม่มีการปรับแต่ง ID ซึ่งรักษาความสามารถในการติดตามคำสั่งดั้งเดิมของโมเดล
- ความสูญเสียการจัดแนวรูปแบบรักษาความสอดคล้องของรูปแบบภาพที่สร้างขึ้นก่อนและหลังการแทรก ID
- สาขา Lightning T2I ช่วยให้สามารถคำนวณความสูญเสียของ ID ได้อย่างแม่นยำระหว่างการฝังใบหน้าที่สร้างขึ้นและการฝัง ID จริง เนื่องจากมันสร้างใบหน้าที่สะอาดและลดเสียงรบกวน ซึ่งปรับปรุงความถูกต้องของ ID ที่สร้างขึ้น
วิธีใช้ ComfyUI PuLID
การใช้เวิร์กโฟลว์ ComfyUI PuLID เพื่อใช้การปรับแต่ง ID กับโมเดลเกี่ยวข้องกับพารามิเตอร์สำคัญหลายประการในโหนด "Apply PuLID":
"Apply PuLID" ข้อมูลที่ต้องการ:
- model: โมเดลการกระจายข้อความเป็นภาพพื้นฐานที่จะปรับแต่งด้วย ID เฉพาะ โดยทั่วไปเป็นโมเดลที่ผ่านการฝึกอบรมล่วงหน้า เช่น Stable Diffusion
- pulid: น้ำหนักโมเดล PuLID ที่โหลด ซึ่งกำหนดวิธีการแทรกข้อมูล ID ลงในโมเดลพื้นฐาน ไฟล์น้ำหนัก PuLID ที่แตกต่างกันสามารถฝึกอบรมเพื่อให้ความสำคัญกับความถูกต้องของ ID หรือการรักษาสไตล์การสร้างดั้งเดิมของโมเดล
- eva_clip: โมเดล Eva-CLIP ที่โหลดสำหรับการเข้ารหัสคุณลักษณะใบหน้าจากภาพอ้างอิง ID Eva-CLIP สร้างการฝังคุณลักษณะใบหน้าที่มีความหมาย
- face_analysis: โมเดล InsightFace ที่โหลดสำหรับการรู้จำและครอบตัดใบหน้าในภาพอ้างอิง ID สิ่งนี้ทำให้มั่นใจว่ามีเพียงคุณลักษณะใบหน้าที่เกี่ยวข้องเท่านั้นที่ถูกเข้ารหัส
- image: ภาพอ้างอิงหรือภาพที่แสดง ID เฉพาะที่จะฝังลงในโมเดล สามารถให้ภาพหลายภาพของตัวตนเดียวกันเพื่อปรับปรุงการฝัง ID
- method: เลือกวิธีการแทรก ID โดยมีตัวเลือก "fidelity", "style" และ "neutral" "fidelity" ให้ความสำคัญกับความเหมือนสูงสุดกับภาพอ้างอิง ID แม้ว่าคุณภาพการสร้างจะลดลง "style" มุ่งเน้นการรักษาความสามารถในการสร้างดั้งเดิมของโมเดลในขณะที่มี ID ความถูกต้องต่ำกว่า "neutral" สมดุลระหว่างทั้งสอง
- weight: ควบคุมความแรงของการแทรก ID ตั้งแต่ 0 (ไม่มีผล) ถึง 5 (แรงมาก) ค่าเริ่มต้นคือ 1 น้ำหนักที่สูงขึ้นปรับปรุงความถูกต้องของ ID แต่เสี่ยงต่อการทำให้การสร้างเดิมของโมเดลเสียหาย
- start_at: ขั้นตอนการลดเสียงรบกวน (เป็นเปอร์เซ็นต์จาก 0 ถึง 1) ที่จะเริ่มใช้การปรับแต่ง ID PuLID ค่าเริ่มต้นคือ 0 เริ่มการแทรก ID จากขั้นตอนการลดเสียงรบกวนแรก สามารถเพิ่มขึ้นเพื่อเริ่มการแทรก ID ในภายหลังในกระบวนการลดเสียงรบกวน
- end_at: ขั้นตอนการลดเสียงรบกวน (เป็นเปอร์เซ็นต์จาก 0 ถึง 1) ที่จะหยุดใช้การปรับแต่ง ID PuLID ค่าเริ่มต้นคือ 1 ใช้การแทรก ID จนถึงสิ้นสุดการลดเสียงรบกวน สามารถลดลงเพื่อหยุดการแทรก ID ก่อนขั้นตอนการลดเสียงรบกวนสุดท้าย
"Apply PuLID" ข้อมูลที่เป็นทางเลือก:
- attn_mask: ภาพหน้ากากเฉดสีเทาแบบเลือกได้เพื่อควบคุมเชิงพื้นที่ว่าการปรับแต่ง ID ถูกนำไปใช้ที่ไหน พื้นที่สีขาวของหน้ากากได้รับผลการแทรก ID อย่างเต็มที่ พื้นที่สีดำไม่มีผล พื้นที่สีเทาได้รับผลบางส่วน มีประโยชน์สำหรับการจำกัด ID เฉพาะบริเวณใบหน้า
"Apply PuLID" ผลลัพธ์:
- MODEL: โมเดลอินพุตที่มีการปรับแต่ง ID PuLID ใช้ โมเดลที่ปรับแต่งนี้สามารถใช้ในโหนด ComfyUI อื่น ๆ สำหรับการสร้างภาพ ภาพที่สร้างขึ้นจะแสดง ID ในขณะที่ยังคงควบคุมได้ผ่านคำสั่ง
การปรับพารามิเตอร์เหล่านี้ช่วยให้สามารถปรับการแทรก ID PuLID เพื่อให้ได้สมดุลที่ต้องการระหว่างความถูกต้องของ ID และคุณภาพการสร้าง โดยทั่วไป น้ำหนัก 1 กับวิธี "neutral" ให้จุดเริ่มต้นที่เชื่อถือได้ ซึ่งสามารถปรับได้ตามผลลัพธ์ พารามิเตอร์ start_at และ end_at ให้การควบคุมเพิ่มเติมว่าเมื่อใดที่ ID มีผลในการลดเสียงรบกวน โดยมีตัวเลือกในการจำกัดผลผ่าน attn_mask
สำหรับข้อมูลเพิ่มเติม กรุณาเยี่ยมชม github