from PIL import Image import numpy as np from diffusers import DEISMultistepScheduler from pipeline_onnx_stable_diffusion_controlnet import OnnxStableDiffusionControlNetPipeline import onnxruntime as ort pose_image = Image.open(r"dance_pose.png") opts = ort.SessionOptions() opts.enable_cpu_mem_arena = False opts.enable_mem_pattern = False pipe = OnnxStableDiffusionControlNetPipeline.from_pretrained( "model/anyv3-fp16-autoslicing-cn_openpose", sess_options=opts, provider="DmlExecutionProvider", ) pipe.scheduler = DEISMultistepScheduler.from_config(pipe.scheduler.config) prompt = "1girl, blonde, long dress, dancing, best quality" seed=25 generator = np.random.RandomState(seed) images = pipe( prompt, pose_image, width=512, height=512, negative_prompt="monochrome, lowres, bad anatomy, worst quality, low quality", num_inference_steps=30, generator=generator, ).images[0] images.save("controlnet-openpose-test.png")