Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

释放双眼,带上耳机,听听看~!
Hugging Face最新发布了专注于diffuser模型的开源库,为AI艺术作画提供了便利,让人们能够通过几行代码就开始生成自己的艺术作品。本文介绍了diffuser模型的基本信息,并展示了使用该模型进行艺术作画的示例。

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第19天,点击查看活动详情

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

工具库 transformers 的开源方 Hugging Face 刚刚发布了一个用于构建 diffuser 模型的全新库。如果您不知道diffuser模型是什么,你可以查看 ShowMeAI 的另外一篇文章介绍 📘 你给文字描述, AI 艺术作画,精美无比!附源码,快来试试!

随着 AI 技术的发展,我们现在在互联网上看到的那些美丽、富有创意、极具艺术美感的绘画与视频,很多是来自 AI 之手!典型的AI艺术创作例如 OpenAI 的 DALL-E2、谷歌的 Imagen 和 Midjourney 的产品,所有这些产品服务都使用 diffuser 模型,下图为一些创作结果。

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

Hugging Face 发布了一个专注于 diffuser 模型的开源库,我们可以基于它,仅仅通过几行代码就开始生成自己的艺术作画。不过这个 diffuser 库是一个基础实现版本,训练和学习的数据也没有上面提到的几个大厂商业产品多,在本篇文章中,ShowMeAI 就带大家来探索新库,并生成一些我们自己的艺术画作,也对比一下相同文本提示下的大厂商业产品生成的结果。

💡 快速尝鲜

我们先在命令行通过 pip install diffusers 安装本次使用到的工具库,然后导入我们需要用到的模块和功能(在这里我们调用整个扩散模型流水线 DiffusionPipeline),并且我们导入一个小型预训练模型ldm-text2im-large-256

from diffusers import DiffusionPipeline

model_id = "CompVis/ldm-text2im-large-256"

# 预训练模型
ldm = DiffusionPipeline.from_pretrained(model_id)

接着我们就可以基于这个预训练模型作画啦,我们唯一需要做的事情就是给模型一句文本提示(在 diffuser 模型里叫 prompt 提示)。下面我们尝试生成一幅『松鼠吃香蕉』的画作。

# 给定文本提示和作画
prompt = "A painting of a squirrel eating a banana"
images = ldm([prompt], num_inference_steps=50, eta=.3, guidance_scale=6)
images[0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

上面就是模型最终生成的图像,当然受限于我们的计算资源和预训练模型大小,我们生成的图像不像 DALL-E 2 那样令人惊艳,但是我们仅仅用 5 行代码也生成了一副和提示文本匹配的图像,还是很让人感觉神奇。

下面是『松鼠吃香蕉』的另一幅画:

images = ldm(
    [prompt],
    num_inference_steps=100,
    eta=.3,
    guidance_scale=6
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

💡 文本提示

📌 高分辨率

自三大扩散模型(DALL-E 2、Imagen 和 Midjourney)发布以来,大家都开始发挥想象力,尝试各种各样的文本提示,让模型生成艺术图。例如,许多人发现添加『4K画质』或『在Unity中渲染』可以增强三巨头生成的图像的真实感(尽管它们都没有以 4K 分辨率生成)。

如果我们对 Hugging Face 的 diffuser 模型进行同样的尝试,会发生什么?

prompt = "a photorealistic image of a squirrel eating a banana"
images = ldm(
    [prompt],
    num_inference_steps=100,
    eta=.3,
    guidance_scale=6
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

很显然它还不能生成高清的 4K 图,但是图像中的一些细节有丰富一些。

📌 场景与逻辑

我们把场景做得复杂一点点,比如给到的文本提示中,有不同的物体和位置关系,我们看看会生成什么样的结果,提示文字为an italian person eating pizza on top of the colosseum in rome

prompt = "an italian person eating pizza on top of the colosseum in rome"
images = ldm(
    [prompt],
    num_inference_steps=100,
    eta=.3,
    guidance_scale=6
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

看得出来,这个简单的 diffuser 模型在很努力地复现我们文本中提到的人、斗兽场、披萨,但是对于更细节的位置关系,似乎它还没有做得非常好,这里的人并没有坐在罗马斗兽场顶部,而且斗兽场的拱门颜色和天空颜色也不完全匹配。

📌 更抽象的情况

回到松鼠,尝试生成更抽象的图像,例如 a giant squirrel destroying a city『一只巨大的松鼠摧毁一座城市』,我们随机采样了一些结果如下,好坏参半:

prompt = "a giant squirrel destroying a city" 
images = ldm(
    [prompt],
    num_inference_steps=100,
    eta=.3,
    guidance_scale=6
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

prompt = "a giant squirrel destroying a city"
images = ldm(
    [prompt],
    num_inference_steps=50,
    eta=.3,
    guidance_scale=6
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

prompt = "a giant squirrel destroying a city"
images = ldm(
    [prompt],
    num_inference_steps=100,
    eta=.3,
    guidance_scale=2
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

我们似乎观察到,目前这个小模型似乎很难融合两个通常相关度没那么高的概念,即『(巨型)松鼠』和『城市』。我们从一些生成的效果不是特别好的图片可以观察出这一点,下面的结果中,要么对城市与天际线做了很好的描述却忽略了松鼠,要么对松鼠和自然环境做了很好的描述,却没有特别强的城市背景:

prompt = "a landscape image showing a giant squirrel destroying a city"
images = ldm(
    [prompt],
    num_inference_steps=50,
    eta=.8,
    guidance_scale=2
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

prompt = "a landscape image showing a giant squirrel destroying a city"
images = ldm(
    [prompt],
    num_inference_steps=50,
    eta=.8,
    guidance_scale=2
)
images['sample'][0]

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

多次运行这些提示后,我们发现当前这个小模型下,总是在主体之间切换但很难将两者融合在一起。

💡 DALL-E 2的结果

我们把同样的内容"a dramatic shot of a giant squirrel destroying a modern city"灌给 DALL-E 2 ,让它从提示做图,得到的结果如下:

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

果然在更庞大的AI模型下,生成的结果更自然,也能把不同的细节关联起来。

💡 总结

这就是 Hugging Face 新库的初尝鲜!尽管目前开源的小模型上,还有一系列的问题,但是这类模型就像一把钥匙,解锁一些令人敬畏的人工智能类人的艺术创造水平。

短期看,这个小小的预训练模型当然无法取代 DALL-E 2、Imagen 或 Midjourney,但随着开源社区的强大,它会表现越来越好。

参考资料

Hugging Face发布专注于diffuser模型的开源库,让AI艺术作画变得简单

本网站的内容主要来自互联网上的各种资源,仅供参考和信息分享之用,不代表本网站拥有相关版权或知识产权。如您认为内容侵犯您的权益,请联系我们,我们将尽快采取行动,包括删除或更正。
AI教程

使用大语言模型进行情感分析的简单方法

2023-12-12 0:32:14

AI教程

PyTorch中计算CNN参数Hessian矩阵的实现问题

2023-12-12 1:52:14

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索