IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> Nonlinear 3D Face Morphable Model 论文笔记 -> 正文阅读

[人工智能]Nonlinear 3D Face Morphable Model 论文笔记

1、传统线性3DMM:

模型和纹理分别是平均值+基础值*系数——S = Sˉ + Aα,T (l) = Tˉ(l) + Bβ,此为3DMM的基础。

并且提出了将 3D 人脸投影到图像平面上使用弱透视投影模型(3D转为2D透视投影模型):

  1. g(α, m):3D顶点位置在2D中的函数输出
  2. f:比例因子
  3. :正交投影矩阵
  4. R:欧拉角表示旋转角度
  5. t2d:平移向量
  6. M :有维度2×4,有六个自由度,通过一个 6 维向量 m来参数化。 然后使用 2D 图像渲染纹理和照明模型。

2、非线性3DMM

文章核心整体框架:

用两个networks decode Ds、Dt去解码形状,纹理,他们进入3D时分别是人脸形状和人脸纹理。为了使框架端到端可训练,这些参数通过encoder网络估计,它本质上是?3DMM 的拟合算法。三个深度网络联手以重建输入人脸图像为最终目标,在基于几何的渲染层帮助下。

总体流程:给一张2D人脸图片——我们需要学习一个encodeE:I→m,fS,fT 来估计投影参数 m、

形状参数和纹理参数——延伸到Ds:decode,fs到s,将形状参数解码到3DshapeS;Dt,decode,ft到t,将纹理参数解码到真实纹理T。目的是使带有m、S和T的渲染图像能够近似于原始图像,目标函数为:

形状纹理表示

形状解码器 DS 是一个 MLP,其输入是来自 E 的形状参数 fS。

指出了适合非线性3DMM的纹理模式,文章归类为

三种。

  1. ,Texture value per vertex。有纹理强度对应于面网格中每个顶点的值。自从3D 顶点未在 2D 网格上定义,此表示将被参数化为一个向量,这不仅失去了顶点的空间关系,但也阻止它利用在 2D 图像上部署 CNN 的便利性。相比之下,鉴于图像合成的快速发展,它最好选择 2D 图像,例如正面人脸。
  2. ,Texture as a 2D frontal face,作为纹理表示。正面包含很少的两侧信息,会丢失很多侧视图的纹理信息。
  3. ?,2D unwarped texture。具体来说,每个 3D 顶点 vS 都使用圆柱解扭曲投影到 UV 空间上。假设面部网格具有top 指向 y 轴,vS = (x, y, z) 的投影到 UV 空间 vT = (u, v) 计算如下:,其中 α1, α2, β1, β2 是不变的尺度和平移标量去展开的人脸放入图像边界。此外,纹理解码器 DT 是一个 CNN 构建的小数步长的卷积。

?网络人脸渲染

?为了从S,T,m中重建出人脸,文章中定义了一个渲染层R(m, S, T)。并且渲染分成三步走:

  1. S中每个顶点的纹理值由它在 2D 纹理 T 中的预定义位置,通常,它涉及通过双线性采样内核进行子像素采样:其中 vT = (u, v) 是 vS 通过的 UV 空间投影方程式 (5)。
  2. 其次,3D 形状/网格 S 通过 Eqn 投影到图像平面。如方程式(3)。
  3. 最后,3D网格是使用 Z 缓冲区渲染器渲染,其中每个像素都是与网格的单个三角形相关联

    ?

?其中,?Φ(g, m, n) = {v (1) S , v (2) S , v (3) S }是返回包围像素的三角形的三个顶点的操作。

(m, n) 投影 g 后。为了处理遮挡,当一个像素位于多个三角形中时,选择离图像平面最近的三角形。每个像素的强度是通过插入强度来确定的。网格顶点通过重心坐标?{λ (i)} 3 i=1。值得注意的是,文章中2D 纹理表示可以通过卷积滤波器生成,这大大减少了 DT 中的参数数量。

网络构造(重点)

文章设计了?E, DT 网络架构,如 Tab. 所示。 1.此外,DS 包括两个全连接层1, 000-dim 中间表示,带有 eLU 激活。整个网络经过端到端的训练以重构输入图像,具有损失函数:

Lrec = PN i=1 ||?Ii ? Ii ||1,强制渲染图像?Ii 类似于输入图像li。对抗性损失 Ladv 有利于真实渲染,而地标损失 LL 强制执行几何约束

对抗性损失,主要基于GAN,对抗性损失为广泛用于合成逼真的图像 ,其中生成器和鉴别器交替训练。 在文章的例子中,生成渲染图像的网络 ?Ii是发生器(generator)。 鉴别器包括一个专用网络 DA,旨在区分真实人脸图像 Ii 和渲染图像 ?Ii. 在生成器的训练过程中,纹理模型 DT 将被更新
目标是 ?Ii,通过DA被归类为真人脸。由于面部渲染已经创建了正确的人脸图像的全局结构,基于全局图像的对抗性损失可能无法有效地在局部面部区域上产生高质量的纹理。 因此,在鉴别器中使用了 patchGAN 。 这里 DA 是一个CNN 由四个 3 × 3 的卷积层组成,步幅为 2,和过滤器的数量分别为 32、64、128 和 1。 最后,能够使用对抗性损失的关键因素之一是在 2D 图像空间中渲染,而不是在?3D 顶点空间或展开的纹理空间。 这个显示了渲染层的必要性和重要性。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-13 11:27:11  更:2021-10-13 11:28:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 10:28:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码