结合AI技术,谷歌阐释ARCore中AR滤镜原理
上个月,青亭网曾报道谷歌ARCore更新1。7版,并新增AR自拍API:AugmentedFaces。据悉,该API的功能曾被谷歌用来制作了YouTubeStories中的AR滤镜可让用户在自拍中添加动态面具、眼镜、3D帽子。
AugmentedFaces
近期,谷歌发文阐释了AugmentedFaces所使用的机器学习技术,并表示若想要实现虚拟内容在真实环境的精准定位,则需要一系列感知技术,用以追踪高动态表面,从而捕捉微笑、皱眉或傻笑等表情。
为了实现精准的感知,谷歌利用机器学习来推测大概的3D表面结构,然后在此基础上加上视觉特效。这么做的好处是,只需要一个摄像头就足够,不需要使用专门的3D传感器。
这种方法采用TensorFlowLite软件帮助手机对表面进行检测,可实时添加AR特效,使用这种简化模型的好处是,可大大提高计算速度,对AR特效的质量影响也很小。
AugmentedFaces的效果是,可通过环境识别对玻璃表面的渲染,模拟光线反射,模拟自然光在人脸上加入虚拟阴影,模拟虚拟物体对人脸产生的遮挡(比如眼镜滤镜)。
同时,这个功能还能够实现逼真度极高的彩妆特效,尤其是能够自然模拟光线在人嘴上的折射,或者模拟采用感光材料的人脸彩绘。
此外,谷歌还阐释了其机器学习技术生成AR自拍滤镜的方法,简单来讲就是同时运行两个实时深度神经网络模型:一个负责检测整张图像并计算人脸位置的探测模型,另一个是通用3D网格模型,它会通过回归的方式检测并预测大概的面部结构。
这种方式可准确地对人脸进行抠图,进而大量减少对旋转、转化和缩放等仿射变换需要大量数据的操作的依赖,同时它会将大部分计算用于提高表面预测的准确性上,以提升数字内容定位的准确率。
抠图完成后,接下来是通过视窗化平滑的方式为每一帧添加3D网格,目的是给静止的面部表情降噪以及避免在表情幅度大的时候产生滞后。
经过反复训练和迭代后,谷歌的这款模型还能在难度较大的场景识别人脸,比如鬼脸、偏斜的角度和遮挡。
对此项技术感兴趣的创作者、用户和开发者可使用YouTubeStories的全新创作者特效功能,或者下载最新版ARCoreSDK(1。7版)和MLKit人脸检测API。最后,谷歌还表示在未来会将这项技术用在更多产品中。本文系青亭网翻译自:GoogleAIBlog