.hd-box .hd-fr

让 AI 学会画手的方法来了,给输入加个 buff 就能控制生成细节

2023-02-21 20:31量子位(萧箫)14评

原文标题:《让 AI 学会画手的方法来了,给输入加个 buff 就能控制生成细节,华人小哥出品丨 GitHub 4.6k 星》

给画画 AI 加个 buff,画起图像就像开了挂。

加个人体骨骼绑定 buff,Stable Diffusion 直接快进到生成 3D动漫

加个抽象到爆的草图buff,AI 变着风格生成“完全一致”的狗子:

就连号称“AI 杀手”的手部细节,也能在控制之下画得惟妙惟肖:

这个名叫 ControlNet 的新 AI 插件,可以说是给画画 AI 来了最后的“临门一脚”——

原本 AI 无法控制的手部细节、整体架构,有了它之后,加上 Stable Diffusion 这样的扩散模型,足以生成任何人们想要的图像。

发出不到两天,ControlNet 就在 GitHub 上火了,目前已经狂揽 4.6k 星:

“让我们控制扩散模型”

各种效果图更是在推特上爆火,试玩过的网友直呼:

游戏结束!

所以,这个 ControlNet 究竟给扩散模型加了什么 buff?

给 AI 画画模型加 buff

ControlNet 的原理,本质上是给预训练扩散模型增加一个额外的输入,控制它生成的细节。

这里可以是各种类型的输入,作者给出来的有 8 种,包括草图、边缘图像、语义分割图像、人体关键点特征、霍夫变换检测直线、深度图、人体骨骼等。

那么,让大模型学会“按输入条件生成图片”的原理是什么呢?

ControlNet 整体思路和架构分工如下:

具体来说,ControlNet 先复制一遍扩散模型的权重,得到一个“可训练副本”(trainable copy)。

相比之下,原扩散模型经过几十亿张图片的预训练,因此参数是被“锁定”的。而这个“可训练副本”只需要在特定任务的小数据集上训练,就能学会条件控制。

据作者表示,即使数据量很少(不超过 5 万张图片),模型经过训练后条件控制生成的效果也很好。

“锁定模型”和“可训练副本”通过一个 1×1 的卷积层连接,名叫“0 卷积层”。

0 卷积层的权重和偏置初始化为 0,这样在训练时速度会非常快,接近微调扩散模型的速度,甚至在个人设备上训练也可以。

例如一块英伟达 RTX 3090TI,用 20 万张图像数据训练的话只需要不到一个星期:

作者基于当前大火的 Stable Diffusion 进行了具体实现,主要架构如下:

针对不同的输入,作者也给出了对应不同的模型,生成效果也都不错。

例如这是采用 Canny 边缘检测算法检测出的边缘,用于生成图像:

这是基于霍夫变换的直线检测算法生成的直线草图,用于生成各种风格的室内设计:

当然,自己作画也可以,例如这是基于用户草图生成的小龟:

提取深度图,并让 AI 生成一幅相似的图像,直接举一反五:

语义分割下的游泳池图像,不仅水里有倒影细节,建筑也变化多样:

不过目前来看,最受欢迎的还是基于人体姿态估计算法,控制动漫人物的动作生成:

看到这里,是不是已经有了大胆的想法?(手动狗头)

曾开发爆火 AI 上色插件

这个项目的作者 Lvmin Zhang,2021 年本科毕业于东吴大学,目前在斯坦福大学读博。

他最出名的项目之一,是 2017 年开发的 AI 上色插件 style2paints,目前 GitHub 上已经有 15.9k 星。

style2paints 也经过了好几次迭代,目前即将更新到第五版。

这是第四版的效果,只需要线稿,AI 就能自动给你的图像完成上色:

除了这个项目以外,他也是 CV 顶会的常客了。

One More Thing

值得一提的是,现在已经有基于 ControlNet 的国内产品上线了。

这个产品名叫稿定 AI,包含照片转插画、插画线稿上色、插画优化翻新等功能,正是基于 ControlNet 打造。

作画效果大概是酱婶的:

感兴趣的小伙伴们可以去试玩一波了~

项目地址:

https://github.com/lllyasviel/ControlNet

参考链接:

本文来自微信公众号:量子位 (ID:QbitAI),作者:萧箫

广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。

下载IT之家APP,分享赚金币换豪礼
相关文章
大家都在买广告
热门评论
查看更多评论