如何得到一个人的高精度面部三维模型?
通常情况下,对某个人的脸进行精确的三维重建需要昂贵的设备和专业相关知识技能,比如要用摄影棚、相机、3D 扫描仪等等,各种各样的工作都集中在使用光度学立体或多视图立体技术来进行面部结构重建。
现在,卡内基梅隆大学(CMU)的研究人员使用普通智能手机录制的视频完成了这项壮举。用智能手机拍摄脸部正面和侧面的连续视频,在深度学习算法的帮助下分析这些数据,成功对多个面部进行了数字重建,实验结果表明,他们的方法能够达到亚毫米精度,堪比专业化的处理。
图|CMU 的方法(c)与传统最先进的方法(d)效果对比(来源:CMU)
本研究项目的成员之一、CMU 机器人研究所副研究员西蒙 · 露西(Simon Lucey)表示,面部的三维重建一直是计算机视觉和图形领域的一个公开问题,因为人们对面部特征的外观非常敏感,即使重建过程中出现轻微异常,也可能使最终结果看起来与现实差别较大,高水平的细节是个难点,也是栩栩如生的关键。
如今,数字脸可拿来构建游戏角色或 AR、VR 的化身,也可以用于动画、影视制作、社交、生物识别甚至医疗等领域,商业空间可谓十分广泛,而整个制作过程或许会慢慢的便捷。
视频|数据采集和优化过程(来源:CMU)
研究人员在慢动作拍摄中使用了 iPhone X,高帧速率的慢动作是原始数据采集的关键之一,视频以 120 帧 / 秒的速度拍摄,每段时长 15-20 秒,背景条件是无约束的,但需要是静态的场景,拍摄对象最好保持一种静态的表情。
录像可以由拍摄对象自己录制,也可以由助手录制,之后视频会分为三个关键步骤做处理:摄像机姿态估计;使用多视图立体生成点云;使用约束组合进行网格拟合。
传统而言,大多数多视点人脸重建方法依赖于预先校准的摄像机或使用地标跟踪器来估计相对于几何对象的摄像机姿态。
CMU 团队利用视觉同步定位和映射(SLAM)的直接方法,一方面视觉 SLAM 可以对曲面上的点进行三角剖分以计算其形状,另一方面可实现亚像素精度的相机姿态估计。这种检测的新方法特别适用于特征点检测和匹配中不存在大量拐角点的人脸。
因此,研究人员利用这个事实,输入一个单一的连续视频序列,对于一个典型的序列,能够获得 50-80 个具有精确已知摄像机姿态的关键帧,经过这一步能创建出一个人脸的初始几何图形,略显粗糙,丢失的数据也会在模型中留下一些 “空隙”。
图|初步扫描得到的模型效果(来源:CMU)
如上图所示,点云生成阶段结束时生成的具有和不具有纹理的点云数据,这些点云精确地捕捉了整个面部的几何特征、眼睛、嘴唇等区域的轮廓细节,使每个部分都能被识别。
然而,由于非理想照明、缺少纹理和智能手机的传感器噪声等因素,点云会有丢失的数据和噪声,接下来就需要一个强力的网格拟合办法来进行弥补,研究人员采用了非刚性网格拟合算法,利用点云约束、地标约束、网格刚度约束和边缘约束的组合,对模板进行变形修复,最终需要 30-40 分钟的处理时间完成一个人脸模型的精确修复。
虽然这样的一个过程耗时有点儿长,但结果却是值得的,最终构建出的面部三维模型中位数精度约为 0.95 毫米,在精度和完成度方面优于当前一些主流的单视图和多视图重建方法,在精细细节方面得到增强,这也是三维人脸重建研究的一个最新趋势:将精细的高频细节压印到重建模型之中。
不过,目前这项研究对场景中的动态运动不具有鲁棒性,团队会在接下来进一步深化研究。
图|各种主流单视图和多视图重建方法的结果比较,正面和剖面相应的误差热图(来源:CMU)
另外一点值得关注的是,该团队还建立了一个包含 100 位受试者的数据集,每个受试者在不同的光线和背景条件下记录了 2 个视频序列。对于每个视频,研究人员都提供一组 50-80 个他们使用的关键帧和重建方式(网格、点云和表面法线贴图)作为参考,希望这一数据集有助于进一步研究和评估无约束的、既准确又一致的多视图和单视图重建算法。
在这项工作中,我们正真看到了一个普适性的解决方案,这种方法当下不一定很快,但整一个完整的过程可以在智能手机上完成,而随着智能手机的计算处理能力越来越强大,最终用户有望在不使用任何专用传感器扫描仪的情况下捕获高精准度的面部三维模型。
西蒙 · 露西表示,除了面部重建,CMU 团队的方法也可拿来捕捉几乎任何物体的几何结构,然后,这些对象的数字重建可以合并到动画中,或者通过互联网传输到能够正常的使用 3D 打印机复制这些对象的站点。
-End-
参考:
https://www.cmu.edu/news/stories/archives/2020/april/smartphone-videos-create-3d-reconstructions.html
https://arxiv.org/pdf/2003.08583.pdf