深度学习在摄影技术中的应用与发展


本文来自作者 言有三  GitChat 上分享 「深度学习在摄影技术中的应用与发展」,阅读原文查看交流实录。

文末高能

编辑 | 哈比

我是一个 AI 行业的从业者,也是一个摄影爱好者。

之前我在《言有三工作室》公众号分享过一篇文章,《干掉柯洁的下一步,阿尔法狗创始人又要毁掉这个行业(深度学习)》,感兴趣可以去看看。

其中主要说的就是,DeepMind 的研究,已经让算法掌握了自动学习到构图,滤镜的能力。在这样的背景下,我决定认真从头开始分享分享计算机算法,尤其是最新的深度学习技术在其中发挥的作用。

本次的分享面向的对象是普通大众,本着稍求甚解的原则,我接下来会在尽量照顾受众的同时,也说说技术。

1. 我们想让计算机做什么

摄影,说的粗浅一点,就是拍照。摄影本身并不是一个技术很高的活,稍加训练,就能成为合格的摄影师。

当然,摄影本身也可以是一门艺术,好的作品往往会带入情绪等等。这是一个充满抽象与主观因素的领域。但我们不能因此陷在这个点上,不然下面就没法说了。

好的照片,让大众心情愉悦,欣赏点赞的照片,是有共性的,而计算机玩摄影,就是要解决这个问题,怎么学习到摄影师和大众的审美。

所以下面正式抛出关键词:photo aesthetics。

2. 要研究的到底是一个什么样的问题

所谓 photo aesthetics,即计算机美学,这是计算机视觉的一个研究方向。

它研究通过计算机来学会人的审美,狭义而简单的来说,就是判断一张图片是高质量的,还是低质量的,也就是好与坏,数学上这是一个 2 分类问题。

很多早期的研究,以及相应的数据库 CUHK【1】,CUHKPQ【2】的标注,都是为这个而服务。

从下图相关论文的数量趋势来看,现在是一个很活跃的领域。从研究的现状来看,这也是一个远远没有饱和的区域。

上面说了,最简单也是最直观最早期的研究,就是分辨一张图是好,还是不好,是个 2 分类问题。

但是 2 分类问题有它的两个重大的局限性:

  1. 美学不是一个很严谨的数学问题,而是有很强的主观性,有很多的图,介于好图与非好图之间,难以 2 分类,分界面实在不清晰。这导致问题本身定义不明确,数据的标注也很困难。

  2. 如果只是一直做 2 分类问题研究,那很多的应用无法实现,直接点的如图像检索排名,间接点的如构图推荐,自适应滤镜。

演变到后来,先是升级到了回归问题,不仅分好坏,还要打个等级分。

什么意思呢?每一个样本的标注不再是 2 分类,不仅仅是包含好图与坏图的标注,而是有了一个量化的分数,比如 AVA 数据集【3】分数的标注从 1 到 10。

研究就变成了如何回归出其标注的分数,最后给出每张图片的平均分数。从应用层面上讲,主要包括了图像检索,自动构图,智能滤镜,甚至是直接创作。

以上,就是通常意义下的 photo aesthetics 包含的内容,核心思想就是学习分辨与创作好图。

3. photo aesthetics 的主要研究思路

在说具体方法和应用之前,还是先说说我们的研究思路。从技术的突破来说,以深度学习为界限,可以从传统方法和深度学习方法来说。

不过对于大多数问题和应用这两者最大的区别就是:前者是手动设计特征,后者是自动学习特征。

所以,这里不从传统方法和深度学习方法的维度来说,而是从研究问题的演变发展上说。

(1) 二分类问题

1 说了,最开始的时候,美学问题仅仅是被当做一个 2 分类问题。

早期的数据集 CUHK【1】,CUHKPQ【2】,都只包含 2 分类的标注,也就是数据集中的图片被人为分为了质量高与低的图。

如下图 (a) 是质量高的,(b) 是质量低的,没有疑问。

【2】可以认为是在【1】的基础上问题的延续,它弥补了【1】中的巨大不足,就是不再对所有图片一视同仁,而是不同类型的照片区分对待。


