ag真人合成

当前位置: > ag真人合成 >

大热的抖音“变身漫画”滤镜背后用了什么黑科技?

时间:2020-07-24 03:01    作者:admin     点击:

  最近,抖音推出了一款动漫特效滤镜“变身漫画”,能够让用户在直播中,把自己的现实形象瞬间转变为二次元“画风”。对于动漫二次元爱好者来说,“打破次元壁,变身纸片人”这种自娱自乐方式可谓久玩不腻,在此之前,各种美颜修图和视频直播类app也都纷纷开发了类似功能,但没有一个能够让用户拥有“二次元分身”。那么,这种能够“动起来”的二次元滤镜,背后隐藏什么黑科技呢?

  从计算机视觉制作的角度讲,把一张图片与另一张的视觉要素相混合,称为风格迁移(style transfer)。

  一张照片的风格迁移,可以由人工操作,利用视觉编辑软件完成。当然,像抖音这样在全球拥有上亿用户的短视频社交平台,同时要应对如此多用户的视觉滤镜呈现,就需要人工智能算法加持,尤其是“卷积神经网络”(Convolutional Neural Network, CNN)。

  今天, “深度学习”之所以是个热门概念,都可以追溯到卷积神经网络在2012年的横空出世。不要被这个高大上的名词吓到,它的原理其实也不复杂,用小学数学就可以解释:在AI眼里,任何图片都是像素构成的矩阵(左),卷积核(kernal)是另一个小矩阵(中),它们叠加在一起,对应位置的数值相乘再求和,得到“特征映射”(右)。

  卷积核一般都不大,有的5x5,有的3x3,好比工兵的地雷探测器,去探测图片里存在的模式。信息逐级加工,最终得到一个分类识别的结果。

  提醒大家,千万不要以为现在人工智能就是科幻电影里的超级电脑,全知全能。其实它现在的“认知能力”非常弱,几乎只等于0到4岁的儿童。如上图所示,科学家们如果想要人工智能识别一些基础物体,比如人脸、汽车、动物,和椅子,那么首先就要把这些物体的特征“提取”出来,也就是上图第二行图中那些五官、车轮、象鼻、椅背什么的,交给人工智能去“记忆”。然而可怜的人工智能“智商捉急”,只能再把这些特征进一步简化为第三行图中的简单形状符号,加以“死记硬背” 。而人工智能领域的科学家,就必须像耐心的父母教育小朋友那样,不断调整,优化这些最基础的形状符号,把它们变成机器能够理解的“卷积核参数”。

  卷积核里的数字决定了它能探测到什么样的特征,或者是轮廓,或者是形状,也可能是纹理,而“风格”就是各式特征的组合。这些负责判断不同图形特征的卷积核分层排列在一起,就成了卷积神经网络。

  ImageNet成立后,每年还会组织一次全球视觉识别挑战赛(ILSVRC),鼓励全球科研团队拿出自己的 AI图像识别算法进行PK

  小朋友识别物体,最好的办法就是与周边环境多接触,或者看绘本画册。对于AI这个小朋友来说,它看的绘本,是ImageNet:一个具有1000类、数千万张图片的超大型数据集。卷积神经网络就像一个笨笨的小朋友,成天在ImageNet里面玩着“看图识物”的训练游戏,久而久之,它逐渐具备了相当的特征提取能力。

  要让人工智能实现对大批量的实时图像进行批量风格迁移,就好比让这个笨笨的小朋友先浏览一大堆物品的形状和颜色,然后再训练他提取不同的特征,最后形成图像。好比说,如果要让孩子画一张“紫色大象“的图片,父母就必须给孩子出示两张照片,一张是非洲草原能上的大象,一张是紫色色卡。

  那么,AI这位小朋友就开始了作画(计算),首先把这两张照片传送到同一个神经网络,加以合成,要求这张新画作上图像的外形尽量与大象接近,颜色尽量靠近紫色,那么AI经过反复的内容与风格特征提取,最终可能会达到一个满意的效果

  那么AI有没有可能像部分聪明的小朋友那样,不用科学家(父母)的指导,而开始自学呢? 科学家们想出来一个点子:对抗网络(Generative Adversarial Network),由两套独立的人工智能网络构成,分别是生成网络(G)与判别网络(D)。生成网络就是那个画画的笨孩子,判别网络就像是个严格的美术老师,负责给孩子的作品打分。

  判别网络的任务很简单,就是区分真假。何为真?自然拍摄的图片就是真,而人工合成的图片称为“假”。生成网络G会产生一批假数据,对判别网络进行训练,刚开始的假数据很粗糙,肯定通不过,所以判别网络只需要很初步的识别能力就可以鉴定,这是一个“菜鸡互啄”的阶段。

  D有了进步,G也要迎头赶上,再对生成网络进行训练,目标是生成更加拟真的数据,骗过当前的判别网络。这些新的数据又用来训练判别网络,自己生产,自己消化,如此循环,左右互搏。

  在这个不断博弈的过程中,两个网络的能力都得到了提升。如同武侠小说里的“梯云纵”,左脚踩右脚,右脚踩左脚,武功高强的大侠就能飞檐走壁。训练完成之后,判别网络作为“工具人”就可以暂时领便当休息了,留下生成网络(G),用以产生图像。

  现在,AI这个画画的小朋友能够不用指导,自己根据图像进行临摹了,然后还自学了填色(风格迁移)。不过这个时候,严格的美术老师判别网络D又要登场了。这次不仅要鉴别图像是否为真,还要看在填色(风格迁移)的过程中,有没有出现其他偏差。

  如图所示,大部分现实物体中,能够形成对应关系的并不多,所以需要两个生成网络各司其职,相互检验制约

  当然,现实生活中能够形成严格对应关系的物体并不多。为了确保精度,AI工程师会同时引入两套生成网络。比如我们要把一匹马的照片变成斑马,但很明显,现实中你可以找到两只除了颜色外,一模一样的鞋子,但不可能存在两匹体型和五官特征完全相似的马与斑马,所以就需要两个生成网络各司其职。生成网络A完成从马到斑马的转换,另一个生成网络B负责从斑马转换到马。这样在优化过程中,双方能够互相检验与制约,这就是近年来应用场景不断增多的深度学习算法CycleGAN。

  这套算法,就是隐藏在现在市场上大多数美图软件滤镜后的幕后功臣,什么“LOMO风格”,“甜美日系”,“黑白简笔”,“美白磨皮”,都可以让用户轻松一键搞定,完成瞬间“变身”。

  不过,要把自己的视觉形象在抖音里转化为相似的二次元纸片人,还有最后一个门槛,因为次元壁并不是那么好打破的,真实人脸和卡通人脸之间的结构差别太大,很难捕捉面部基本特征。所以,专家们设计出了一个优秀的助手Landmark Assisted CycleGAN,来帮助AI,让这个笨笨的小朋友能根据真实用户人脸“画”出相应的卡通形象。简单来说,它的训练机制就是,每当CycleGAN提供一张人脸图像,它就先对脸部关键点进行标记,然后再根据这些标记点生成最初的卡通形象,并把这些标记输入判别网络。然后,启动两个CycleGAN中两个图像生成网络,让卡通形象和人脸形象之间不断地相互进行识别,反映到屏幕上,就是你看到了一个和自己酷似,惟妙惟肖的二次元纸片人。

  更重要的是,这些二次元形象,还必须跟随着视频中的真人形象“动起来”,这就涉及到巨量的运算。成千上万的用户同时使用滤镜,就会形成海量的运算数据,如果单纯依靠云端计算,分析这些视频数据,再想办法为每个用户量身定制,画出二次元形象,那么很可能造成卡顿,进而会影响用户的体验感。为了避免卡顿,这些经过训练之后的面部识别模型,会随着软件更新,“下发”到每个用户的手机上,把每个抖音用户手机里的CPU和GPU运算力也“动员”起来,进行实时的推理(inference)计算。根据抖音技术团队透露,“变身漫画”滤镜启用了字节跳动自研的推理引擎ByteNN,高效利用了移动端的计算能力,使AI算法快速落地到每一台用户的移动设备。这就好比一个工厂自身生产能力不足,把一部分加工程序,连同加工设备,外包给千千万万个工厂外的家庭小作坊一样。

  日本Botsnew VR公司推出的一款以龙珠为主题的VR眼镜,利用AI图像识别推理机制,自己在游戏中能够变身龙珠风格的动漫角色,身边的NPC角色能够和自己同步行动,比如发出著名的龟派气功波

  能够自行根据模板进行创造的AI图像生成技术,未来可能为我们开辟许多不可思议的电子互动娱乐场景与模式。想想看,戴上拥有这项功能的VR/AR设备随手一挥,画廊中莫奈的名画变成了摇曳生姿的实景AR景观,动动手指,屏幕上的电影或二次元动漫角色就打破次元壁来到你身边——自己和儿时的偶像,“龙珠”中的小悟空并肩战斗,在VR场景中一起发出龟派气功波,有多么热血!

咨询中心