⚡ AIGC绘画 | outfit anyone 虚拟试衣 & animate anyone 图像动画化
本文主要介绍2篇最新研究,outfit anyone 虚拟试衣 和 animate anyone 图像动画化,在在线购物试衣和动画制作上迈出了一小步!
An Asian girl, smiling, dancing in central park, wearing long shirt and long jeans.
虚拟试衣 & 图片动画化
先选择衣服和模特进行试衣
后驱动图像动画化
Outfit Anyone 虚拟换衣——告别试衣间
论文原理
Outfit Anyone
是一项新的虚拟试穿技术。该技术通过两流程条件扩散模型,有效处理服装变形,提供更逼真的虚拟试穿效果。它在众多场景中表现出色,包括真实环境、个性化服饰、不同体型甚至动漫角色的试穿。这一技术不仅展现了高度的适应性,还提供了后期精细化处理功能,以增强服装和皮肤纹理的真实感。凭借其超高质量的虚拟试穿功能、多功能性和可扩展性,它提供了真正身临其境且便捷的购物体验。与 Outfit Anyone 一起告别试衣间的麻烦,拥抱时尚的未来。
我们方法的核心条件扩散模型使用服装图像作为控制因素来处理模型、服装和随附文本提示的图像。在内部,网络分为两个流,用于独立处理模型和服装数据。这些流汇聚在一个融合网络中,有助于将服装细节嵌入到模型的特征表示中。在此基础上,我们建立了 Outfit Anyone,包括两个关键要素:用于初始试穿图像的零样本试穿网络,以及用于输出图像中服装和皮肤纹理细节增强的事后优化器。
- 定制的双流处理: “Outfit Anyone”通过将网络分为两个流来处理图像,从而允许单独处理模型和服装数据。这种分离确保了精确的服装变形以及更好地贴合虚拟模型。
- 复杂的融合网络: “Outfit Anyone”的核心是一个融合网络,差异化的流汇聚于此。在这里,服装细节与模型的特征表示精心结合,有助于实现逼真的虚拟试穿结果。
- 后期处理细化: 除了初始图像之外,“Outfit Anyone”还采用了事后细化器,可以细化服装和皮肤纹理,从而为最终输出图像提供更高水平的真实感。
“服装任何人”展示了值得称赞的多功能性,处理多样化的风格、体型,甚至在虚拟空间中启用新的角色动画。与“Animate Anyone”相结合,它可以在运动视频中生成服装变化。需要注意的是,该项目的目的纯粹是学术性的,只是作为效果展示,没有任何商业目的。作为研究的延伸以及对 VITON 和 DressCode 等现有公共数据集的认可,“Outfit Anyone”踏上了时尚行业未来愿景的旅程,想象力和包容性塑造了我们与风格和服装互动的方式。
应用场景及特点
Outfit Anyone使用场景:
电商平台:用户可以在线试穿各种服装款式,提高购物体验
虚拟试衣场景:用户可以通过手机应用程序尝试不同的衣物组合
动漫角色设计:设计师可以使用 Outfit Anyone 为动漫角色设计各种服装样式
Outfit Anyone功能:
高质量虚拟试穿:Outfit Anyone技术可以生成高分辨率、逼真的虚拟试穿效果,用户可以在虚拟环境中试穿各种服装,并查看效果。
任意服装虚拟试穿:无论是来自电商平台的商品,还是来自街拍的时尚单品,Outfit Anyone都可以进行虚拟试穿,使用户能够在购买前预览效果。
多种风格试穿:Outfit Anyone支持多种风格的虚拟试穿,包括休闲、商务、正式等,用户可以根据自己的需求选择不同的风格进行试穿。
实时渲染:Outfit Anyone采用实时渲染技术,能够在短时间内生成虚拟试穿效果,使用户能够快速查看试穿效果。
人工智能驱动:Outfit Anyone基于人工智能技术,能够自动处理和优化虚拟试穿效果,使试穿效果更加逼真。
用户定制:用户可以根据自己的需求和偏好,选择不同的服装、发型、配饰等进行虚拟试穿,定制自己的试穿效果。
Outfit Anyone优势:
适用于任何衣服和人物:无论是什么样的衣服或是什么样的人,都能完美适配。
个性化时尚展示:可以展示各种独特和时尚的服装搭配。- 适应不同体型:能够适应不同的体型,为各种身材的人提供试衣效果。
强大泛化能力:模型具有强大的泛化能力,可以支持动画角色的新服装形象创建。
细节增强:它能够显着增强服装的质感和真实感,同时保持服装的一致性。
在实际应用中,用户可以看到自己在不同风格、不同类型的服装下的样子,而无需实际试穿,这不仅省时省力,还能提供更多的选择和灵感,随着技术的不断进步和应用的深入,我相信类似 Outfit Anyone 这样的应用将在未来变得更加普遍,它不仅会成为我们日常生活中的一部分,更会成为推动时尚行业发展的重要力量。
实验结果
1. 平铺图输入,且支持单件、上下装成套的试衣
支持平铺图的输入,并且可同时支持单件或者上下搭配。模型根据模特姿势身材的不同,相应生成褶皱、光照等细节不同的服饰上身效果,从而实现百变的换装体验。
2. 奇装异服试衣
3. 服饰细节一致性
可以在保留服饰基本属性基础上,Refiner模型显著提升服饰的材料质感,模特的皮肤真实度。
测试结果
免费试玩
project https://humanaigc.github.io/outfit-anyone/
demo https://huggingface.co/spaces/HumanAIGC/OutfitAnyone
Animate Anyone 动画生成——人人均可科目三
论文原理
这篇论文提出了一个名为Animate Anyone的框架,旨在将静态角色图像转换为动态视频,同时保持与参考角色图像的一致性和时间稳定性。核心思想和方法包括:
ReferenceNet:为了保持参考图像中复杂外观特征的一致性,作者设计了ReferenceNet,这是一个对称的UNet结构,用于通过空间注意力合并细节特征。ReferenceNet与去噪UNet共享相同的网络结构和初始化权重,使得去噪UNet能够在一致的特征空间中学习与参考图像相关联的特征。
Pose Guider:为了确保角色动作的可控性和连续性,引入了一个高效的Pose Guider来引导角色的运动。Pose Guider使用四个卷积层来对齐姿势图像,并将其添加到噪声潜在空间中,然后输入到去噪UNet中。
Temporal Layer:为了确保视频帧之间的平滑过渡,作者引入了一个时间层来建模多帧之间的时间关系。这个时间层被集成在Res-Trans块的空间注意力和交叉注意力组件之后。
训练策略:训练过程分为两个阶段。第一阶段使用单个视频帧进行训练,不包括时间层,只训练ReferenceNet和Pose Guider。第二阶段引入时间层,并训练整个网络,包括Res-Trans块中的时间层。
实验结果:Animate Anyone在多个基准测试中表现出色,包括时尚视频合成和人类舞蹈生成。与现有方法相比,该方法在动画质量和时间稳定性方面都有所提升。
局限性:尽管Animate Anyone在角色动画方面取得了显著成果,但仍存在一些局限性,例如在处理手部运动时可能不够稳定,生成未见过的视角部分时可能存在不稳定性,以及由于使用了DDPM,模型的运行效率相对较低。
结论:Animate Anyone作为一个基础方法,为未来在各种图像到视频应用中的扩展提供了潜力。
MY ALT TEXT
姿势序列最初使用 Pose Guider 进行编码,并与多帧噪声融合,然后由 Denoising UNet 进行视频生成的去噪过程。 Denoising UNet 的计算模块由 Spatial-Attention、Cross-Attention 和 Temporal-Attention 组成,如右侧虚线框所示。参考图像的集成涉及两个方面。首先,通过ReferenceNet提取详细特征并用于空间注意力。其次,通过CLIP图像编码器提取语义特征进行交叉注意力。时间注意力在时间维度上运作。最后,VAE解码器将结果解码为视频剪辑。
ReferenceNet 原理
ReferenceNet
是一个关键组件,它被设计用来从参考图像中提取和保持复杂的外观特征,以便在生成动画视频时保持与参考角色的一致性。以下是 ReferenceNet
的工作原理:
网络结构:ReferenceNet
采用了与去噪UNet(用于视频生成的网络)相同的网络结构,但不包括时间层。这意味着它在网络的每个对应层中都有与去噪UNet相同的卷积块和自注意力机制。
特征提取:ReferenceNet
的主要任务是从参考图像中提取特征。这些特征包括角色的外观细节,如面部特征、服装纹理等。这些特征随后被用来引导视频生成过程中的细节保持一致。
空间注意力:在去噪UNet的每个对应层中,ReferenceNet
提取的特征通过空间注意力机制与去噪UNet的特征进行融合。这种融合是通过复制ReferenceNet
的特征图并将其与去噪UNet的特征图在宽度维度上拼接,然后进行自注意力操作来实现的。这样,去噪UNet可以选择性地学习与参考图像特征空间中相关联的特征。
权重共享:ReferenceNet
和去噪UNet共享初始化权重,这有助于网络在训练过程中更快地收敛,并确保特征提取的一致性。此外,ReferenceNet
的权重更新是独立的,这意味着它只需要在训练过程中提取一次特征,而不是像去噪UNet那样在每个视频帧上都进行特征提取。
与CLIP的结合:除了使用ReferenceNet
,网络还利用CLIP图像编码器进行交叉注意力操作,这提供了参考图像的语义特征。这种结合有助于网络更好地理解参考图像的上下文,并在生成过程中保持一致性。
通过这种方式,ReferenceNet
确保了在生成动画视频时,角色的外观细节能够与参考图像保持一致,从而提高了动画的质量和真实感。
Pose Guider 原理
Pose Guider
是 Animate Anyone
框架中的一个组件,它负责将角色的动态姿势信息编码到生成的视频序列中,以实现对角色动作的控制。以下是 Pose Guider
的工作原理:
姿势编码:首先,Pose Guider
使用一系列卷积层来处理和编码角色的姿势信息。这些卷积层通常包括多个卷积操作,以提取姿势的关键特征。这些特征随后被用于指导角色在视频中的动作。
与噪声潜在空间的融合:处理后的姿势图像与视频序列的噪声潜在空间(noise latent space)进行融合。这种融合是通过将姿势图像与噪声潜在空间的表示相加来实现的,这样姿势信息就被编码到了视频帧的生成过程中。
输入到去噪UNet:融合后的姿势和噪声潜在空间的表示被输入到去噪UNet中。去噪UNet 是一个用于视频生成的网络,它通过逐步去除噪声来生成视频帧。
控制角色动作:Pose Guider
的输出被用作条件信息,指导去噪UNet在生成视频帧时如何表现角色的动作。这样,去噪UNet不仅能够根据噪声潜在空间生成视频内容,还能够根据姿势信息来控制角色的动作和姿态。
权重初始化:Pose Guider
的权重通常使用高斯分布进行初始化,除了最后一个投影层使用零卷积(zero convolution)之外。这种初始化方式有助于网络学习到与姿势相关的特征,并在视频中准确地再现这些特征。
通过这种方式,Pose Guider
使得 Animate Anyone
框架能够根据给定的姿势序列生成具有连贯动作的视频,同时保持角色的外观细节与参考图像的一致性。这种方法提高了角色动画的可控性和真实感。
Temporal Layer 原理
Temporal Layer
负责捕捉视频帧之间的时间依赖关系,以确保生成的视频在时间轴上具有平滑的过渡和连续性。以下是 Temporal Layer
的工作原理:
时间注意力:Temporal Layer
使用自注意力(self-attention)机制来捕捉视频帧之间的时间依赖。在自注意力中,网络能够学习到不同时间点的特征之间的相互关系,这对于理解视频内容的时间动态至关重要。
特征重塑:为了应用自注意力,首先需要将特征图重塑为适合时间维度操作的形式。具体来说,特征图会被重塑为一个序列,其中每个元素代表一个时间步的特征。
时间维度的自注意力:在重塑后的特征序列上,网络执行自注意力操作。这种操作允许网络在时间维度上考虑每个时间步的特征,从而理解视频帧之间的动态变化。
特征融合:自注意力操作后得到的特征被融合回原始特征图中。这种融合通常是通过残差连接(residual connection)实现的,这样可以保留原始特征的同时引入时间维度的信息。
保持空间注意力和交叉注意力:Temporal Layer
是在空间注意力(Spatial Attention)和交叉注意力(Cross Attention)之后添加的。这意味着在进行时间维度的操作之前,网络已经通过空间注意力和交叉注意力处理了特征,这有助于网络更好地理解空间信息和参考图像的语义内容。
训练策略:在训练过程中,Temporal Layer
被集成在去噪UNet的Res-Trans块中,这些块负责处理视频帧的特征。在训练的第二阶段,网络的权重被更新以优化时间层的性能。
通过这种方式,Temporal Layer
使得 Animate Anyone
能够在生成动画视频时保持时间上的连续性和稳定性,这对于角色动画的自然表现和观众的观看体验至关重要。
实验结果
免费试玩
project https://humanaigc.github.io/animate-anyone/