«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (7): 249-256, 265  DOI: 10.19678/j.issn.1000-3428.0058242
0

引用本文  

罗静蕊, 王婕, 岳广德. 基于生成对抗网络的CFA图像去马赛克算法[J]. 计算机工程, 2021, 47(7), 249-256, 265. DOI: 10.19678/j.issn.1000-3428.0058242.
LUO Jingrui, WANG Jie, YUE Guangde. CFA Image Demosaicing Algorithm Based on Generative Adversarial Network[J]. Computer Engineering, 2021, 47(7), 249-256, 265. DOI: 10.19678/j.issn.1000-3428.0058242.

基金项目

国家自然科学基金(41704118);陕西省自然科学基础研究计划项目(2020JM-446)

作者简介

罗静蕊(1985-), 女, 讲师、博士, 主研方向为图像处理、信号反演理论;
王婕, 硕士研究生;
岳广德, 工程师、硕士

文章历史

收稿日期:2020-05-04
修回日期:2020-06-10
基于生成对抗网络的CFA图像去马赛克算法
罗静蕊1 , 王婕1 , 岳广德2     
1. 西安理工大学 自动化与信息工程学院, 西安 710048;
2. 西安交通大学 数学与统计学院, 西安 710049
摘要:在单传感器数码相机图像采集系统的彩色滤波阵列中,每个像素仅捕获单一颜色分量,并且在彩色图像重构过程中图像边缘等高频区域的伪影现象尤为明显。提出一种基于生成对抗网络的图像去马赛克算法,通过设计生成对抗网络的生成器、鉴别器和网络损失函数增强学习图像高频信息的能力,其中使用的生成器为具有残差稠密块和远程跳跃连接的深层残差稠密网络,鉴别器由一系列堆叠的卷积单元构成,并且结合对抗性损失、像素损失以及特征感知损失改进网络损失函数,提升网络整体性能。数值实验结果表明,与传统去马赛克算法相比,该算法能更有效减少图像边缘的伪影现象并恢复图像高频信息,生成逼真的重建图像。
关键词生成对抗网络    残差稠密网络    稠密连接    彩色滤波阵列    去马赛克算法    
CFA Image Demosaicing Algorithm Based on Generative Adversarial Network
LUO Jingrui1 , WANG Jie1 , YUE Guangde2     
1. School of Automation and Information Engineering, Xi'an University of Technology, Xi'an 710048, China;
2. School of Mathematics and Statistics, Xi'an Jiaotong University, Xi'an 710049, China
Abstract: The image acquisition system of the single-sensor digital cameras includes a color filtering array which captures only one color component in each pixel, and the artifacts in high-frequency areas such as image edges are particularly noticeable in the reconstruction of colorful images.A CFA image demosaicing method based on Generative Adversarial Network(GAN) is proposed.For the network, a generator, a discriminator and the network loss function are designed to enhance its ability to learn the high-frequency information of images.The generator employs a deep residual dense network which includes residual dense blocks and remote skipping connections.The discriminator consists of a series of stacked convolutional units.In addition, the network loss function is optimized by combining the adversarial loss, the pixel loss and the feature perception loss.The results of the numerical experiments show that compared with the traditional demosaicing algorithms, the proposed algorithm can more effectively reduce the artifacts at the image edges and recover the high-frequency information, providing more vivid reconstructed images.
Key words: Generative Adversarial Network(GAN)    residual dense network    dense connection    color filtering array    demosaicing algorithm    

开放科学(资源服务)标志码(OSID):

0 概述

目前,数码相机成为数字成像技术的主流成像设备,在智能交通、医学成像与遥感影像处理等领域发挥了重要作用。数字彩色图像中的每个像素分别有红色(Red,R)、绿色(Green,G)和蓝色(Blue,B)3个颜色分量。为得到高质量的彩色图像,最佳的解决方案是使用3个颜色传感器分别接收每个像素的R、G、B分量,随后将这3种颜色分量合成彩色图像。在实际应用中,由于3个传感器的布置会影响后续的色彩合成,并且3个传感器的数码相机通常比较昂贵且体积较大,因此多数数码相机使用单传感器的图像采集系统。

单传感器数码相机在进行图像采集时,在传感器前会放置一个彩色滤波阵列(Color Filtering Array,CFA),从而产生CFA图像。由CFA到达传感器元件的光通常包含R、G、B这3种光谱,如拜尔(Bayer)模式[1]。在CFA中,每个像素点仅允许通过一个颜色分量,因此通过CFA图像仅能判断出景物的大致轮廓,而不能获得完整的色彩信息。Bayer模式的CFA阵列交替使用一组R-G滤镜和一组B-G滤镜,其中,绿色像素呈对角排列,红蓝像素呈对角间隔排列。因此,阵列中的绿色像素占总像素个数的1/2,红色和蓝色像素分别占总像素个数的1/4。由于每个像素只包含一个颜色分量,因此需要根据相邻像素点的颜色分量信息对其他两个颜色分量进行插值恢复,进而根据CFA图像得到全彩色图像,该过程称为图像去马赛克。

