如何在本地ComfyUI运行cog-face-to-sticker:6个必备自定义节点入门教程
【免费下载链接】cog-face-to-stickerface-to-sticker项目地址: https://gitcode.com/gh_mirrors/co/cog-face-to-sticker
想把一张人脸照片快速变成卡通贴纸吗?开源项目cog-face-to-sticker可以做到——它把任意人脸转换成矢量风格的贴纸,并基于 ComfyUI 工作流实现。本教程带你从零开始,在本地 ComfyUI 中跑通这个项目,重点讲解6 个必备自定义节点的作用、安装与模型配置,帮你避开新手最容易踩的坑。
一、项目是什么:人脸变贴纸的原理
cog-face-to-sticker 的核心是一条 ComfyUI 工作流,输入一张人脸图片,输出一张贴纸风格的插画。它的实现思路是:
- 抠图:先用人物分割模型把人脸从背景中剥离出来
- 身份保持:用 InstantID + IPAdapter 双重锁定人脸特征,保证"像本人"
- 风格化生成:用 SDXL 底模 + 贴纸 LoRA + 卡通提示词,生成 cel shaded(赛璐璐)矢量风
- 放大:可选 2 倍超分辨率,让贴纸更清晰
这套逻辑集中在 API 格式的工作流里,你可以直接查看 face-to-sticker-api.json 理解节点串联关系。
二、环境准备:克隆仓库与安装自定义节点
1. 克隆仓库
在终端执行以下命令获取项目源码(含 ComfyUI 子模块):
git clone --recurse-submodules https://gitcode.com/gh_mirrors/co/cog-face-to-sticker cd cog-face-to-sticker2. 一键安装 6 个自定义节点
项目内置了一个脚本 scripts/clone_plugins.sh,它会按固定版本号克隆全部依赖到ComfyUI/custom_nodes/目录并锁定 commit,保证可复现。执行:
./scripts/clone_plugins.sh💡 脚本会自动跳过已存在的目录,可放心重复执行。
3. 安装 Python 依赖
项目的环境配置写在 cog.yaml 中,关键依赖包括torch、insightface、opencv-python-headless、mediapipe、onnxruntime-gpu等。本地可参考其中的python_packages列表逐项pip install,并额外安装onnxruntime-gpu(GPU 版人脸解析需要)。
三、6 个必备自定义节点详解
| # | 节点 | 作用 | 对应工作流节点 |
|---|---|---|---|
| 1 | ComfyUI BRIA AI RMBG | 人物抠图去背景 | BRIA_RMBG_Zho |
| 2 | ComfyUI Controlnet Aux | AIO 预处理器生成边缘/深度控制图 | AIO_Preprocessor |
| 3 | ComfyUI InstantID | 人脸身份识别与保持 | InstantIDFaceAnalysis |
| 4 | ComfyUI IPAdapter Plus | 图像风格与人脸相似度适配 | IPAdapterApplyFaceID |
| 5 | ComfyUI UltimateSDUpscale | 分块 2 倍超分放大 | UltimateSDUpscale |
| 6 | Efficiency Nodes ComfyUI | 高效加载器 / LoRA 堆栈 / 采样器 | Efficient Loader |
下面逐个说明。
1. ComfyUI BRIA AI RMBG(抠图节点)
用 BRIA 的 RMBG 模型把人物从背景中干净地抠出,是贴纸"透明底"效果的关键。节点会用到BRIA_RMBG_ModelLoader_Zho加载模型。其权重路径由 helpers/ComfyUI_BRIA_AI_RMBG.py 处理。
2. ComfyUI Controlnet Aux(控制图预处理器)
提供AIO_Preprocessor,一次生成多种控制图(边缘、深度等),再交给 ControlNet 约束贴纸轮廓,让人物结构稳定。相关权重见 helpers/ComfyUI_Controlnet_Aux.py。
3. ComfyUI InstantID(身份锁定)
InstantIDFaceAnalysis会检测人脸关键点并提取身份特征,ApplyInstantID把它注入生成过程,让贴纸"长得像本人"。人脸解析模型(antelopev2 等)路径逻辑在 helpers/ComfyUI_InstantID.py。
4. ComfyUI IPAdapter Plus(风格与相似度)
IPAdapterApplyFaceID通过 CLIP Vision 编码器提取人脸 embedding,与生成图像做相似度对齐,和 InstantID 配合形成"双保险"。其模型准备逻辑在 helpers/ComfyUI_IPAdapter_plus.py。
5. ComfyUI UltimateSDUpscale(2 倍超分)
默认关闭;开启upscale=True后,工作流会插入UltimateSDUpscale节点对贴纸做分块重绘放大,默认 10 步。参数见 predict.py。
6. Efficiency Nodes ComfyUI(高效加载)
提供Efficient Loader(合并底模/LoRA/提示词)、LoRA Stacker(批量叠加贴纸 LoRA)和KSampler (Efficient),是整条工作流的"中枢"。
四、下载模型权重
工作流会引用一批模型文件(底模albedobaseXL_v13.safetensors、贴纸 LoRAStickersRedmond.safetensors、instantid-ip-adapter.bin等)。完整清单见 weights.json。
本地可用工具脚本 scripts/get_weights.py 下载指定权重:
python scripts/get_weights.py <模型文件名>首次启动时,helpers/comfyui.py 里的download_pre_start_models()也会自动预下载必需模型。
五、两种运行方式
方式 A:Web UI 手动跑(推荐新手)
- 启动 ComfyUI:
cd ComfyUI/ python main.py --listen 0.0.0.0 - 浏览器打开
http://localhost:8188 - 拖入 face-to-sticker-ui.json 这条 UI 工作流
- 在
LoadImage节点载入一张人脸照片,点击 Queue Prompt
方式 B:命令行 / 脚本跑
predict.py 封装了完整流程:读入 face-to-sticker-api.json,通过update_workflow()注入文件名、提示词、尺寸、步数、放大等参数,再调用 ComfyUI HTTP 接口执行。主要可调参数:
| 参数 | 默认 | 说明 |
|---|---|---|
prompt | a person | 主体描述 |
width/height | 1024 | 输出尺寸 |
steps | 20 | 采样步数 |
prompt_strength | 7 | CFG,越大越贴近提示词 |
instant_id_strength | 1 | InstantID 强度 |
ip_adapter_weight | 0.2 | IPAdapter 权重 |
upscale | False | 是否 2 倍放大 |
六、常见问题(FAQ)
- 节点报错
KeyError:多半是自定义节点没装全或版本不对,重跑./scripts/clone_plugins.sh确认 6 个节点都在。 - 模型缺失:ComfyUI 日志会提示具体文件名,对照 weights.json 下载即可。
- 贴纸不像本人:调高
instant_id_strength(0~1)和ip_adapter_weight。 - 背景没扣干净:确认 RMBG 模型已下载,并检查输入照片人脸是否清晰。
七、写在最后
cog-face-to-sticker 用 6 个自定义节点把"抠图 + 身份保持 + 风格化 + 超分"串成一条可复现的工作流。你只要按上文装好节点、下载权重、导入 UI 工作流,就能在本地把任意人脸变成专属贴纸。建议先用 1024×1024、20 步的默认参数试跑,再按需微调强度参数。祝折腾愉快!
更多细节可参考官方说明 README.md 与变更日志 CHANGELOG.md。
【免费下载链接】cog-face-to-stickerface-to-sticker项目地址: https://gitcode.com/gh_mirrors/co/cog-face-to-sticker
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考