专栏名称: 网易新闻学院
网易传媒旗下新闻研究机构。这里有最优质的原创报道,最新国外传媒动态,以及一手行业情报;还有最IN的线下讲座、沙龙与培训,告诉你新媒体运营的一切秘密。
目录
相关文章推荐
内蒙古自治区高级人民法院  ·  全国人大代表赵会杰——继续保持为群众办事的“公心” ·  昨天  
内蒙古自治区高级人民法院  ·  全国人大代表赵会杰——继续保持为群众办事的“公心” ·  昨天  
新华网  ·  国际金价,又创历史新高! ·  3 天前  
51好读  ›  专栏  ›  网易新闻学院

“东亚四大邪术”之首的中国p图术,背后是啥原理?|了不起的中国制造

网易新闻学院  · 公众号  · 社会  · 2017-09-14 18:57

正文

导语

在这个看脸的时代,对于“换脸”这种技术活,从原理上说无外乎就是这么几步——第一步:对照片上所有人脸进行捕捉;第二步:找到人脸轮廓进行“瘦脸”;第三步:区域提取抽离五官;第四步:图形融合调整“脸型”。

出品| 网易新闻学院

作者| 常松,清华大学材料加工工程系博士


在广大俊男美女们对于颜值的不懈追求中,技术宅们不断地完善着p图技术。只需要下载个小小的APP,就可以分分钟搞定双眼皮、美瞳眼、瓜子脸等等,只有想不到,没有做不到,相比于日本化妆术、韩国整形术、泰国变性术而言,中国的p图术最为物美价廉。


今年八一建军节,手机平台上一款自动p图的“军装照”应用火爆朋友圈,只需上传一张正面照,就可以自动生产不同年代的军装照,让我等吃瓜群众们过了一把“军装”瘾。



其实,这只是“东亚四大邪术”之首——中国p图术的冰山一角。那么,中国如此强大的p图技术,背后是啥原理?今天就来聊一聊图片美化背后的技术。


1 P图究竟怎么P?


P图的“p”来自于Photoshop,一款由Adobe开发的图像处理软件,它由一个叫做Display的程序经过不断修改而来。


时至今日,软件尽管更新不断,功能更为强大,但是,图片编辑处理背后最基本的方式方法和当年都是类似的,只是随着计算机硬件的提高,支持的图片处理更加复杂而已。


(约翰·沃诺克John Warnock和查克·吉斯克Chuck Geschke)


颜色模型:从不友好的红绿蓝到友好的色相饱和度

对于计算机而言,使用最为广泛的就是面向硬件的颜色模型——RGB(红绿蓝)模型。


计算机显示和识别的所有颜色都由R\G\B的数值来表示,各种强度的RGB 光混合在一起就会产生出各种各样的色彩。当然这是一种对于人十分不友好的模型,因为人眼根本无法从杏黄色中分离出红绿蓝的比例。


(HSL与HSV模型中的颜色)


于是,对人很友好的HSL颜色模型就产生了,这是一种基于色相(H)、饱和度(S)、明度(L)三个颜色通道的变化以及它们相互之间的叠加而产生各式各样颜色的模型。在p图中,要调整图片的亮度,只对其L(亮度)部分调整,就可达到图像亮度的线性调整。


(高斯模糊)


滤镜:通过色彩系统识别与运算实现

而在PS中,各种滤镜都有着自己基于色彩系统的识别与运算方法。比如,Convolution Matrix(卷积矩阵)是得到图像处理的一个初级效果非常有效并快捷的工具,图像的“高斯模糊”滤镜,则是通过在处理图像时采用统一的卷积矩阵进行的。而由于采用统一的卷积矩阵,“高斯模糊”往往在p图时会造成一些细节,如眉毛、头发等细部也模糊。“表面模糊”能更好地解决这个问题,因为它在图像处理时,是每一个像素点都有自己的卷积矩阵,而且还有对应R、G、B的分量,计算起来更为复杂。


而这些都是图像处理的原理和模型,那么如何实现,就靠广大辛勤耕耘的码农了。


2 P图术如何化腐朽为神奇?


P图确实具有化腐朽为神奇的功能,配合着各种色彩调整、滤镜调色、高光覆盖、局部处理、自由变换等,能够自由地修改图片。然而,这么复杂繁琐的操作,并不是吃瓜群众能够掌握的。那么,如何能够让高大上的PS技术走入寻常百姓家呢?


