大家好,这是专栏《计算摄影》的第四篇文章,这一个专栏来自于计算机科学与摄影艺术的交叉学科。今天我们讨论的问题是如何学会做图像增强。

作者&编辑 | 言有三

1 图像美学增强基础

1.1 什么是美学增强

一幅图像要有更好的美感,最基本的要求就是对比度分布合理,饱和度以及色调符合图像主题,本次我们从图像对比度增强和色调增强两个方面来谈论自动地美学增强问题。

图像对比度增强,即增强图像中的有用信息,抑制无用信息,从而改善图像的视觉效果。图像色调增强,即改善图像的色调效果,创造色彩更加丰富以及突出主题的效果。

摄影师,尤其是专业摄影师,基本上都会对拍摄的作品进行后期的图像增强操作,包含亮度、清晰度、饱和度、对比度、色调甚至是内容的调整操作。

上图中展示了 6 组对比图,其中每组的左面是原图,右面是经过图像增强的图,可以看出明显增加了图像的美感。

1.2 美学增强常见数据集

为了研究自动图像增强问题,需要建立相关的数据集,目前有的数据集通过在同样的场景下采用不同的参数配置进行拍摄,适合于静态场景。有的则采用了不同的设备在同一个时间进行拍摄,需要进行视角的匹配,下面我们对其中使用较多的两个数据集进行介绍。

(1) MIT-Adobe FiveK 数据集[1]

这个数据集发布于 2011 年,包含 5000 张单反相机拍摄的 RAW 格式的照片,每一张照片都被 5 个经验丰富的摄影师使用Adobe Lightroom工具进行后期调整,调整内容主要是针对色调。因为该数据集包含了原图和 5 张后期图的成对数据,而且有同一个摄影师的多种后期修图图片,因此它可以被用于某一后期风格的学习。

(2) DPED 数据集[2]

这个数据集发布于 2018 年,采用了 3 个不同的手机和一个数码相机进行拍摄然后进行图片匹配和裁剪。三个手机分别是iPhone 3GS、BlackBerry Passport和Sony Xperia Z,相机则是 Canon 70D DSLR。该数据集覆盖了白天的各种常见光照和天气情况,采集时间持续3 周,都使用了自动拍摄模式。

因为 4 个设备同时进行图像采集,所拍摄出来的图前期不可能完全对齐,因此需要进行后处理对齐,作者们使用了 SIFT 算法对图像进行对齐,最终成对图之间保证不超过 5 个像素的偏差。

除了上述 2 个数据集,很多研究者在提出算法时都会自己采集相关的数据集,大家可以自己关注相关研究。

2 基于深度学习的图像增强

传统的对比度等增强方法包括伽马变换,直方图均衡,Retinex模型等,对参数敏感,而深度学习模型则可以从数据中进行学习,下面我们简单说说其中的核心算法,可以从两个方向来说。

2.1 端到端预测模型

卷积神经网络模型拥有强大的表达能力,被证明可以直接学会图像里的很多全局和局部的操作,包括图像风格迁移、去雾、上色、增加细节等,因此我们可以按照需要学习的类型,准备好相关的成对数据进行学习,这一类就是端到端的预测模型。

Chen Qifeng 等人[3]使用了一个基本的场景聚合模型来验证上述操作的学习,网络结构示意图就是常见Concext Aggregation Network,简称 CAN),它最初来自于语义分割任务,使用了不同大小的带孔卷积来实现同样大小的卷积核与不同的感受野。

作者们实验了十个常用的图像增强操作。

(1) Rudin-Osher-Fatemi:一种图像复原模型。

(2) TV-L1 image restoration:一种图像复原模型。
(3) L0 smoothing:一种图像平滑模型。
(4) relative total variation:一种通过剥离细节来提取图像结构的操作。

(5) image enhancement by multiscale tone manipulation:一种多尺度进行图像增强。

(6) multiscale detail manipulation based on local Laplacian filtering:基于拉普拉斯的图像编辑操作。

(7) photographic style transfer from a reference image:图像风格迁移操作。

(8) dark-channel dehazing :暗通道去雾操作。
(9) nonlocal dehazing :非局部去雾操作。
(10) pencil drawing :铅笔画风格操作。

所有任务使用的训练数据集都是Adobe MIT 5k,作者们首先用各类方法的官方实现对输入图进行操作,得到成对的训练数据,然后进行有监督的训练。

