抖音直播怎么开美颜(网红直播时的瘦脸、磨皮等美颜功能是如何实现的?)





作者|阿里文娱算法专家张三

出品| AI技术大本营(ID:rgznai100)

背景

随着移动设备的发展,美颜已经成为多媒体内容生成环节不可或缺的基础能力,尤其是在疯狂的直播秀业务场景下,主播的颜值意味着生产力,直接影响主播和平台的收入。

美容的目的是让人看起来更漂亮,包括皮肤细腻、白皙、光滑。面部器官和脸型都可以精心调整,通过美颜调整实现快速化妆。为了达到上述面部美容效果的需求,我们在技术上主要通过以下四个关键步骤来实现:





技术实现

1。获取面部关键信息

美容要看脸的关键点。基于这些关键点,我们可以准确地知道面部各个器官的位置信息,从而美化面部:

首先基于AliFace得到人脸关键点的基本信息,包括眉毛、眼睛、鼻子、嘴巴、面部轮廓等106个关键点。

其次,在检测到的106个关键点的基础上,我们需要对人脸的关键点进行增密,插入额外的关键点,比如额头区域和脸部外围限制区域,从而覆盖整个人脸区域;

最后,基于稠密人脸的关键点,构建整个人脸的三角网格,实现整个人脸区域的三角剖分。三角剖分将人脸划分为多个互不重叠的三角形区域,然后可以使用openGL或者D3D进行渲染,实现面部器官的各种美化处理。基本面部关键点、密集面部关键点和三角网格图片如下图所示:



2。美肤护理

皮肤美化治疗主要包括磨皮和美白,磨皮需要使面部皮肤区域细腻光滑,而美白需要使皮肤区域白皙红润。具体的处理模块如下图所示:



它主要包括以下关键步骤:

抖音开直播怎么开

1)图像平滑

磨皮主要是利用边缘保持滤镜平滑脸部非器官区域,从而达到平滑脸部皮肤区域的效果。一般来说,常用的边缘保持滤波器主要有双边滤波、引导滤波、表面模糊滤波、局部均值滤波等。考虑到性能和效果的平衡,一般采用双边滤波或引导滤波。

双边滤波考虑了窗口区域像素的欧氏距离和像素强度的差异,使其在平滑时具有边缘保护的特性。其优点是计算量小,GPU端资源消耗低,缺点是无法去除色差较大的孤立点,如痘痘、痣等,剥离后效果生硬。

引导滤波根据窗口区域纹理的复杂程度调整平滑度,在平坦区域接近均值滤波,在纹理复杂的区域接近原始图像。窗口区域纹理的复杂度与均值和方差有很强的相关性,既能很好地处理平坦区域的各种噪声,又能完整地保留轮廓区域的信息,GPU端的计算并不复杂。因此,结合我们的业务需求,我们采用导向滤波作为皮肤的边缘保持滤波器。引导过滤的算法如下图所示:





在磨皮场景中,引导滤波的引导图像就是原始图像本身,其均值滤波的中间结果可以用于后续的锐化处理,提高性能。

2)面部ROI(感兴趣区域)处理

为了解决磨皮效果的准确性和质量问题,我们标定了一张人脸美颜的掩膜图。这张图的rgb通道对应的是面部器官(眼睛、眉毛、鼻子、嘴巴等)的Mask1。),法令纹区域和眼袋区域的Mask2,面部高低光区域的Mask3,高低光蒙版的Mask3如下图所示。



将人脸的关键信息与掩膜图像相结合,通过三角剖分实时生成当前人脸对应的掩膜,并将平滑后的图像与原始图像融合。Mask1会保护面部器官不被磨平,保证面部磨皮区域的准确性。Mask2增强了法令纹和眼袋区域的磨皮程度,达到去除法令纹和眼袋的目的。Mask3通过高低光处理,使磨皮后的五官更加立体。

之所以将上述三个mask合并为一张图片,是为了减少GPU端获取像素值的频率,以达到提升性能的目的。同时,在非人脸区域,通过肤色检测对肤色区域进行蒙皮,而非肤色的区域拒绝平滑,从而整幅画面蒙皮。

3)纹理增强和肤色映射

抛光后的图像整体模糊,使得整个图像不够透明,需要重新锐化。为了提高性能,我们将引导滤波过程中的平均滤波结果与人脸ROI区域的掩膜相结合,采用近似USM锐化的方法对图像进行增强,突出纹理细节。

为了美白肤色,我们使用颜色查找表将肤色映射到理想的颜色范围。颜色查找表的基本原理如下:



