Как сохранить цвета одежды в сгенерированном изображении с помощью ControlNet с SDXL?Python

Программы на Python
Ответить
Anonymous
 Как сохранить цвета одежды в сгенерированном изображении с помощью ControlNet с SDXL?

Сообщение Anonymous »

Я работаю с конвейером Stable Diffusion XL (SDXL), который использует ControlNet для управления генерацией изображений. У меня есть сегментированное изображение одежды, содержащее определенные цвета, и я хочу, чтобы эти цвета строго сохранялись в окончательно сгенерированном изображении. Однако, несмотря на использование ControlNet с несколькими входными изображениями (openpose, canny и сегментированное изображение одежды), сгенерированный результат не сохраняет цвета одежды из сегментированного изображения.
def generate_image(pipe, controlnet_img_pose, controlnet_img_canny, prompt, negative_prompt, new_width, new_height, segmented_img):
generator = torch.Generator('cuda').manual_seed(random.randint(0, 2147483647))

controlnet_img_pose_pil = Image.fromarray(cv2.cvtColor(controlnet_img_pose, cv2.COLOR_BGR2RGB))
controlnet_img_canny_pil = Image.fromarray(cv2.cvtColor(controlnet_img_canny, cv2.COLOR_BGR2RGB))
controlnet_img_cloth = segmented_img.convert("RGB")

images = pipe(
prompt=[prompt],
image_list=[controlnet_img_pose_pil, controlnet_img_canny_pil, controlnet_img_cloth, 0, 0, 0, 0],
negative_prompt=[negative_prompt],
generator=generator,
width=new_width,
height=new_height,
num_inference_steps=70,
union_control=True,
union_control_type=torch.Tensor([0.2, 0.2, 1.0, 0, 0, 0]), # Prioritizing clothing control
crops_coords_top_left=(0, 0),
target_size=(new_width, new_height),
original_size=(new_width * 2, new_height * 2),
).images

return images[0]


Подробнее здесь: https://stackoverflow.com/questions/791 ... net-with-s
Ответить

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

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

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

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

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