前言
在前面两篇的介绍中,我重点分析了RNN和Reinforcement Learning在全局光照中的应用。这次来个有趣又轻松的,也许你都能用你的笔记本进行实战训练。
本次分析的论文题目为《Let there be Color!: Joint End-to-end Learning of Global and Local Image Priors for Automatic Image Colorization with Simultaneous Classification》。通俗易懂的话讲就是自动上色。给一张灰度图,输出一张RGB颜色的图。选这篇文章的原因出于两方面:其一. 文章做了一个端到端的实现,且使用了卷积和反卷积以及融合的策略,从知识面角度来说涵盖了神经网络基础算子。其二.在构建loss function时,将classification的信息也考虑其中,进行了信息特征的混合,这又是一个不错的idea。
文章宣称,它能够处理不同分辨率下的图片,并且综合了全局和局部的信息,甚至能做到风格迁移的变换效果。传统的上色是需要进行用户交互的,但是论文的方案提出了一种完全基于数据进行驱动的方案,它针对灰度图进行上色。并且通过全局的先验信息和局部获得的特征信息,联合上色。好了吹捧就到这儿,接下来我们来看看它的内容吧。
网络
网络的大体结构实际上有四部分组成。分别为
- Low-Level Features Network
- Global Features Network
- Mid-Level Features Network
- Colorization Network
它们相应的规格参数如下表所示。接下来我们逐一分析各个网络结构和功能特点。
Low-Level Features Network
Low-Level Feature Network作为最开始的网络结构,由6层CNN组成,它们用来获得图片低阶特征信息,卷积滤波器是共享的,分别输送到了全局特征网络和中阶段网络中。至于为什么要在一开始引入CNN的这样一层网络结构,用原文的话说“Extract low-level features such as edges and corners”。
Global Features Network
Global Features Network由Conv和FC组成,最后输出256维的信息值来代表图像。它会同Mid-Level提取的特征做融合处理。
Mid-Level Features Network & Fusion Layer
中间阶段的网络使用了2层的conv层来提取信息。貌似并没有什么花样可言。但是有趣的点在于Fusion Layer部分。如何进行融合?把全局特征当作1×1×256的长方条,一个一个叠起来,最后同H / 8 × W / 8形成一个跟中层特征一样大小的长方体,再将两者线性串联,形成一个H / 8 × W / 8×521的长方体。这样以来,就可以将全局特征和中间特征通过联合,形成一个不受分辨率限制的输出形式。公式长这个样子。
Colorization Network
最后是着色网络。它从混合层中提取信息,计算颜色信息。输出层是用了sigmoid函数可以翻译成颜色通道。这边特别要注意一点:这里使用的不是彩色图像(如rgb),而是彩色空间里的CIE L*a*b*的a*b*。学习a*b*,不仅降低了网络的学习难度,而且不需要改变原来的L*。
Colorization with Classification
值得注意的是整体网络中还有一处分类网络。其实想想也很自然,照片的内容信息同样可以帮助我们构建loss函数。
Loss Function
因此在最终构建的loss function时,采取的信息有两个,一方面是内容信息,一方面是颜色差异。其中内容信息由truth label作为reference,而颜色信息同样由ground truth作为指导。其中颜色信息使用的是MSE作为指标判断。
实验
当然作为一篇不折不扣的NN文章来说,它少不了大量的实验环节。作者罗列了各种实验包括:1. 自己和别人方案的染色情况。 2. 让不知情的人来判断染色的情况。 不过不得不说,这类技术用在处理一百年前的老照片身上是再好不过了了哈哈。这边随便发几张论文的截图。
有一些失败案例,作者也较为诚恳地给了出来,比如对于局部块的颜色处理效果并不好。例子中帐篷原来是蓝色,处理成了橘黄色。包括树叶的颜色渲染的也有失水准。
我的一些想法
如果从追求端到端且快速渲染的角度来说,这片文章确实给了我们许多思路和见解。但是同样会有暇疵。这样的瑕疵直接反应出的问题是:所谓的黑盒子模型不够精准,所谓的Colorization也好,style transfer也罢如果不够精准。毕竟人家的physical based rendering已经出到third了。哈哈 当然这是句玩笑话,还是期待NN能做出一些出彩的地方,真正革新吧。