Stable Diffusion的文生图和图生图的基本流程
时间: 2025-03-27 13:14:33 AIGC 浏览: 68
### Stable Diffusion 文生图基本流程
在Stable Diffusion中,文本生成图像的过程涉及几个关键步骤。用户首先提供一段描述期望图像的文字提示词。该模型利用这些文字提示来指导其内部算法创建相应的视觉表示[^1]。
```python
from diffusers import StableDiffusionPipeline, EulerAncestralDiscreteScheduler
import torch
model_id = "stabilityai/stable-diffusion-2"
scheduler = EulerAncestralDiscreteScheduler.from_pretrained(model_id, subfolder="scheduler")
pipe = StableDiffusionPipeline.from_pretrained(model_id, scheduler=scheduler, revision="fp16", torch_dtype=torch.float16)
pipe.to("cuda")
prompt = "A fantasy landscape with a castle and mountains."
image = pipe(prompt).images[0]
image.save("fantasy_landscape.png")
```
这段Python代码展示了如何通过调用`diffusers`库中的函数并指定想要绘制的内容作为参数传递给模型来进行文生图操作。
### Stable Diffusion 图生图基本流程
对于基于现有图片的再创作即图生图功能而言,在上述基础上增加了原始图片这一额外输入项。具体来说就是除了给出目标风格或修改方向外还需上传一张源文件供程序参考以便调整细节特征使之更贴近预期效果;同时允许设定重绘强度以控制变化程度[^2]。
```python
from PIL import Image
init_image = Image.open("./path_to_your_initial_image.jpg").convert("RGB") # 加载初始图片
strength_value = 0.75 # 设置重绘幅度值介于(0..1)
new_image = pipe(prompt=prompt, image=init_image, strength=strength_value).images[0]
new_image.save("modified_fantasy_landscape.png")
```
此部分代码片段说明了当执行图生图任务时应怎样加载原图以及定义转换力度,并最终保存处理后的成果。
阅读全文
相关推荐
