本质上,它相当于一个离散函数。给定任意一个rgb颜色值,可以在颜色查找表图片中找到对应的颜色值,插值出对应的转换结果。美白颜色查找表的生成需要设计者根据肤色的近似颜色范围,在参考颜色查找表的基础上进行一系列颜色调整后,生成新的颜色查找表图片。如下图,左边是参考色查找表,右边是调色后肤色的美白色查找表。



以上是皮肤美化的几个重要步骤。美肤后的效果对比图如下:



3。面部器官美容治疗

面部美容治疗主要包括面部调整和面部器官调整,而实现上述功能的关键步骤是通过基于面部关键点的图像变形来实现面部各器官的形状调整。我们采用的图像变形算法主要是局部变形算法和三角剖分算法。局部失真算法一般包括局部缩放、局部平移、局部旋转等。比如大眼功能,可以通过局部缩放来实现。三角剖分方法是对三角网的顶点进行平移,然后将平移后的顶点更新到对应的纹理坐标上,通过openGL或D3D进行绘制和渲染,从而实现整个关联三角网的变形。具体的面部美容效果如下图所示:



4。美容护理

美颜效果依赖于材质模板准确的标定数据和人脸准确的关键数据。具体实施过程主要包括以下步骤:

1)化妆材料的管理和分析。结合各种化妆和贴纸材料,我们构建了一个完整的绘制机制。根据对化妆效果描述文件(Json)和顶点绘制规则的分析,绘制并合并了各种材质。

2)将材质模板与当前面部器官对齐。在材料的描述文件中有相应的校准信息。结合当前图像的人脸关键点,对素材模板进行三角剖分变形,达到与当前人脸器官对齐的目的。

3)不同器官的定制化治疗。因为不同的器官有不同的治疗流程,所以要针对不同的器官采取不同的治疗方法。比如在美齿的时候,需要结合牙齿区域的蒙版模板,通过美齿颜色查找表来调整牙齿区域的颜色;对于眉毛处理,首先要将当前图像的眉毛与当前眉毛模板的材质结合起来,调整眉毛区域的变形,同时对当前图像的眉毛进行弱化处理,然后与对齐的眉毛模板合并。

4)图像融合。由于材质模板和面部器官的不同,需要采用不同的融合方法来实现图层融合。例如,可以基于材料的半透明通道直接融合腮红,并且应该使用高反差算法来融合美容处理。

当然,以上美容处理的过程也适用于人脸的2D贴。



结果及落地

性能方面,在iphone6p等中低端机型上可以实现720p 24fps实时人脸美颜。从效果上来说,通过皮肤处理,可以使脸部皮肤白皙细腻,主播可以根据自己的喜好调整脸部的任何器官。目前,面部美颜功能已经在莱疯(移动端和PC端)直播、优来移动端直播、淘宝PC端直播实现,莱疯主播日均播放量翻倍。具体的面部美容效果如下图所示:





一些思考

1.根据业务特点建立“美”的标准。什么是“美”,是人类普遍看法中的一个基本标准,但根据不同的历史时期、地域、场景会有所不同。如东方美学观点集中在“三庭五眼”、“四高三低”、“中轴线布局,人物丰富”等。,而在表演秀场景中,则会更加突出:“大眼睛”和“瘦脸”。另一方面为我们后续的迭代优化和研发改进提供数据支持。

2.化妆迁移。目前,美容化妆品是基于多种材料,其开发成本相对较高。彩妆迁移可以脱离对美妆素材的强烈依赖,降低开发成本。用户只需要选择一张精美的效果图,就可以把自己的美补上,这是我们后续努力的方向。

参考文献

【1】https://www . ti . INF . ethz . ch/ew/Lehre/CG13/lecture/Chapter % 206 . pdf

【2】http://homepages . INF . ed . AC . uk/RBF/cv online/LOCAL _ COPIES/mandu chi 1/双边_Filtering.html

【3】http://kaiminghe.com/eccv10/index.html

【结束】

强制计划

原力计划【第二季】——学习挑战正式开始!即日起至3月21日,百万流量支持原创作者!还有更多专属【勋章】等你来挑战



  • 想成为一名数据科学家却不知道从何下手?这份路线图将带你打开数据科学的大门!

  • MySQL稳坐Top1,私有云最重要,大数据人才稀缺!|中国大数据应用年度报告

    不要掉一根头发!用Flutter+Dart快速构建精美的手机App

    了解Spring Boot服务监控、健康检查、线程信息、JVM堆信息、索引收集和操作监控!

    六天对抗黑客!

    用三只鸽子告诉你闪电网是如何改变加密信息传递方式的!

    您可以还会对下面的文章感兴趣

    使用微信扫描二维码后

    点击右上角发送给好友