与神经网络相比,你对P图一无所知

栗子 发自 凹非寺 量子位 出品 | 公众号 QbitAI

“大神,可以帮我把羊蜜街拍P成我的脸么?哦对,不光是这样,还要像羊蜜哟…”

从一张照片里取出某个元素,再把它神不知鬼不觉地混入另一张图片里,似乎是一件很有难度的事情。毕竟,分分钟就会产生魔性的拼贴效果,不管是手动操作,还是AI的计算。

而如果“另一张图片”是指人类的画作,就更加不容易了。

不过,康奈尔大学和啊逗比的大神们生产了一种算法,能把各种物体融合进画作里,且毫无PS痕迹。

大量艺术家的心血,甚至艺术家自己,都惨遭它的毒手:

要啥自行车

蒙娜憨莎·豆

毕加炳

给你买了个biao

樊 · 蔡康永 · 高

是什么算法,如此丧心病狂?

记住这个名字:Deep Painterly Harmonization。

在康奈尔和啊逗比的P图大神们看来,现存的全局风格化算法都太弱了。

它们确实能搞定整张照片的风格迁移。把画作和被画传染的图片摆在一起,可能不会看出太大的问题。

介绍一下,这是我的新装备

但要像上图这样,把美队的盾牌融合到意大利画家Onofrio Bramante的作品里,微小的差异看上去就会很明显。全局风格迁移的表现也比较谦虚 (如左三) 。

无论是去除边界线、匹配色彩还是细化质地,都很难让粘贴部分拥有画作的原始风格。

我们不一样

于是,这群大神觉得,他们需要搭建局部风格化的神经网络。

大的方略就是,把画作相关部分 (神经元响应) 的特征统计,迁移到外来物体的对应位置上——关键在于选择,哪些东西才是应该迁移的。

Gatys有只几何猫

小伙伴们以Gatys团队发表的风格迁移技术为基础,用VGG搭建了一个two-pass算法,还额外引入了一些风格重建损失 (Reconstruction Losses) 来优化结果。

来来来,算法详情要一步一步看。

第一步 (First Pass):粗略图像协调 (单一尺度)

大致调整外来元素的色彩和质地,和画中语义相似的部分对应。要在神经网络的每一层,分别找到相邻最近的神经补丁,和粘贴部分的神经元响应匹配起来。

卷福丽莎,迷人的眼神

退一步,海阔凭鱼跃。先不需要太纠缠图像的质量,因为一定程度上牺牲品质,团队就可以设计出一个强大的算法,适应多种多样的画风。

用Gram矩阵来计算风格重建损失,便可以将粗略协调的版本优化一下。

不计风格损失的后果

这里得到的是一个中间产物,不过风格已经和原画作很相似了。

第二步 (Second Pass):高品质细化 (多尺度)

有了第一步的基础,此时开始对图像质量提出严格要求,便是顺理成章。

这一步,先要在一个负责捕捉质地属性的中间层集中火力,生成一个对应关系图 (correspondence map) ,来剔除空间异常值 (spatial outliers)。

你沉在,我昏黄的画布里

然后,对拥有空间一致性的对应图进行上采样 (upsample) ,进入神经网络更加精细的层次里。这样可以保证,对每一个输出位置来说,所有尺度上的神经元响应,都来自画中的同一位置。

如此一来,画面便能拥有更加连贯的质感,看上去自然许多。

后处理

经过Two-Pass算法的洗礼,中大尺度上看,图像质量几乎无懈可击;但在精细尺度上,可能还有不够准确的情况存在。也就是说,可远观而不可__焉 (填空题:10分)。

于是,后处理也要两步走:

色度降噪

高频失真的现象,主要作用在色度通道,对亮度并没有太大影响。

发现了这一特点,团队将图像转换成CIELAB色彩空间;再在Guided Filter里,以亮度通道作为向导,来过滤ab色度通道。

工作还是生活,这是一个问题

这个方法有效改善了高频色彩失真的情况,但有可能捅出更大的漏洞。然后…

补丁合成

就有了第二步,来确保输出的每个补丁都出现在画面中。用PatchMatch给每一个补丁找到相似的补丁。再为所有画风重叠的补丁取平均值,以此重构output,就可以保证画面里不要生出新的内容。

不过,这里的副作用是会柔化细节,于是又要请出Guided Filter把图像分成底层 (Base Layer) 和细节层 (Detail Layer) ,来削弱柔化效果。