在通常情况下,采用传统插值算法进行图像去马赛克操作时,对于色彩变化较小的平滑区域可以获得较高的精度。然而,由于R、G、B分量分别占据不同的颜色通道,各个通道之间可能存在空间偏移,当对图像边缘等高频部分进行插值时通常存在伪影现象。另外,一些传统插值算法忽略了不同颜色通道之间的相关性,导致去马赛克图像边缘出现颜色失真现象[2]。针对上述问题,本文提出一种基于生成对抗网络(Generative Adversarial Network,GAN)的CFA图像去马赛克算法。GAN网络中使用的生成器为具有残差稠密块(Residual Dense Block,RDB)和远程跳跃连接的深层残差稠密网络(Deep Residual Dense Network,DRDN),鉴别器为一系列堆叠的卷积单元,并结合对抗性损失、像素损失以及特征感知损失改进网络损失函数进一步提高网络性能。

1 相关工作 1.1 传统去马赛克算法

目前,研究人员提出了很多用于图像去马赛克的插值算法,如最近邻插值算法(Nearest Neighbor,NN)[3]、双线性插值算法(Bilinear)[4]等,这些算法实现简单,但容易造成图像伪影和色彩失真。为提高图像去马赛克效果,研究人员陆续提出了一系列插值算法。

在梯度类插值算法中,文献[5]提出Hamilton-Adam算法,该算法在插值过程中考虑了采样后通道的二阶导数,利用颜色通道间的相关性来提高插值后图像的视觉效果。文献[6]提出TL(Two-Line)算法,该算法利用小邻域内不同光谱成分交叉比的同质性对低梯度方向的像素点进行插值,以产生高质量的图像。

在基于方向的插值算法中,文献[7]利用线性最小均方误差(Linear Minimum Mean Square Error,LMMSE)从水平和垂直两个方向进行估计,进而重构出3种颜色分量信息。文献[8]在水平插值和垂直插值中使用先验决策,然后根据图像边缘走向进行插值。该算法重构的图像在非水平或垂直走向的边缘处容易出现虚假色。文献[9]提出一种局部方向插值与非局部自适应阈值方法,该方法利用图像的非局部冗余来改善局部色彩的再现效果,可以有效地重建图像边缘并减少颜色伪影。

在基于残差的插值算法中,文献[10]提出最小化拉普拉斯残差插值(Minimized-Laplacian Residual Interpolation,MLRI)算法,该算法通过最小化残差的拉普拉斯能量来估计像素值,可以有效地减少颜色伪影现象。文献[11]提出基于自适应残差插值(Adaptive Residual Interpolation,ARI)的去马赛克算法,该算法通过自适应选择合适的迭代次数,并在每个像素点上结合两种不同类型的残差插值算法,有效改进了传统的残差插值算法。文献[12]将残差插值(Residual Interpolation,RI)算法与基于梯度的阈值自由(Gradient-Based Threshold Free,GBTF)算法相结合,以获得较好的去马赛克效果。文献[13]利用CFA图像中的高光谱空间相关性来计算色差信号以恢复3种颜色信息,该算法能够有效消除图像锯齿现象。另外,文献[14]提出一种基于压缩感知(Compressive Sensing,CS)的彩色图像去马赛克算法,该算法充分挖掘了彩色分量间和分量内的稀疏特性,可使复原图像的纹理细节与色彩更加逼真。

1.2 基于神经网络的去马赛克算法

近年来,神经网络在图像分类[15-16]、运动识别[17-18]、图像超分辨率重建[19-20]、图像去马赛克等图像处理领域得到了快速发展和广泛应用。文献[21]采用深层卷积神经网络(Deep Convolutional Neural Network,DCNN)进行去噪和去马赛克处理,有效抑制了噪声和图像伪影。文献[22]利用深度残差网络对图像进行去马赛克处理,取得了良好的效果。文献[23]提出一种改进的残差U-Net,对于不同CFA模式具有良好的泛化能力。

2 生成对抗网络

