今天给大家介绍一个 ComfyUI 工作流,可以直接将黑神话悟空换成自己的脸,话不多说直接看图:
请在评论区说出此人的名字,我敢打赌你一定猜不到😁
继续看图:
请在评论区说出此人的名字,我敢打赌你一定还是猜不到😁
本工作流由二狗子老师团队制作,如果有报错可以参考这个飞书文档:https://waytoagi.feishu.cn/wiki/CIlqwheSXiYyjEktlFCcC7d2nKg
工作流讲解
1. 输入自己的人像,使用 SegmentAnythingUltra 节点识别面部

注意这里的提示词是 “face”
但是只识别面部,边缘的毛发是不能替换进去的,所以还要想办法包裹住毛发部分。
2. 对识别出来的面部使用遮罩进行扩充,包裹住毛发部分

3. 将整个面部裁剪出来,后续只对面部进行重绘

4. 将裁剪出来的面部区域进行放大

SDXL 最适合的图片操作尺寸在 1024 左右,而上一步裁剪出来的面部尺寸比较小,所以我们要将其缩放到 1024,方便后续正常生图。
如果你的显卡是 4090 或者更牛逼的显卡,完全可以将尺寸调到 1536,因为 SDXL 支持的最大尺寸就是 1536。
所以最终进入采样器的就是这个放大后的面部截图和遮罩:

5. 使用 InstantID 换脸,同时使用 ControlNet 保持猴哥面部特征
这一步需要用到 InstantID 将猴哥的脸换成我们自己的脸,同时我们还需要用到一个 ControlNet 模型 CN-anytest_v4-marged
来保持猴哥的面部特征(一脸的毛!)。

默认情况下,SD 每一步都是在上一步的基础上进行扩散和降噪,因此变化会越来越大。而使用了 ControlNet 模型 CN-anytest_v4-marged
之后,每一步都会参考猴哥的原图来进行扩散和降噪,因此最后仍然能保持猴哥的面部特征。
6. 进入采样器开始生图
这一步开始进入采样器进行生图,Repeat Latent Batch 节点可以设置抽卡的张数,这里我们设置成 4,一次就会生成四张图。

7. 将生成的面部拼接到猴哥原图

最终我们就变成了黑神话悟空!
如果效果不满意可以多抽几次卡,祝大家抽卡快乐~
想获取完整的工作流和模型,请关注公众号👇
公众号后台发送暗号【猴哥】即可获取。
本文参考视频:https://www.bilibili.com/video/BV1agWaefENA