StreamMultiDiffusion 项目介绍
项目概述
StreamMultiDiffusion 是一个基于用户指定区域的文本提示,进行实时、交互、多个文本到图像生成的项目。简单来说,该项目让用户可以使用刷子不仅绘制颜色,还可以添加意义,创造出具有深刻内涵的图像。此项目兼容多种区域控制技术和加速技术,支持大尺寸图像生成,并且已经成为视觉创作者的实用工具。
项目特点
- 交互式图像生成:用户可以从零开始,通过细粒度的区域控制来生成图像,即用意义来绘制图像。
- 提示分离:在同时生成两个或多个对象时,可以避免意外的内容混合。
- 图像修复和编辑:用户可以基于已有的照片或艺术作品进行实时图像修复和编辑。
更新日志
- 新增功能:支持经典 Stable Diffusion 3,提供了最新的 Semantic Palette 演示。
- 重要更新:包括对 SDXL 支持、新增示例和用户指南、纸上发布和代码发布。
- 优化更新:改善了实时交互生成演示,并提高了整体生成质量和速度。
安装步骤
要使用 StreamMultiDiffusion 项目,你需要具备 Python 环境,并按照以下步骤安装所需组件:
conda create -n smd python=3.10 && conda activate smd
git clone https://github.com/ironjr/StreamMultiDiffusion
pip install -r requirements.txt
特别地,若需支持 Stable Diffusion 3,还需执行额外命令:
pip install git+https://github.com/initml/diffusers.git@clement/feature/flash_sd3
使用方法
运行演示应用程序
StreamMultiDiffusion 提供多种形式的演示,以下是运行命令示例:
-
基于 Gradio 的主要演示:
cd demo/stream_v2 python app.py --model "你的稳定扩散1.5检查点" --height 512 --width 512 --port 8000
-
Semantic Palette 演示(SD1.5检查点):
cd demo/semantic_palette python app.py --model "你的稳定扩散1.5检查点" --height 512 --width 512 --port 8000
通过这些命令,可以启动应用程序,并通过浏览器访问 https://localhost:8000
来使用。
主要功能演示
StreamMultiDiffusion 支持多种创新方式来生成、编辑和修复图像。例如,通过详细的掩膜(mask)和提示(prompt)来实现严格的提示分离,从而消除不必要的内容混合。还允许用户制作全景图和大区域图像生成,提供出色的稳定性和速度表现。
结论
StreamMultiDiffusion 项目代表了文本到图像生成领域的重要发展。这一项目通过语义刷的创新应用,让创作过程变得更加直观且富有表现力,尤其在生成大尺寸和详细图像方面展现了其强大的能力。无论是艺术创作、影像修复还是概念设计,该项目均可提供有力支持。