ПочатиПочніть безкоштовно

Кастомне редагування зображень

Генерація зображень за допомогою ШІ вже вражає, але деякі моделі підтримують і кастомне редагування зображень — мультимодальний варіант генерації, який приймає і текстовий запит, і вихідне зображення. Спробуйте змінити цей відомий автопортрет Ван Ґоґа, перетворивши його на персонажа мультфільму — Снупі, використовуючи StableDiffusionControlNetPipeline:

Famous Van Gogh painting

Примітка: Інференс у дифузійних моделях може тривати довго, тож ми заздалегідь завантажили для вас згенероване зображення. Запуск інших підказок не згенерує нові зображення.

Версію зображення з фільтром Canny уже підготовлено (canny_image). Класи StableDiffusionControlNetPipeline і ControlNetModel імпортовано з бібліотеки diffusers. Список генераторів (generator) створено.

Ця вправа є частиною курсу

Багатомодальні моделі з Hugging Face

Переглянути курс

Інструкції до вправи

  • Завантажте ControlNetModel з контрольної точки lllyasviel/sd-controlnet-canny.
  • Завантажте StableDiffusionControlNetPipeline з контрольної точки runwayml/stable-diffusion-v1-5, передавши наданий controlnet.
  • Запустіть конвеєр, використовуючи prompt, canny_image, а також надані negative_prompt і generator.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

## 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()
Редагувати та запускати код