深度学习在图像处理领域中的应用综述
2018-09-10殷琪林王金伟
殷琪林 王金伟
摘 要:随着大数据时代的到来,一系列深度学习网络结构已在图像处理领域展现出巨大的优势,为了能够及时跟踪深度学习在图像领域的最新发展,文章针对深度学习在图像处理领域的相关研究进行综述。首先介绍深度学习的背景和卷积神经网络的知识,旨在从本质上理解深度学习应用在图像领域的基本模型架构及其优化方法;其次主要在图像识别、取证、检测三个方向上,具体论述深度学习在图像领域多个方向上的演变与发展,其目的在于了解深度学习对具体图像处理问题的最新研究并掌握多种模型或技术;最后指出深度学习在图像领域存在的问题以及对未来的展望。
关键词:深度学习;卷积神经网络;算法模型;图像处理
中图分类号:G640 文献标志码:A 文章编号:2096-000X(2018)09-0072-03
Abstract: With the development of the era of big data, a series of deep learning network structures have shown great advantages in the field of image processing. In order to track the latest development of deep learning of imaging, this paper summarizes the related research in the field of image processing. Firstly, the background of deep learning and the knowledge of convolutional neural networks are introduced to fundamentally understand the basic model architecture and optimization methods of deep learning applied in the image domain. Secondly, the evolution and development of deep learning in multiple directions are discussed from recognition, forensics, and detection to understand the latest research of deep learning on concrete image processing problems and grasp various models or technologies. Finally, the problems faced in the future are analyzed.
Keywords: deep learning; convolutional neural network; algorithm model; image processing
一、概述
在當今飞速发展的信息时代,数字图像作为一种常见且有效的信息载体已渗透到社会生活的每一个角落,致使我们对图像处理的需求也日益增长。与此同时身处于大数据时代,数字图像产生的速度和规模也是非常惊人的,所以针对图像信息处理任务也相应地被要求具有高效率,高性能和智能化的特点。
特征表达是图像处理的关键,传统的特征设计需要人工完成,但这种方式过程复杂并对设计者的技术有很高的要求,所以自动化特征设计成了高效图像处理的迫切需求。
深度学习是新兴的机器学习研究领域,旨在研究如何从数据中自动地提取多层次特征表示,其核心思想是通过数据驱动的方式,采用一系列的非线性变换,从原始数据中提取多层次多角度特征,从而使获得的特征具有更强的泛化能力和表达能力,这恰好满足高效图像处理的需求。为满足图像处理问题的各类需求,以卷积神经网络为代表的深度学习理论不断取得突破,本文结合深度学习基本原理,对其在图像处理领域的算法,模型甚至方法的演化和创新进行重点论述。
二、深度学习
(一)深度学习的背景
神经网络在二十世纪五十年代被提出,然而碍于当时网络训练算法理论欠缺、训练样本不足和电脑的计算能力不佳,神经网络发展遇到瓶颈。随着云计算、大数据时代的到来,计算能力的大幅提高可缓解训练的低效性,训练数据的大幅增加则可降低过拟合的风险,再结合无监督逐层训练策略和早已提出的BP算法,使得训练很深层的神经网络变得可能,因此深度学习这个概念开始被人们广泛关注。
典型的深度学习模型就是很深层的神经网络。多隐层堆叠,每一层都对上一层的输出进行处理,从而把最初始的输入与输出目标之间不太密切的联系,转化为更为密切的表示,使得原来仅基于最后一层输出映射难以完成的任务变为可能,这种学习模式也可理解为自动的“特征学习”。
(二)卷积神经网络架构
图像识别是深度学习最早尝试的领域,其中卷积神经网络发挥了巨大的作用。
一般卷积神经网络由卷积层,池化层,全连接层这三种类型的层堆叠组成,每个层都有其独有的特点和作用:
1. 卷积层:提取特征,输入特征图X与K个二位滤波器进行卷积运算输出K个二维特征图。采用卷积运算有两点好处:(1)卷积操作可以提取相邻像素之间的局部关系;(2)卷积操作对图像上的平移、旋转和尺度等变换具有一定的鲁棒性。
2. 池化层:处理卷积层输出的结果,对输入的特征图进行压缩,一方面使特征图变小,简化网络计算复杂度;另一方面精简特征图,提取主要特征,降低特征表达维度的同时,也对平移和扭曲等较小形变具有鲁棒性。
3. 全连接层:连接所有特征,将输出值送给分类器。
(三)基于神经网络的优化方法
随着神经网络模型层数越来越深,训练数据集越来越大,模型结构越来越复杂,网络训练往往会遇到过拟合、梯度消失或爆炸等问题。本节介绍几种优化神经网络的方法:
1. Dropout:Hinton等人提出了“Dropout”优化技术,旨在深度学习网络的训练过程中,对神经网络单元按照一定的概率将其暂时从网络中丢弃。注意是暂时,所以在使用随机梯度下降方法训练网络时,每一个小批量数据都在训练不同的网络。Dropout方法破坏了节点之间的相关性,使得网络能学到更有泛化性的特征,有效防止过拟合。
2. 批量标准化:BN算法由Google在2015年提出,用来训练深层次神经网络。BN算法可以用来规范化某些层或者所有层的输入,从而固定每一层输入信号的均值与方差,有效防止梯度爆炸或消失问题。
三、深度学习在图像领域的应用
(一)图像识别
深度学习技术最先是被应用到图像识别方向,并取得了引人瞩目的效果。Alex等人[1]提出的AlexNet网络是第一个用于图像识别的深层卷积神经网络,后续一系列图像识别方面的深度学习发展都是以此为基础,相比于传统的CNN结构,AlexNet网络变得更深更宽,该网络由5个卷积层和3个全连接层依次叠加组成。AlexNet网络确立了深度学习(深度卷积网络)在图像识别的统治地位,也定义了深度学习模型在图像处理领域的一般性主体架构——前馈卷积神经网络:卷积层与池化层多样化相互堆叠作为特征提取器,随后连接多层全连接层,作为分类器,信息流方向固定而单一。接下来本文将从深度学习在图像识别方向的主体架构的局部修改和主体变化两方面论述深度学习的发展。
1. 网络结构的局部修改
VGGNet网络[2]是AlexNet网络更深更宽的演变。相比于AlexNet网络,VGGNet网络局部采用更多的小型卷积核串联叠加替换一个大型的卷积核。这样做不仅取得同样的卷积效果,还添加了更多的非线性操作,使得网络能提取到更加丰富的特征,同时参数量还减少了。VGGNet网络证明了网络层次越深提取的特征越丰富图像识别效果越好。
NIN网络则在卷积核上做了改变,将单一的线性卷积核换成多层感知机(MLP)。CNN高层特征其实是低层特征通过多种运算的组合,多非线性运算的组合能使高层特征更具泛化性。由于MLP卷积核的存在,NIN网络的一次卷积操作相当于多个卷积层操作的结果,所以NIN网络能以较少的层数达到更深网络的图像识别效果。
Google Inception Net网络,被称为Inception V1网络。它借鉴NIN网络的思想改变了卷积层,新的卷积层也被称作Inception Module。卷积层被分成了四条并行的卷积操作线路,上层的特征输入经过四条线路操作后通过一个聚合操作合并作为输出输入到下一层。Module中大量使用1*1的卷积操作不仅可以跨通道组织信息,提高网络的表达能力,还可以对输出通道进行升维和降维,简化计算过程。Inception V1网络在获得丰富特征信息的同时,也增强了对不同输入尺度的适应性。
以上所提及的用于图像识别的深度学习模型尽管为了获得更好的特征表达能力,增加了网络深度或者复杂了卷积层的操作,但这些都是一些局部结构的改变,网络的主体架构——前馈卷积神经网络未变,特征图的流向仍是单一的,一层接着一层,这必然导致随着网络深度的增加靠近输出的深层网络难以充分获取浅层网络的特征图,图像识别准确率趋于平稳后会出现Degradation[3]现象,反向传播时浅层网络收不到深层网络传来的梯度,网络模型难以训练,这些问题都影响了更深的深度学习模型发展。
2. 网络结构的主体变化
为了解决上一节的问题,He等人[3]提出了ResNet网络模型,借鉴了Highway Networks通过门阀控制信息流的思想,改变了特征信息的流向,第L层的输出不再单一的影响L+1的输出还影响L+2层的输出,所以每两层可以组成一个残差学习块,残差块变相的改变了学习目标。整个ResNet网络由多个残差块堆叠,中间再夹杂着池化层组成,训练过程中只需学习输入和输出的差别,保护了信息完整性,简化了学习目标和难度。
ResNet网络的思想对图像识别领域的深度学习技术影响深远,具有很强的推广性。DenseNet网络[4]就是这种思想的发展与增强,类似于残差块,DenseNet网络有稠密块。每一层的输出都是之后所有层的输入,并且数据聚合采用的是拼接而非ResNet中的相加,保证每一组输入特征图维度一致,这种方法更加促进了网络中信息的交流。DenseNet网络缓解了梯度消失问题,加强了特征传播,极大的减少了参数量。
上述两种图像识别的深度学习模型都改变了特征信息流的传输方向,可跨层次传输,不再是单一的前馈卷积神经网络,使得图像识别准确率相比于前馈卷积神经网络越来越好,这也符合人类思维判定的方式,结合多方面多层次的概括信息比单方面详细信息能更好的识别一个物体。
(二)图像取证
图像的完整周期包含三个部分:图像获取、图像编码、图像编辑。图像取证的出发点是通过提取图像在上述三周期中留下的固有痕迹(指纹特性)来分析和理解图像的操作历史。
1. 深度學习的简单迁移
目前深度学习在图像取证方向研究还很少。Baroffio等人直接将图像识别方向的深度学习模型应用到相机源取证问题中,因为图像在获取过程中由不同相机拍摄都会留下相应相机的指纹特性,所以他们采用类AlexNet网络结构的简单深度学习模型来提取相机的指纹特性并加以分类,取得了94%以上的相机模式分类的准确率。
2. 网络输入
图像取证不同于图像识别的地方在于识别是区分图像内容里的差异,肉眼可以察觉到,而取证则是区分图像中以微弱信号存在的操作指纹,类间形态的差异微乎其微,所以对于图像取证问题一般的深度学习模型不能胜任。因此Chen等人[5]对深度学习模型做出了一些改变,在类AlexNet网络结构前添加了一个预处理层,放大了取证想要的指纹特征。相比没有预处理层,实验结果准确率提升了7.22%。图像取证的性质必然决定了网络输入的改变,只有放大了想要提取的指纹特征,深度学习模型才能更好地充当一个特征提取和分类器。
3. 適应取证的结构
针对一般取证问题,图像的预处理显然是必不可少的,但额外添加一个预处理层又显累赘,所以Ni等人[6]提出了一种针对隐写分析取证的深度学习模型,将预处理整合进网络结构中。Ni等人用30个空间富模型滤波器初始化第一层卷积核,使得第一层卷积操作兼顾预处理功能。仅管取证问题不同于识别问题,但学习模型由繁到简是个必然的趋势,相比于图像识别,深度学习在图像取证上的研究才刚刚开始,越来越多适应取证的深度学习模型结构将会被提出,简化图像取证的流程。
(三)图像检测
图像检测相比于图像识别,不仅要识别出图片中的物体,还要定位物体处于图片中什么位置。
1. 多模块堆叠
RCNN模型[7]是利用深度学习进行图像检测的第一个深度学习网络模型,和图像取证一样,在研究的初期,单纯的深度学习模型并不能实现检测的目的。RCNN模型由四个模块组成:(1)用Selective Search算法使每张图像生成1K~2K个候选区域;(2)对每个候选区域,使用深度学习技术提取特征;(3)将特征送入每一类的SVM分类器,判别是否属于该类;(4)使用线性回归器精细修正候选框位置。从中可以看出深度学习模块只起到了特征提取器的作用,这也是一开始各个领域应用深度学习的出发点,虽然是简单的运用,但仍然在目标检测竞赛上取得突破性进展。
2. 模块合并
紧接着RCNN模型,Girshick相继提出了fast RCNN模型和faster RCNN模型。后续模型充分运用了深度学习知识,将所有模块逐步整合进深度学习模型中,原本各自单独的模型整合到一体后可以在网络训练时相互约束,共同最小化整个网络的损失函数,推动整个深度学习网络朝更好的方向发展。
四、存在的问题与研究展望
深度学习在图像领域主要以卷积神经网络研究为主,但卷积运算注定整个网络将会有很大的计算量,导致网络训练花费时间非常长,改变卷积运算形式简化计算复杂度也将会成为一大发展方向。图像领域的研究大部分局限于灰度图像,很少涉及彩色图像,而四元数在普通的彩色图像处理领域已取得显著地效果,将四元数和深度学习知识结合起来想必一定能提取到更加丰富的彩色图像特征,在彩色图像处理领域取得意想不到的效果,这也是我们团队一直致力奋斗研究的方向。
参考文献:
[1]A. Krizhevsky, I. Sutskever, and G. Hinton. Imagenet classification with deep convolutional neural networks. In Advances in Neural Information Processing Systems 25, pages 1106-1114, 2012.
[2]Karen Simonyan, Andrew Zisserman. Very Deep Convolutional Networks for Large-Scale Image Recognition. CoRR abs:1409.1556, 2014.
[3]He, Kaiming, et al. Deep residual learning for image recognition. Proceedings of the IEEE conference on computer vision and pattern recognition,2016.
[4]Huang G, Liu Z, Weinberger K Q, et al. Densely connected convolutional networks. arXiv preprint arXiv:1608.06993, 2016.
[5]Chen J, Kang X, Liu Y, et al. Median Filtering Forensics Based on Convolutional Neural Networks. Signal Processing Letters IEEE, 2015
[6]Ye J, Ni J, Yi Y. Deep learning hierarchical representations for image steganalysis. IEEE Transactions on Information Forensics and Security, 2017, 12(11): 2545-2557.
[7]Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation. Proceedings of the IEEE conference on computer vision and pattern recognition. 2014: 580-587.