在移动设备普及,特别是手机智能翻倍的今天,各种APP层出不穷,它们还往往可以通过调用系统API(应用程序接口)访问相机,从中采集画面进行美图处理,而这些其实就是一个集成的、程式化的、模板式的系列图像处理程序。

在这里举一个简单的美图功能——磨皮遮瑕祛痘。


(磨皮前后效果)


在APP的UI界面菜单中看似简单的一键操作,其实在APP背后是一个复杂的程序。


对于脸部的斑、痘之类的缺陷,在拍摄出来的照片中,其实就是相对比脸部周围皮肤的颜色和灰度的变化。而如果一张照片的局部相邻的区域灰度相差比较大的时候,就会被认定是一个“噪点”。因此,祛痘祛斑的过程实际上就是图片处理的“降噪”。这是最常见的图片处理方式,其中包含了各种算法。


比如滤波算法,就是用周边的点的灰度平均值来代替原值,这样各点的灰度相差就不会太大,而噪点就不会那么明显,而对于人脸来说就是皮肤看上去更加的光滑,一些斑、痘都消失了。在很多APP处理时拖动进度条的操作,其实就是在为降噪过程设定阈值。


(图像的降噪对比)


但是,如果仅仅是在后台对于噪点判定并且调用一定算法降噪,那么原图中的一些细节部分,比如眉毛、头发等也会丢失,看上去就“很假”。为了避免这种情况,在处理之后,图片要和原图进行融合,这就类似于PS中的图层叠加。在一键P图时,往往要调整两张图片的混合权重,使得处理之后的图片更加自然。


3 P图术如何实现“换脸”?


当然,对于永远自认为先天不足的朋友来说,仅仅皮肤光滑、白皙还远远不够,最好还能身材苗条、面容姣好。OK,也没问题。人脸识别技术,解决各种疑难杂症。



在这个看脸的时代,“刷脸”已经成为了一项很普通的功能,既然计算机可以识别人脸、捕捉人脸,那么是否可以换脸?答案当然是肯定的。在八一建军节时的军装照正是这种技术的应用——人脸融合。


尽管各家的算法与代码都存在差别,也代表着各种APP的核心技术,但是对于“换脸”这种技术活,从原理上说无外乎就是那么几步——人脸检测、关键点定位、区域提取、色彩调和、边缘融合。


第一步:对照片上所有人脸进行捕捉

人脸检测是一个很初级的活,就是对于一张照片上有多少人脸进行捕捉,如今已经克服了人脸角度、表情变化、光照强度等等问题带来的麻烦。人脸检测的根据是关键点定位,也就是要找到哪里是鼻子,哪里是眼睛,而这个过程往往是通过神经网络技术进行机器学习的方法实现。


(人脸识别与关键点示意图)


第二步:找到人脸轮廓进行“瘦脸”

进行了关键点定位之后,“瘦脸”的操作也就有了基础,找到了人脸的轮廓后,再通过一定的计算和图形变换,就可以改变脸型。眼睛、眉毛、嘴都是同样的道理。


(人脸识别的关键点采集)


第三步:区域提取抽离五官

要想进行“换脸”,还得进行到下一步 ,经过平面变换之后,脸部就相当于一个绘画,可以进行自由变换来改变形状尺寸。至于此后的区域提取,就是抽离出脸部具体的五官,以便后续进行图像融合。而为了保证能够与即将植入的画面协调,就要在色彩上对于脸部进行色彩调和以保证颜色协调一致,不至于产生违和感。


第四步:图形融合调整“脸型”

最后要做的就是将五官植入准备好的模板照片。此时,经过色彩调整后的五官已经和模板图片一致,而具体位置则靠关键点来定位,保证位置准确。

五官植入模板照片时,会遇到“脸型”的问题,因为虽然人体五官的位置基本相同,但脸型却差别很大,这时候就要进行“图形融合”。图形融合技术有各种算法,比如基于泊松方程的图片处理、利用高斯金字塔与拉普拉斯金字塔的图片融合等等。这属于超纲题,就不讲了。总之,效果大概是酱婶的:


(基于泊松方程的图片处理应用实例)


4 P图术如何实现动态图像的实时美化?


随着网络直播的兴起,APP美颜技术不再局限于静态的照片美容,而是要对主播的动态图像进行实时美化:在各种直播平台上,主播的小眼睛要变成大眼睛双眼皮,大饼脸要变成瓜子脸,游泳圈要变成蛇精腰……


这些对于中国强大的“攻城狮”而言,都不是事。







请到「今天看啥」查看全文