AI修图艺术:火爆朋友圈的Prisma背后的奇妙算法

本文作者系图普科技工程师。

在Prisma的应用下载评论区看到这么一句好玩的话:世界一半人在用《PokemonGO》抓精灵,另一半人在用这个软件修图。

图像编辑软件早就数不胜数,比如胶片风的VSCO,拼图美颜的拍立得、美图秀秀,二次元卡通的魔漫相机、脸萌,自拍美颜的PICSPLAY、美颜相机,主打滤镜相机的Roookie Cam、MIX滤镜大师等等,这些现象级产品在这个快速迭代的时代层出不穷, 那么Prisma凭什么在这样的环境下杀出重围?连俄罗斯总理梅德韦杰夫都特地“翻牌”了。

首先,Prisma不是简单地在原图上转换色调或者环境风格,也不只是利用普通的滤镜来改变图像的光线、颜色或者重叠图片,它会根据你提供的图片内容和你要求的风格图片的样式重新“画出”一张新的图片,它并不一定使你变美,但它一定让你遇见全新的自己(如下,左一为原图)。

那么,Prisma与人工智能算法Neural art到底怎么回事?Prisma与CNN的具体结合、生成图片的过程又是怎样的呢?

|Prisma与人工智能算法Neural art

Prisma的所做的风格转换是机器视觉领域一直在研究的一个问题,称为texture transfer (纹理转换),其目标为将源图片的风格合成进目标图片中同时保留目标图片的语意内容。

本质上来说,将图片的内容和风格分离并不一定是一个定义明确的问题 (Well-defined problem),这是因为并不能准确定义出图片中的哪部分属于内容,哪部分属于风格,很有可能内容与风格是交织在一起,没有办法进行分离。

Prisma背后的技术

Prisma背后的技术基于一篇今年CVPR oral文章 “Image Style Transfer Using Convolutional Neural Networks”。

其实早在Prisma引爆大众市场的半年前,此方法的巧妙及其惊人效果已经引起在学术界引起了广泛关注。众所周知在如今的人工智能领域引起革命的深度学习技术已经将众多任务推向了实用的水平,而Prisma用的技术也不出意外的基于深度神经网络,它的系统核心是利用神经表征来分离,再组合随机图片的内容和风格,以此来实现一个可用来描绘艺术图像的算法。它的基本想法是利用一个多层的卷积神经网络(CNN)抽象出给定绘画作品里一些高级的隐藏特征用来模仿绘画风格,并把这个绘画风格应用到一个新的图片上。

而在纹理转换领域,之前传统方法之所以没能取得这么惊人的效果,其本质原因在于之前非深度学习的方法只能获取到目标图片低层次的图片特征,这导致这些方法无法独立的对图片的语意内容和风格的变化进行有效地建模,从而无法很好地对两者进行解耦和合成。

而深度神经网络之所以可以在众多领域中取得惊人效果,正是由于其可以抽取出高层次的信息表征。Prisma所使用的方法之所以能成功,就是很巧妙地利用了深度神经网络抽取高层图片表达的能力,能在几十秒内把一张普通的照片转变成一副极具艺术特色的现代画作或者西方名画风格作品。

奥妙在哪里?

下面将采用论文中的两个示意图完整剖析其中的奥妙。

正如上文所说,风格转换需要对图片的内容和风格进行单独地表示,上图中的分别将源图(风格提供方)和目标图(内容提供方)输入到由多层卷积层和池化层组成的深度神经网络中。对于目标图直接使用卷积的响应在每一层中进行重建,可视化的结果为红色框中的结果,可以看出在低层的重建图像几乎和目标图一致,而越高层网络重建出来的图像的一些细节的像素被丢弃而那些图片高层次的语意内容被保留。而源图计算每一层的卷积的特征图(feature maps)的相关系数来重建出风格的特征表示,从绿色框的可视化结果可以看出,这种抽取风格表示的方式在不同网络层成功提取出不同尺度的风格特征。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180404A0OISO00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券