原文下载:https://arxiv.org/abs/1903.03785
CVPR 2019
【注】此翻译不是全文详细翻译,并且根据本人工作所需来进行翻译
Abstract
1.Introduction
2.Face and head model literature
3.Face and head shape combination
3.1.Regression modelling
3.2.Gaussian process modeling
3.3.Model Refinement
4.Intrinstic evaluation of CFHM models
5.Head reconstruction from single images
6.Conclusion

Abstract
我们发现了一个以前没有受到关注的问题:是否有可能将两个或多个3DMM组合在一起?这些3DMM (a)是使用可能仅部分重叠的不同模板构建的;(b)具有不同的表示能力( c)是根据可能无法公开获得的不同数据集构建的
在回答这个问题时,我们做出了两个贡献。
首先,我们提出了两种解决上述问题的方法: i.使用回归器来补充其中一个模型的缺失部分; ii.使用Gaussian Process框架来混合来自多个模型的协方差矩阵。
其次,作为我们方法的示例应用,我们建立了一个新的面部和头部形状模型,该模型将LSFM与LYHM相结合,从而拥有先进的性能,并在很大程度上优于现有的头部模型。
最后,作为一项应用实验,我们通过利用我们提出的large-scale model(就是上面建立的模型)与FaceWarehouse blendshapes结合使用,从单个不受约束的图像中重建full head model。

1.Introduction
由于其能够推断和表示3D surface 的能力,3D可变形模型(3DMM)在计算机视觉,计算机图形,生物识别和医学成像中具有许多应用[4、15、1、26]。要正确训练3DMM,需要许多已配准的原始3D图像(“扫描图”),而这需要大量的时间和精力来收集和注释带有meta data的原始3D图像。有时,只有生成的3DMM可供研究团体使用,而不能使用原始3D图像。由于日益严格的数据保护法规,对于人脸/头部的3D图像尤其如此。此外,即使3DMMs具有重叠的部分,它们的分辨率和表达详细的形状变化的能力也可能完全不同,并且我们希望在单个模型中捕获多个3DMM的最佳属性。但是,目前很难组合和丰富具有不同属性的现有3DMM,这些属性描述了没有此类原始数据的对象的不同部分。**因此,在本文中,我们提出了一种通用方法,可以将来自对象类不同部分的3DMM组合到单个3DMM中。**由于它们在计算机视觉社区中的广泛使用,因此我们融合了人脸和整个人头的3DMM,以此作为示例,**从而创建了第一个combined, large-scale, full-head morphable model。**该技术易于扩展到合成包含耳朵[10]和身体的详细模型,并且确实适用于3DMM很好描述的任何对象类别。
更具体地说,尽管在身份[17、30、28]和表情[8、29]方面都有很多人脸模型,但很少涉及完整的头部结构[11]。 建立描述大规模人类头部结构的高质量,大规模统计模型,为众多学科铺平了道路。 首先,它将协助颅面临床医生进行诊断,手术计划和评估。 其次,基于面部的几何形状按比例生成正确的头部模型将有助于计算机图形设计人员创建逼真的头像表示。 最后,头部模型将可以实现从数据不足的来源(例如2D图像)中重建完整的头部表示。
我们的主要贡献是:
(i)一种旨在融合基于形状的3DMM的方法,以人脸和头部为例。 (请注意,3DMM的纹理成分不在本文讨论范围内,也不是我们未来工作的主题。)特别是,我们提出了一种基于潜在形状参数的回归方法以及一种协方差组合方法,该方法利用Gaussian process framework
(ii)关于种族,年龄和性别的combined large-scale statistical human head model ,其远比任何其他现有的人头变形模型都更加准确-我们将其公开提供给研究团体,该模型包括有和没有眼睛和牙齿的版本。(目前还没有找到这个公开的模型,稍后找到了会进行更新)
(iii)应用实验,其中我们利用组合的3DMM从不受约束的单个图像执行全头重建,还利用FaceWarehouse blendshapes处理面部表情。

2.Face and head model literature
大致就是一些相关工作介绍

3.Face and head shape combination
在本节中,我们提出将LSFM人脸模型与LYHM全头模型结合的两种方法。 第一种方法利用PCA参数并解决线性最小二乘问题以逼近整个头部形状,而第二种方法则构造了一个组合协方差矩阵,该协方差矩阵后来在高斯过程可变形模型(GPMM)中被用作内核[22]。
3.1Regression modelling
图2展示了整个流程,包括1)回归矩阵计算,2)模型组合 ,3)全头模型注册,然后进行PCA建模。 现在描述每个阶段。

对于阶段1,将具有N个点的3D网格(形状)表示为一个3N×1矢量
LYHM(一个full head 3DMM,获取地址)有Nh个点。

其中mh是平均head model,Uh为通过PCA分析出来的形状主成分,是个正交矩阵,ph为对应的形状系数。


其实就相当于下面这个公式,只是表示方法不太一样。
LSFM 同理 Nf个点



【注】可以看一下LYHM,BFM(相对来说容易获取的face model,获取地址,出了很多版本了,常用的为09版),LSFM的区别

【注】以下步骤为自己看原文结合自己的理解
1.利用公式(2)来随机生成nr个full head model instaces。这样子我们就有了nr个ph
2.对生成的nr个full head model instance与LSFM的mean face使用NICP来获得full head model instances的面部部分,并根据LSFM拓扑对其进行描述。一旦获取了这些已配准的网格,就将它们投影到LSFM子空间,然后检索相应的形状参数。 因此,对于每个随机产生的full head model instance,都有一对分别对应于整个头部表示和面部区域的形状参数(ph,pf)。
3.使用Ch来保存nr个ph,Ch为nhxnr大小的矩阵。同理,使用Cf来保存nr个pf,Cf为nfxnr大小的矩阵。
4.希望找到一个矩阵Wh.f来讲pf映射到ph上去·。通过使用最小线性二乘发最小化以下公式来求得Wh,f

5.公式(4)通过正规方程可推出

所以给定一个3D face instance Sf,我们可以通过以下公式来补全他的整个头部结构

通过这种方式,我们可以根据LYHM拓扑图绘制和预测任何给定面部形状的颅骨区域的形状。
【注】github上有关注这个步骤的代码,大家可以自己试一下,看代码能更好理解方法。(可能是别人复现的)

未完待续

《Combining 3D Morphable Models: A Large scale Face-and-Head Model》翻译相关推荐

  1. 《Git版本控制管理(第2版)》——4.3 Git在工作时的概念

    本节书摘来自异步社区<Git版本控制管理(第2版)>一书中的第4章,第4.3节,作者:[美]Jon Loeliger , Matthew McCullough著,更多章节内容可以访问云栖社 ...

  2. 【Git版本控制管理】Gitee(码云)和GitHub的使用

    远程仓库的使用 文章目录 远程仓库的使用 使用码云(Gitee) 使用GitHub 远程仓库是指托管在因特网或其他网络中的你的项目的版本库. 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读 ...

  3. java中git版本控制,git版本控制管理是什么?git如何实现版本控制?

    大家好,今天要跟大家讲的是关于git版本控制管理的一点小知识,git相信程序员小伙伴们都已经很熟悉了,很多项目开发都需要git,所以,git版本控制管理到底是干嘛的呢?Git又如何实现版本控制呢?下面 ...

  4. Git 版本控制管理(一)

    Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git  -- The stupid content tracker(傻瓜式的内容跟踪器) 关于 Git 的 ...

  5. Git版本控制管理——简介

    说明 在大型项目开发或者多人协作开发时,都希望可以对软件代码进行管理和追踪,以便确认开发的进度和方便问题追溯.这就需要使用到版本控制系统(VCS),比如Git就是一款很优秀的版本控制工具.如今很多项目 ...

  6. 3.git版本控制-管理修改、撤销、删除

    管理修改 第一次修改 -> git add -> 第二次修改 -> git commit,Git管理的是修改,当你用git add命令后,在工作区的第一次修改被放入暂存区,准备提交, ...

  7. Git版本控制管理——远程版本库

    之前提到的Git的所有操作都是在本地完成的,而实际项目开发并不是一个人就可以搞定的,通常需要团队的协作,而这些协作可能又不是在同一个地区的,这就涉及到Git的分布式特性了. Git的分布式特定会涉及到 ...

  8. Git版本控制管理(二)--git配置

    在系统上安装好 Git后,还需要配置Git 环境. 每台计算机上只需要配置一次,程序升级时会保留配置信息,也可以在任何时候再次通过运行命令来修改它们. 配置文件位置 Git 自带一个 git conf ...

  9. Git版本控制管理——版本库管理

    本文主要说明如何发布Git仓库. 发布版本库 对于Git来说,服务器并不是必需的.Git更乐于与同一台机器上的同级版本库直接交换文件,而不需要某个服务器来进行代理,或通过各种不需要上级服务器的协议与不 ...

  10. Git版本控制管理——基本Git概念

    基本概念 版本库 Git版本库(repository)只是一个简单的数据库,其中包括所有用来维护与管理项目的修订版本和历史信息.而Git版本不仅会维护项目整个生命周期的完整副本,还会提供版本库本身的副 ...

最新文章

  1. uniapp(一) 项目架构,封装
  2. 9.png(9位图)在android中作为background使用导致居中属性不起作用的解决方法
  3. ecshop清除mysql缓存_ECSHOP缓存清理关闭教程
  4. MySQL可运行在不同的操作系统下_不同操作系统下的mysql数据库同步
  5. b区计算机科学与技术调剂院校,B区调剂院校梳理!希望你用不到,但一定要收藏!...
  6. 第三章EF的基本使用 EF数据实体模型的更新
  7. 天下的母亲都是一样的
  8. DXGI中的flip显示模型
  9. 风险预测模型_只学有用的:贷后评分模型的三种细分应用
  10. OLED显示模块驱动原理及应用
  11. python abs的功能_python abs是什么意思?abs函数有什么用处?
  12. CNZZ站长统计怎么用
  13. 苹果状态栏HTML,有关HTML5页面在iPhoneX适配问题
  14. Python​ 重解零基础100题(2)
  15. Zooming Slow-Mo: Fast and Accurate One-Stage Space-Time Video Super-Resolution---视频超分辨代码调试总结
  16. gitlab快速入门
  17. 微信小程序调用指纹验证
  18. 2021ICPC沈阳游记及2021年度总结
  19. html5实现窗帘,纯 CSS3 实现的窗帘菜单 Accordion
  20. 多线程为什么可以提高效率

热门文章

  1. STM32_RTC闹钟
  2. 你应该在开始API开发之前知道的事(上)(翻译)
  3. Mac双屏时程序坞(任务栏)跑到副屏上怎么办
  4. 如何查看自己的公积金账号?
  5. 事态升级管理程序_17紧急事态升级管理程序
  6. 仙剑同人游戏是怎么炼成的-序
  7. Visual.Assist.X.10.9.Build.2375.0 2020.05.16 最新版
  8. Amazon Aurora 故障恢复之降低 DNS 切换对应用影响篇
  9. 山穷水复疑无路?柳暗花明又一村|转行软件测试月薪12K
  10. 2016 UESTC Training for Dynamic Programming F - 柱爷与三叉戟不得不说的故事 压位dp