使用一款新型的换脸插件InstantID实现人物角色一致性

之前写过一篇文章【AI图片工具【InstantID】:单张照片秒生不同风格的图片】详细介绍过InstantID。它能够实现在保持高保真度身份保留的同时,仅使用单张面部图像参考就可以实现个性化图像合成,并且支持各种不同的风格。

写那篇的时候InstantID才出来没有多久,Stable Diffusion插件还不支持,不过后来很快就在Stable Diffusion的ControlNet插件中推出了InstantID模型插件。今天我们就来看看在Stable Diffusion的ControlNet插件中InstantID模型的使用。

一. InstantID介绍

使用一款新型的换脸插件InstantID实现人物角色一致性

InstantID 使用 InsightFace 从参考人脸中检测、裁剪和提取人脸embedding 。然后embedding与 IP-Adapter一起使用来控制图像生成。这部分与 IP-Adapter Face ID 非常相似。不过,它还使用 ControlNet 检测并修复多个面部标志(眼睛、鼻子和嘴巴)。

结合使用IP-Adapter Face ID 和 ControlNet,可以高保真度地复制我们提供的参考图像,从而最终实现人物角色的一致性。

注意:InstantID需要使用SDXL大模型,目前还没有Stable Diffusion 1.5对应的版本。

二. InstantID插件的安装

首先将controlnet升级到最新的版本,最好是在V1.1.440版本及以上。

使用一款新型的换脸插件InstantID实现人物角色一致性

下载InstantID的IP-adapter模型。

下载地址:https://huggingface.co/InstantX/InstantID/blob/main/ip-adapter.bin

将下载的文件重命名为ip-adapter_instant_id_sdxl.bin。

下载 InstantID ControlNet模型。

下载地址:https://huggingface.co/InstantX/InstantID/blob/main

/ControlNetModel/diffusion_pytorch_model.safetensors

将下载的文件重命名为control_instant_id_sdxl.safetensors。

将上面下载下来的2个文件都放在stable-diffusion-webui > models > ControlNet文件夹目录下。具体情况大家可以按照自己的目录来。

然后重启我们的SD工具,可以看到在控制选项中多了一个Instant_ID选项,表示InstantID安装好了。

使用一款新型的换脸插件InstantID实现人物角色一致性

三. InstantID插件在SD 1.5中的使用

使用InstantID模型时需要注意一些事项:

  • 大模型只能使用SDXL大模型
  • 提示词引导系数 (CFG Scale)要比通常设置的参数值低(3-5)
  • 需要使用2个ControlNet作为InstantID
  • 减少两个ControlNet的控制权重(Control Weights)和引导终止时机(Ending Control Steps)

下面我们来具体体验一下InstantID插件的使用。

【第一步】:大模型的选择

这里我们使用Dreamshaper SDXL Turbo大模型。VAE大模型选择None。

使用一款新型的换脸插件InstantID实现人物角色一致性

【第二步】:提示词的编写

正向提示词:

Prompt:watercolors portrait of a woman (happy laughing:1.15),masterpiece,artistry,

提示词:一个女人的水彩肖像(快乐地笑:1.15),杰作,艺术

反向提示词:

Prompt:low quality, blurry, malformed, distorted

提示词:低质量、模糊、畸形、扭曲

文生图相关参数设置

  • 采样器:DPM++SDE Karras
  • 采样迭代步数:7
  • 图片宽高:1016*1016 (默认图像尺寸 1024×1024 不适用于 Instant ID。使用接近但不完全是 1024×1024 的分辨率)。
  • 提示词引导系数(CFG):2(CFG 比例必须设置得相当低,InstantID 才有效)
使用一款新型的换脸插件InstantID实现人物角色一致性

【第三步】:ControlNet插件InstantID模型设置

需要使用两种 InstantID 模型。换句话说,需要使用两个ControlNet。

ControlNet单元0设置

第一个ControlNet主要使用InsightFace来提取人物的面部特征。

这里我们使用紫霞仙子的图片作为参考图像。

使用一款新型的换脸插件InstantID实现人物角色一致性
  • 启用:选中
  • 完美像素模式:选中
  • 控件类型:Instant_ID
  • 预处理器:instant_id_face_embedding
  • 模型:ip-adapter_instant_id_sdxl
  • 控制权重:1
  • 引导介入时机:0
  • 引导终止时机:1

ControlNet单元1设置

第二个ControlNet用于提取面部关键点,例如眼睛、鼻子和嘴巴的位置。您可以使用不同的图像,但建议使用相同的图像。这里我们仍然使用第一个ControlNet上传的图片。

使用一款新型的换脸插件InstantID实现人物角色一致性
  • 启用:选中
  • 完美像素模式:选中
  • 控件类型:Instant_ID
  • 预处理器:instant_id_face_keypoints
  • 模型:control_instant_id_sdxl
  • 控制权重:0.45
  • 引导介入时机:0
  • 引导终止时机:1

【第四步】:生成图片

点击【生成】按钮,最终生成的图片效果如下。

使用一款新型的换脸插件InstantID实现人物角色一致性
使用一款新型的换脸插件InstantID实现人物角色一致性

四. 图片风格样式

图片的风格样式是由提示词来控制。您可以使用SDXL的提示词优化图片的展示内容和背景元素。

1. 人物肖像

Prompt:high quality,masterpiece,rich details,realistic photography,8k,high-definition image quality,

portrait of a woman,(happy laughing:1.15),

提示词:高品质,杰作,细节丰富,摄影逼真,8k,高清画质,

一个女人的肖像,(快乐地的笑:1.15),

使用一款新型的换脸插件InstantID实现人物角色一致性
使用一款新型的换脸插件InstantID实现人物角色一致性

2. 赛博朋克风格

Prompt:high quality,masterpiece,rich details,realistic photography,8k,high-definition image quality,

Cyberpunk style,portrait of a woman,(happy laughing:1.15),

提示词:高品质,杰作,细节丰富,摄影逼真,8k,高清画质,

赛博朋克风格,一个女人的肖像,(快乐的笑:1.15),

使用一款新型的换脸插件InstantID实现人物角色一致性
使用一款新型的换脸插件InstantID实现人物角色一致性

3. 线条艺术风格

Prompt:high quality,masterpiece,rich details,realistic photography,8k,high-definition image quality,

line art style,portrait of a woman,(happy laughing:1.15),

提示词:高品质,杰作,细节丰富,摄影逼真,8k,高清画质,

线条艺术风格,一个女人的肖像,(快乐的笑:1.15),

使用一款新型的换脸插件InstantID实现人物角色一致性
使用一款新型的换脸插件InstantID实现人物角色一致性

这里的测试示例中,我改变了原图片中的人物表情(微笑),总体来看,Instant_ID插件在实现人物换脸保持人物角色一致性上还是不错的。

好了,今天的分享就到这里了,希望今天分享的内容对大家有所帮助。

声明:内容均采集自公开的网站等各类媒体平台,若收录的内容侵犯了您的权益,请联系邮箱,本站将第一时间处理。
百科

OpenAI宣布在ChatGPT中推出GPT-4 turbo最新版,有哪些性能的改进?

2024-4-18 9:48:51

教程百科

怎么用好Midjourney基础设置?Midjourney设置参数(/settings)详解

2024-4-18 10:18:27

搜索