文章目录
- Introduction
- Main
- Reference
记录由国内首创的一个好玩的小项目,图像生成领域的新进展。但我希望现阶段计算机视觉领域的研究能更聚焦在 语义分割 和 三维视觉 上,这样能更方便与机器人等产品和工业实体结合。
Introduction
InstantID 是一个基于扩散模型的图像生成解决方案,能实现从单一参考图像到多样化风格化写真的快速生成。用户只需上传一张自拍,20 秒就能得到定制版 AI 写真。
无论是古典油画中的贵族,或是未来都市中的赛博朋克英雄,多种风格,切换自如。
体验Demo直达:https://huggingface.co/spaces/InstantX/InstantID
Main
该开源项目的核心在于其 Zero-shot 技术,整个过程无需训练 LoRA 模型,就能实现高保真的 ID 保持。
根据论文《InstantID: Zero-shot Identity-Preserving Generation in Seconds》,InstantID 是一个高效、轻量级、可插拔的适配器,它为预训练的文本到图像扩散模型赋予了强大的身份信息保留能力。
InstantID 不训练文生图模型的 UNet 部分,仅训练可插拔模块,在推理过程中无需 test-time tuning,在几乎不影响文本控制能力的情况下,实现高保真 ID 保持。
如图所示,其技术实现主要基于三个关键组成部分:
1、人脸特征提取:利用预训练的人脸编码器(如 InsightFace 的 antelopev2 模型)提取强语义的人脸特征,以增强图像生成的语义准确性。由于 CLIP 只提供了弱语义表征,无法在人脸等强语义场景下直接应用,考虑了人脸识别领域已经相当成熟,小红书采用预训练的人脸编码器来提取人脸特征。
2、Cross-Attention 机制:通过解耦的交叉注意力机制,将人脸特征(而非 CLIP 表征)作为 Image Prompt 嵌入,增强文本提示的效果,同时保持对生成图像的精细控制。
3、IdentityNet:引入 IdentityNet 对人脸图像进行编码,通过强语义和弱空间的条件控制,进一步提升 ID 的保真度。在实现中,IdentityNet 采用与 ControlNet 一致的残差结构,从而保持原始模型的兼容性。
在 IdentityNet 中,主要有两个对于原版 ControlNet 的修改:
一方面,InstantID 只使用五个面部关键点,而不是细粒度的 OpenPose 面部关键点 (两个用于眼睛,一个用于鼻子,两个用于嘴巴)用于条件输入。
另一方面,InstantID 消除文本提示并使用 ID 嵌入作为条件加入到 ControlNet 中的交叉注意力层。
InstantID 在多个方面展现出其独特优势,主要贡献如下:
- 作为一种全新的 ID 保留方法,有效弥补了训练效率与 ID 保真度之间的差距。
- 它是可插拔的,与目前社区内文生图基础模型、LoRAs、ControlNets 等完全兼容,可以零成本地在推理过程中保持人物 ID 属性。此外,InstantID 保持了良好的文本编辑能力,使 ID 能够丝滑地嵌入到各种风格当中。加装饰、改发色、换套装,都毫无问题。
- 实验结果表明,InstantID 不仅超越目前基于单张图片特征进行嵌入的方法(IP-Adapter-FaceID),还与 ROOP、LoRAs 等方法在特定场景下不分伯仲,成本还低。
InstantID 的推出,为视图合成领域带来了显著的效率提升,它不仅能够快速生成风格多样的 AI 写真,而且确保了原图身份特征的完整性。
除了低成本快速生成真人写真,InstantID 还有非常多的玩法,比如允许用户进行五官夸张定制,与宠物的趣味合体,以及实现多身份和风格的创意合成。
Reference
项目主页:https://instantid.github.io
论文地址:https://arxiv.org/abs/2401.07519
代码地址:https://github.com/InstantID/InstantID
Demo 体验:https://huggingface.co/spaces/InstantX/InstantID