🎨 使用交换自注意力的视觉风格提示
: 无需训练的文本到风格化图像
ArXiv | 📖 论文 | ✨ 项目页面
作者 Jaeseok Jeong1,2*, Junho Kim1*, Yunjey Choi1, Gayoung Lee1, Youngjung Uh2†
1NAVER AI 实验室, 2延世大学
*贡献相同, †通讯作者
🔆 摘要
在不断发展的文本到图像生成领域中,扩散模型已成为内容创作的强大工具。尽管它们具有显著的能力,但现有模型在实现具有一致风格的可控生成方面仍面临挑战,需要昂贵的微调或由于内容泄漏而常常无法充分转移视觉元素。为解决这些挑战,我们提出了一种新颖的方法——视觉风格提示,以生成多样化的图像,同时保持特定的风格元素和细微差别。在去噪过程中,我们保留原始特征的查询,同时在后期自注意力层中将键和值与参考特征的键和值进行交换。 这种方法允许在不进行任何微调的情况下进行视觉风格提示,确保生成的图像保持忠实的风格。通过对各种风格和文本提示的广泛评估,我们的方法显示出优于现有方法的优势,最能反映参考风格,并确保生成的图像最准确地匹配文本提示。
🔥 待办事项
- 颜色校准以使用真实图像作为参考
- 演示中的用户图像
- 演示中的GPU升级(感谢HF)
🤗 HuggingFace 演示
- 👉 默认版本
- 👉 带ControlNet版本
✨ 环境要求
> pytorch 1.13.1
> pip install --upgrade diffusers accelerate transformers einops kornia gradio triton xformers==0.0.16
✨ 使用方法
使用配置文件中预定义的风格
> python vsp_script.py --style fire
👉 使用Controlnet
> python vsp_control-edge_script.py --style fire --controlnet_scale 0.5 --canny_img_path assets/edge_dir
> python vsp_control-depth_script.py --style fire --controlnet_scale 0.5 --depth_img_path assets/depth_dir
👉 使用用户图像
> python vsp_real_script.py --img_path assets/real_dir --tar_obj cat --output_num 5 --color_cal_start_t 150 --color_cal_window_size 50
- 为获得更好的结果,您可以通过直接编辑代码来仅为推理图像添加更多风格描述。
vsp_real_script.py -> def create_prompt
- 以
style_name.png
格式保存您的图像。- 例如:The starry night.png
✨ 其他
👉 如何可视化注意力图?
- 保存注意力图。
> python visualize_attention_src/save_attn_map_script.py
- 可视化注意力图。
> python visualize_attention_src/visualize_attn_map_script.py
📚 引用
@article{jeong2024visual,
title={Visual Style Prompting with Swapping Self-Attention},
author={Jeong, Jaeseok and Kim, Junho and Choi, Yunjey and Lee, Gayoung and Uh, Youngjung},
journal={arXiv preprint arXiv:2402.12974},
year={2024}
}
✨ 许可证
Visual Style Prompting with Swapping Self-Attention
版权所有 (c) 2024-现在 NAVER Cloud Corp.
根据Apache许可证2.0版("许可证")授权;
除非遵守许可证,否则您不得使用此文件。
您可以在以下位置获取许可证副本:
http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则根据许可证分发的软件是基于
"按原样"分发的,不附带任何明示或暗示的担保或条件。
有关许可证下的特定语言管理权限和限制,请参阅许可证。