上图是一个示例,在研究过程中对不同的类别,开始采用不同的特征,考虑了图像的多样性 (diversity)。这是必须的,因为摄影中对待不同类型的照片,就是必须用不同的表现手法。

比如人像摄影中,尤其是近照,需要控制好光照,使用大光圈。而风景照中最需要的是好的构图与丰富的色彩表达。

2 分类问题研究方法的进步,就是不断利用新的深度学习模型去提取特征,从 alexnet【4】,到 googlenet【5】到 resnet【6】等的尝试,以后专题介绍。

(2) 回归问题

由于 2 分类的局限性,自然而然的就演变成了回归问题。这个时候也就出现了新的供我们使用的数据库,AVA【3】。

这是一个很大的数据库,包括 250000 张照片。每一张照片,都有一个评分从 1~10 分。同时还有语义级别和照片风格的标注,以后我们详说。

比较新的研究有【7】。

相比于 2 分类问题,其实回归问题也没有太多新的东西,从数学上来说,无非就是输出维度变了,loss function 变了。

不过在学习具体分数值的过程中,有些研究更进一步,预测了分数的分布。也就是不仅仅预测了图片的质量分数,还预测了它的分数概率图,比如【8】。

(3) 相对美学问题

这个的出发点,是从人的主观上进行考虑。对于人来说,容易判断的是一张图片的相对好坏,而不是绝对分数。同时又由于更可靠稳定的有打分标注的数据集的获取成本之高,催生了一些研究。

就是在学习的过程中,没有一个绝对的分数来指导你。【8】,【9】都是相关研究。

从训练上来看,这一般输入的训练是多个图像,可能是两个图像,也可能是多个图像,一起丢进网络去学习哪一个更好。

下面是一个结果展示,右边的比左边的质量高。相对美学,在图像检索和图像增强中是有很大的作用的。

(4) 多任务学习问题

最简单粗暴的方法,就是不管是什么图像,都直接提特征,分类也好,回归也好。但是,显然这是不可能很好的解决问题的。

摄影美学是讲究因材施教的,不同类型的图像,审美标准完全不同。

那么,直接对所有的图片,采用同样的方法学习,是不通,所以就有方法,或利用图像 style,semantic 信息进行弱监督,或直接将 style 和 score,semantic 一起学【10】。

至于怎么做,按住不表,下回再论。

4. 传统的方法怎么研究

在深度学习还没有遍地开发,在神经网络还处于低谷时期,有没有人在玩计算机摄影?当然有。

他们是怎么玩的?传统方法必然要手动设计大量特征来研究计算机美学这个问题。那主要都有什么特征呢?

主要分为底层的图像特征和与摄影有关的特征:

  • 底层的图像特征,包括 Subject-Background Contrast,Color Distribution Feature,Hue harmanic,Contrast 和 brightness,clearness and the colorfulness,由于篇幅限制,这里就不每一都讲述具体细节,先,以及通用的图像特征 SIFI,Hog,Bag- of-Visual-Words (BOV) 等。

  • 与摄影有关的特征包括,the rule of thirds,the Low Depth of Field Indicators,exposure 等。

每一个,我都举一个例子。

4.1 Hue harmanic

这是从色调的特性上来分析一张图是不是好图。一张好的静物摄影,色调一般会比较单一,不会五颜六色的各种颜色都杂糅在一起。

如下面的图【1】,单调干净的色调。

好的色调和配色,才会有好的视觉感受,也会呈现出和谐。

文【2】是文【1】的后续研究,补充了摄影中的另 2 个原理,即 90 color scheme 和 complementary color scheme。

这个是设计学里的经典配色方案,从下面的色调轮中看,具有视觉美感的主色调搭配方案,常常是区间相隔 180 度,或者 90 度左右。

具体计算这个 hue 的复杂度,就是要把图像转换到 HSV 空间,得到 H 通道。然后将其等分成多个 bins,设定阈值,来计算色调的种类。

4.2 The rule of thirds

玩摄影的人,一定对三分构图法非常熟悉。三分构图法则,是非常安全而普遍的摄影准则。同样,在我的 摄影公众号《言有三工作室》 中也仔细谈过这个问题,感兴趣可以去读。

文【3】通过将图像分为 9 宫格,然后计算每一个宫格的色调,来评判图像主体是否处于三分的位置。