对于这一类模型,可以从几个方向进行改进,包括:

(1) 使用美学评估模型[4]进行反馈,以改进效果。

(2) 使用 GAN 模型[2]对生成结果的高层感知进行改进。

2.2 基于参数预测的方法

逐像素的回归模型原理简单,但是端到端的方法可解释性不强,容易过拟合,图像增强可以对应到相机中的曝光调整,对比度调整,色调调整等操作,因此研究者们提出了使用深度学习模型直接学习这几种操作的参数幅度,一个代表性的研究如下[5]。

可以看出整个增强过程被分解为一系列的操作,包括曝光度,对比度、色度、伽马校正等调整,因此模型需要搜索一系列的操作对输入图进行调整,每个操作过程对应于强化学习里的一个决策过程,通过对这些决策过程的结果进行惩罚就可以实现训练,其奖励回报就是美学分数。每一步调整的结果可以通过梯度的回传给整个网络学习,从而改变每一步的调整参数。

具体学习过程包含两个策略网络(policy network),一个判别模型,一个价值网络。其中两个策略网络分别将图像映射成某一类操作的概率和幅度,这四个网络都使用了同样的结构,输入图像大小为 64×64,包含四个卷积层和一个全连接层。

总的来说,该相机参数学习模型有以下三个优点。

(1) 首先这是一个端到端的学习各类变换操作幅度的方法,可以处理任意大小的图片。

(2) 使用了强化学习来给出每一步调色所做的操作,这样对图像的处理就不再是一个黑箱,从而方便人们对模型处理过程的理解,还可以参照模型的处理步骤和参数进行后期操作的学习。

(3) 不需要成对的图像数据来指导模型的学习,因为学习的都是成熟的图像处理操作的幅度,所以基本上不会产生非自然的瑕疵。

另外,还可以直接学习一个综合性质的滤波操作,如深度双边滤波模型[6]。

基于参数学习的模型主要问题是计算效率太低,模型训练过程复杂。

[1] Bychkovsky V, Paris S, Chan E, et al. Learning photographic global tonal adjustment with a database of input/output image pairs[C]//CVPR 2011. IEEE, 2011: 97-104.

[2] Ignatov A, Kobyshev N, Timofte R, et al. DSLR-quality photos on mobile devices with deep convolutional networks[C]//Proceedings of the IEEE International Conference on DSLR-quality photos on mobileComputer Vision. 2017: 3277-3285.

[3] Chen Q, Xu J, Koltun V. Fast image processing with fully-convolutional networks[C]//Proceedings of the IEEE International Conference on Computer Vision. 2017: 2497-2506.

[4] Talebi H, Milanfar P. Learned perceptual image enhancement[C]//2018 IEEE International Conference on Computational Photography (ICCP). IEEE, 2018: 1-13.

[5] Hu Y, He H, Xu C, et al. Exposure: A white-box photo post-processing framework[J]. ACM Transactions on Graphics (TOG), 2018, 37(2): 26.

[6] Gharbi M, Chen J, Barron J T, et al. Deep bilateral learning for real-timeimage enhancement[J]. ACM Transactions on Graphics (TOG), 2017, 36(4): 118.

总结

与美学评估问题相似,图像增强是一个比较主观的问题,没有一对一的标准答案,甚至因为人群的审美而产生非常大的差异,这是一个目前还没有取得非常好的工业级应用的领域。

如何长期进行学习交流

图像质量小组需要掌握与图像质量相关的内容,学习的东西包括8大方向:图像质量评价,图像构图分析,图像降噪,图像对比度增强,图像去模糊与超分辨,图像风格化,图像深度估计,图像修复。了解详细请阅读以下文章:

「通知」如何让你的2020年秋招CV项目经历更加硬核?有三秋季划