生成对抗网络是一种概率生成网络,由GOODFELLOW等[24]于2014年将其引入深度学习领域。GAN结构如图 1所示,主要包括一个生成器$ G $和一个鉴别器$ D $,其中,$ G $用于捕获真实样本$ {\mathit{\boldsymbol{x}}} $的数据分布,并采用服从某一分布(如高斯分布)的噪声$ {\mathit{\boldsymbol{n}}} $来生成一个类似真实数据的生成样本$ G\left({\mathit{\boldsymbol{n}}}\right) $$ D $是一个二分类器,对于来自真实数据$ {\mathit{\boldsymbol{x}}} $的样本,若$ D $将其判断为真(True),则输出$ D\left({\mathit{\boldsymbol{x}}}\right) $表现为一个大概率值,否则$ D $将其判断为假(False),输出$ D\left({\mathit{\boldsymbol{x}}}\right) $表现为一个小概率值。

Download:
图 1 GAN结构 Fig. 1 Structure of GAN

GAN的训练过程是通过训练$ G $以最小化生成样本$ G\left({\mathit{\boldsymbol{n}}}\right) $与真实样本$ {\mathit{\boldsymbol{x}}} $的差异,同时通过训练$ D $以最大化网络的识别精度。因此,GAN的训练过程是一个博弈问题,通过多次交替优化$ G $$ D $提高各自的网络性能,使得$ G $$ D $逐渐达到纳什均衡,最终$ G\left({\mathit{\boldsymbol{n}}}\right) $的数据分布近似于$ {\mathit{\boldsymbol{x}}} $的数据分布。上述过程的目标函数定义为:

$ \begin{array}{l}\underset{G}{\mathrm{m}\mathrm{i}\mathrm{n\;}}\underset{D}{\mathrm{m}\mathrm{a}\mathrm{x}}V(D, G)=&{{E}_{{\mathit{\boldsymbol{x}}}~{P}_{\mathrm{d}\mathrm{a}\mathrm{t}\mathrm{a}}}}_{\left({\mathit{\boldsymbol{x}}}\right)}\left[\mathrm{l}\mathrm{b} D\right({\mathit{\boldsymbol{x}}}\left)\right]+\\ &{E}_{{\mathit{\boldsymbol{n}}}~{P}_{\mathrm{n}\mathrm{o}\mathrm{i}\mathrm{s}\mathrm{e}}\left({\mathit{\boldsymbol{n}}}\right)}\left[\mathrm{l}\mathrm{b}\right(1-D\left(G\right({\mathit{\boldsymbol{n}}}\left)\right)\left)\right]\end{array} $ (1)

其中:$ {\mathit{\boldsymbol{x}}} \sim {P}_{\mathrm{d}\mathrm{a}\mathrm{t}\mathrm{a}}\left({\mathit{\boldsymbol{x}}}\right) $表示$ {\mathit{\boldsymbol{x}}} $服从真实样本的数据分布$ {P}_{\mathrm{d}\mathrm{a}\mathrm{t}\mathrm{a}}\left({\mathit{\boldsymbol{x}}}\right) $$ {\mathit{\boldsymbol{n}}} \sim {P}_{\mathrm{n}\mathrm{o}\mathrm{i}\mathrm{s}\mathrm{e}}\left({\mathit{\boldsymbol{n}}}\right) $表示$ {\mathit{\boldsymbol{n}}} $服从模拟样本的数据分布$ {P}_{\mathrm{n}\mathrm{o}\mathrm{i}\mathrm{s}\mathrm{e}}\left({\mathit{\boldsymbol{n}}}\right) $$ D\left({\mathit{\boldsymbol{x}}}\right) $$ D\left(G\right({\mathit{\boldsymbol{n}}}\left)\right) $分别表示$ D $对真实样本$ {\mathit{\boldsymbol{x}}} $和生成样本$ G\left({\mathit{\boldsymbol{n}}}\right) $的分类标签值;$ E(·) $表示期望。在如式(1)所示的联合优化策略中,$ D $的任务是将$ {\mathit{\boldsymbol{x}}} $识别为True,将$ G\left({\mathit{\boldsymbol{n}}}\right) $识别为False,而$ G $的任务是阻止$ D $做出正确判断。通过这种对抗式的网络训练,$ G $$ D $的性能均得到提升,$ G $最终生成接近真实值的数据。

3 基于生成对抗网络的去马赛克算法 3.1 网络结构

本文提出一种基于生成对抗网络的CFA图像去马赛克算法,具体过程如图 2所示。首先,提取CFA图像中的R、G、B这3种颜色分量,形成三通道CFA图像作为生成器$ G $的输入,用于生成插值后的三通道彩色图像。然后,将三通道彩色生成图像与三通道彩色真实图像同时输入鉴别器$ D $,根据鉴别器的输出概率值来优化$ G $$ D $的网络参数。本文对生成器和判别器结构分别进行设计,通过端到端可训练的网络架构对数据集进行训练,并结合对抗损失、像素损失和特征损失改进网络损失函数进一步提高网络性能。