更具体以后公众号再详细说。

5. 基于深度学习的方法

从 2000 左右算起,传统的方法也研究了 10 年左右,但是仅仅只限于对照片进行分类,打打分【1-3】,离实际的应用,还是有很大的差距。

深度学习技术的发展,从各方面都提升了这个领域的发展,下面从有监督学习和无监督学习两个方面来说说。

5.1 有监督学习

上面第 3 章其实也提过了,由于目前的美学数据集都比较小,所以研究离不开迁移学习的思路。

也就是从其他任务训练好的模型中提取特征,然后将该特征,在现有的美学数据集上,换上美学评估的新 loss 或者依旧采用经典分类和回归问题中的 loss 函数,来 finetune 网络。

那么网络的时候,自然而然地遵循着从 alexnet【4】,到 googlenet【5】到 resnet【6】的路线。

文章【4】,是比较早期的应用,采用了一个双通道的网络,是不是很 alexnet?

分别输入 global view 和 local view。local view 是多个 random crop,可以学习到多个局部响应。

从上面的网络结构和输入你就可以想到,这基本上也就是拿来做做分类了。实际上也是如此,上文就是拿来做二分类,以及图像风格的分类。

用了更复杂的 googlenet 的【5】,也一样在研究二分类问题。更进一步的是,他们通过观察 featuremap 的响应特点,来试图总结高质量图和低质量图的规律,并认为前者会有更多的激活。

在后来问题从分类问题,转换为回归问题之后,文【6】就利用上了最新的 resnet,一股脑研究了分数的分布特性。

网络结构本身,没什么变化。就是几个卷积 + 全连接层,但是因为为了适应不同的输入尺度,消除由于 resize,crop 等造成的精度损失,采用了自适应的 spp layer(adaptive spatial pyramid pooling ),同时添加了语义分类信息作为弱监督,也提出了 huber loss,与通用的回归问题 loss,euclidnean loss 做了比较。

取得了当下最好的结果,AVA 上分类超过了 80%,这也是当下 state-of-out 的水平了。

总之,有监督方法,集中在利用已有的经典网络,采用不失真的多尺度输入,添加语义等信息作为监督,设计新的 loss 上努力。可以说,比较成熟,翻不起大江大浪了。

5.2 无监督学习

无监督学习的典型代表,就是 GAN。Lecun 说的当下算起十年间最值得研究的领域。GAN 从超分辨率,到风格化,其实早就杀进了摄影相关的领域。

目前,比较活跃的研究,集中在智能调整,或者说智能滤镜这一块。因为美学是个比较抽象的问题,这一块是依赖于标注的有监督学习的软肋。

汤晓鸥他们最新的研究,EnhanceGAN,也成功地学习到了颜色,对比度等调整方法,并能够同时完成图像增强与调整构图的目的。

但最值得兴奋的是,它不需要成对的标注图像了(这是通过 gan,和一批有着 2 分类标签的高质量图和低质量图来实现的)。

大的可靠的数据集太难得了,尤其是成对的后期处理图和原图,获取成本非常之高,所以利用 GAN 来学习到最优的后期,是很有价值的。cycle-gan【19】就更像是一个有点调皮的应用,

从下面它论文首页的图,我们就能够看出来。它可以实现风格化的转化,冬天和夏天风格的转化,甚至马和斑马的转换。你完全可以大开脑洞,想想还可以有什么应用。

最重要的是,它依旧不需要成对的图像来应用,也就是不需要提供一对一对的原图和处理后的后期图。

我相信,这就是未来,毕竟还有增强学习呢【21】。更多地细节,以后我们慢慢在讨论。

6. 基于深度学习的应用

总的来说,随着深度学习技术的发展,很多应用可以落地了,主要包含以下几个大方向。

(1) 图像检索【20】

我们在搜索引擎中搜索图片时,自然是希望能够尽量返回质量高的图,恨不得是高清原图。但是目前的搜索引擎并不能做到。

因为,目前的都是基于 tag 做的检索,而不是图像本身的质量。

下面就在百度中搜了一个学校美照,出来的效果不怎么样。学校没得到体现,人像很多也是普普通通的大头照,从摄影师的角度来看,真的很一般。

