700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 基于vc的freetype字体轮廓解析_MulayCap:基于多层表达的单目彩色相机的人体动作捕捉

基于vc的freetype字体轮廓解析_MulayCap:基于多层表达的单目彩色相机的人体动作捕捉

时间:2020-03-27 17:06:46

相关推荐

基于vc的freetype字体轮廓解析_MulayCap:基于多层表达的单目彩色相机的人体动作捕捉

MulayCap: Multi-layer Human Performance Capture Using A Monocular Video Camera

最近几年,深度学习的发展为基于单目RGB相机的人体动作捕捉注入了新的动力,越来越多的新方法涌现,为 AI + 5G 时代的人体动作捕捉提供了无限可能。
Title

文章作者来自清华大学、香港大学和北京航空航天大学,目前文章已经被提交到 TVCG 期刊。当前基于单目 RGB 相机的人体动作捕捉如MonoPerfCap[2] 、LiveCap[3] 和DeepCap[7] 等方法都需要预先扫描得到人体的网格模型,再使用该模型进行 3D 姿态追踪,其缺陷主要在于以下几点:

首先,这些方法需要花费额外的精力和时间去预先扫描人体的模板网格,这使得对于普通消费者或者互联网视频的人体动作捕捉难以应用;其次,这类方法都使用单个网格来表达人体,皮肤和衣服不可分离,使得诸如分层和滑动这类的衣服和人体之间的交互难以刻画最后,模板网格扫描得到之后,其对应的纹理在后面追踪的过程中一直固定,这在某些情况下会产生不够真实的重建结果。

但如果没有预先扫描得到的人体模型,基于 RGB 视频的人体动作捕捉是一个非常难的问题,在没有几何和外观的先验信息下,很难从视频帧中同时恢复出运动 (motion)、几何 (geometry)、外观 (appearance) 信息。

文章作者提出了一个基于多层表达 ("multi-layer" representations) 的 RGB 视频人体动作捕捉的新方法MulayCap,能够不需要预先扫描的人体模板网格,直接重建人体的动态几何和纹理。这里”多层“体现在两个层面:

几何是多层的。作者使用多个几何层 (geometric layers) 来表达穿衣服的人体,即一个赤裸的人体网格层和一个服装层,而服装层又分为上衣层如短袖、裙子等,和下装层如短裤、长裤等。纹理是多层的。作者将输入的视频图片分解为反射率层 (albedo layers) 和明暗(光照)层 (shading layers)。

多层表达的使用能够实现对人体动作更高层次的语义建模,人体、服装、albedo、shading 被分别建模,并充分地集成在一起产生一个高质量高真实感的重建结果,并能同时对重建的人体运动进行编辑,如重光照 (relighting)、人体形状编辑 (human shape editing)、服装重定向 (cloth retargeting)、服装形状编辑 (cloth apperance editing) 等等。

Teaser

项目主页:

MulayCap​

Method

MulayCap 的整个流程如下图所示,其主要由两个模块组成,即

基于多层的几何重建(multi-layer based geometry reconstruction):对于每一个输入视频帧,重建带衣服的人体模型。每个目标穿服装人体模型都包含表达服装的网格和人体网格模型 SMPL。作者首先检测并优化 SMPL 人体模型的形状和姿态参数来获得人体层。然后选择合适的 2D 服装图案,使用现有的布料模拟方法来自动地将衣服穿着到当前的人体模型。由于此时的服装与输入图片可能并不吻合,作者使用人体解析 (human parsing) 方法得到的分割的2D服装碎片来优化服装形状参数。作者将整个基于布料模拟的服装优化方法叫做 GfV (Garment from Video)。为了进一步对齐图像的边界,作者最后再基于输入图像的轮廓信息使用非刚性形变 (non-rigid deformation) 来完善衣服形状。基于多层的纹理渲染(multi-layer based texturing rendering):为了实现动态的无瑕疵的纹理更新,作者在3D服装上叠加了一个静态的 albedo 层和一个不断更新的几何细节层。服装 albedo 层是一个干净无阴影的纹理,而几何细节层描述了动态变化的褶皱和阴影。首先,基于在几何模块中得到的穿衣服的人体模型序列,作者使用现有的本征分解 (intrinsic decomposition) 方法将输入服装图像分解为 albedo 和 shading 图像,然后将多个 albedo 图像缝合并优化得到一个静态的 albedo 层。为了得到更多几何细节,作者将 shading 图像进一步分解为环境光照和表面法向图,并将法向图用于计算 3D 服装的表面细节。这样使用 albedo 图像渲染表面发射率,表面细节和环境光照,可以实现具有随时间变化的褶皱细节的逼真的布料渲染。

