Diffusers代码学习-图生图

除了之前已经介绍的文生图之外,最主要的功能就是图生图。从直觉上来说,只需要额外多做一步工作,就是加载一张图片。如何通过图片和提示词,就交给程序来完成就好了。与上一次代码不一样的地方都粗体标出了,改动不是特别多。

# 以下代码为程序运行进行设置,使用图生图的自动管道
import os
os.environ["HF_ENDPOINT"] = "https://hf-mirror.com"
from diffusers import AutoPipelineForImage2Image
import torch

# 多了一行,程序需要能够支持加载图片
from diffusers.utils import load_image

# 以下代码加载模型,但是用的是图生图的自动管道
pipe_img2img = AutoPipelineForImage2Image.from_pretrained(
    "dreamlike-art/dreamlike-photoreal-2.0", torch_dtype=torch.float16, use_safetensors=True
).to("cuda")

# 多了一行,以下代码加载图片
init_image = load_image(
    "https://hf-mirror.com/datasets/huggingface/documentation-images/resolve/main/diffusers/autopipeline-text2img.png")

# 以下代码加载并处理提示词
prompt = "cinematic photo of Godzilla eating burgers with a cat in a fast food restaurant, 35mm photograph, film, professional, 4k, highly detailed"
generator = torch.Generator(device="cpu").manual_seed(67)

# 以下代码基于原始图片,由提示词生成图片
image = pipe_img2img(prompt, image=init_image, generator=generator).images[0]

image.show()

这里是加载了一张网上的图片。

图片

生成结果如下

图片

通常都是加载一张本地的图片(例如名字叫init_image.png),图片保存在代码同一目录下。代码中加载图片的地方改为就可以了。

# 多了一行,以下代码加载图片

init_image = load_image("init_image.png")

现在是不是感觉代码修改也不是那么复杂?

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

duhaining1976

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值