姚班天才,旷视6号员工范浩强团队发布肖像动画生成模型MegActor

科技有夕小瑶 2024-06-19 07:51:49

《完蛋!我被大模型包围了》

不知大家可还记得这个去年底刷爆AI圈的互动游戏,一天之内用户破万,又一天之内因流量过大而关停,作为独立开发者的作者,事了拂衣去,深藏功与名,也在江湖上留下了无尽传说。

实际上,“深藏功与名”对作者范浩强大神来说,或许还并不恰当,“姚班天才”,“AI极客”,“多个世界第一”,“旷视6号员工”,“25岁的旷视研究院算法总监”这一个个闪着金光的标签,早就和作者的名字融为一体。

现在,多年深耕计算机视觉(Computer Vision,CV)领域,做出无数高影响力研究的浩强大神,又带着他的最新力作回来了!

3.5研究测试:hujiaoai.cn4研究测试:askmanyai.cnClaude-3研究测试:hiclaude3.com

论文标题:MegActor- Harness the Power of Raw Video for Vivid Portrait Animation

论文链接:https://arxiv.org/pdf/2405.20851.pdf

github项目:https://megvii-research.github.io/MegFaceAnimate/

肖像动画

肖像动画(Portrait Animation),是一种将一个人的动作和面部表情从一个视频(通常被称为驱动视频,driving video)转移到另一个静态或动态的图像或视频上(通常被称为目标肖像,target portrait)的技术。这个过程的目标是在保持目标肖像的身份和背景不变的同时,使其面部表情和头部动作与驱动视频中的人物同步。

举个肖像动画的例子,左侧为原始驱动视频,右侧为基于驱动视频和目标肖像(每张图片左下角)生成的效果。

可以看到,右侧的人物被毫无违和感地被替换为了左侧人物的面部表情。

看起来就很炫酷吧,实际上肖像动画除了好玩,其应用场景还包括但不限于:

数字虚拟助手:创建能够模仿真人表情和动作的虚拟助手或客服代表。娱乐和游戏:在电影、电视或电子游戏中生成逼真的角色动画。社交媒体和内容创作:允许用户创建具有个性化表情和动作的动态头像或虚拟形象。教育和培训:在远程教学或培训中使用动画角色来增强互动性和吸引力。健康医疗:帮助残疾人士或有特殊需求的人通过动画角色进行交流。

因此,如果能生成高质量的肖像动画,是非常有意义的。那具体是怎么实现的呢?

直觉上我们会想到将原始驱动视频作为训练蓝本,因为驱动视频往往具备更多的面部表情信息,然而在实际应用中原始视频却很少被充分使用。这部分宝藏之所以未能得到挖掘,主要在于两个问题:

身份泄露问题:当使用驱动视频作为训练数据时,由于参考图像是从驱动视频帧中提取的,模型可能会倾向于复制这些帧中的人物特征,而不是生成具有不同身份的新动画,这就导致生成的动画与原始视频中的人物特征过于相似,这不仅限制了动画的多样性,还可能引发隐私和安全性问题。不相关背景和面部细节的干扰:驱动视频中可能包含许多与动画任务无关的细节,如背景噪声和面部的皱纹等,这些细节可能会干扰模型的性能,导致生成动画的质量下降。这些不相关的细节可能会误导模型,使其难以准确捕捉和再现目标肖像的关键特征和表情。

如果能解决上述两点问题,将驱动视频充分利用起来,那么可预期地,将会实现肖像动画效果的进一步提升。而这篇工作,就旨在解决这一挑战。

数据构建

本文选择了公开数据集,VFHQ和CelebV-HQ,在训练时,随机选择一帧作为第一帧,并以一定步长采样多个帧以形成用于训练的视频片段。对于每个视频片段,随机选择一帧作为参考图像,并以所有帧作为驱动视频和模型拟合的真值。

由于公开数据集中缺少不同个体执行相同动作的视频,原始视频需要在训练中同时充当驱动视频和真值,导致模型可能简单地复制驱动视频作为生成结果。为了解决这一身份泄露问题,作者使用ModelScope 3.1中的Face-Fusion生成了一部分AI人脸交换数据,并使用SDXL合成了一部分风格化数据。

由于人物的眼神方向应该与他们在视频中的动作和情感状态保持一致。如果眼神变化太大或不自然,可能会导致动画看起来不真实或令人感到不适。因此,本文使用L2CSNet评估帧间注视变化,并筛选出具有显著注视变化的视频。大约占总数据5%的被识别为具有显著注视变化。在使用所有数据进行第一阶段训练后,再使用具有显著注视变化的数据进行微调。

此外,本文使用pyFacer检测视频中每一帧的人脸,仅保留驱动视频中人脸的区域,将面部区域外的所有像素设置为黑色,以减少训练过程中背景信息的泄露。

同时,为了进一步避免驱动视频和真实视频相同导致的身份泄露,本文还对驱动视频进行了随机增强。增强技术包括灰度转换、随机调整大小和纵横比,做到在只影响面部形状而不改变面部表情或头部姿势的同时,还提供了额外的训练样本,由于驱动视频在面部结构上与参考图像不同,这样做还增强了模型对不同面部形状的泛化能力。

MegActor

MegActor的结构分为如下几个部分:

ReferenceNet:使用与去噪UNet网络相同架构的UNet网络,目的是从参考图像中提取细粒度的身份和背景信息。步骤为:参考图像首先通过VAE编码,转换为潜在特征表示RlReferenceNet从Rl中提取空间特征,并将中间特征注入到去噪UNet中与先前工作不同,这里只将中层和上层的空间特征注入到去噪UNet中,允许去噪UNet的下层完全整合由DrivenEncoder提取到的运动特征DrivenEncoder:由四个2D卷积层组成,目的是从驱动视频中提取运动特征,并将提取到的运动特征与参考图像的潜在表示和前景掩码一起,沿通道维度连接,输入到去噪UNet中。这样,去噪UNet可以同时考虑运动信息和参考图像的身份及背景信息,生成自然且连贯的肖像动画。其步骤包括:将提取到的运动特征与根据随机采样获得噪声的潜在表示对齐到相同的分辨率运动特征与噪声潜在表示沿通道维度进行连接,形成一种融合了运动信息和随机噪声的表示,这将作为去噪UNet的输入。为了进一步增强模型对人物独特说话风格和面部动作的捕捉能力,DrivenEncoder还采用了AdaLN的思想,使用2D卷积层对参考图像进行编码,并利用多层感知机将参考图像特征转换为比例和偏移参数,这些参数沿通道维度应用于运动特征为了防止直接运动转移导致生成结果的面部动作过于僵硬,从而减少真实感,去噪UNet的conv-in层参数在训练期间会重新初始化。具体做法为保留前四个通道的参数,并将其余通道的参数初始化为零,这有助于减少运动特征引入对去噪UNet空间结构的干扰Temporal Layer:AnimateDiff工作表明,在视频生成任务中对文本到图像(Text-to-Image,T2I)模型插入额外的时间模块可以捕获视频帧之间的时间依赖性,并增强它们之间的连续性。因此,本文设计了时间层模块,其具体实现为:在去噪UNet的每个Res-Trans层之后插入一个时间层模块,以执行帧间的时间注意力。这个设计有助于从基础T2I模型迁移预训练的图像生成能力ImageEncoder:本文使用CLIP的图像编码器作为交叉注意力中,文本编码器的替代品。具体步骤为:图像编码器将输入图像转换为多个图像块,每个图像块类似于文本中的标记,用于特征提取使用特殊标记CLS来表示全局特征使用图像编码器对参考图像的背景部分进行编码提取的全局特征(由CLS表示)和局部特征(由每个图像块表示)被合并,以替代文本嵌入,并通过交叉注意力机制输入到去噪UNet和ReferenceNet

本文使用AI人脸交换数据、风格化数据和真实数据作为驱动视频,比例分别为40%,10%和50%。并采取了两阶段训练方法,其中:

第一阶段:模型不包括时间层,冻结ImageEncoder,只训练DrivenEncoder、去噪UNet和ReferenceNet第二阶段:在去噪UNet中插入时间层,初始化参数来自AnimateDiff,只训练时间层

在推理阶段,本文实现了一种重叠滑动窗口方法来生成长视频,即每次推断16帧视频,重叠8帧,取两个生成区域重叠部分的平均值作为最终结果。

实验

根据MegActor方法在跨身份数据上的测试结果显示,生成的动画能够在像素级别匹配参考图像的背景,保持与参考图像相同的身份信息,并成功复现驱动视频中的面部表情和头部动作,甚至包括细微的眼部运动。这证明MegActor在跨身份条件下的肖像动画生成方面具有出色的能力。MegActor生成效果示例如下:

为进一步验证效果,本文将MegActor的结果与现有最先进的肖像动画生成方法EMO进行比较(如下图)。使用EMO的测试视频作为驱动视频,并将这些视频的第一帧作为参考图像。结果显示,EMO在某些帧中存在模糊问题,如牙齿区域,而MegActor的结果则更为清晰。这进一步验证了MegActor方法的有效性和优越性。

讨论

尽管MegActor模型在基于原始驱动视频数据生成生动的肖像动画方面取得了显著进展,但仍存在一些局限性。首先,身份泄露问题虽然通过合成数据生成框架得到了缓解,但在极端情况下仍可能出现。其次,尽管MegActor通过CLIP编码和文本嵌入模块减少了背景噪声的干扰,但在动态的复杂背景下,模型的稳定性和生成质量仍有待提高。

针对现有的局限性,未来的工作可以从以下几个方向进行探索和改进:

增强身份保护机制:通过进一步优化合成数据生成框架,增强模型在更广泛条件下的身份保护能力优化背景处理技术:探索更高效的背景编码技术,以提高模型对复杂背景的适应性和稳定性提升细节表达的真实性:通过改进驱动编码器和去噪网络,以提高模型对微小表情和动作的捕捉能力,生成更加自然和真实的动画集成更强大的视频生成基模型:与先进的视频生成模型如SDXL结合,以进一步提升生成效果的真实感和连贯性总结

MegActor模型作为一种先驱性的条件扩散模型,专为基于原始驱动视频的肖像动画生成而设计,它在动画生成领域展示了显著的创新和实用价值。该模型通过合成数据生成框架有效地解决了身份泄露问题,并通过精细的背景和前景处理技术,减少了无关信息的干扰,提高了动画的自然度和表现力。

此外,MegActor模型完全基于公开数据集进行训练,确保了结果的可复现性,并且与商业模型相比,展示了相当的竞争力。这一成就不仅推动了肖像动画技术的发展,也为开源社区提供了宝贵的资源,包括代码和模型权重的可公开访问。

总的来说,MegActor模型的开发为处理原始视频数据提供了新的视角和方法,其创新的技术方案和鼓舞人心的应用前景,预示着在数字媒体、虚拟现实和人机交互等领域的广泛潜力。

0 阅读:0

科技有夕小瑶

简介:感谢大家的关注