Download:
图 2 CFA图像去马赛克过程 Fig. 2 Process of CFA image demosaicing
3.2 生成器结构

本文使用的生成器$ G $为深层残差稠密网络,具体结构如图 3所示。DRDN主要由残差稠密块和远程跳跃连接构成。$ G $中所有卷积层的卷积核大小为$ 3\times 3 $、步长为1。$ G $中每个卷积层之后引入批量归一化(Batch Normalization,BN)操作以减慢网络内部协变量的传递并降低网络对初始化权重的敏感性,可以加速网络收敛并提高网络性能[25]。除了最后一层以外,网络激活函数采用LReLU函数,其定义为:

$ \mathrm{L}\mathrm{R}\mathrm{e}\mathrm{L}\mathrm{U}\left({{\mathit{\boldsymbol{x}}}}_{l}\right)=\mathrm{m}\mathrm{a}\mathrm{x}(0, {{\mathit{\boldsymbol{x}}}}_{l})+\kappa \times \mathrm{m}\mathrm{i}\mathrm{n}(0, {{\mathit{\boldsymbol{x}}}}_{l}) $ (2)
Download:
图 3 生成器结构 Fig. 3 Structure of generator

其中:$ \kappa $表示一个正常数,$ \kappa \in \left(\mathrm{0, 1}\right) $,本文设置$ \kappa $为0.1;$ {{\mathit{\boldsymbol{x}}}}_{l} $表示LReLU激活函数层的输入向量。最后一层采用Tanh函数作为激活函数,其定义为:

$ \mathrm{T}\mathrm{a}\mathrm{n}\mathrm{h}\left({{\mathit{\boldsymbol{x}}}}_{t}\right)=\frac{{\mathrm{e}}^{{{\mathit{\boldsymbol{x}}}}_{t}}-{\mathrm{e}}^{-{{\mathit{\boldsymbol{x}}}}_{t}}}{{\mathrm{e}}^{{{\mathit{\boldsymbol{x}}}}_{t}}+{\mathrm{e}}^{-{{\mathit{\boldsymbol{x}}}}_{t}}} $ (3)

图 3中,输入图像是尺寸为50像素×50像素的三通道CFA图像,输出图像是尺寸为50像素×50像素的三通道彩色生成图像。输入图像首先通过3个卷积单元以提取图像的浅层图像特征,然后将得到的浅层图像特征输入RDB。

随着网络深度的增加,网络可以学习到更多的图像细节信息,但是过深的网络可能会出现网络退化现象,通过使用RDB可以改善网络梯度消失和梯度弥散等问题。图 4为残差稠密块结构,可以看出RDB中不仅包括输入与输出之间的跳跃连接,而且包括各卷积层之间的稠密连接。RDB操作过程可以表示为:

$ {f}_{d}=H\left({f}_{d-1}\right)+g\left({f}_{d-1}\right) $ (4)
Download:
图 4 残差稠密块结构 Fig. 4 Structure of residual dense block

其中:$ {f}_{d-1} $$ {f}_{d} $分别表示第$ d $个RDB的输入特征图和输出特征图;$ H(·) $表示RDB的残差函数;$ g(·) $表示稠密连接输出函数。稠密连接结合了浅层图像特征与深层图像特征,可有效改善图像信息在前向传播时可能丢失的问题,并且提高了网络对图像细节信息的学习能力。

本文除了RDB内部的跳跃连接和稠密连接外,对于生成器$ G $,在RDB之间引入具有不同距离的远程跳跃连接,使得网络可以更好地学习不同深度的图像信息。首先,通过一个拼接层将各个跳跃连接的结果进行合并操作(Concat)。然后,利用3个卷积单元进一步提取图像的深层特征,以生成彩色的去马赛克图像。最后,采用一个远程跳跃连接将$ G $的输入与输出相连接,使网络能够学习CFA图像中缺失的像素值,加速网络收敛并进一步提升网络性能。上述过程可以表示为:

$ {\mathit{\boldsymbol{y}}}={\mathit{\boldsymbol{z}}}+F\left(\right[{f}_{1}, {f}_{2}, \cdots , {f}_{d}\left]\right) $ (5)

其中:$ {\mathit{\boldsymbol{z}}} $$ {\mathit{\boldsymbol{y}}} $分别表示输入的三通道CFA图像和输出的三通道彩色生成图像;$ [·] $表示拼接操作;$ F(·) $表示拼接层后续的一系列操作。

3.3 鉴别器结构

鉴别器的目的是鉴别输入图像的真伪。本文使用的鉴别器$ D $的结构如图 5所示,D由一系列堆叠的卷积单元构成,基本操作层为卷积层、BN操作层和LReLU激活函数层。对于鉴别器的最后一层,使用Sigmoid激活函数将输出的特征数据映射为$ \left[\mathrm{0, 1}\right] $。Sigmoid激活函数的定义为:

