Создание изображений предварительного просмотра с помощью конвейера Stable Diffusion XL приводит к появлению черных изобPython

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Создание изображений предварительного просмотра с помощью конвейера Stable Diffusion XL приводит к появлению черных изоб

Сообщение Гость »


Я работаю с моделью Stable Diffusion XL (SDXL) из библиотеки диффузоров Hugging Face и столкнулся с проблемой, из-за которой моя функция обратного вызова, предназначенная для создания изображений предварительного просмотра в процессе диффузии, создает только черные изображения. Эта установка раньше работала со Stable Diffusion 1.5, но, похоже, имеет проблемы с SDXL.

Основное отличие, которое я заметил, заключается в обработке обратных вызовов в SDXL, где скрытые данные теперь хранятся в callback_kwargs. Я попытался соответствующим образом адаптировать свой код, но предварительный просмотр по-прежнему генерируется неправильно.

Вот минимальный пример моей текущей реализации:

из диффузоров импортировать StableDiffusionXLPipeline импортный фонарь труба = StableDiffusionXLPipeline.from_pretrained( "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16, вариант="fp16", use_safetensors=True ).to("куда") подсказка = "Астронавт в джунглях, холодная цветовая палитра, приглушенные цвета, детализация, 8к" обратный вызов def (pipe, Step_index, timestep, callback_kwargs): скрытые = callback_kwargs.get("латенты") с torch.no_grad(): скрытые = 1/0,18215 * скрытые изображение = Pipe.vae.decode(latents).sample изображение = (изображение / 2 + 0,5).clamp(0, 1) изображение = image.cpu().permute(0, 2, 3, 1).float().numpy() изображение = Pipe.numpy_to_pil(изображение)[0] image.save(f"./imgs/{step_index}.png") вернуть callback_kwargs изображение = канал (подсказка = подсказка, callback_on_step_end = обратный вызов).images[0] Полученные изображения, сохраненные в ./imgs/, просто черные. Я подозреваю, что проблема может быть связана с обработкой скрытых данных или процессом преобразования изображений, но я не уверен, что именно происходит не так.

Кто-нибудь сталкивался с подобной проблемой или может объяснить, почему это может происходить с моделью SDXL?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»