TCAN项目致力于创建一个能够根据视频姿态生成一致性人像动画的方法。 也就是通过从视频中提取人物姿态动作,然后转移给图片,能让静态图片动起来的方法,它能生成连续的动画视频,让人物在视频中自然地移动。 它通过利用扩散模型和预训练的ControlNet,在保持视频质量和一致性的同时,实现了在处理姿态变化时表现得更加稳定和可靠,不容易受到错误或异常姿态检测的影响。 <ul> <li><strong>错误检测的鲁棒性</strong>:即使姿态检测器产生了错误或不准确的姿态信息,TCAN方法仍然能够生成合理且一致的动画。</li> <li><strong>一致性</strong>:保持源图像的外观一致。在整个视频合成过程中,TCAN能够保持动画的连贯性和稳定性,不会因为姿态信息的波动而出现明显的闪烁或不连续的情况。确保生成的视频在时间上的一致性。</li> <li><strong>适应能力</strong>:该方法能够适应不同的姿态变化,包括一些极端或意外的姿态,从而生成更自然和流畅的动画效果。</li> </ul> [video width="1200" height="852" mp4="https://img.xiaohu.ai/2024/07/comparison_tiktok_1200.mp4"][/video] <p style="text-align: center;" data-immersive-translate-walked="58535b06-e787-4836-82ab-1fa0cbc49ddd" data-immersive-translate-paragraph="1"><span class="notranslate immersive-translate-target-wrapper" lang="zh-CN" data-immersive-translate-translation-element-mark="1"><span class="notranslate immersive-translate-target-translation-theme-none immersive-translate-target-translation-block-wrapper-theme-none immersive-translate-target-translation-block-wrapper" data-immersive-translate-translation-element-mark="1"><span class="notranslate immersive-translate-target-inner immersive-translate-target-translation-theme-none-inner" data-immersive-translate-translation-element-mark="1">将动作传递给各种身份</span></span></span></p> [video width="1200" height="852" mp4="https://img.xiaohu.ai/2024/07/comparison_online_1200.mp4"][/video] <p style="text-align: center;" data-immersive-translate-walked="58535b06-e787-4836-82ab-1fa0cbc49ddd" data-immersive-translate-paragraph="1"><span class="notranslate immersive-translate-target-wrapper" lang="zh-CN" data-immersive-translate-translation-element-mark="1"><span class="notranslate immersive-translate-target-translation-theme-none immersive-translate-target-translation-block-wrapper-theme-none immersive-translate-target-translation-block-wrapper" data-immersive-translate-translation-element-mark="1"><span class="notranslate immersive-translate-target-inner immersive-translate-target-translation-theme-none-inner" data-immersive-translate-translation-element-mark="1">将动作转移到动画角色</span></span></span></p> <h3>主要功能特点</h3> <ol> <li><strong>时间一致性</strong> <ul> <li><strong>能力</strong>:TCAN通过引入时间层(Temporal Layers),确保生成视频中人物的姿态和外观在时间上保持一致,避免了逐帧生成过程中可能出现的跳动或不连贯的问题。</li> <li><strong>效果</strong>:生成的视频流畅自然,人物动作和背景连贯一致。</li> </ul> </li> <li><strong>鲁棒性</strong> <ul> <li><strong>能力</strong>:TCAN在ControlNet中加入了时间层,并设计了姿态驱动温度图(Pose-driven Temperature Map),增强了对姿态检测器可能产生的错误姿态估计的鲁棒性。</li> <li><strong>效果</strong>:即使在姿态检测有误的情况下,TCAN仍能生成高质量的视频,减少伪影和瑕疵。</li> </ul> </li> <li><strong>避免过拟合</strong> <ul> <li><strong>能力</strong>:TCAN通过冻结预训练的ControlNet,并引入Appearance-Pose Adaptation(APPA)层,确保模型在训练过程中不过拟合于特定数据集。</li> <li><strong>效果</strong>:模型在不同领域和未见数据上具备良好的泛化能力,能生成高质量的动画。</li> </ul> </li> <li><strong>多样性和广泛适用性</strong> <ul> <li><strong>能力</strong>:TCAN能处理各种姿态和外观变化,适用于真实人物和动画角色,甚至在不同身体比例的情况下依然能保持一致性。</li> <li><strong>效果</strong>:TCAN能够生成不同风格、不同体型和不同姿态的人像动画,广泛应用于社交媒体、娱乐和电影行业。</li> </ul> </li> <li><strong>静态背景处理</strong> <ul> <li><strong>能力</strong>:通过姿态驱动温度图,TCAN能有效分离前景和背景,确保背景在动画过程中保持静态。</li> <li><strong>效果</strong>:生成的视频中,背景稳定不变,前景人物动作流畅自然,视觉效果更佳。</li> </ul> </li> </ol> <h3>TCAN 的工作原理和技术方法</h3> <h4><img class="aligncenter size-full wp-image-11485" src="https://img.xiaohu.ai/2024/07/overview_v4-1-scaled.jpg" alt="" width="2560" height="1093" />1. 工作原理概述</h4> TCAN的核心思想是在扩散模型中加入时间层和姿态驱动温度图,以处理姿态变化和背景静态性问题,使得画面不会出现跳动或不连贯的问题。。 <h4>2. 技术方法详解</h4> <strong>第一阶段:图像生成</strong> <ul> <li><strong>输入</strong>:源图像和驱动视频。</li> <li><strong>姿态信息提取</strong>:使用OpenPose工具从视频中提取出每一帧的人物姿态。</li> <li><strong>姿态控制</strong>:将姿态信息输入预训练的ControlNet。为了保持ControlNet的预训练效果,避免其过拟合于特定数据集,ControlNet在此阶段保持冻结状态。</li> <li><strong>外观信息注入</strong>:通过注意力机制,将源图像的中间特征图传递给去噪UNet,从而将源图像的外观特征传递给生成网络。</li> <li><strong>APPA层</strong>:引入Appearance-Pose Adaptation层,通过低秩适应(LoRA)将姿态信息与外观信息对齐,确保生成图像在姿态变化的同时保持外观的一致性。</li> </ul> <strong>第二阶段:视频生成</strong> <ul> <li><strong>时间层引入</strong>:在去噪UNet和ControlNet中加入时间层,通过这些时间层捕捉驱动视频中姿态序列的时间信息。</li> <li><strong>训练目标</strong>:在第二阶段,只训练时间层,保持预训练的ControlNet和APPA层冻结,从而保持模型的稳定性和鲁棒性。</li> </ul> <strong>关键技术</strong> <ol> <li><strong>Appearance-Pose Adaptation(APPA)层</strong> <ul> <li><strong>功能</strong>:通过低秩适应将姿态信息与外观信息对齐,解决姿态信息与外观信息之间的不一致性,避免生成图像的纹理质量下降。</li> <li><strong>实现</strong>:在去噪UNet的现有注意力层中引入LoRA层,调整姿态和外观特征,使其在生成图像时保持一致。</li> </ul> </li> <li><strong>Temporal ControlNet</strong> <ul> <li><strong>功能</strong>:通过时间层(Temporal Layers)解决姿态检测器可能产生的误差,确保生成视频的时间一致性。</li> <li><strong>实现</strong>:在ControlNet中引入时间层,将输入张量转换为时间序列,在时间层中进行处理,缓解错误姿态的影响。</li> </ul> </li> <li><strong>Pose-driven Temperature Map(PTM)</strong> <ul> <li><strong>功能</strong>:通过温度图平滑注意力分数,确保生成视频的背景保持静态。</li> <li><strong>实现</strong>:根据驱动视频中的姿态序列生成二进制掩码,然后计算距离图,将距离图转换为温度图,在时间层中用于平滑注意力操作。</li> </ul> </li> </ol> <strong>训练与推理</strong> <ul> <li><strong>训练</strong>:TCAN采用两阶段训练策略,首先训练外观UNet和APPA层,然后在保持ControlNet冻结的情况下训练时间层。</li> <li><strong>长视频生成</strong>:由于内存限制,TCAN不能一次生成长视频,通过在时间轴上应用MultiDiffusion技术,重叠部分姿态序列并对重叠帧的预测噪声进行平均,从而生成长视频。</li> </ul> <h3><img class="aligncenter size-full wp-image-11488" src="https://img.xiaohu.ai/2024/07/Jietu20240719-100332-HD-1.gif" alt="" width="805" height="602" />TCAN 的实验结果</h3> <h4>实验设置</h4> <ol> <li><strong>TikTok 数据集评估</strong>:使用 TikTok 数据集训练和评估 TCAN 的表现。评估时,使用 10 个 TikTok 风格的视频,测试模型在这些视频上的生成效果。</li> <li><strong>怪异数据集评估</strong>:为了评估 TCAN 的泛化能力,使用动画角色的图片作为源图像,并使用 TikTok 风格的视频作为驱动视频。</li> </ol> <h4>定性结果(Qualitative Results)</h4> <ol> <li><strong>TikTok 数据集</strong>: <ul> <li>TCAN 能够在姿态检测错误的情况下生成高质量的连续视频,避免了明显的伪影和失真。</li> <li>相较于其他方法(如 DisCo 和 MagicAnimate),TCAN 在保持人物形象一致性和背景稳定性方面表现更好。</li> </ul> </li> <li><strong>怪异数据集</strong>: <ul> <li>TCAN 能够处理具有不同身体比例的动画角色,生成的动画既能保持源图像的外观特征,又能跟随驱动视频的动作。</li> <li>在处理动画角色时,TCAN 生成的结果比其他基准方法(如 DisCo 和 MagicAnimate)更加自然,人物外观和动作更为一致。</li> </ul> </li> </ol> <h4>定量结果(Quantitative Results)</h4> 在 TikTok 数据集上的量化评估指标包括: <ul> <li><strong>L1 损失(L1 Loss)</strong>:用于衡量生成图像与真实图像之间的像素差异,值越小越好。</li> <li><strong>结构相似性(SSIM)</strong>:用于评估生成图像与真实图像在结构上的相似性,值越大越好。</li> <li><strong>感知相似性(LPIPS)</strong>:用于评估生成图像与真实图像在感知上的差异,值越小越好。</li> <li><strong>FID</strong>:用于衡量生成图像与真实图像在特征空间上的分布差异,值越小越好。</li> <li><strong>FID-VID</strong>:用于衡量生成视频与真实视频在特征空间上的分布差异,值越小越好。</li> <li><strong>FVD</strong>:用于评估生成视频在时间和空间上的一致性,值越小越好。</li> </ul> 实验结果表明: <ul> <li>TCAN 在 L1 损失、SSIM、FID、FID-VID 和 FVD 等指标上表现优异,相比于其他基准方法取得了更好的结果。</li> <li>TCAN 在所有评估指标上均表现优异,尤其在 FID-VID 和 FVD 指标上表现尤为突出,显示了其在视频质量和时间一致性方面的优势。</li> </ul> 具体数据如下: <table> <thead> <tr> <th>方法</th> <th>L1 ↓</th> <th>SSIM ↑</th> <th>LPIPS ↓</th> <th>FID ↓</th> <th>FID-VID ↓</th> <th>FVD ↓</th> </tr> </thead> <tbody> <tr> <td>IPA [33]+CtrlN [34]</td> <td>7.38E-04</td> <td>0.459</td> <td>0.481</td> <td>69.83</td> <td>113.31</td> <td>802.44</td> </tr> <tr> <td>IPA [33]+CtrlN [34]-V</td> <td>6.99E-04</td> <td>0.479</td> <td>0.461</td> <td>66.81</td> <td>86.33</td> <td>666.27</td> </tr> <tr> <td>DisCo [28]</td> <td>3.78E-04</td> <td>0.668</td> <td>0.292</td> <td>30.75</td> <td>59.90</td> <td>292.80</td> </tr> <tr> <td>MagicAnimate</td> <td>3.13E-04</td> <td>0.714</td> <td>0.239</td> <td>32.09</td> <td>21.75</td> <td>179.07</td> </tr> <tr> <td>TCAN (w/ mm1)</td> <td>8.85E-05</td> <td>0.734</td> <td>0.299</td> <td>29.07</td> <td>29.74</td> <td>189.77</td> </tr> <tr> <td>TCAN (w/ mm2)</td> <td>8.81E-05</td> <td>0.745</td> <td>0.294</td> <td>29.35</td> <td>19.42</td> <td>154.84</td> </tr> </tbody> </table> <h4>用户研究(User Study)</h4> <ul> <li><strong>研究设计</strong>:进行了用户研究,评估用户对生成视频的整体偏好度。</li> <li><strong>评估标准</strong>:包括动作和身份保持、背景保持、一致性和整体偏好四个方面。</li> <li><strong>结果</strong>:用户一致认为 TCAN 生成的视频在动作连贯性、人物身份保持和背景稳定性方面表现最佳,整体偏好度最高。</li> </ul> 项目及演示:<a href="https://eccv2024tcan.github.io/" target="_blank" rel="noopener">https://eccv2024tcan.github.io/</a> 论文:<a href="https://arxiv.org/pdf/2407.09012" target="_blank" rel="noopener">https://arxiv.org/pdf/2407.09012</a> GitHub:<a href="https://github.com/eccv2024tcan/TCAN" target="_blank" rel="noopener">https://github.com/eccv2024tcan/TCAN</a>