$ \mathrm{S}\mathrm{i}\mathrm{g}\mathrm{m}\mathrm{o}\mathrm{i}\mathrm{d}\left({{\mathit{\boldsymbol{x}}}}_{s}\right)=\frac{1}{(1+{\mathrm{e}}^{-{{\mathit{\boldsymbol{x}}}}_{s}})} $ (6)
Download:
图 5 鉴别器结构 Fig. 5 Structure of discriminator

其中:$ {{\mathit{\boldsymbol{x}}}}_{s} $表示Sigmoid激活函数层的输入向量;$ D $中所有卷积层的卷积核大小为$ 3\times 3 $、步长为1。

3.4 损失函数

本文通过借鉴文献[26]的网络损失函数,经过适当加权将对抗性损失、像素损失以及特征感知损失相结合并将其作为生成器的损失函数。对抗性损失函数$ {L}_{\mathrm{a}} $的定义为:

$ {L}_{\mathrm{a}}=\frac{1}{N}\sum\limits _{i=1}^{N}\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}[1-D(G\left({{\mathit{\boldsymbol{z}}}}_{i}\right)\left)\right] $ (7)

其中:$ G(·) $表示生成器;$ D(·) $表示鉴别器;$ {{\mathit{\boldsymbol{z}}}}_{i} $表示输入的三通道CFA图像;$ N $表示输入图像数量。

像素损失函数$ {L}_{\mathrm{p}} $表示像素间的Euclidean距离,其定义为:

$ {L}_{\mathrm{p}}=\frac{1}{N}\sum\limits _{i=1}^{N}\left|\right|G\left({{\mathit{\boldsymbol{z}}}}_{i}\right)-{{\mathit{\boldsymbol{x}}}}_{i}|{|}^{2}+\lambda \left|\right|\nabla G\left({{\mathit{\boldsymbol{z}}}}_{i}\right)|{|}^{2} $ (8)

其中:$ \lambda \left|\right|\nabla G\left({{\mathit{\boldsymbol{z}}}}_{i}\right)|{|}^{2} $表示正则化项;$ \lambda $表示正则化权重。式(8)通过比较三通道彩色生成图像$ G\left({{\mathit{\boldsymbol{z}}}}_{i}\right) $与三通道彩色真实图像$ {{\mathit{\boldsymbol{x}}}}_{i} $像素间的差异来恢复图像信息。

特征感知损失函数$ {L}_{\mathrm{f}} $的定义为:

$ {L}_{\mathrm{f}}=\frac{1}{N}\sum\limits _{i=1}^{N}\left|\right|{\mathit{\boldsymbol{V}}}\left[G\right({{\mathit{\boldsymbol{z}}}}_{i}\left)\right]-{\mathit{\boldsymbol{V}}}\left({{\mathit{\boldsymbol{x}}}}_{i}\right)|{|}^{2} $ (9)

其中:$ {\mathit{\boldsymbol{V}}}(·) $表示从预先训练好的VGG19[27]网络中提取的特征映射矩阵。式(9)通过比较三通道彩色生成图像$ G\left({{\mathit{\boldsymbol{z}}}}_{i}\right) $与三通道彩色真实图像$ {{\mathit{\boldsymbol{x}}}}_{i} $的图像特征,可以更准确地提取图像特征并恢复图像高频信息。

本文将$ {L}_{\mathrm{a}} $$ {L}_{\mathrm{p}} $$ {L}_{\mathrm{f}} $损失函数进行适当加权结合,共同约束生成器,因此生成器的损失函数定义为:

$ {L}_{\mathrm{G}}=\underset{\mathrm{G}}{\mathrm{m}\mathrm{i}\mathrm{n}}(\alpha {L}_{\mathrm{a}}+\beta {L}_{\mathrm{p}}+\gamma {L}_{\mathrm{f}}) $ (10)

其中:$ \alpha $$ \beta $$ \gamma $表示正权重。根据式(10)对生成器的参数进行相应修改后,利用式(11)对鉴别器进行更新:

$ {L}_{\mathrm{D}}=\underset{\mathrm{D}}{\mathrm{m}\mathrm{a}\mathrm{x}}\frac{1}{N}\sum \limits_{i=1}^{N}\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\left[D\right({{\mathit{\boldsymbol{x}}}}_{i}\left)\right]+\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}[1-D(G\left({{\mathit{\boldsymbol{z}}}}_{i}\right)\left)\right] $ (11)

