作者丨Johann Zhou@知乎

来源丨https://zhuanlan.zhihu.com/p/367525241

编辑丨极市平台

【导读】本文介绍了一篇由香港中文大学MMLab,商汤科技和南洋理工大学S-Lab合作的工作,不使用任何人为定义的结构信息(人脸关键点或者3D人脸模型),成功实现了人头姿态可控的语音驱动任意说话人脸生成。

Highlight:

本文不使用任何人为定义的结构信息(人脸关键点或者3D人脸模型),成功实现了人头姿态可控的语音驱动任意说话人脸生成。本文的关键在于,隐式地在潜空间(latent space)中定义了一个12维的姿态编码,用于头部运动控制。本文相比于之前的方法,避免了关键点或者3D模型计算不准确带来的烦恼,又保持了自由度和鲁棒性。实现了在语音控制准确嘴型的同时,用另一段视频控制头部运动。在这一框架下,我们可以让任何人说出马老师经典的“不讲武德”发言,彩蛋在我们demo video的最后!

本文由香港中文大学MMLab,商汤科技和南洋理工大学S-Lab合作完成。

生成图像的嘴型由音频控制,与音频源视频同步;生成图像头部运动由姿态源控制,与下方视频同步。

  • Paper 地址:https://arxiv.org/abs/2104.11116.

  • Github:https://github.com/Hangz-nju-cuhk/Talking-Face_PC-AVS.

  • Project Page:https://hangz-nju-cuhk.github.io/projects/PC-AVS.

代码一键能跑。我们的Demo video如下:


背景介绍:

语音驱动的说话人脸生成(Talking face, Talking head generation) 这一课题本身有多种不同的实验设置。此方向的综述可以参考Lele Chen的What comprises a good talking-head video generation?: A Survey and Benchmark[1]。在这里本文Focus的方向为基于单张图像(One-shot),面向任意人脸,语音驱动setting下的说话人脸生成问题。具体来说,我们希望基于一张图片,生成与语音同步的说话人脸视频。

What comprises a good talking-head video generation?: A Survey and Benchmark:https://arxiv.org/abs/2005.03201

这一setting下的工作包括 VGG 组的You said that? [2] ,CUHK(笔者自己)的DAVS [3], 乐乐的ATVG [4] 以及Adobe周洋和李丁博士的MakeitTalk [5]等等。整体来讲,之前的工作[2][3][4]更多的关注于嘴型的准确性和ID的保存上,从而忽略了头部的自然运动。在本文中我们所试图解决的,是之前说话人脸生成中人头pose难以控制这一问题。

ATVG Paper中的对比图

最近的Makeittalk[5]和乐乐的Rhythmic Head[6] 则关注于和个人ID信息有关的自然头部运动。但是他们的方法都依赖于3D的结构化信息。

想独立控制头部运动,就需要对Head pose和facial expression,identity做一个解耦。通过思考我们可以意识到,这种解耦在2D图像和2D landmark的表征中都很难实现。而在我们语音驱动的大前提下,嘴型要和audio对齐,头部运动又要自然,可以说是难上加难。另一方面,3D的人脸表征中,head pose和facial expression可以天然地用不同的参数控制,可以说是最佳选择。因此之前的工作,Makeittalk[5]选择了3D的人脸关键点,而Rhythmic Head[6]则直接依赖于完整地3D重建。但是基于3D的人脸建模,尤其是在极端场景下,开源方法的准确度并无法保证。而基于优化算法的3D fitting还会带来大量的预处理负担。所以本文不使用3D或结构化数据,重新从2D入手解决问题。

我们的方法Pose-Controllable Audio-Visual System (PC-AVS) 直接在特征学习和图像重建的框架下,实现了对人头pose的自由控制。我们的核心在于隐式地在潜空间(latent space)中定义了一个12维的姿态编码,而这一设计源于对去年CVPR利用styleGAN实现Face Reeanctment[7]的工作(如下图)的参考。

但他们工作中只说明了styleGAN可以使用augmented frame进行图像到图像的控制。而在语音驱动的说话人脸问题中,condition实际来自audio的场景下,直接暴力借用这一框架将难以进行训练,因为语音并不能提供人脸姿态信息。

