InstantID 可以用一张图片作为参考就可以生成定制化的头像照片,不需要训练任何模型。
Instant ID 通过结合使用 ControlNet 和 IP-Adapter 来控制扩散过程中的面部特征。Instant ID 的一个独特设计是,它将来自 IP-Adapter 投影的面部嵌入作为交叉注意力(cross attention)输入传递给 ControlNet 的 UNet。
线上体验:https://huggingface.co/spaces/InstantX/InstantID
线上 demo 体验了一下,模型预设了 8 种风格
实测一:
上传《繁花》中宝总(胡歌)的剧照,然后输入下方提示词,选择风格 Jungle
实测二:
保持面部图片不变,上传参照姿势(下图),并输入提示词,选择风格 watercolor
常见部署
接下来我们介绍常用的几种部署方式:
WebUI
教程:https://github.com/Mikubill/sd-webui-controlnet/discussions/2589
注意事项:
InstantID 在 WebUI 上采用 2 个模型。要始终把 IP-Adapter 模型设置为第一个模型,因为 ControlNet 模型从 IP-Adapter 模型获取输出。
模型要放在指定目录下: {A1111_root}/models/ControlNet
将模型分别重命名,以确保扩展功能识别:ip-adapter_instant_id_sdxl 和 control_instant_id_sdxl 。
ComfyUI
教程:
自行构建 Gradio
动手能力强的小伙伴也可以不使用 WebUI 或 ComfyUI,直接用 Python 脚本来实现,官方也给了用例:
https://github.com/InstantID/InstantID?tab=readme-ov-file#download