给AI修手的心路历程--三种工具联用进行AI绘图手指修复

本文总结了个人对比较中意的一张图进行崩坏手指修复的经验,提出了基于StableDiffusion +PS +DesignDoll三种工具联用修复流程。适用于手指疑难杂症的暴力替换修复。只想了解流程核心思路的可以跳到最终的总结部分。

结果:
先看下最终结果吧,右侧是原图,左侧是修了之后的最终结果。乍一看,好像,似乎,不额外注意的话,还可以x


修图过程:
一切始于一次平平无奇的抽卡。
这种tag我曾经在一篇鉴赏专栏中提到过,基于ink splashing(泼墨)、monochrome(单色)和watercolor(水彩),效果格外不错。中间抽出来的有一张,构图、人物姿势、整体风格我都比较满意。但不幸的是,这张图中的两只手都崩了。
在这张图里,两只手、手中持物的结构和遮挡关系、剑的结构组成(指剑柄剑镡剑身剑鞘的顺序和形状)、剑的空间关系(指不要断成两截),都是AI难以处理的地方,单纯靠局部重绘抽卡,几乎不可能抽出令人满意的结果。
事实上这张图我前后局部重绘了不说上百次,几十次是肯定有的,都没有好结果,导致我一度放弃这张图了。(当然,局部重绘+PS修些小瑕疵还是好用的,详见之前讲解inpant的一篇专栏。只不过这个例子的症状有点太复杂了,必须出重拳)

某天在群里听说了designdoll这个软件,界面大致如下,可以通过简单的鼠标操作让模型做不同的动作。软件本来好像是给画师用来做人物动作参考的,群里聊到这个也是想用它做img2img(图生图)的原料,以调控生成人物的动作。但是由于界面色彩过于晦暗,结果并不好用。
软件可以在网上下载到免费版,功能对于本文来说已经够用了。

软件支持拖动鼠标对手部每一个关节的角度进行细节调整,可以摆出任何你想要的姿势。由此我想到,拿来做整个人的姿势不好用,只拿来控制手的姿势呢?

一开始,我尝试把DesignDoll里的手截图覆盖到原图上,然后直接扔到img2img里重绘,如下图左侧所示,但是抽了几次之后,效果还是不好。右侧是抽出来的最像样的结果了。

走投无路之下我甚至想过自己从负基础开始学画画,只画手的那种:

笔者痛定思痛,决定思路打开,直接用PS+DesignDoll把手的形状和遮挡关系定下来,只在最后用StableDiffusion,把denoising strength开低后做个简单的重绘。(或者不用SD也行)
下图是用PS处理DesignDoll截图的示例。

(PS最新的对象选择工具真的很好用,算法优化过后的智能选择把抠图从体力活变成了有手就行的活)
可以看出这里的手和剑的色彩和原图差异还是很大的。如下图左图所示。我最终的处理办法是,把原图中蓝得比较均匀圆润的部分截下来,垫在手和剑下面,然后把手和剑的图层的混合模式调成明度。PS应该有对应的专业技巧或者参数能做到更好的效果,但,unfortunately,我不会。
最终适当调整比例以避免违和,结果如右图所示。右下角的另一只手也做了类似的处理。


总结:
总结来说,这套流程的整体思路在于,在情况过于复杂时,放弃AI绘图生成合理手指的尝试。转而以DesignDoll直接生成正常的手指姿态,并借助PS做出合理的空间遮挡关系和色调调整。缺点在于,DesignDoll的3d模型画风可能和原图不太类似。如果只是用来修补不显眼的手指,或许还不那么引人注目,如果手部在画面里占比过大,这个方法修改过后可能也很违和。但总归是多提出了一种应对方案。
至于这个问题的根本性解决,还是要靠AI算法和模型的优化了。