huggingface / huggingface/diffusers
HELP, can I do img2img on multi imgs at the same time?
- Dominant language
- Python
- Stars
- 34.5k
- Forks
- 7.3k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 91
Description
In my case, I need to do img2img on multiple images, I saw the parameter "image" can be a list of PIL.image.iamge but when I used a list of images as input, I got an error like below.
> File "/mnt/disk1/1/code/ip-adapter/infer-face-diffusers-lcm-upscaleM1.py", line 107, in ip
image_hires = pipes_img2img[i](ip_adapter_image=image, image=imgs_resize, prompt=prompt, negative_prompt=n_prompt_default, num_inference_steps=steps, guidance_scale=gs_scale, strength=strength).images
File "/home/1/.local/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
return func(*args, **kwargs)
File "/home/1/.local/lib/python3.10/site-packages/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_img2img.py", line 1083, in __call__
noise_pred = self.unet(
File "/home/1/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/home/1/.local/lib/python3.10/site-packages/diffusers/models/unets/unet_2d_condition.py", line 1121, in forward
sample, res_samples = downsample_block(
File "/home/1/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/home/1/.local/lib/python3.10/site-packages/diffusers/models/unets/unet_2d_blocks.py", line 1199, in forward
hidden_states = attn(
File "/home/1/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/home/1/.local/lib/python3.10/site-packages/diffusers/models/transformers/transformer_2d.py", line 391, in forward
hidden_states = block(
File "/home/1/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/home/1/.local/lib/python3.10/site-packages/diffusers/models/attention.py", line 378, in forward
hidden_states = attn_output + hidden_states
RuntimeError: The size of tensor a (43520) must match the size of tensor b (21760) at non-singleton dimension 1
How should I do this correctly? If I can do multi img2img at the same time, that would be great.
HELP, thank you!
Contributor guide
Assessment
This issue has not been assessed yet.