其中:对于真实图像$ {{\mathit{\boldsymbol{x}}}}_{i} $,鉴别器输出$ D\left({{\mathit{\boldsymbol{x}}}}_{i}\right) $接近于1;对于生成图像$ G\left({{\mathit{\boldsymbol{z}}}}_{i}\right) $,鉴别器输出$ D\left(G\right({{\mathit{\boldsymbol{z}}}}_{i}\left)\right) $接近于0。通过式(10)与式(11)可以实现生成器与鉴别器的交替优化。

4 数值实验

本节通过数值实验验证生成式对抗网络的性能,生成式对抗网络在Tensorflow环境中进行训练,实验运行在配置为Nvidia® GeForce MX250 GPU和Intel Core i5-8265U CPU的计算机上。

4.1 训练参数与训练过程

本文使用的训练数据库来自WED(Waterloo Exploration Database)[28],其中包含4 744幅自然图像,从中选取600幅图像作为训练集中的原始图像,对原始图像做CFA处理以获得CFA图像。通过缩放、旋转等数据增广操作增加训练图像的数量,具体操作为:首先对每幅图像进行1.0倍、0.9倍、0.8倍和0.7倍的缩放;然后使用滑动窗口将缩放的图像裁剪成尺寸为50像素×50像素的小块图像,其中滑动窗口在水平和垂直方向上的滑动步长均为20个像素点;最后将获得的小块图像依次进行垂直和水平翻转,并顺时针旋转90°、180°和270°。通过上述数据增强操作得到了10万幅训练图像,这些图像在网络训练过程中分批输入,以减少网络计算量及避免局部极值问题。

在训练过程中,损失函数中的权值参数设置为$ \alpha =0.5 $$ \beta =1 $$ \gamma =1 $,正则化权重设置为$ \lambda ={10}^{-5} $,批量大小设置为256,迭代次数设置为200。由于在训练过程中网络采用了可变的学习率,因此初始学习率设定为0.01,每迭代40次减少1/10。

4.2 实验结果分析

实验采用的测试集为Kodak公开数据集。Kodak数据集包含24幅尺寸为768像素×512像素的彩色图像。为定量评价网络性能,采用彩色峰值信噪比(Color Peak Signal to Noise Ratio,CPSNR)[21]和结构相似度(Structural SIMilarity,SSIM)[29]指数作为客观评价指标,通过与不同的去马赛克算法进行比较验证本文算法的有效性。对比算法为最近邻插值算法(NN)[3]、双线性插值算法(Bilinear)[4]、TL[6]、ZHANG's[13]、ARI[11]、MLRI[10]、RI-GBTF[12]、DCNN[21],其中DCNN和本文算法均属于基于神经网络的去马赛克算法。使用不同算法对Kodak测试集中的24幅图像进行去马赛克处理,得到的CPSNR与SSIM指标如表 1所示,可以看出本文算法的两项指标相比其他算法有明显的改进,验证了本文算法的有效性。

下载CSV 表 1 9种算法的客观评价指标对比 Table 1 Comparison of the objective evaluation indexes by nine algorithms

为便于直观比较,本文对表 1中的数据进行箱型图呈现,如图 6所示,其中,箱型的中间线表示数据中值,加号表示离群值,通过箱型图可以更加直观地看出本文算法的两项指标相比其他算法有明显的性能提升。

Download:
图 6 9种算法的客观评价指标的箱形图显示结果 Fig. 6 Box plots display results for the objective evaluation indexes by nine algorithms

图 7给出了随着迭代次数的增加,DCNN和本文算法的网络损失变化趋势,其中对网络损失值进行了归一化处理,可以看出本文算法在网络收敛速度以及网络损失值的减少程度上均优于DCNN。

Download:
图 7 DCNN和本文算法的网络损失变化趋势 Fig. 7 The trend of the network loss of DCNN and the proposed algorithm

图 8图 9给出了对于Kodak数据集中图像4和图像10分别使用不同算法获得的去马赛克图像,其中,图 8(a)图 9(a)为原始图像,图 8(b)图 9(b)为放大图像,图 8(c)图 9(c)分别是使用NN、Bilinear、TL、ZHANG's、ARI、MLRI、RI-GBTF、DCNN、文献[14]算法和本文算法的去马赛克图像,图 8(d)图 9(d)分别是图 8(c)图 9(c)对应的放大图像,图 8(e)图 9(e)分别是图 8(c)图 9(c)对应的残差图像。由于使用的测试图像存在复杂的纹理信息且容易产生伪影,因此选取某一局部区域进行放大以便于更好地呈现细节信息。另外,图 8图 9中给出了原始图像与去马赛克图像的差值(残差图像)以便于直观显示各种算法的重构精度。通过对比可以看出,各种算法对于平滑区域均可以较好地实现图像恢复,但是对于非平滑区域,一些传统算法容易出现伪影现象,而本文算法相较对比算法可以更好地抑制图像高频部分的伪影现象,对于图像的一些细小边缘信息可以更好地进行恢复。结合表 1可知,本文算法对图像4与图像10测试的CPSNR值分别为43.78 dB和44.47 dB。文献[14]算法使用了与图像4和图像10相同的测试图像,CPSNR值分别为41.76 dB和43.11 dB。通过对比可以看出,本文算法相较文献[14]算法具有更好的去马赛克效果。综上所述,本文算法能够更有效地抑制伪影现象及恢复图像边缘等高频信息,从而呈现出更好的视觉效果。

