帮助与文档
热搜关键词:美颜SDK萌颜SDK视频美颜SDK   
美颜sdk中,虚拟试妆的实现过程(上)
发布来源:美狐美颜    Date:2021-09-13 14:54:54

如今,通过美颜sdk处理后的人脸妆容越来越“自然”,其背后的原理,就是采用了加载人工智能的虚拟试妆技术。

虚拟试妆算法是一种典型的计算机视觉与计算机图像学相结合的技术,它通过检测面部区域的关键点,在特定区域使用AR增强现实的渲染技术,实现模拟化妆效果,在电商、直播、短视频等平台具有广泛的应用。本篇文章中,小编将以AR口红试妆为例,帮助大家理解美颜sdk中,虚拟试妆的实现过程。

美颜sdk

通常,虚拟试妆算法主要包含检测上妆区域及妆容渲染两个步骤。

一、检测上妆区域

1、人脸关键点检测

人脸在上妆之前,需要知道在哪些位置上妆,因此,美颜sdk需要对于输入的人像进行关键点检测。对于试妆来说,关键点数量越多,最终的试妆效果越好。这就需要看美颜sdk的人脸关键点能够一次性布局多少点了。

2、人脸关键点平滑

通常使用的AR试妆系统均为实时系统,因此,需要将视频流拆解成单帧图像输入到人脸关键点检测网络,这导致输出的视频中人脸关键点会有一定的抖动,其中一方面是因为预测的关键与实际关键点位置有小幅度偏差,另一方面,视频中人眼观察的静止与图像实际的静止状态存在差异,实际图像在像素级别存在差异,而模型对这种图像微小差异不够鲁棒。为了缓解关键点抖动问题,我们需要对人脸关键点进行平滑后处理,这里一般选择使用一阶的卡尔曼滤波进行处理,其中有两点需要注意:

美颜sdk

使用关键点的移动距离来估计系统过程噪声。如果检测关键点与前一个时刻的预测点的距离差别较小,则变化大概率由于检测误差引起的,需要降低过程噪声,反之当两者距离差别较大时,则需要提高系统的过程噪声。这样的处理也可以从另一个角度来理解,当检测关键点与前一个时刻的预测值距离较大时,说明关键点的真实值进行了移动,这时很难观察到关键点是否有抖动,通过提高系统过程噪声误差,能够减少预测的关键点与真实的关键点之间的距离,从而提高关键点的跟随性。而当检测的关键点与前一个时刻预测值的距离较小时,关键点的抖动较为明显,适当降低系统的过程误差,能够减弱观测输入带来的影响。

根据实际模型估计系统观测误差R。通常系统观测误差R与关键点检测模型具有较强的相关性,当系统观测误差R的增大,预测关键点的抖动效果会减弱,同时会产生“拖影”效果,为了准确的估计系统观测误差,往往需要根据实际的使用效果进行调节,使其能够在抖动与“拖影”中取得平衡。

经过以上2个步骤,人脸关键点的“平滑”处理就完成了。

以上,就是美颜sdk中,虚拟试妆检测上妆区域的过程,由于篇幅原因,关于妆容渲染的内容,将放到下篇文章中继续说明。如果你对美颜sdk接入有需求,欢迎咨询官方客服。

声明:本文由美狐原创,未经允许禁止转载,谢谢合作。

本文标签: 美颜sdk
相关阅读
13188947262