MagicMix
1.0.0
การใช้งาน MagicMix: กระดาษการผสมเชิงความหมายกับแบบจำลองการแพร่กระจาย
จุดมุ่งหมายของวิธีนี้คือการผสมผสานแนวคิดสองแนวคิดที่แตกต่างกันในลักษณะเชิงความหมายเพื่อสังเคราะห์แนวคิดใหม่โดยยังคงรักษาเค้าโครงและเรขาคณิตเชิงพื้นที่ไว้
วิธีการนี้จะใช้รูปภาพที่ให้ความหมายของโครงร่างและพร้อมต์ที่ให้ความหมายเนื้อหาสำหรับกระบวนการผสม
มี 3 พารามิเตอร์สำหรับวิธีการ-
v
: เป็นค่าคงที่การประมาณค่าที่ใช้ในเฟสการสร้างโครงร่าง ยิ่งค่าของ v มากเท่าใด อิทธิพลของพร้อมต์ต่อกระบวนการสร้างโครงร่างก็จะยิ่งมากขึ้นเท่านั้นkmax
และ kmin
: สิ่งเหล่านี้กำหนดช่วงสำหรับโครงร่างและกระบวนการสร้างเนื้อหา ค่า kmax ที่สูงขึ้นส่งผลให้สูญเสียข้อมูลเพิ่มเติมเกี่ยวกับเค้าโครงของภาพต้นฉบับ และค่า kmin ที่สูงขึ้นส่งผลให้มีขั้นตอนมากขึ้นสำหรับกระบวนการสร้างเนื้อหา from PIL import Image
from magic_mix import magic_mix
img = Image . open ( 'phone.jpg' )
out_img = magic_mix ( img , 'bed' , kmax = 0.5 )
out_img . save ( "mix.jpg" )
python3 magic_mix.py
"phone.jpg"
"bed"
"mix.jpg"
--kmin 0.3
--kmax 0.6
--v 0.5
--steps 50
--seed 42
--guidance_scale 7.5
นอกจากนี้ โปรดดูสมุดบันทึกสาธิตเพื่อดูตัวอย่างการใช้งานเพื่อทำซ้ำตัวอย่างจากรายงาน
คุณยังสามารถใช้ไปป์ไลน์ชุมชนบนไลบรารีตัวกระจายสัญญาณได้
from diffusers import DiffusionPipeline , DDIMScheduler
from PIL import Image
pipe = DiffusionPipeline . from_pretrained (
"CompVis/stable-diffusion-v1-4" ,
custom_pipeline = "magic_mix" ,
scheduler = DDIMScheduler . from_pretrained ( "CompVis/stable-diffusion-v1-4" , subfolder = "scheduler" ),
). to ( 'cuda' )
img = Image . open ( 'phone.jpg' )
mix_img = pipe (
img ,
prompt = 'bed' ,
kmin = 0.3 ,
kmax = 0.5 ,
mix_factor = 0.5 ,
)
mix_img . save ( 'mix.jpg' )
ฉันไม่ใช่ผู้เขียนบทความนี้ และนี่ไม่ใช่การดำเนินการอย่างเป็นทางการ