Download:
图 8 针对Kodak数据集中图像4采用不同算法得到的去马赛克图像对比结果 Fig. 8 Comparison results of the demosaicing images from different algorithms for the 4th image in the Kodak database
Download:
图 9 针对Kodak数据集中图像10采用不同算法得到的去马赛克图像对比结果 Fig. 9 Comparison results of the demosaicing images from different algorithms for the 10th image in the Kodak database
5 结束语

为更有效地重建彩色图像,针对单传感器相机恢复彩色图像的去马赛克问题,本文提出一种基于生成对抗网络的CFA图像去马赛克算法。通过设计GAN的生成器、鉴别器和网络损失函数增强学习图像高频信息的能力,并结合对抗性损失、像素损失以及特征感知损失改进网络损失函数提升网络整体性能。数值实验结果表明,该算法能有效地减少图像边缘的伪影现象,产生接近真实图像的高质量重建图像。本文研究假设CFA图像是无噪的,而在现实环境中获得的图像可能会受到噪声的影响,并且在实际应用中CFA有多种模式,但本文仅使用Bayer模式,由于不同的CFA模式对重构图像会有不同的影响,因此后续将针对不同的CFA模式并且结合图像去噪与图像去马赛克处理对网络进行训练与优化,进一步提升网络整体性能。

