增强现实可以在物理世界之上叠加数字内容与信息,从而增强你的感知。例如,谷歌地图的AR功能可允许你直接看到叠加在现实世界视图的方向。借助Playground,你就可以通过AR并以不同方式浏览世界。对于最新版本的YouTube Stories,以及ARCore全新的Augmented Faces API,你可以为自拍添加动画面具,眼镜,3D帽子等滤镜。
实现这种AR功能的关键挑战之一是合理地将虚拟内容锚定在现实世界。这个过程需要一套独特的感知技术,需要能够追踪千差万别的表面几何,每一个微笑,每一次皱眉都要准确识别。
为了实现这一切,谷歌采用机器学习来推断近似的3D表面几何形状,只利用一个摄像头输入而无需专用的深度传感器。利用面向移动CPU界面的TensorFlow Lite或可用的全新移动GPU功能,这种方法带来了实时速度的AR效果。所述解决方案与驱动YouTube Stories全新创作者效果的技术相同,并已经通过最新的ARCore SDK和ML Kit Face Contour Detection API向广泛的开发者社区开放。
1. 用于AR自拍的机器学习管道
谷歌的机器学习管道由两个协同工作的实时深度神经网络模型组成:一个在整张图像上运行,并计算面部位置的探测器;在所述位置上运行,并通过回归预测来近似表面几何的通用3D网格模型。精确地裁剪面部可以大大减少对相同数据增强的需求,比方说由旋转,平移和比例变化组成的仿射变换。通过精确地裁剪面部,这允许系统将大部分性能用于预测坐标,而这对于实现虚拟内容的正确锚定至关重要。