基于对说话人脸的观察,我们在文中把augmented图像的潜空间,定义为无ID空间(Non-Identity Space)。直观上讲,在此空间中,我们可以重新寻找嘴型与语音关联的_说话内容空间(Speech Contant Space),和表示头部运动的姿态空间(Pose Space)。

我们工作的完整pipeline如下图所示,训练数据使用的是大量的含语音视频。我们使用任意的一帧  作为ID参考输入,变形另一帧  为,并将与对齐的语音的频谱  作为condition,试图使用网络恢复。

使用数据集的ID约束,我们可以通过ID encoder  得到_Identity Space_;借助之前的augmentation,我们通过encder ,得到_Non-Identity Space_。接下来的问题是如何发挥audio的作用,以及如何让图像只约束Pose而不控制嘴型。

  • Learning Speech Content Space. 我们希望Non-Identity Space的feature经过一个mapping  映射至speech content space中。而这一latent space的学习,主要依赖音频和视频之间天然的对齐、同步信息(alignment)。在之前的工作中这已经被证明是audio-visual领域用处最广泛的自监督之一[8]。在这里我们使用语音与人脸序列之间的对齐构建contrastive loss进行对齐的约束;对齐的人脸序列和语音特征  是正样本,非对齐的  为负样本。定义两个feature之间的cos距离为  ,这一约束可以表达为:

  • Devising Pose Code. 另一方面,我们借助3D表征中的piror knowledge。一个12维度的向量其实已经足以表达人头的姿态,包括一个9维的旋转矩阵,2维的平移和1维的尺度。所以我们使用一个额外的mapping,从Non-Identity Space中映射一个12维的Pose Code。这个维度上的设计非常重要,如何维度过大,这一latent code所表达的就可能超过pose信息,导致嘴型收到影响。

最后我们把 Identity Space,Speech Content SpacePose code 结合起来,送入基于StyleGAN2[9]改造的Generator。这三者的信息在Generator中通过图像重建训练进行平衡,loss形式使用了pix2pixHD的重建训练loss。在训练中,pose code起作用的原理是,在ID和pose信息都显式地被约束的前提下,Pose Code最容易学到的信息是改变人头的姿态,以减少重建的loss。在这一目标下,因为姿态逐渐与我们的目标贴合,嘴型的重建约束也会反过来帮助audio feature的学习,从而达到平衡。

实验结果

我们在数值上和质量上与之前SOTA的任意语音驱动人脸的方法进行了对比。在数值上,我们对比了LRW和VoxCeleb2两个数据集,重点关注于生成图像还原度(SSIM),图像清晰度(CPDB),生成嘴型landmark的准确度(LMD)和生成嘴型与音频的同步性,使用SyncNet[8]的confidence score评价(  )。

我们与之前方法的对比图如下所示:

更多的Ablation和结果可以参考我们的paper和demo video,这边展示了在极端情况(大角度,低分辨率)的生成结果。展示了如果我们把pose code置0,可以实现转正的说话人脸效果。

总结

在这个工作中,我们提出了Pose-Controllable Audio-Visual System (PC-AVS),成功在语音任意说话人的setting下,生成了姿态可控的结果。综合来看我们的方法有以下几个特质值得关注:

  1. 我们的方法不借助预定义的结构信息,仅使用一个图像重建的pipeline,成功定义了一个对人脸pose的表征。

  2. 由style-based generator平衡的训练模式让唇形生成收到更契合的重建约束,从而提升了唇形对齐的准确度。

  3. 我们实现了任意说话人脸下的自由人头姿态控制,使生成的结果更加真实。

  4. 我们的模型在极端情况下有很好的鲁棒性,并且实现了转正的说话人脸生成。

参考

  • ^What comprises a good talking-head video generation?: A Survey and Benchmark https://arxiv.org/abs/2005.03201

  • ^abJoon Son Chung, Amir Jamaludin, and Andrew Zisserman. You said that? In BMVC, 2017. https://arxiv.org/abs/1705.02966

  • ^abHang Zhou, Yu Liu, Ziwei Liu, Ping Luo, and Xiaogang Wang. Talking face generation by adversarially disentangled audio-visual representation. In Proceedings of the AAAI ConConference on Artificial Intelligence (AAAI), 2019. https://arxiv.org/abs/1807.07860

  • ^abLele Chen, Ross K Maddox, Zhiyao Duan, and Chenliang Xu. Hierarchical cross-modal talking face generation with dynamic pixel-wise loss. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019. https://www.cs.rochester.edu/u/lchen63/cvpr2019.pdf

  • ^abcYang Zhou, Xintong Han, Eli Shechtman, Jose Echevarria, Evangelos Kalogerakis, and Dingzeyu Li. Makeittalk: Speaker-aware talking head animation. SIGGRAPH ASIA, 2020. https://arxiv.org/abs/2004.12992

  • ^abLele Chen, Guofeng Cui, Celong Liu, Zhong Li, Ziyi Kou, Yi Xu, and Chenliang Xu. Talking-head generation with rhythmic head motion. European Conference on Computer Vision (ECCV), 2020. https://www.cs.rochester.edu/u/lchen63/eccv2020-arxiv.pdf

  • ^Egor Burkov, Igor Pasechnik, Artur Grigorev, and Victor Lem-pitsky. Neural head reenactment with latent pose descriptors. In Proceedings of the IEEE Conference on Computer Visionand Pattern Recognition (CVPR), 2020.  https://openaccess.thecvf.com/content_CVPR_2020/papers/Burkov_Neural_Head_Reenactment_with_Latent_Pose_Descriptors_CVPR_2020_paper.pdf

  • ^abJoon Son Chung and Andrew Zisserman. Out of time: auto-mated lip sync in the wild. In ACCV Workshop, 2016. https://www.robots.ox.ac.uk/~vgg/publications/2016/Chung16a/chung16a.pdf

  • ^Tero Karras, Samuli Laine, Miika Aittala, Janne Hellsten,Jaakko Lehtinen, and Timo Aila. Analyzing and improv-ing the image quality of stylegan. InProceedings of theIEEE/CVF Conference on Computer Vision and PatternRecognition (CVPR), 2020. https://openaccess.thecvf.com/content_CVPR_2020/papers/Karras_Analyzing_and_Improving_the_Image_Quality_of_StyleGAN_CVPR_2020_paper.pdf

本文亮点总结

1.本文的关键在于,隐式地在潜空间(latent space)中定义了一个12维的姿态编码,用于头部运动控制。本文相比于之前的方法,避免了关键点或者3D模型计算不准确带来的烦恼,又保持了自由度和鲁棒性。

重磅!DLer-CVPR2021论文分享交流群已成立!

大家好,这是CVPR2021论文分享群里,群里会第一时间发布CVPR2021的论文解读和交流分享会,主要设计方向有:图像分类、Transformer、目标检测、目标跟踪、点云与语义分割、GAN、超分辨率、人脸检测与识别、动作行为与时空运动、模型压缩和量化剪枝、迁移学习、人体姿态估计等内容。

进群请备注:研究方向+学校/公司+昵称(如图像分类+上交+小明)

???? 长按识别,邀请您进群!

