• InstantID Zero-shot Identity-Preserving Generation in Seconds


    InstantID: Zero-shot Identity-Preserving Generation in Seconds

    TL; DR:InstantID = IP-Adapter + (Face) ControlNet,实现了具有较高保真度的人脸 ID 生成。

    方法

    InstantID 想做到的事情是:给定一张参考人脸 ID 图片,生成该 ID 的多种姿势,多种风格的图片,并保证和参考图人脸 ID 的保真度。模型的整体结构总览如下图所示,主要由三个模块组成:

    1. Face(ID) embedding 模块:用于捕捉参考图的人脸 ID 特征
    2. 一个轻量的适配模块(加解耦的交叉注意力层):用于理解视觉 prompt
    3. IdentityNet:用于人脸的精细生成

    在这里插入图片描述

    ID Embedding

    CLIP 这种弱对齐数据训练出的模型,提取出的 image features 比较泛,比较杂,粒度比较粗。不适合于提取精细的、高保真的人脸特征。作者这里用了一个人脸识别或 ReID 中预训练好的人脸模型来提取参考图像中的人脸 ID 特征。

    Image Adapter

    image prompt 可以用来控制一些很难用文本描述的生图细节(如人体姿态、纹理细节等),极大地补充了图像生成模型的可控生成能力。与 IP-Adapter 类似,InstantID 这里用交叉注意力层(图示上方)来将图片特征注入到扩散模型的 UNet 中。不同之处还是没有用 CLIP 的 image embedding,而与 ID embedding 一样是用的人脸的 Embedding。

    IdentityNet

    虽然模型已经能够同时参考文本 prompt 和图像 prompt 进行生成了(相当于 IP-Adapter),但想要精确地保持参考人脸的特征,生成出 ID 一致的高保真度的人脸,这还不够。因此,作者还引入了一个 IdentityNet,其实就是一个 Face ControlNet。但是与 ControlNet 有两点不同:一是没有使用全部的人脸关键点,而是使用了五点,这是为了对人脸有控制的同时保持一定的自由度;二是没有使用文本 prompt 特征,而是将 face embedding,通过 cross attention 引入进来,这是为了避免额外的文本信息和背景信息对人脸保真的干扰。

    效果展示

    看一下 InstantID 主页 show 出来的不同人脸在不同画风、不同 prompt 下的生成结果,可以看到保真度还是很高的,基本都能认出来。

    在这里插入图片描述

    总结

    InstantID = IP-Adapter + (Face) ControlNet 看效果人脸的保真度还是不错的。但是仅能聚焦在人脸,可以试着搞搞人物全身特征的定制化。

  • 相关阅读:
    【Python脚本进阶】2.1、端口扫描器(上):TCP全连接扫描
    Real-Time Rendering——9.8.2 Multiple-Bounce Surface Reflection多次反射表面反射
    Flink on yarn 加载失败plugins失效问题解决
    DTSE Tech Talk | 第11期:深入浅出畅谈华为云低时延直播技术
    接口测试——HtmlUnit、OkHttp
    docker容器内部文件挂载主机
    Everything+cpolar内网穿透轻松实现公网远程访问本地硬盘文件
    设计模式的六大原则
    WPF 入门笔记 - 04 - 数据绑定
    2×500kVA(RCS9000)某10kV配电室设计(任务书+说明书+cad图纸)
  • 原文地址:https://blog.csdn.net/weixin_44966641/article/details/136693724