画风虐我千百遍,我,选择狗带

局部迁移疗效显著

实验结果表明,转移一些区域特征统计的集合,要比转移很多独立位置的特征统计,效果要好得多。神经网络反应的对应关系图帮了大忙。

局部风格迁移的算法,保障了统计学意义上的空间一致性和跨尺度一致性。得到天衣无缝的拼图质量,这两个“一致性”功绩斐然。

金拱门的八度人生

以后,拼图少年们大概可以抛弃全局风格迁移算法了。放眼局部,你的脑洞可以绽放得惨无人道。

不过,比起难以察觉的入侵,我还是醉心于这种360度全死角的魔性p图。

万能的拷贝,万能的粘贴

更酸爽的论文传送门:

http://www.cs.cornell.edu/~fujun/files/painting-arxiv18/deeppainting.pdf

这篇论文的作者包括:Fujun Luan(栾福军)、Sylvain Paris、Eli Shechtman、Kavita Bala等人。他们还把代码开源了,还能看到更多触目惊心的例子:

https://github.com/luanfujun/deep-painterly-harmonization

顺便提一下,论文一作栾福军,2015年本科毕业于清华,目前在康纳尔大学攻读博士学位。曾在Facebook、Face++、Adobe等公司实习。

艺术照小哥哥一直在钻研视觉的玄妙。

比方说曾经被誉为“下一代PS”的Deep Photo Style Transfer,也是栾福军的研究成果。Deep Photo能实现像素级的风格迁移。

也是非常酷炫。

原文发布于微信公众号 - 量子位(QbitAI)

原文发表时间:2018-04-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯云数据处理团队的专栏

万象优图:图片成本优化的瑞士军刀

引言不知道每天上下班的你坐在地铁公交上会刷哪些app呢?也许正为周末和朋友去哪里聚会而挑选餐厅;也许刷着朋友圈看看朋友们有哪些新动态;也许在Ins上浏览着大V博...

45710
来自专栏CreateAMind

生成模型压缩图片

传统的图像和视频压缩算法要依赖手动调整的编码器/解码器对(多媒体数字信号编解码器,codec),缺乏适应性,对被压缩的数据也不可知。在这篇论文中,我们描述了生成...

12220
来自专栏思影科技

基于局部脑血流量和工作记忆表现预测2年内血压变化

贝叶斯推荐你关注思影科技 来自美国匹兹堡大学精神病与心理学部的J.Richard Jennings等人在Hypertension杂志上发文指出,基于ASL成像的...

34060
来自专栏数说工作室

训练集是题库,测试集就是高考!| 不能更简单通俗的机器学习名词解释

1. train? valid? or test? 机器学习最明显的一个特点是需要大量的数据。特别对监督学习来说,就是需要大量的带标签数据(labeled da...

48480
来自专栏AI科技评论

干货 | 不能更通俗易懂的机器学习名词解释

train? valid? or test? 机器学习最明显的一个特点是需要大量的数据。特别对监督学习来说,就是需要大量的带标签数据(labeled dat...

40070
来自专栏大数据挖掘DT机器学习

【趣味】数据挖掘(5)—分房与分类

中老年回顾歌曲集中有这样一首歌:月亮在白莲花般的云朵里穿行,晚风吹来一阵阵欢乐的歌声,我们坐在高高的谷堆旁边,听妈妈讲那过去的事情……   歌词美,旋律也美...

31730
来自专栏人工智能

Github近期最有趣的10款机器学习开源项目

来源:PaperWeekly 本文共900字,建议阅读6分钟。 本文为你罗列近期Github上十大有趣的机器学习开源项目。 -01- Face Recognit...

40460
来自专栏听雨堂

地图校正方法心得

如果想校正两张比例,坐标系,时间都不同的电子地图,简直太难了,大概辛苦了一周时间,才有点心得: 1、选择公共点时,河流、公路、高程、等高线均不能选,大的固定...

22050
来自专栏新智元

重磅 | 经典教材 R. Sutton《增强学习导论》最新版(548PDF)

45920
来自专栏专知

微软研究院Jianfeng Gao:基于深度学习的自然语言处理导论(课程,附PPT下载链接)

【导读】深度学习近几年在各领域的发展可谓是如火如荼,基于深度学习的自然语言处理方法也大受关注。本文介绍微软研究院Jianfeng Gao的一个暑期课程,课程主要...

57550

扫码关注云+社区

领取腾讯云代金券