参考文献
[1]
BAYER B E. Color imaging array: US3971065[P]. 1976-07-20.
[2]
KHASHABI D, NOWOZIN S, JANCSARY J, et al. Joint demosaicing and denoising via learned nonparametric random fields[J]. IEEE Transactions on Image Processing, 2014, 23(12): 4968-4981. DOI:10.1109/TIP.2014.2359774
[3]
NI K S, NGUYEN T Q. An adaptable k-nearest neighbors algorithm for MMSE image interpolation[J]. IEEE Transactions on Image Processing, 2009, 18(9): 1976-1987. DOI:10.1109/TIP.2009.2023706
[4]
GRIBBON K T, BAILEY D G. A novel approach to real-time bilinear interpolation[C]//Proceedings of the 2nd IEEE International Workshop on Electronic Design, Test and Applications. Washington D.C., USA: IEEE Press, 2004: 126-131.
[5]
ADAMS J E, HAMILTON J F. Adaptive color plane interpolation in single sensor color electronic camera: US5652621[P]. 1997-07-29.
[6]
MUKHERJEE J, MOORE M S, MITRA S K. Color demosaicing with constrained buffering[C]//Proceedings of the 6st International Symposium on Signal Processing and Its Applications. Washington D.C., USA: IEEE Press, 2001: 52-55.
[7]
ZHANG L, WU X L. Color demosaicking via directional linear minimum mean square-error estimation[J]. IEEE Transactions on Image Processing, 2005, 14(12): 2167-2178. DOI:10.1109/TIP.2005.857260
[8]
CHUNG K H, CHAN Y H. Color demosaicing using variance of color differences[J]. IEEE Transactions on Image Processing, 2006, 15(10): 2944-2955. DOI:10.1109/TIP.2006.877521
[9]
ZHANG L, WU X, BUADES A, et al. Color demosaicking by local directional interpolation and nonlocal adaptive thresholding[J]. Journal of Electronic Imaging, 2011, 20(2): 1-16.
[10]
KIKU D, MONNO Y, TANAKA M, et al. Minimized-Laplacian residual interpolation for color image demosaicking[C]//Proceedings of SPIE'14. San Francisco, USA: [s. n. ], 2014: 1-8.
[11]
MONNO Y, KIKU D, TANAKA M, et al. Adaptive residual interpolation for color image demosaicking[C]//Proceedings of 2015 IEEE International Conference on Image Processing. Washington D.C., USA: IEEE Press, 2015: 3861-3865.
[12]
KIKU D, MONNO Y, TANAKA M, et al. Beyond color difference: residual interpolation for color image demosaicking[J]. IEEE Transactions on Image Processing, 2016, 25(3): 1288-1300.
[13]
ZHANG L, ZHANG D. A joint demosaicking-zooming scheme for single chip digital color cameras[J]. Computer Vision and Image Understanding, 2007, 107(1/2): 14-25.
[14]
LIU D H, LI P, GAO D H, et al. Color demosaicking method based on regular hexagon CFA pattern and compressive sensing[J]. Journal of Optoelectronics Laser, 2015, 26(2): 360-367. (in Chinese)
刘丹华, 李平, 高大化, 等. 基于压缩感知的正六边形CFA模式彩色图像去马赛克方法[J]. 光电子激光, 2015, 26(2): 360-367.
[15]
LLAMAS J, LERONES P M, MEDINA R, et al. Classification of architectural heritage images using deep learning techniques[J]. Applied Sciences, 2017, 7(10): 992-1016. DOI:10.3390/app7100992
[16]
LI Z, SUN Y B, WANG F, et al. Clothing image classification and retrieval algorithm based on deep convolutional neural network[J]. Computer Engineering, 2016, 42(11): 309-315. (in Chinese)
厉智, 孙玉宝, 王枫, 等. 基于深度卷积神经网络的服装图像分类检索算法[J]. 计算机工程, 2016, 42(11): 309-315. DOI:10.3969/j.issn.1000-3428.2016.11.053
[17]
HOU Y H, LI Z Y, WANG P C, et al. Skeleton optical spectra-based action recognition using convolutional neural networks[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2018, 28(3): 807-811. DOI:10.1109/TCSVT.2016.2628339
[18]
CAO J Q, JIANG X H, SUN T F. Video human action recognition algorithm based on trained image CNN features[J]. Computer Engineering, 2017, 43(11): 234-238. (in Chinese)
曹晋其, 蒋兴浩, 孙锬锋. 基于训练图CNN特征的视频人体动作识别算法[J]. 计算机工程, 2017, 43(11): 234-238. DOI:10.3969/j.issn.1000-3428.2017.11.038
[19]
WANG X H, SHENG B, SHEN R M. Deep depth graph super resolution sampling based on depth learning[J]. Computer Engineering, 2017, 43(11): 252-260. (in Chinese)
王晓晖, 盛斌, 申瑞民. 基于深度学习的深度图超分辨率采样[J]. 计算机工程, 2017, 43(11): 252-260.
[20]
DONG C, LOY C C, HE K, et al. Learning a deep convolutional network for image super-resolution[C]//Proceedings of 2014 European Conference on Computer Vision. Berlin, Germany: Springer, 2014: 184-199.
[21]
PRAKASH V, PRASAD K S, PRASAD T J C. Deep learning approach for image denoising and image demosaicing[J]. International Journal of Computer Applications, 2017, 168: 18-26.
[22]
TAN R, ZHANG K, ZUO W, et al. Color image demosaicking via deep residual learning[C]//Proceedings of 2017 IEEE International Conference on Multimedia and Expo. Washington D.C., USA: IEEE Press, 2017: 793-798.
[23]
SHOPOVSKA I, JOVANOV L, PHILIPS W. RGB-NIR Demosaicing Using Deep Residual U-Net[C]//Proceedings of the 26th Telecommunications Forum. Washington D.C., USA: IEEE Press, 2018: 1-4.
[24]
GOODFELLOW I, POUGET A J, MIRZA M, et al. Generative adversarial nets[C]//Proceedings of the 27th International Conference on Neural Information Processing Systems. New York, USA: ACM Press, 2014: 2672-2680.
[25]
ZHANG K, ZUO W M, CHEN Y J, et al. Beyond a Gaussian denoiser: residual learning of deep CNN for image denoising[J]. IEEE Transactions on Image Processing, 2017, 26(7): 3142-3155. DOI:10.1109/TIP.2017.2662206
[26]
ALSAIARI A, RUSTAGI R, THOMAS M M, et al. Image denoising using a generative adversarial network[C]//Proceedings of the 2nd International Conference on Information and Computer Technologies. Washington D.C., USA: IEEE Press, 2019: 126-132.
[27]
JOHNSON J, ALAHI A, LI F. Perceptual losses for real-time style transfer and super-resolution[C]//Proceedings of 2016 European Conference on Computer Vision. Washington D.C., USA: IEEE Press, 2016: 694-711.
[28]
MA K, DUANMU Z, WU Q, et al. Waterloo exploration database: new challenges for image quality assessment models[J]. IEEE Transactions on Image Processing, 2016, 26(2): 1004-1016.
[29]
WANG Z, BOVIK A C, SHEIKH H R, et al. Image quality assessment: from error visibility to structural similarity[J]. IEEE Transactions on Image Processing, 2004, 13(4): 600-612. DOI:10.1109/TIP.2003.819861