ÎncepețiÎncepe gratuit

Editare personalizată de imagini

Generarea de imagini cu ajutorul AI este deja impresionantă, însă unele modele suportă și editarea personalizată a imaginilor – o variantă multi-modală care primește atât un prompt text, cât și o imagine sursă. Încearcă să modifici acest celebru autoportret al lui Van Gogh pentru a reda personajul de desen animat Snoopy, folosind StableDiffusionControlNetPipeline:

Celebrul tablou al lui Van Gogh

Notă: Inferența pe modelele de difuzie poate dura mult, așa că imaginea generată a fost preîncărcată pentru tine. Rularea unor prompturi diferite nu va genera imagini noi.

Versionea imaginii filtrată cu Canny a fost deja creată (canny_image). Clasele StableDiffusionControlNetPipeline și ControlNetModel au fost importate din biblioteca diffusers. Lista de generatoare (generator) a fost creată.

Acest exercițiu face parte din cursul

Modele Multi-Modale cu Hugging Face

Vezi cursul

Instrucțiuni pentru exercițiu

  • Încarcă ControlNetModel din checkpoint-ul lllyasviel/sd-controlnet-canny.
  • Încarcă StableDiffusionControlNetPipeline din checkpoint-ul runwayml/stable-diffusion-v1-5, transmițând controlnet-ul furnizat.
  • Rulează pipeline-ul folosind prompt, canny_image, precum și negative_prompt și generator furnizate.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

## NOTE: no imports are required for this exercise
# Load a ControlNetModel from the pretrained checkpoint
controlnet = ____("____", torch_dtype=torch.float16)

# Load a pretrained StableDiffusionControlNetPipeline using the ControlNetModel
pipe = ____(
    "____", controlnet=____, torch_dtype=torch.float16
)
pipe = pipe.to("cuda")

prompt = ["Snoopy, best quality, extremely detailed"]

# Run the pipeline
output = pipe(
    ____,
    ____,
    negative_prompt=["monochrome, lowres, bad anatomy, worst quality, low quality"],
    generator=____,
    num_inference_steps=20,
)

plt.imshow(output.images[0])
plt.show()
Editează și rulează codul