System Overview

Multi Layer Geometry

几何重建首先重建人体网格,即估计 SMPL 人体模型的形状和姿态参数,然后穿着并优化服装。

Body Estimation

作者使用 HMMR[4] 来估计每一个视频帧

的 SMPL 人体模型的初始形状参数 和 姿态参数 ,然后将所有的 进行平均得到一致的 SMPL 模型形状参数,对于姿态参数,首先对相邻帧进行时序光滑,然后将变化剧烈的姿态参数用其相邻帧的参数插值得到的替换。最后再使用 OpenPose 检测的 2D 人体关键点,通过约束投影关节点和检测值的距离差异来进一步修正 HMMR 检测的不够准确的姿态。

Garment from Video

Dressing

衣服试穿任务包含两个步骤:1. 服装图案初始化,2. 物理模拟。为了重建服装层,作者使用多个 2D 模板服装图案来作为不同的初始 3D 服装网格,对于上衣下装分别使用两层服装,每个服装图案包含正面和反面两部分,其大小由估计的人体形状自动计算得到。

2D Garment Patterns

为了让模板服装悬挂在处于 T 姿态的人体网格上,作者引入外力使用基于物理的模拟方法来让服装正反面缝合在一起,如下图所示。

Garment Dressing

作者使用基于力的质点弹簧 (Force-Based Mass-Spring) 方法,将衣服网格顶点看做被弹簧连接在一起的粒子,包括重力和衣服与身体的摩擦力在内的外力作用在每一个顶点上,碰撞约束包括衣服顶点和人头模型、衣服之间 (如短袖和短裤) 的相交。整个试穿的目标就是将服装正反面部分缝合在一起,作者在边界顶点之间加入引力,然后进行 300 轮模拟,再检测衣服是否被成功缝合,如果还是有缝隙,便更新衣服的尺寸参数并继续进行模拟,直到正反面成功缝合在一起为止。

Garment Parameter Estimation

但衣服试穿成功后,需要进一步估计服装的参数。作者通过极小化衣服模拟结果渲染得到的图片和输入图片之间的轮廓差异来优化服装形状。给定服装形状参数

,其能量函数如下:

其中

是约束每次迭代更新量的正则项, 是用来最大化输入图片的服装轮廓和渲染服装轮廓之间的匹配程度,对于服装 其定义如下:

这里

是从视频帧中均匀采样的帧索引, 是输入图片通过服装实例解析 (garment instance parsing) 方法得到的分割的衣服, 是通过服装参数 模拟并渲染得到的服装轮廓, 表示图片 轮廓的距离图,其定义是:

这里

是值为 的阈值, 和 分别是图片 和其反图像的轮廓的距离变换 (distance transform)。

Non-rigid Deformation Refinement

前面的步骤只能对衣服有一个大概的估计,基于物理的模拟也无法描述诸如褶皱之类的衣服细微运动,而这些褶皱对于建模的真实感至关重要。因此作者进一步使用非刚性变形的方法来对动态的服装细节进行建模。首先对衣服网格上采样使其与像素分辨率匹配,然后通过极小化下面目标函数,使用服装轮廓来决定每个高分辨率网格顶点的的偏移

