论文阅读记录: Automatic Image Colorization sig16

Posted MingChaoSun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了论文阅读记录: Automatic Image Colorization sig16相关的知识,希望对你有一定的参考价值。

sig论文阅读记录

Let there be Color!: Joint End-to-end Learning of Global and Local Image Priorsfor Automatic Image Colorization with Simultaneous Classification ( siggraph 2016 )

论文简介

论文主页:http://hi.cs.waseda.ac.jp/~iizuka/projects/colorization/en/

作者是来自Waseda University(早稻田大学)的 Satoshi Iizuka 、 Edgar Simo-Serra 、 Hiroshi Ishikawa

这篇sig paper主要是基于深度学习做Colorization的,相关的工作也有不少,使用CNN的也有几篇论文,但是这篇Paper的效果是非常出众的,从figure1展示的效果来看,从Gray Image还原的Color Image 效果十分惊艳。

Figure1:

这里写图片描述

下面我们来大体介绍一下这篇Paper的要点:

Key Point:

  • 首先这篇Paper提出了一种基于全局先验(global priors)和局部特征(local image features)自动上色方法。使用卷积神经网(CNN),从small image patches中提取局部信息,从整张图像完成全局先验。这整个过程是端对端学习的(end-to-end learning),不需要预处理和后期处理。

  • 传统的Colorization算法需要用户交互,图割等手段,而这篇Paper基于深度学习数据驱动,可以全自动的上色。不过关于这一点,在我测试了一些结果之后,我认为如果在自动生成的基础上再加上交互,实用性会大大加强。

  • Paper提出的方法可以对任何分辨率的图像上色,这是和大部分基于CNN的方法所不同的,这当然和网络结构有关,后面会细说。

  • Paper提出的方法可以做到基于global信息,完成不同图像之间的风格转换,这个后面也会根据网络结构细说。

  • 论文使用了一个大型场景分类的数据集来进行模型的训练,利用数据集中的分类标签更加有效和有鉴别性的进行了全局的学习,比如利用图像的类别信息:室内,室外,白天,夜晚等来引导网络学习图像的语义(semantic context)信息。使得网络可以区分不同场景下的图像,来提高performance。论文也证明了这种方法比单纯使用局部信息要优秀很多。

  • 使用的色彩空间为CIE L* A * B * ,论文后面也说明了使用L* A * B *比 RGB和YUV更接近Ground truth,并且通过这一点,也很巧妙地降低了网络的学习难度,保证了输出的分辨率与输入相同,这里后面会细说。

  • 最终模型的泛华能力是比较强的,不仅适用于现在设备拍到的灰度图像,还适用于几十年前,甚至一个世纪之前拍到的图像。

  • 模型包括4个部分(整个framework由4个sub-network构成):

    • low-level feature network:底层的卷积网络,分为两个网络,两个网络的权重是共享的,用于从图像中提取最基本的特征,并后接不同的网络。

    • mid-level feature network:一个两层conv,感觉为这个专门起个名不大合适。与 global-level feature network相融合得到Fusion Layer。

    • global-level feature network:由几个conv和fc组成的分类网络,对输入的固定大小的图片进行分类,与mid-level feature network共同构成Fusion Layer,让colorization network可以得到 global feature。

    • colorization network:一个反卷积网络,从feature maps还原到target image。

网络结构:

这篇Paper主要是基于卷积神经网络的,网络结构自然是作者精心设计的,为一非循环图,作者把网络结构分成了四个主要部分,low-level feature network,mid-level feature network,global-level feature network,colorization network,通过这个网络完成了我们上述的要点。下面我们来仔细看一下论文作者设计的网络:

这里写图片描述

上图很详细的表现了整个网络结构,我们按照作者划分的几个部分来看一下整个网络的细节:

low-level feature network:

这里写图片描述

一个6层的卷积网络,用于直接从输入图像提取基本特征,激励函数:ReLU。这部分网络分为两个网络,两个网络的权重是共享的。

我认为这里分成两个网络是因为其后面接的网络是不同的,一个网络接用于图像分类的 global-level feature network来完成全局先验,另一个网络接mid-level feature network + colorization network反卷积网络来完成上色。

其中接 global-level feature network的网络是固定大小的(112*112),需要将图像Scaling后输入,之所以固定大小我觉得这是因为这部分网络是是用来确定图像的所处环境(学习semantic context),说白了就是一个图像分类的网络,所以采取了和AlexNet相似的结构,固定大小conv + fc 的结构。

而接 mid-level feature network + colorization network的网络是不固定大小的(H/2 * W/2),这里也很好理解,colorization network的目的在于可以处理任意输入大小的图像,是一个全卷积网络(FCN),所以网络大小取决于原图。

也因为这样的设计,虽然全局特征的计算是使用固定大小的图片,但是通过Fusion Layer将全局特征与局部特征融合,使得可以计算任意分辨率的图像。

这部分网络的下采样并不是采用的max pooling层,而是使用了strides,这种方法要优于max pooling,目前也比较流行。
(use convolution layers with increased strides)

mid-level feature network:

这里写图片描述

这部分网络是一个两层conv,激励函数:ReLU,感觉把这一部分单独拿出来命名确实有些牵强,可能是为了更清楚的描述整个网络吧。这部分网络的输入为low-level feature network输出的H/8 * W/8 * 512维特征,经过两层卷积神将网络后输出H/8 * W/8 * 256维特征与 global-level feature network输出的256维向量进行融合得到Fusion Layer。

global-level feature network:

这里写图片描述

因为论文作者用到了具有类别标签的Places Sence Dataset(共2448872张,205种类别),所以可以通过这些标签让网络学习到照片的semantic context,来作为全局特征。因此在global-level feature network后接一个ClassificationNetwork完成场景分类,使用互熵损失完成训练。

所以这部分网络是由4个conv和3个fc组成的分类网络(激励函数:ReLU)。说白了就是对输入的固定大小的图片进行分类,输出为一个256维的向量,与mid-level feature network共同构成Fusion Layer,让colorization network可以得到 global feature。

Fusing Global and Local Features(Fusing Layer):

这里写图片描述

作者一直强调全局特征与局部特征的融合,我也认为这个Fusing Layer是framework的关键点之一。通过将不同网络的特征融合到一起,学习到不同的特征,提升performance。例如,如果全局特征表明,它是一种室内图像,局部特征将偏向于不尝试添加天空颜色或草的颜色,而是偏向于尝试家具的颜色。

mid-level feature network将low-level feature network输出的H/8 * W/8 * 512维特征,经过两层卷积神将网络后,得到了 H/8 * W/8 * 256维特征;global-level feature network输出的全局特征为一256维向量;这两者通过作者提出的Fusing Layer进行了融合,使得colorization network能够基于局部与全局信息进行上色。

融合公式为: