大家可能都听过最近AI绘画领域的又一次突破:ControlNet。
顾名思义,ControlNet是用来“控制”生成图的;在ControlNet出现之前,希望AI生成指定动作的人物图非常困难,而ControlNet技术的出现一举解决了这个难题,不仅能控制人物身体姿势,甚至可以控制手势。
如上所示,有了ControlNet这个神器,再加上ChilloutMix超写实模型和Lora亚裔美女模型,我们可以自由生成一个姿势自定义的AI女友了。
需要实践的朋友可以到文章最后看step by step的视频, 本文和大家展示一下生成流程是多么简单。
一句话概括: 本地部署Stable Diffusion后, 下载几个模型, 然后用插件所见即所得的调整身体姿势和手势, 其他事情都交给AI一键生成!
生成照片级模型需要以下的SD的三个模型:
首先是写真照片级生成模型ChilloutMix, 传送门:https://civitai.com/models/6424/chilloutmix
值得注意的是, ChilloutMix这个AI模型的影响太大, 导致作者放弃版权, 以及做了一些严肃的声明:
除了ChilloutMix, 还要下载Lora模型 Cute Girl mix 4 (https://civitai.com/models/14171/cutegirlmix4),
此外, 还需要一个已经下架的模型 Korean Doll Likeness V15, https://drive.google.com/file/d/1hjhXJoC9G-6LofTLW3c8AZpscArnu1v2/edit, 或者使用仍在网上的V10版 https://civitai.com/models/11619/korean-doll-likenesss
这里提醒一下, 如果使用以上这些模型生成真实明星图像,可能会有肖像权风险哦。
(三个模型下载好之后放入SD对应目录即可, 有需要的朋友可以在b站寻找SD部署的教学,也非常简单,本文略)
Prompt提示词编辑
接着我们来看看,给AI模型输入什么样的Prompt提示词,就可以生成足以假乱真的照片。
Prompt的第一部分, 用来提升画面品质, 可以看情况选其中几个,后面的1.0是权重,可以看情况微调:
(masterpiece:1.0), (best quality:1.0), (ultra highres:1.0) ,(8k resolution:1.0),(realistic:1.0),(ultra detailed1:0), (sharp focus1:0), (RAW photo:1.0)
(杰作, 最佳品质, 超高分辨率, 8k分辨率, 逼真, 超细致, 锐焦, RAW照片)
Prompt的第二部分, 针对写实女性的画质提升:
1 girl,detailed beautiful skin, kind smile, solo, absurdres, detailed beautiful face, petite figure, detailed skin texture, pale skin, thigh gap, detailed hair, random hair style, detailed eyes, glistening skin,portrait photo,
(一个女孩,肌肤细致美丽,微笑善良,单人照,高分辨率,面容细致美丽,身材娇小,肌肤纹理细致,皮肤苍白,大腿之间有空隙,发型细节丰富,眼睛细节丰富,肌肤闪亮,肖像照片)
Prompt的第三部分, 一些自定义描述, 自由发挥:
(short sleeve shirts:1.1),(uniform:1.1),(pantyhose:1.2),(pleated skirt:1.1),ear rings ,futuristic, studio, (white background:1.4),
(短袖衬衫, 制服, 连裤袜, 百褶裙, 耳环, 未来派, 工作室, 白色背景)
负面提示词也很重要。
首先,特别要先放上 NSFW(即not suitable for work, 上班不要看),这样可以避免生成某些尴尬图片。
当然咯,如果你不尴尬,那尴尬的就是别人。
负面prompt的第一部分也是提升画面品质:
(Easy Negative:1.4), (worst quality: 1.4), (low quality: 1.4), (normal quality: 1.4)
负面提示词第二部分,避免各种瑕疵:
lowers,monochrome,grayscales,skin spots, acnes, skin blemishes, age spot,6 more fingers on one hand,deformity, bad legs, error legs, bad feet, malformed limbs, extra limbs,
(降低、单色调、灰度、皮肤斑点、痤疮、皮肤瑕疵、老年斑、一只手上多6个手指、畸形、不好的腿、错误的腿、不好的脚、畸形的肢体、额外的肢体)
提示词整体如下,模型如图所示使用ChilloutMix:
直接点击生成, 效果已经杠杠的:
如果换一个风格的模型, 比如二次元风格, 如下切换到anythingV3这个有名的手绘模型, 提示词不变:
结果就是对应的二次元风格美女:
姿势控制入门
好了, AI美女点击可得, 那怎么控制美女的姿势呢?
简单的说就是给AI模型一张骨骼姿势照片即可。
最简单的方式是直接使用已有的pose图,比如从CIVITAI网站搜索POSE,带有pose标签的资源就是姿势图集,例如:
https://civitai.com/models/13647/super-pose-book-vol1-controlnet
下载pose资源后, 把一幅姿势骨架图片拖动到SD界面controlNet的image区:
AI生成图就会以指定骨架生成对应动作了, 就这么简单:
同样的姿势, 我们多点几下按钮:
简单的自定义姿势
当然,对于有追求的同学来说,预设的几个姿势图肯定不够:我们希望可以自定义美女人像的姿势。
这里就用到SD自定义姿势骨架的插件OpenPose Editor或者Posex了:
OpenPose Editor(左) 和PoseX(右)
OpenPose Editor和Posex都是让用户自行定义姿势骨架的插件,区别是OpenPoseEditor出现比较早,基于2d平面;而Posex基于3D。但使用上两者都是直接拉动骨架节点,和真三维软件去旋转xyz轴控制是不同的。
除了这两个骨架编辑软件,还有一个神器 Depth map Library手部深度图库,它可以实现对角色手部动作的控制!
为了同时控制身体姿势以及手部姿势,需要同时使用两个ControlNet的UI。可以在SD的控制面板里调整Multi ControlNet的数量为2 (注: 所有的SD设置以及插件安装的过程略, step by step的过程有兴趣请见最后视频 )
如上图左边所示,在OpenPose Editor里加载一张背景图做参考, 手动拖动人物骨架到满意的地步, 点击发送就把设置好的姿势骨架图发送给主界面了。
接着,用Depth map library找到一个手部深度图片放到姿势骨架右手腕的匹配位置,如下图:
把调整好位置的手势图输出并导入到第二个controlNet中,就OK了:
以下是未使用手势图controlNet(左)和使用之后(右)的对比:
非常明显, 左图的手势是随机的, 右图手势已经被控制。
不过,即使有ControlNet的加持,AI生成图的手势和姿势还是有一定随机性;比如把手势ControlNet的权重调整到0.5,可以看到手势出现变形:
但如果权重调整为更高的0.75,手势是强制固定了,身体骨架又有可能被拉长变形:
所以,为了得到完美的AI姿势人像图,还是需要微调权重数值去不断抽卡。
尽管还不能保证100%的出图效率,但有了全身姿势和手部姿势的两个controlNet, AI人像生成已经比之前幸福太多了。由几十张生成图得到一张SSR, 也就是一分钟的功夫而已。
使用完全2D的OpenPose自定义骨架有个问题,一旦骨架被拉升到不合理的水平,AI出图就会变形或者被AI完全忽略姿势约束,如下图,AI生成图无视过度变形的姿势骨架:
基于3D的Posex在这点上稍微好些, 打开Posex的页面可以看到,这是一个3D环境,可以鼠标转动镜头:
有3D环境的约束, 通过Posex去自定义的骨架相对不会出现2D的OpenPose这样姿势过度变形的情况,但单独的骨架图片加上单独的手势图,最终还是可能产生一些不合理的结果。
为了实现最完美的效果,我们祭出3D软件大法。
真3D的高级姿势控制
除了以上的初级姿势插件,有3D经验的同学了可以直接使用3D软件来完全控制角色,效果会更好。
比如,熟悉Blender的同学可以用OPii OpenPose Blender RIG(下图左),熟悉Daz Studio的同学可以选择DazStudioG8_OpenPoseRig(下图右)
而更直接的方式是,选择online 3D OpenPose Editor,直接安装插件在SD打开:
最方便的是,在这个插件里可以同时调整身体姿势和手部姿势, 然后一键点击, 就可以把身体姿势图和手部姿势图同时发送给ControlNet进行后续操作了。
当然,对于3D人物而言,姿势骨架本身的手工调整才是最头痛的。
让人喜出望外的是,3D OpenPose Editor这个插件居然可以支持导入参考图(Detect From Image)去自动匹配骨架!如下所示:
这要点100个赞啊!果然懒惰才是人类进步的源泉(笑)
此外,这个编辑器提供了相当丰富的选项来调整各部分骨骼的细节:
其实吧,对于普通同学而言,前面的配图自动输出姿势的功能就秒杀一切了:)
但对专业人士来说,这些自定义选项可是相当方便,可以生成一些身体比例和人类不同的奇幻生物骨架, 如以上的牛头人。。。
我们用3D Openpose 编辑器生成一个随机动作,然后点击"Send to txt2img"发送到主界面,如之前所说,这个发送是同时把身体姿势图和手部姿势深度图都传过去了,完美!
控制身体的ControlNet-0和控制手势的ControlNet-1都接收到了生成的姿势图:
一键出图! 不出意外,人物姿势被控制得很好:
再回到3D OpenPose Editor,我们略作调整,把右手放下,左手调整个装可爱的样子:
再出图!AI女友会对你装可爱了:
后记
虽然本文和视频略长,但实际上,在部署好SD,下载好所需模型和必要插件后,只需简单的在3D OpenPose编辑器里调一下姿势和手势, 然后AI就可以一键生成对应姿势的AI美女人像了。
在越来越完善的绘画AI面前,“眼见为实”这个成语恐怕是越来越不成立了,只有想象力才是边界。
本文结束前, 一起欣赏照片级AI美女人像的效果吧。
注:本想着录制一集ControNet视频,恰好发现有个油管视频已经整理得很好,就引用该视频的图了。