这里

光滑项

用于惩罚相邻顶点的偏移差异

正则项

与前述定义相同。下图5展示了非刚性变形优化前后的对比结果,可以看到轮廓对得更齐。

Garment Deformation Refinement

Texture and Geometry Detail Refinement

接下来需要考虑将纹理映射到前面重建的服装网格上,由于随空间和时间变化的光照影响,直接进行纹理映射会导致严重的拼接瑕疵,作者将纹理分解为 shading 层和 albedo 层,前者用于计算几何细节和全局光照,后者用于生成服装的静态反射率图。

对于每张输入图像帧

,作者使用现有基于卷积神经网络的本征分解方法得到一张反射图 和一张 shading 图 。

Albedo Atlas Fusion

为了给3D服装生成一个静态反射率地图,作者首先根据其对应的2D服装片生成一个 UV 纹理地图 (texture atlas),反射率融合算法从均匀采样的反射率图

来生成反射率地图。由于一个 UV 坐标可能对应多个反射率图,作者这里选择最好 (正对相机的反射率图) 的一个以避免混合带来的模糊。为了减轻接缝,作者使用了基于马尔科夫随机场 (MRF) 的接缝优化算法。对于不可见的地方,作者使用图像修复 (inpainting) 算法来生成最终的反射率地图。

Albedo Atlas Generation

Shading Decomposition

Shading 分解的目标是从

估计一个入射光 和法向图 ,其中 用于基于明暗恢复形状 (shape-from-shading, SfS) 的几何完善。作者参考现有基于 shading 的表面优化方法,使用球谐函数 (Spherical Harmonics) 通过极小化如下能量函数来优化光照 和法向图 :

这里

是球谐函数估计的 shading, 是像素坐标。作者首先将从服装表面得到的法向图作为初始值,从多个关键帧来估计全局光照 。然后基于估计的光照 ,再来通过下面的能量优化法向图:

其中

用来约束每步更新, 是一个用来保持法向图光滑性的 Laplacian 能量项, 用来约束每个像素处的法向是单位长度的。

Geometry Refinement Using SfS

为了表达更加丰富的表面褶皱来渲染更加逼真的图片,作者基于估计的场景光照和 shading 图像序列

使用明暗恢复形状 (shape-from-shading, SfS) 的方法来优化几何的表面细节。

其中

与前面定义相同用来惩罚相邻顶点的偏移差异, 用于约束更新幅度,数据项 定义如下:

这里

表示顶点 沿着法向 的偏移。对于不可见的顶点,作者假设其局部细节与之前保持一致。最后作者再对可见和不可见顶点的边界处进行时序滤波以减小接缝。

最后,给定一个相机模型,借助预测的全局光照、表面反射率图、动态几何细节,便可以使用球谐渲染模型渲染得到较为真实的穿衣服人体动作序列。

Experiments

除去人体实例解析和本征分解,整个系统在 3.4GHz 的 Intel Xeon E3-1231处理器上处理一个 300 帧的序列需要大约5 小时,其中 SMPL 的形状和姿态估计需要大约15分钟,衣服参数估计迭代20次需要大概2小时,衣服变形完善每帧需要10-12秒,反射率地图生成需要10分钟,最后基于 SfS 的几何优化每帧需要30-40秒,整个系统完全在 CPU 上实现。

Qualitative Results

下图展示了文章方法的一些结果,文章方法能够生成具有较高真实感的人体动作捕捉结果。对于始终面向镜头的视频如下图底部两行,虽然背部没有展示出来,但文章方法也能生成较高质量的结果。

Reconstruction Results

文章方法估计了反射率和几何细节,因此可以渲染生成 360度自由视角的人体动作视频,下图展示了从其他视角渲染得到的图片。

Free-viewport Rendering

Comparisons

作者将文章方法的结果与 CVPR 的Video Based Reconstruction[5] 和DoubleFusion[6] 进行了比较,下图 (a) 中左侧是方法 [5] 的结果,右侧是文章方法的结果,中间是输入的视频帧。 (b) 中左侧是 [6] 的结果,同样右侧是文章的结果,显然文章方法的结果更加令人印象深刻。

Comparisons

Applications

文章方法有众多应用场景,作者列举了四个,分别是服装编辑(Garment Editing)、服装重定向(Clothing Retargeting)、人体重打光(Relighting)、增强现实(Augmented Reality, AR)。

Garment Editing

文章方法可以用来进行服装编辑,由于衣服的形状和纹理已经被分别重建,因为可以对服装的形状和颜色进行编辑,如下图中第一行的长裤长袖变短裤短袖,第二行服装颜色的改变。

Garment Editing

Retargeting

文章方法可以用来进行服装重定向,即把服装穿在同样姿态但不同体型的人体上。改变 SMPL 人体的形状参数后得到一个不同体型的人体,然后在原始人体和变形后人体之间这两个拓扑一致的网格之间计算一个非刚性变形场,便可以利用这个变形场把服装网格变形到目标人体身上,下图展示了重定向的结果。

Clothing Retargeting

Relighting

给定反射率和衣服几何,通过改变环境光照便可以生成重打光后的结果,如下图所示。

Relighting

Augmented Reality

重建出来的人体运动序列可以放置在 AR 场景中,带上诸如 Hololens 之类的 AR 眼镜还能实现任意角度观看。

AR Application

Conclusions

文章提出了一个基于几何和纹理多层表达的从 RGB 视频进行人体动作捕捉的新方法,能够估计出基于 SMPL 模型表达的人体形状和姿态,以及人体服装的几何和纹理,在众多场景中都有所应用。

文章方法同时也存在一些缺陷:

无法对头部,面部表情,手、皮肤、鞋子等信息进行重建;重建的人体运动序列会有抖动,对于快读、复杂的动作较难处理,对于不常见的衣服也无法处理;文章最终的渲染结果依赖本征分解的结果,albedo 和 shading 分解有误会影响最终结果;速度较慢,不适合实时应用。

参考

MulayCap: Multi-layer Human Performance Capture Using A Monocular Video Camera. Zhaoqi Su, Weilin Wan, Tao Yu, Lingjie Liu, Lu Fang, Wenping Wang and Yebin Liu. ArXiv, .MonoPerfCap: Human Performance Capture From Monocular Video. Weipeng Xu, Avishek Chatterjee, Michael Zollhoefer, Helge Rhodin, Dushyant Mehta, Hans-Peter Seidel, Christian Theobalt. SIGGRAPH, .LiveCap: Real-time Human Performance Capture from Monocular Video. Marc Habermann, Weipeng Xu, Michael Zollhoefer, Gerard Pons-Moll, Christian Theobalt. SIGGRAPH, .Learning 3D Human Dynamics from Video. Angjoo Kanazawa, Jason Y. Zhang, Panna Felsen, Jitendra Malik. CVPR, .Video Based Reconstruction of 3D People Models. Thiemo Alldieck, Marcus Magnor, Weipeng Xu, Christian Theobalt, Gerard Pons-Moll. CVPR, .DoubleFusion: Real-time Capture of Human Performance with Inner Body Shape from a Depth Sensor. Tao Yu, Zerong Zheng, Kaiwen Guo, Jianhui Zhao, Dai Quionhai, Hao Li, Gerard Pons-Moll, Yebin Liu. CVPR (Oral), .DeepCap: Monocular Human Performance Capture Using Weak Supervision. Marc Habermann, Weipeng Xu, Michael Zollhoefer, Gerard Pons-Moll, Christian Theobalt. CVPR (Oral).

欢迎关注公众号“人脸人体重建”,和您分享值得关注的人脸人体相关技术最新文章。

基于vc的freetype字体轮廓解析_MulayCap:基于多层表达的单目彩色相机的人体动作捕捉新方案...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。