当然,你也可以去搜索更多的关键词,反正我在使用过程中常常不满意。Google 图片质量比百度高,但是也还有很大的发展空间。

(2) 图像自动构图

自动裁剪这个,自打用上 iphone 起,它的照片管理工具就自带这个功能了,但是其他好用的 app,我还没有发现。这是个什么问题,专业点的说法,就是摄影构图。

它做的就是去除不必要的元素,合理安排画面中的元素分布。每一个摄影师拍完照做后期时,第一步肯定就是做图像裁剪。

就算是最后没有裁剪,第一步也会看是不是需要裁剪!

为什么?

因为你拍照的时候,很多时候来不及细细的去构图,只有在后期认真想的时候,才会去精细地调整。

据我体验,目前 iphone 照片管理软件的自动裁剪功能,主要还是对人像管用,下面给大家看个例子就知道了。干脆把两张前后对比图拿过来大家瞧瞧,想想为什么要这么裁剪?

自动裁剪前与自动裁剪后:

可以看出,去除了更多的干扰,使画面更加平衡与和谐。

关于更多的构图摄影知识,请关注我另一个摄影公众号《言有三工作室》,里面有大量的教程可以学习体验。

至于构图的一些研究,可以参考【11】【12】,下回说细节。

(3) 自适应滤镜

现在就没有一个 app 能够自动推荐滤镜,后期很多的时候是很繁琐的。对于菜鸟来说,只能去各种尝试已有的滤镜。

对于高手来说,需要很多时间来积累经验,也需要时间去选择更好的方案。费时费力,还不一定能达到最好的效果,所以,我们其实都很期待出现一个 app,能够自动帮我们选择一个好的风格滤镜。

可惜,现在比较优秀的后期 app,如 snapseed,泼辣修图,也仅仅是能够对图像的对比度,亮度等自适应地做些调整。

关于现有的发展,更详细的介绍,在我的摄影公众号《言有三工作室》的文章 《Apple 和 Google 他们为小白们的修图大业做了什么?》 中有详细的说明,大家有兴趣可以自行前往阅读。

现在比较好的研究,也有一些。像名字取得比较吓人的【13】,号称 end-to-end 可以把手机照片提升至单反画质,不过实际效果看来,主要是减少了阴影,总体上学习到了使图像变得更加通透。

缺点是对比度经常放的太高,同时因为采用了 GAN,放大了噪声。

这种事当然不能少了汤晓鸥他们团队,EnhanceGAN 算是很新的应用了【14】,也成功地学习到了颜色,对比度等调整方法,不是 end-to-end 的方法,而是 image-crop 与 enhancement 交叉训练。

最大的优点是不需要成对的标注图像了(这是通过 gan,和一批有着 2 分类标签的高质量图和低质量图来实现的)。

早期的方法【15】是需要成对的标注图像,成本太高,所以数据集不可能很大。以后不需要成对图像做训练的方法,必将成为主流。

(4) 风格化

这个,其实已经踏进艺术的创作,而不仅仅是摄影的范畴了。行内人士可能还记得《image style transfer using convolutional neural networks》【16】这篇文章,后来催生了 prisma,当时那个很火的滤镜。

整个的流程就如同下面这样,一张原图,一个风格,最后做融合。

不过,没过多久,就退烧了。毕竟,那样玩图太 “高级”,不是大众刚需,也就没见人玩了。但是,并不是说他就不重要的了。

像 pixtopix【17】这样的文章出来之后,风格化仍然有很大的市场。比如黑白图像上色,比如图像风格转化(夏天冬天风格转化)【18】,甚至做得极端点,cycle-gan【19】这样的,不需要成对地标注,把斑马和马相互转换的有意思的研究。

未来,还大有可为!

7. 深度学习未来发展方向

总的来说,包含以下几个大方向;

难点
  1. 怎么利用数学的方法去建模内部的美学规则。

  2. 怎样自适应调整不同的图片之间的美学差异。

  3. 如何准确判断一张图采用的技术。

  4. 怎样获取一个标注详细的大数据库。