CVPR 2021 | 任何人都能“不讲武德”,姿态可控的语音驱动说话人脸相关推荐

  1. CVPR 2021 | “以音动人”:姿态可控的语音驱动说话人脸

    本文转载自商汤学术 摘要 · 看点 本文不使用任何人为定义的结构信息(人脸关键点或者3D人脸模型),成功实现了人头姿态可控的语音驱动任意说话人脸生成.本文的关键在于,隐式地在潜空间(latent sp ...

  2. CVPR 2021 | 姿态可控的语音驱动

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨Johann Zhou@知乎 来源丨https://zhuanlan.zhihu.com/p/36752 ...

  3. CVPR 2021 目标检测、跟踪和姿态估计最新进展分享

    微软亚洲研究院 2021 CVPR 论文分享会已完美结束.今日起,CV君将根据不同类别的分享主题进行逐一分享,欢迎查收! 今日分享的主题为:目标检测.跟踪和姿态估计 论文一 论文名称:Bottom-U ...

  4. CVPR 2021 | 五官复原效果惊艳,腾讯ARC利用GAN人脸先验来解决

    作者|机器之心编辑部 来源|机器之心 人脸复原 (Face Restoration) 是指从低质量的人脸中复原得到高清的人脸.真实世界中的人脸复原是一个很有挑战的任务,因为降质 (degradatio ...

  5. 悉尼科技大学入选 CVPR 2021 的 9 篇论文,都研究什么?

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨Pablo@知乎(已授权) 来源丨https://zhuanl ...

  6. LIVE 预告 | CVPR 2021 预讲 · 旷视专场,覆盖目标检测、蒸馏、图像降噪、人体姿态估计等...

    CVPR 2021 大会将于6月19日至 25日线上举行.为促进同行之间的交流与合作,智源社区近期举办了系列CVPR 2021预讲报告,其中实验室系列将汇聚国内顶尖高校和企业实验室的研究人员为大家分享 ...

  7. CVPR 2021 | 微软提出“解构式关键点回归“, 刷新COCO自底向上多人姿态检测记录!

    随着深度学习的发展,运用计算机视觉中的人体姿态估计技术已经能够高精度地从人体的图片中检测出人体关键点,并恢复人体位姿.在应用端,此技术也已经在人机交互.影视制作.运动分析.游戏娱乐等各领域大放异彩. ...

  8. CVPR 2021 | 微软提出解构式关键点回归, 刷新COCO自底向上多人姿态检测记录!...

    本文转载自微软研究院AI头条. 编者按:在拥挤的人群的场景下,由于人群过于密集,重合程度太高,所以每个人的位置难以用人体检测框表示,而传统的一些自下而上的人体姿态估计算法也很难检测到人物的关键点.因此 ...

  9. CVPR 2021放榜,腾讯优图20篇论文都在这里了!

    本文转载自鹅厂技术派 作为计算机视觉世界三大顶会之一的CVPR 2021论文接收结果正式出炉啦! 鹅厂优图实验室喜提20篇论文收录,其中Oral论文4篇,涵盖人脸识别.对抗攻击.时序动作定位.视频动作 ...

最新文章

  1. linux脚本case语句,shell中的case语句,数组及函数
  2. 提交svn的时候,提示丢失了预定增加的xxxx
  3. RabbitMQ学习(1):安装
  4. arcgis 圈选获取图层下点位_ArcGIS小技巧——提取面要素的质心点
  5. 用JAVAMAIL发送邮件的一个简单例子
  6. 使用GNS3和Cisco IOU搭建路由交换实验-安装篇
  7. bsp的分析(其中使用buildroot文件夹建立rootfs)
  8. java实现会员管理系统_美发店会员管理系统助力门店实现智慧化管理!
  9. 深度阅读----人工智能简史及其思维辩证
  10. ghostscript windows mac 下安装和 C++ 程序调用
  11. Steam如何打开控制台
  12. 多肽细胞穿膜肽TAT修饰牛血清白蛋白BSA/人血清白蛋白HSA/卵清白蛋白OVA纳米粒(实验要求)
  13. 如何实现话费充值api接口?详细讲解源码
  14. Lake Shore低温温度传感器之Cernox
  15. Idea 去掉 mapper.xml 文件的黄色、淡绿色警告(Windows、Mac)
  16. 对1bit的脉冲信号进行展宽,转为32bit位宽,并产生有效信号
  17. 超全的电商数据指标体系分享,年底数据分析用得上
  18. linux系统python截图不显示中文_Linux系统通过python访问SQL SERVER,无法显示数据库内中文的问题...
  19. CA认证原理以及实现(上)
  20. 【HUAWEI】华为机试试题-105

热门文章

  1. javascript 初学对象
  2. Esper学习之十二:EPL语法(八)
  3. 布局覆盖 超出一部分_Android 布局优化
  4. python 运算太慢怎么办_python:网络安全攻击与防御的工具
  5. php nuke是什么,Php Nuke For Donkeys
  6. 2020-08-20 将数据上传到 S3 或从S3下载
  7. parser.add_argument 参数用法 包含metavar
  8. void addColumn(TableColumn aColumn)
  9. 破除SCI至上!评价 AI 科研成果,需要新思路【附报告下载】
  10. ​第一本 Compose 图书上市,联想大咖教你学会 Android 全新 UI 编程