如何对计算属性进行修改_「计算摄影」计算机如何学会自动地进行图像美学增强?...相关推荐

  1. 【计算摄影】计算机如何学会自动地进行图像美学增强?

    作者&编辑 | 言有三 1 图像美学增强基础 1.1 什么是美学增强 一幅图像要有更好的美感,最基本的要求就是对比度分布合理,饱和度以及色调符合图像主题,本次我们从图像对比度增强和色调增强两个 ...

  2. 【计算摄影】计算机如何学会自动裁剪图片(自动构图)?

    大家好,这是专栏<计算摄影>的第三篇文章,这一个专栏来自于计算机科学与摄影艺术的交叉学科.今天我们讨论的问题是图像的自动裁剪/自动构图问题. 作者&编辑 | 言有三 1 自动构图基 ...

  3. vue修改计算属性的值_「Vue学习记录五」计算属性和侦听器

    1: 计算属性: (内置缓存机制) 当更改age的时候, fullName 函数不执行: 当更改fristName的时候, fullName 函数才执行 <div id = "app& ...

  4. 天津大学计算机专硕_「20考研」计算机考研专业课变动汇总

    1. 天津大学 902 软件工程科目取消,报考 902 软件工程学硕和专硕的同学都要改考 901 数据结构与程序设计. 2. 厦门大学 厦门大学发公示通知说要撤销软件工程硕士学位授权一级学科点,据说还 ...

  5. 怎么通过id渲染页面_「快页面」动态配置化页面渲染器原理介绍

    引言 「快页面」是知乎内部一个快速搭建后台管理页面的平台,使用者仅用半小时即可将一个常规复杂度的后台页面开发完成. 「快页面」平台的基石是它的「渲染器」,一个能将 JSON 配置渲染成页面的 Reac ...

  6. Vue计算属性实现成绩单,Vue计算属性

    Vue计算属性实现成绩单 代码如下: <!DOCTYPE html> <html><head><meta charset="utf-8"& ...

  7. 师范专业是考计算机二级vpf,「温馨提醒」计算机二级考试VFP上机操作指南

    「温馨提醒」计算机二级考试VFP上机操作指南 同学们在准备计算机二级考试时,除了要对自己所学知识进行查漏补缺外,还要掌握一定的上机考试技巧,下面百分网小编为大家搜索整理了关于计算机二级考试VFP上机操 ...

  8. vue修改计算属性的值_八.Vue计算属性

    Vue计算属性 前言 我们要做的是springboot和vue.js所做的前后端分离的hr项目,所以从来没接触到vue的小伙伴,可以这篇文章 学Vue入门,这一篇就够了 模板内的表达式非常便利,但是设 ...

  9. go 修改结构体方法_「GCTT 出品」Go 系列教程——26. 结构体取代类

    Go语言中文网,致力于每日分享编码.开源等知识,欢迎关注我,会有意想不到的收获! Go 支持面向对象吗? Go 并不是完全面向对象的编程语言.Go 官网的 FAQ 回答了 Go 是否是面向对象语言,摘 ...

最新文章

  1. 递归遍历所有文件夹名称
  2. opus android编译,Mac系统opus Android编译集成
  3. java set 包含_关于Java的Set的集合是否包括问题,如下为什么不包括?
  4. java页面渲染_史上最详细的页面渲染机制
  5. 戴尔服务器哪1顶型号好,戴尔PowerEdge R730xd新一代服务器评测
  6. 关于data.table中i, j, by都为数字的理解
  7. ROST情感分析的语法规则_《自然语言处理入门》12.依存句法分析--提取用户评论...
  8. SAO代码解析补充(二)
  9. 【PTA】 统计素数并求和
  10. SharePoint下载服务器资源
  11. 这五款小众软件你肯定不知道
  12. 阿里云大数据ACP认证学习笔记
  13. 不可混为一谈 说说数字机顶盒与网络机顶盒
  14. 卸载wps后桌面上的office文件图标变成了白色(亲测有效)
  15. 系统集成项目管理|十大管理
  16. 钕铁硼产品磁性能相对检测原理与技术
  17. 裴波那契数列的递归实现与非递归实现
  18. Frida hook零基础教程
  19. 51单片机的出租车计价器设计
  20. 电子商务 深度利用B2B网站

热门文章

  1. 哈希表及哈希冲突解决办法
  2. LF AI Day中国站火热报名中
  3. readlink(/proc/self/exe, buf, count - 1);
  4. 判断目录是否存在并创建mkdir
  5. 分支管理---Feature分支
  6. split分片主要源码解析
  7. leetcode 278. 第一个错误的版本(Java版)
  8. 【MIPS汇编】ADDI,ADDIU,ADD,ADDU的区别、有符号无符号的谬误
  9. 牛客网_PAT乙级_1015反转链表 (25)【没做出来】
  10. JS中 window.location.search的作用