热点
  1. 网络结构设计相关问题,如多尺度多 patch。

  2. 图片风格,语义信息的应用。

  3. 怎么自动获取数据的标注。

  4. 最新技术在其中的应用,GAN。

这一次,只是一个入门介绍,后续,敬请期待!

作者简介:言有三,原 360 AI 研究院工程师,一个摄影爱好者。

想了解更多的细节,就来我计算机视觉公众号《视若观火》,以及摄影公众号《言有三工作室》吧,同时头条号《言有三工作室》也会有同步的内容。当然,摄影平台 500px 和图虫,更是天天更新噢。

  1. Y. Ke, X. Tang, and F. Jing. The design of high-level features for photo quality assessment. In CVPR, 2006. 1, 3, 6

  2. W. Luo, X. Wang, and X. Tang. Content-based photo quality assessment. In ICCV, 2011. 1, 3, 6, 7

  3. Perronnin F, Marchesotti L, Murray N. AVA: A large-scale database for aesthetic visual analysis[C]// IEEE Conference on Computer Vision and Pattern Recognition. IEEE Computer Society, 2012:2408-2415.

  4. Lu X, Lin Z, Jin H, et al. RAPID: Rating Pictorial Aesthetics using Deep Learning[J]. IEEE Transactions on Multimedia, 2015, 17(11):2021-2034.

  5. Jin X, Wu L, He Z, et al. Efficient Deep Aesthetic Image Classification using Connected Local and Global Features[J]. 2017:1-6.

  6. Murray N, Gordo A. A deep architecture for unified aesthetic prediction[J]. 2017.

  7. Malu G, Bapi R S, Indurkhya B. Learning Photography Aesthetics with Deep CNNs[J]. 2017.

  8. PKong S, Shen X, Lin Z, et al. Photo Aesthetics Ranking Network with Attributes and Content Adaptation[J]. 2016:662-679.

  9. Chandakkar P S, Gattupalli V, Li B. A Computational Approach to Relative Aesthetics[J]. 2017.

  10. Kao Y, He R, Huang K. Deep Aesthetic Quality Assessment with Semantic Information[J]. IEEE Transactions on Image Processing A Publication of the IEEE Signal Processing Society, 2017, 26(3):1482.

  11. Chen Y L, Huang T W, Chang K H, et al. Quantitative Analysis of Automatic Image Cropping Algorithms: A Dataset and Comparative Study[J]. 2017:226-234.

  12. Wang W, Shen J. Deep Cropping via Attention Box Prediction and Aesthetics Assessment[J]. 2017.

  13. Ignatov A, Kobyshev N, Timofte R, et al. DSLR-Quality Photos on Mobile Devices with Deep Convolutional Networks[J]. 2017.

  14. Deng Y, Chen C L, Tang X. Aesthetic-Driven Image Enhancement by Adversarial Learning[J]. 2017.

  15. Yan Z, Zhang H, Paris S, et al. Automatic Photo Adjustment Using Deep Neural Networks[J]. Acm Transactions on Graphics, 2016, 35(2):11.

  16. Gatys L A, Ecker A S, Bethge M. Image Style Transfer Using Convolutional Neural Networks[C]// Computer Vision and Pattern Recognition. IEEE, 2016:2414-2423.

  17. Isola P, Zhu J Y, Zhou T, et al. Image-to-Image Translation with Conditional Adversarial Networks[J]. 2016.

  18. Luan F, Paris S, Shechtman E, et al. Deep Photo Style Transfer[J]. 2017.

  19. Zhu J Y, Park T, Isola P, et al. Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks[J]. 2017.

  20. Baraldi L, Grana C, Cucchiara R. Scene-driven Retrieval in Edited Videos using Aesthetic and Semantic Deep Features[J]. 2016:23-29.

  21. Li D, Wu H, Zhang J, et al. A2-RL: Aesthetics Aware Reinforcement Learning for Automatic Image Cropping[J]. 2017.

近期热文

这样做,你的面试成功率将达到 90%

如何用 TensorFlow 让一切看起来更美?

Web 安全:前端攻击 XSS 深入解析

300万粉丝,全国最大的线上抽奖平台,深度解析

高可用、高性能? 接口设计的 16 个原则


免费福利

「阅读原文」看交流实录,你想知道的都在这里

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值