周梦晗论直播美颜对女生的重要性!豆得儿直播忘开美颜变“痘得儿”-PP视频

    周梦晗论直播美颜对女生的重要性!豆得儿直播忘开美颜变“痘得儿”-PP视频

    周梦晗
    这是一个随时随地都可以美颜的时代。爱美的人可以不用通过整容来改变自己的形象。无论是图片还是视频,都可以通过美颜来完成。所以大多数网红只能活在照片里,离开了伟大的修图技术就立刻现出原形。
    豆得儿直播忘开美颜变“痘得儿”
    这不,最近豆得儿就在直播视频刚打开时中忘记开了美颜,使得她的皮肤问题瞬间暴露无遗。虽然她后面立刻开了美颜,手快的网友还是将直播视频截图做了对比;离开了美颜效果,豆得儿的静态照片和动态截图已经有了一些差别,而其中差别最大的就是她的肤色和肤质了。

    镜头中的豆得儿皮肤粗糙,而且肤色暗沉,看得出她的痘痘肌属于比较严重的了,因为双颊的痘印痘坑在妆后依旧非常明显,完全没有照片中的好皮肤。
    之前还有某平台一女主播在直播的时候,因为操作失误把美颜直播的效果关掉了。那场面当真是惨不忍睹,分分钟直播间的观众都快跑光了。

    曾经斗鱼的酥酥因为参加线下的嘉年华活动,让众多网友惊得大跌眼镜,原来在直播间那个萌萌哒叫着老公的女主播,竟是这样的。

    但其实他们本来在我们心里不应该是这样:

    这样:

    还有这样吗?

    所以说,美女还是应该活在美颜中。坦白讲,离开了美颜技术,直播恐怕也不会这么火。
    早期的图片美颜进入了视频市场,到了直播时代,美颜同样成为直播平台的标配。其实一个好的视频云服务平台现在都可以做到直播美颜技术,今天我们就以PP云的技术经验大概介绍一些这些美丽背后的“真相。”
    >>>>>技术框架
    直播美颜用的主流技术是OpenGL ES。它的好处首先是直接在GPU上运行的,所以性能高、功耗小,用在直播上比较划算。其次,它是跨平台的,支持iOS和安卓,美颜效果能够直接在这两个平台上达到跨平台的效果。另外OpenGL ES有一个优势,就是有大量现成的开源库。比如像GPUImage,谷歌的grafika,还有基于安卓的一些具有实践意义的库,都是很常用,PP云采用的就是这种技术。
    >>>>>美颜原理
    市面上大部分美颜产品的一般原理都是相似的。摄像头采集画面,通过一定的方式处理,最后输出一张美颜后的图片。PP云工程师一般会这么做:原图先经过磨皮处理,也就是把痘、斑这些去掉。然后把经过磨皮的图片与原图进行混合。混合这个步骤必不可少。因为如果只用磨皮后的图,很容易丢失细节;而且把两张图混合,还可以通过调整两个图的混合权重,来控制磨皮的程度,达成不同级别的磨皮效果。当然最后一步也很关键,就是美肤,比如把皮肤肤色调得白一点、红嫩一点,或者一些特殊的需求都可以实现。
    >>>>>磨皮算法
    本质上说,一张图就是一个二维的数据。如果相临的两个区域灰度值相差比较大,这就意味着存在着噪点。比如,做直播时主播脸上有个痘,这个痘自然产生一个灰度值的变化,从抽象意义上说就是一个噪点。所以美颜磨皮的算法,核心是去噪。去噪有很多的办法,网上有各种各样的算法,包括现成的论文。但是不管产用什么算法,美颜的去噪算法都要保持一个特点,那就既要是边界保持,同时还要做到平滑,也就是要滤波。
    滤波算法中比较常见的是双边滤波,它的优点在于很高效,因此非常适合移动平台。还有一些其他的算法比较复杂一点,也可以达到那样的效果,但是在移动应用上效率不高。虽然GPU是并行运算的,很适合这种运算,但GPU的能力是有一定范围的,超过这个范围也很耗电。包括双边滤波在内,一种滤波算法也有各种各样实现,考虑在移动平台上运行,可以做一下特别的优化,比如在精度计算里,适当降低精度,达到效果与效率的平衡。
    >>>>>肤色调整
    在做好磨皮后,最后一个流程就是肤色调整。调整肤色本身的手法已经非常成熟,所以更难的其实在于肤色检测。
    为什么要做肤色检测?
    有些早期的直播美颜是没有这个功能的,所以他们就是以美化的肤色为基础,简单粗暴的把整个图像按这个色彩全部处理掉了,这就造成了整体偏色,效果还不如不做。
    因此,在处理图像前,必须先进行肤色检测,在图像的所有像素点中找到对应肤色范围的像素再进行处理。
    直播中的肤色检测特殊的地方在于颜色空间的转换。因为跟图像处理相关的颜色空间主要有三种:RGB、YUV、HSV,而这三种色彩空间在直播中都要用到。
    RGB是最常见的色彩空间,我们日常用的显示设备就是基于RGB空间,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。
    YUV是一种比较传统的颜色空间,最早是应用在电视信号的传播里面的,目前多用在直播的数据采样、传输的过程。这是因为人眼对亮度(Y)远比色度(U、V)更敏感,所以YUV比起RGB更容易被压缩,这样就更容易节省带宽进行传输。
    HSV颜色空间才是用来做肤色检测的。因为如果用RGB来做肤色检测,需要检测R、G、B三个值是否同时满足肤色的颜色范围,YUV同理。而HSV三个值:色调(H)、饱和度(S),明度(V)中,只有H是关乎肤色的,因此只需要对H进行考虑(H值在25-50之间即可判断为肤色),所需要的运算量自然比RGB少很多。
    所以,在直播的不同阶段,PP云的美颜技术会分别使用这三种色彩空间,要不停的把这三种色彩空间进行相互转换。
    另外,其他一些关于美颜的方法无非就是多考虑细节了。细节决定成败;比如不同平台在不同光照条件下,直播出来的美颜效果差异很多,所以技术中要考虑光照因素。
    PP云推流SDK使用的美颜是在开源框架上进行了修改,ios基于gpuimage,android基于magiccamera;我们在开源框架上做了架构上的调整,梳理了流程,整理出比较精简的接口,大大减少了接入SDK的成本。
    还有一个技术难点是终端的适配性,iOS一般没什么难度,安卓就要考虑终端适配问题,不同的厂商、设备、系统版本不一样,兼容性要考虑,要做大规模的兼容性测试。这时候就需要有一定规模的平台或资源可以做这件事。PP云在这块有相当丰富的经验,如果有兴趣,关注我们公众号,更多关于直播那些不能说的秘密等着你来挖掘。
    我们的短视频demo里的美颜功能大家可以深入体验一下,长按识别二维码就可以直接下载直播客户端体验。

    苏宁旗下子品牌PP云已累计服务客户超过2000个;PP云凭借PPTV 十年媒体技术和服务经验,融合流媒体技术、P2P、CDN 分发、海量存储、安全策略等构建的专注视频领域的一站式SaaS 服务平台。PP云集视频云直播、云点播、云上传、云转码、云存储、云统计等功能于一体,多平台全方位支持客户各种视频场景的业务需求。