2. 西北工业大学 航空学院, 陕西 西安 710072
2. School of Aeronautics, Northwestern Polytechnical University, Xi'an 710072, China
随着智能时代的到来,场景解析作为计算机视觉研究方向上的重要技术领域,近年来取得了突飞猛进的发展,这对于提升机器人、无人机、水下航行器等的自主导航能力起到至关重要的作用。场景解析作为一项复杂的计算机视觉工作,不仅需要检测并分割出不同的物体,而且需要能够识别出不同物体所属的类别,因此,实现场景解析的核心技术是准确地为图像中每个像素做分类[1-2]。
近年来,基于卷积神经网络(convolutional neural networks,CNNs)的方法已经证明在场景解析工作中取得成功[3-7]。文献[3]以现有的分类网络(AlexNet[8]、VGGNet[9]和GoogLeNet[10])为基础,首先修改分类网络末端的全连接层为卷积层,并在网络末端添加反卷积层,然后级联不同卷积层提取的特征作为反卷积层的输入,最后采用端到端、像素到像素的训练方式将分类网络转换成面向场景解析的全卷积神经网络(fully convolutional neural networks,FCNNs)。在文献[3]的基础上,文献[4-5]分别提出了一种结构对称的FCNNs,该结构的卷积层和反卷积层的功能相反,类似自编码器,对输入图像先编码后解码,从而解析出图像中的物体。文献[6-7]提出了一种带孔的卷积(atrous convolution),这使得卷积层提取的特征尺寸不变,从而减少噪声的引入,提升了场景解析的结果。但是,单纯CNNs方法的空间结构化学习能力很弱,如果想要实现更准确的场景解析,就需要网络具有空间结构化学习能力,能够感知图像的全局空间状态,即:图像中物体所处空间的物体分布以及物体之间的空间位置关系。
为此,具有空间结构化学习能力的条件随机场(conditional random fields,CRFs)[11]联合CNNs的混合架构应运而生[12-14]。文献[12]提出了一种CRF-RNN结构化学习模型,并将CRF-RNN作为CNNs的一部分重新构建CNNs深度网络,这样,该深度网络就结合了CNNs和CRFs各自的优点,具有了空间结构化学习能力。文献[13]提出了一种基于CRFs的端到端深度网络,该网络通过多尺度的FCNNs学习CRFs的一元项和二元项,具有获取图像中空间结构化信息的能力。文献[14]提出了一种具有空间结构相关性的CRFs二元项,并通过结构化支持向量机(structured support vector machine,SSVMs)训练CRFs参数,从而能够充分利用物体之间的空间位置关系来提升场景解析的准确率。但是,CRFs图模型仅能描述图像中物体之间的距离(位置)和相似度(颜色、纹理等),无法较为充分地学习物体所处空间的物体分布以及物体之间的空间位置关系,因此,场景解析效果提升的并不显著。
最近,长短期记忆网络(long short-term memory,LSTMs)[15-17]联合CNNs的混合架构在场景解析中取得了一些突破,这些方法[18-21]主要通过LSTMs网络的记忆能力实现一定程度的空间结构化信息推理,从而能够学习图像的空间结构化信息。但是,LSTMs存在无显式空间结构化信息推理、无空间结构化编码等问题,从而无法准确地学习和描述图像的空间结构化信息。
与上述方法不同,推理深度网络(inference embedded deep networks,IEDNs)[22]具有很强的空间结构化学习能力,它以CNNs和CRFs的混合架构为基础,利用混合架构的分类概率推理图像的空间结构化信息,并将视觉信息与空间关系信息相融合,从而大幅提升场景解析的准确率。但是,IEDNs没有全面地考虑图像中物体所处空间的物体分布以及物体之间的空间位置关系,不能充分地学习和描述图像的空间结构化信息。
在此基础上,本文提出了空间结构化编码深度网络(spatial structure encoded deep networks,SSEDNs),它以CNNs和CRFs的混合架构为基础,能够结合CNNs和CRFs各自的优点。与现有深度网络的结构不同,SSEDNs以CRFs作为中间层,并与空间结构化编码算法(spatial structure encoded algorithm,SSEAs)有机地结合,从而以编码的方式较为准确地描述图像中物体所处空间的物体分布以及物体之间的空间位置关系。
1 空间结构化编码深度网络空间结构化编码深度网络SSEDNs包含3个部分:特征提取层、结构化学习层和特征融合层。其中,特征提取层主要由全卷积神经网络FCNNs构成,用来提取图像的视觉特征;结构化学习层在空间结构化编码算法SSEAs的基础上,一方面利用条件随机场CRFs的分类概率推理超像素所处空间的物体分布,另一方面依据超像素的坐标位置学习相邻超像素对的空间位置关系,从而获取超像素以及相邻超像素对的空间关系特征;特征融合层主要包括深度置信网络DBNs,用来将上述学习到的视觉特征和空间关系特征做融合,从而融合生成超级素和相邻超像素对的混合特征。整个SSEDNs的网络框架如图 1所示。
在场景解析研究中,提取的特征将直接影响分类结果。最近的研究表明包含多层形状信息的特征能够提升分类结果。这种特征的结构是分层的,不同层次是对原始图像不同级别的抽象,这意味着特征提取是逐层进行的,因此,具有多层结构的深度网络成为特征提取的有效工具。另外,卷积操作和反卷积操作能够分别模拟人眼和人脑的机制来提取特征和还原特征,这样,由多个卷积层和反卷积层逐级相连构成的FCNNs就可以对图像进行不同级别的抽象,从而获取包含多层形状信息的多维视觉特征。SSEDNs使用FCNNs提取特征的原理如图 2所示。
假设FCNNs的卷积网络包含Lc层,反卷积网络包含Ld层,输入图像为x,第l层的输出特征为Fl,那么,第l层的操作可以表示为
$ \begin{array}{*{20}{c}} {{\mathit{\boldsymbol{F}}_l} = }\\ {\left\{ \begin{array}{l} x, \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;l = 0\\ {\rm{pool}}\left( {{\rm{rect}}\left( {{\rm{conv}}\left( {{\mathit{\boldsymbol{F}}_{l - 1}}} \right)} \right)} \right), \;\;\;\;\;\;\;\;\;\;\;1 \le l \le {L_c}\\ {\rm{rect}}\left( {{\rm{deconv}}\left( {{\rm{unpool}}\left( {{\mathit{\boldsymbol{F}}_{l - 1}}} \right)} \right)} \right), \;\;\;\;{L_c} < l \le {L_c} + {L_d} \end{array} \right.} \end{array} $ | (1) |
式中:初始特征F0为输入图像x,函数conv、rect和pool分别表示卷积网络每层的卷积操作、校正操作和池化操作,函数unpool、deconv和rect分别表示反卷积网络每层的反池化操作、反卷积操作和校正操作。其中,对于卷积网络的每层操作,conv将卷积核内的多个低层特征值映射为一个特征值,rect(abs,tanh和sigmoid等激活函数)对conv生成的特征作修整,pool则挑选生成特征感知域内最敏感的值作为特征值,从而去除特征中的噪声,新生成的特征尺寸减小,变得抽象;对于反卷积网络的每层操作,unpool与pool相反,它将卷积网络生成的特征尺寸还原,同时补偿pool造成的空间信息损失,deconv与conv相反,它将unpool生成特征的一个值映射为多个,使得特征稠密化,rect功能与上面相同,新生成的特征尺寸增大,变得具体。
为了获取包含多层视觉信息的特征,SSEDNs对FCNNs卷积网络和反卷积网络提取的特征进行上采样操作,使新生特征尺寸与输入图像相同,然后分别将卷积网络和反卷积网络的新生特征级联,从而得到深度卷积特征DCF和深度反卷积特征DDF:
$ {\bf{DCF}} = \left[{{\rm{up}}\left( {{\mathit{\boldsymbol{F}}_1}} \right), {\rm{up}}\left( {{\mathit{\boldsymbol{F}}_2}} \right), \cdots, {\rm{up}}\left( {{\mathit{\boldsymbol{F}}_{{L_c}}}} \right)} \right] \in {{\bf{R}}^{{N_c} \times H \times W}} $ | (2) |
$ \begin{array}{*{20}{c}} {{\bf{DDF}} = \left[{{\rm{up}}\left( {{\mathit{\boldsymbol{F}}_{{L_c} + 1}}} \right), {\rm{up}}\left( {{\mathit{\boldsymbol{F}}_{{L_c} + 2}}} \right), \cdots, } \right.}\\ {\left. {{\rm{up}}\left( {{\mathit{\boldsymbol{F}}_{{L_c} + {L_d}}}} \right)} \right] \in {{\bf{R}}^{{N_d} \times H \times W}}} \end{array} $ | (3) |
式中:Nc和Nd分别表示特征DCF和DDF的维数,H和W分别表示特征的高度和宽度,Nl表示FCNNs第l层生成特征的维数或者卷积核的个数,up(Fl)∈RNl×H×W表示上采样函数。这样,对于输入图像x的某一像素,假设其坐标为(h, w),则它的多维视觉特征HVF可以表示为
$ \begin{array}{*{20}{c}} {{\bf{HVF}}\left( {h, w\left| x \right.} \right) = \left[{{\bf{DCF}}\left( {h, w\left| x \right.} \right), } \right.}\\ {\left. {{\bf{DDF}}\left( {h, w\left| x \right.} \right)} \right] \in {{\bf{R}}^{{N_c} \times {N_d}}}} \end{array} $ | (4) |
与单一深度卷积特征不同,深度反卷积特征能够弥补卷积网络丢失的细节信息,同时深度卷积特征能够纠正反卷积网络还原的错误信息,SSEDNs将两者级联,得到的多维视觉特征能够更准确地表达图像的视觉信息。
1.1.2 超像素分割为了避免多维视觉特征中噪声造成的像素分类概率错误,SSEDNs使用SLIC算法[23]对输入图像进行超像素分割,并计算超像素块内所有像素特征的均值,从而以超像素块的多维视觉特征HVF∈RNc+Nd作为分类预测的基本单位。这样不仅降低了噪声带来的影响,而且提升了整个网络的训练和预测速度。与此同时,超像素块能够准确划分图像中的物体边界,满足场景解析的要求。
1.2 结构化学习层虽然FCNNs能够提取包含多层形状信息的多维视觉特征,但是该特征缺乏空间关系信息,可能会造成分类预测错误。为了弥补FCNNs缺少空间结构化学习能力的缺点,SSEDNs内嵌空间结构化编码算法,SSEAs一方面推理超像素所处空间的物体分布,另一方面学习相邻超像素对的空间位置关系,从而更为准确地描述图像的空间结构化信息。结构化学习层的原理如图 3所示。
LAB颜色空间[24]是常用的颜色空间之一,与RGB颜色空间不同,LAB颜色空间与人类的视觉更为接近,因此,SSEDNs以相邻超像素对的LAB颜色特征相似度作为CRFs的二元项进行训练。另外,SSEDNs采用颜色空间转换标准[25]将RGB图像转换为LAB图像。
1.2.2 条件随机场假设输入图像为x,图像的标签为y,经过超像素分割,可以得到x的图G=(V, E),其中V表示超像素的集合,E表示相邻超像素对的集合,则图像x的能量函数可以表示为
$ E\left( {y, x;w} \right) = \sum\limits_{i \in V} {\mathit{\boldsymbol{w}}_N^{\rm{T}}\mathit{\boldsymbol{U}}\left( {{y_i}, {x_i}} \right)} + \sum\limits_{\left( {i, j} \right) \in E} {\mathit{\boldsymbol{w}}_E^{\rm{T}}\mathit{\boldsymbol{V}}\left( {{y_i}, {y_j}, {x_{ij}}} \right)} $ | (5) |
式中:w=[wN wE]表示CRFs的模型参数,U表示一元项:
$ \mathit{\boldsymbol{U}}\left( {{y_i}, {x_i}} \right) = \exp \left( { - {\alpha _u}{c_i}} \right) $ | (6) |
V表示二元项:
$ \begin{array}{*{20}{c}} {\mathit{\boldsymbol{V}}\left( {{y_i}, {y_j}, {x_{ij}}} \right) = }\\ {\left\{ \begin{array}{l} 1 - \exp \left( { - {\alpha _p}\left\| {{\mathit{\boldsymbol{l}}_i} - {\mathit{\boldsymbol{l}}_j}} \right\|_2^2/\beta _v^2} \right), \;\;\;\;{y_i} = {y_j}\\ \exp \left( { - {\alpha _p}\left\| {{\mathit{\boldsymbol{l}}_i} - {\mathit{\boldsymbol{l}}_j}} \right\|_2^2/\beta _v^2} \right), \;\;\;{y_i} \ne {y_j} \end{array} \right.} \end{array} $ | (7) |
式中:一元项U的参数ci表示超像素vi内所有像素FCNNs分类概率的均值;二元项V中的式子‖li-lj‖22表示LAB颜色空间内相邻超像素对颜色特征的2-范数,若2-范数的值越接近0,则超像素vi和vj属于同一类别的概率越大,反之则概率越小。
在CRFs训练阶段,本文使用循环置信传播算法和L-BFGS优化算法求解CRFs的参数w[26]。在CRFs预测阶段,对于一张新的图像x,它的后验概率为
$ \mathop {\arg \max }\limits_y p\left( {y\left| {x, {\mathit{\boldsymbol{w}}^ * }} \right.} \right) $ | (8) |
虽然CRFs图模型能够根据相邻超像素对的距离(位置)和特征(颜色、纹理等)的相似度来全局最优化分类概率,但是它仅能实现场景解析的一致性和平滑性优化,依然缺乏较强的空间结构化学习能力。因此,SSEDNs内嵌空间结构化编码算法,一方面通过CRFs的分类概率推理超像素所处空间的物体分布,另一方面根据超像素的坐标位置学习相邻超像素对的空间位置关系,从而生成描述超像素(节点)和相邻超像素对(边)的空间关系特征。
1) 超像素(节点)空间关系特征。
本文以CRFs的分类概率作为超像素的类别,将超像素所处空间划分为上、下、左、右4个区域,然后分别统计每个区域内各类别出现的频率(区域内每种类别的超像素节点个数),从而近似生成描述超像素(节点)所处空间物体分布的空间关系特征。
假设超像素vi,以vi为中心的邻域空间定义为Gu=(Vu, Eu),则vi的节点空间关系特征NSF可以表示为
$ \begin{array}{*{20}{c}} {{\bf{NSF}}\left( i \right) = \left[{{\bf{NSF}}\left( \wedge \right), {\bf{NSF}}\left( \vee \right), {\bf{NSF}}\left( < \right), } \right.}\\ {\left. {{\bf{NSF}}\left( > \right)} \right] \in {{\bf{R}}^{4 \times K}}} \end{array} $ | (9) |
式中:NSF(∧),NSF(∨),NSF(< ),NSF(>)分别表示超像素vi上、下、左、右4个区域内各类别出现的频率,它们可以统一表示成如下的形式:
$ {\bf{NSF}}\left( d \right) = \sum\limits_{{v_j} \in {V_u}\left( d \right)} {{a_j} \in {{\bf{R}}^K}}, d \in \left[{ \wedge, \vee, <, > } \right] $ | (10) |
式中:Vu(d)表示超像素vi在d方向上的区域,向量aj表示Vu(d)区域内超像素vj的类别,其定义如下
$ {\mathit{\boldsymbol{a}}_j}\left( k \right) = \left\{ \begin{array}{l} 1, \;\;\;{\mathit{\boldsymbol{b}}_j}\left( k \right) = \max \left( {{\mathit{\boldsymbol{b}}_j}} \right)\\ 0, \;\;\;{\mathit{\boldsymbol{b}}_j}\left( k \right) \ne \max \left( {{\mathit{\boldsymbol{b}}_j}} \right) \end{array} \right., \;\;\;k = 1, 2, \cdots, K $ | (11) |
式中:bj表示CRFs生成的超像素vj的分类概率,max(bj)表示vj各类别概率的最大值,bj(k)表示vj第k类的类别概率,K表示类别数。
实际中,假设输入图像x的短边长为l,定义vi的空间Gu为以vi为中心的正方形邻域,其邻域的边长为0.4l。在此基础上,定义vi的区域Vu(d)为Gu空间内vi在d方向上的长方形区域,如图 3所示。
2) 相邻超像素(边)空间关系特征。
为了充分探究图像中相邻超像素对的空间位置关系,SSEDNs根据图像中超像素的坐标位置,将相邻超像素对的空间位置关系划分为上-下、下-上、左-右、右-左4类,从而生成描述相邻超像素对(边)的空间位置关系特征。
假设相邻超像素分别为vi和vj,其对应的边为eij,则eij的边空间关系特征ESF可以表示为
$ {\bf{ESF}}\left( {i, j} \right) = {\bf{ESF}}\left( d \right), d \in \left[{ \wedge, \vee, <, > } \right] $ | (12) |
式中:d表示超像素对vi和vj的空间位置关系,向量ESF(∧),ESF(∨),ESF(< ),ESF(>)分别表示上-下、下-上、左-右、右-左4类位置关系对应的边空间关系特征。
实际中,ESF(∧),ESF(∨),ESF(< ),ESF(>)可以简单地编码为‘0001’、‘0010’、‘0100’和‘1000’。另外,由于部分相邻超像素对之间不满足垂直或者水平的空间位置关系,因此SSEDNs根据相邻超像素对连线与垂直线和水平线夹角的大小近似区分其空间位置关系。
与单一视觉特征不同,当两个超像素具有相似的视觉特征时,SSEDNs就可以根据超像素所处空间物体分布的差异区分两个超像素的类别;另外,当仅凭视觉特征预测相邻超像素对的类别不合理时(例如草原、湖泊或者公路出现在天空上方),SSEDNs就可以根据学到的合理空间位置关系避免上述错误。
1.3 特征融合层经过特征提取层和结构化学习层,SSEDNs可以分别生成超像素的多维视觉特征HVF、节点空间关系特征NSF和相邻超像素对的边空间关系特征ESF。为了进一步挖掘视觉特征和空间关系特征之间复杂的非线性关系,SSEDNs使用DBNs对上述特征做融合,分别生成超像素(节点)的分类概率和相邻超像素对(边)的置信度。在此基础上,SSEDNs以节点分类概率和边的置信度重新定义CRFs的一元项和二元项,并再次训练CRFs,完成深度结构化学习。特征融合层的流程如图 4所示。
研究表明,利用DBNs融合不同特征之间的非线性关系来提升物体的分类概率效果显著。DBNs[27]由一组受限的波尔兹曼机(restricted boltzmann machine,RBMs)[28-29]自下而上堆叠而成,它以级联的不同特征作为输入,按照低层RBMs输出作为高层RBMs输入的顺序逐层抽象,最终输出高度抽象的融合特征。
SSEDNs采用对比散度算法对RBMs做快速训练[28-29, 32]。在此基础上,训练DBNs[27, 30-31]可以分为预训练和微调两个阶段:在预训练阶段,采用无监督的贪心算法自底向上逐层训练DBNs中的RBMs,得到初始DBNs的参数;在微调阶段,采用无监督的wake-sleep算法对参数调优。为了使得DBNs具有分类功能,SSEDNs在DBNs的顶层添加判别网络(例如SoftMax分类器),此时,DBNs与标准的前馈神经网络相同,采用有监督的反向传播算法[35]进一步调优DBNs参数。
1.3.2 深度结构化学习SSEDNs通过级联超像素的多维视觉特征HVF和节点空间关系特征NSF得到超像素的节点混合特征(node hybrid feature,NHF)。在此基础上,相邻超像素对的边混合特征(edge hybrid feature,EHF)被定义为相邻两个超像素的节点混合特征NHF和边空间关系特征ESF的组合。假设超像素为vi,相邻超像素对vi和vj对应的边为eij,则vi节点混合特征NHF和eij边混合特征EHF可以分别表示为
$ {\bf{NHF}}\left( i \right) = \left[{{\bf{HVF}}\left( i \right), {\bf{NSF}}\left( i \right)} \right] \in {{\bf{R}}^{{N_c} + {N_d} + 4 \times K}} $ | (13) |
$ {\bf{EHF}}\left( {i, j} \right) = \left[{\begin{array}{*{20}{c}} {{\bf{NHF}}\left( i \right)}&{{\bf{NHF}}\left( j \right)}&{{\bf{ESF}}\left( {i, j} \right)} \end{array}} \right] $ | (14) |
式中:HVF(i)表示vi的多维视觉特征HVF,NSF(i)表示vi的节点空间关系特征NSF,ESF(i, j)表示eij的边空间关系特征ESF。
在此基础上,节点混合特征NHF和边混合特征EHF的DBNs融合过程可以分别表示为
$ {\mathit{\boldsymbol{\theta }}_i} = {\rm{fusion}}\left( {{\bf{NHF}}\left( i \right)} \right) \in {{\bf{R}}^K} $ | (15) |
$ {\mathit{\boldsymbol{\theta }}_{ij}} = {\rm{fusion}}\left( {{\bf{EHF}}\left( {i, j} \right)} \right) \in {{\bf{R}}^{K \times K}} $ | (16) |
式中:fusion表示DBNs的特征融合操作,θi表示DBNs生成的超像素vi的分类概率,θij表示DBNs生成的相邻超像素对vi和vj对应边eij的置信度。
为了深度结构化学习,SSEDNs以上述节点分类概率和边的置信度重新定义CRFs的一元项U和二元项V的输入,其中,一元项U可以表示为
$ \mathit{\boldsymbol{U}}\left( {{y_i}, {x_i}} \right) = \exp \left( { - {\alpha _u}{\mathit{\boldsymbol{\theta }}_i}} \right) $ | (17) |
二元项V可以表示为
$ \mathit{\boldsymbol{V}}\left( {{y_i}, {y_j}, {x_{ij}}} \right) = \exp \left( { - {\alpha _v}{\mathit{\boldsymbol{\theta }}_{ij}}} \right) $ | (18) |
注意,与1.2.2节所述CRFs二元项V的含义不同,这里的V表示相邻超像素对(vi, vj)类别为(yi, yj)的置信度。最后,SSEDNs通过上述一元项和二元项重新训练CRFs,从而能够根据相邻超像素对之间的置信度进一步调优场景解析的结果。
2 实验与分析为了评价空间结构化编码深度网络SSEDNs的场景解析效果,SSEDNs使用场景解析标准数据集SIFT FLOW[33]和PASCAL VOC 2012[34]做训练,并将测试结果与当前的先进方法作比较。另外,SSEDNs采用像素准确率、平均类别准确率和平均组合交叉准确率[3]作为场景解析的评价标准。
2.1 SSEDNs的训练流程SSEDNs由3类子网络组成:全卷积神经网络FCNNs、条件随机场CRFs和深度置信网络DBNs。由于SSEDNs各子网络相互独立,可以分别独立训练,因此,SSEDNs逐次训练特征提取层(FCNNs)、结构化学习层(CRFs)以及特征融合层(DBNs),从而依次获取各层的网络参数,整个网络框架的训练简单而快速。
在预处理阶段,SSEDNs通过SLIC算法[23]对图像进行超像素分割,同时将RGB颜色空间的图像映射到LAB颜色空间[25]。
在特征提取阶段,SSEDNs以卷积网络工具包MatConvNet[36]提供的46层全卷积神经网络‘fcn8s’为框架。首先,采用随机梯度下降算法和反向传播算法[3, 35]对‘fcn8s’网络进行训练和微调;然后,对‘fcn8s’各层提取的卷积特征和反卷积特征进行上采样操作;最后,级联上述各层特征生成像素的多维视觉特征,同时,通过计算超像素块内所有像素特征的均值,从而得到超像素块的多维视觉特征。
在结构化学习阶段,SSEDNs使用基于MATLAB的UGM工具包[37]创建CRFs图模型。首先,采用循环置信传播算法和L-BFGS优化算法求解CRFs的参数[26],这样,CRFs就能够通过相邻超像素对在LAB颜色空间的特征相似度来全局最优化分类概率;然后,根据空间结构化编码算法生成超像素(节点)和相邻超像素对(边)的空间关系特征。
在特征融合阶段,SSEDNs使用基于PYTHON的DBNs工具包[38]构建DBNs网络。首先,采用贪心算法和反向传播算法完成DBNs训练[27-32];然后,分别以DBNs融合生成的节点分类概率和边的置信度重新定义CRFs的一元项和二元项,并重新训练CRFs。
SSEDNs的训练和测试在一台2.3 GHz Xeon CPU、128 GB内存的计算机上进行。
2.2 SIFT FLOW数据集SIFT FLOW数据集由2 488张训练图像和200张测试图像组成,共包含34类物体和背景。SSEDNs关于该数据集的实验结果如表 1所示,场景解析效果如图 5所示。
在表 1中,‘FCNNs’表示全卷积神经网络FCNNs的场景解析结果,‘FCNNs+CRFs’表示条件随机场CRFs调优FCNNs后的结果,‘SSEDNs’表示所提出网络的场景解析结果。从实验结果中可以发现:首先,‘FCNNs+CRFs’的场景解析结果虽然优于‘FCNNs’,但是结果相差不大,说明CRFs的空间结构化学习能力较弱。然后,‘SSEDNs’的结果较‘FCNNs’和‘FCNNs+CRFs’相比有明显提升,一方面说明仅仅包含视觉特征的场景解析效果一般,而融合视觉信息和空间结构化信息的特征能够显著提升网络的场景解析结果,另一方面说明根据相邻物体间的置信度可以进一步调优场景解析的结果。最后,与当前先进方法做比较[3, 13, 22],‘SSEDNs’在场景解析各评价标准中均取得最好的结果,其原因可以归纳为如下4点:1)SSEDNs使用FCNNs提取图像不同抽象级别的视觉特征,从而得到级联的多维视觉特征,另外,深度卷积特征和深度反卷积特征能够互相弥补丢失的信息和纠正错误的信息,两者级联得到的多维特征能够更准确地表达图像的视觉信息;2)SSEDNs内嵌空间结构化编码算法,通过该SSEAs分别生成超像素(节点)和相邻超像素对(边)的空间关系特征,该空间关系特征具有表示图像中物体所处空间的物体分布以及物体之间的空间位置关系的能力,这不仅能够修正单一视觉特征造成的分类错误,而且能够避免不合理的分类预测(例如草原、湖泊或者公路出现在天空上方),从而提升场景解析的准确率;3)SSEDNs通过DBNs分别对超像素(节点)和相邻超像素(边)的混合特征进行融合,从而进一步挖掘视觉特征和空间关系特征之间的非线性关系,融合后的特征能够更全面地表达图像的语义信息;4)SSEDNs分别以融合后的超像素(节点)分类概率和相邻超像素对(边)的置信度作为一元项和二元项来重新训练CRFs,从而能够根据相邻物体之间的置信度进一步调优场景解析的结果。
在图 5中,第1列表示输入图像,第10列表示Ground Truth,第2~4列分别表示‘FCNNs’、‘FCNNs+CRFs’和‘SSEDNs’对应的场景解析效果。从场景解析效果中可以发现:首先,从第2~4列,物体轮廓越来越接近Ground Truth,从而进一步证明了表 1的实验分析结果。然后,无论物体的轮廓是简单(天空、大海、沙滩等)还是复杂(人、树、植物等),场景解析的结果均与Ground Truth接近,说明SSEDNs提取的特征能够更全面地表达图像中物体的语义信息,具有更强的空间结构化学习能力。最后,对于尺寸很小的物体,SSEDNs可能会出现解析错误,其原因可能是超像素替代像素完成解析任务造成的,这样虽然能够加速整个网络的训练和预测,但是网络却可能丢失尺寸很小物体的细节信息。
2.3 PASCAL VOC 2012数据集PASCAL VOC 2012数据集由20类前景物体和1类背景组成。原始的PASCAL VOC 2012数据集中分别包含1 464张训练图像、1 449张验证图像和1 456张测试图像。为了使得整个网络训练得更加充分,SSEDNs使用PASCAL VOC 2012的2个扩展数据集[39-40],从而增加训练图像的数量。对于PASCAL VOC 2012数据集,通常采用平均组合交叉准确率作为评价网络场景解析效果的标准,本文的实验结果如表 2所示,其场景解析效果如图 6所示。
从表 2中可以发现:首先,‘SSEDNs’的场景解析结果明显优于‘FCNNs’和‘FCNNs+CRFs’的结果,从而进一步证明具有空间关系特征学习能力的网络能够更准确地解析场景。其次,‘SSEDNs’与当前先进方法做比较[3, 7, 12-13, 22],也均取得较好的结果,从而印证了空间结构化编码算法,通过SSEAs生成的空间关系特征不仅能够更为准确的描述物体所处空间的物体分布,而且能够表达相邻物体之间的空间位置关系;在此基础上与视觉特征相互融合,一方面弥补了单一视觉特征的不足,另一方面更准确地表达了图像的语义信息,从而显著提升了网络场景解析的结果。
3 结论1) 本文面向场景解析提出空间结构化编码深度网络SSEDNs。SSEDNs通过有机地结合条件随机场CRFs和空间结构化编码算法SSEAs,使其具有较强的空间结构化学习能力,从而弥补现有方法结构化学习能力的不足,显著地提升了场景解析的结果。
2) 实验结果表明,在SIFT FLOW和PASCAL VOC 2012标准数据集下,SSEDNs的场景解析结果具有较高的准确率。因此,SSEDNs可以应用到实际的视觉任务中,从而提升机器人、无人机、水下航行器等的自主导航能力。
3) SSEDNs可以被划分为3个独立的部分,这样虽然能够缩短网络的训练和测试时间,但是可能无法充分地利用结构化学习层的优势。因此,本文后续准备研究构建网络3个部分的新架构,从而适合利用反向传播算法联合优化整个网络,进一步挖掘结构化学习层的空间结构化学习能力。
[1] |
SHOTTON J, WINN J, ROTHER C, et al. Textonboost for image understanding:Multi-class object recognition and segmentation by jointly modeling texture, layout, and context[J]. International journal of computer vision, 2009, 81(1): 2-23. (0)
|
[2] |
FARABET C, COUPRIE C, NAJMAN L, et al. Learning hierarchical features for scene labeling[J]. IEEE transactions on pattern analysis and machine intelligence, 2013, 35(8): 1915-1929. DOI:10.1109/TPAMI.2012.231 (0)
|
[3] |
SHELHAMER E, LONG J, DARRELL T. Fully convolutional networks for semantic segmentation[J]. IEEE transactions on pattern analysis and machine intelligence, 2017, 39(4): 640-651. DOI:10.1109/TPAMI.2016.2572683 (0)
|
[4] |
NOH H, HONG S, HAN B. Learning deconvolution network for semantic segmentation[C]//Proceedings of the IEEE International Conference on Computer Vision. Santiago, Chile, 2015: 1520-1528. http://doi.ieeecomputersociety.org/10.1109/ICCV.2015.178
(0)
|
[5] |
BADRINARAYANAN V, KENDALL A, CIPOLLA R. Segnet: a deep convolutional encoder-decoder architecture for image segmentation[EB/OL]. 2015, arXiv preprint arXiv: 1511. 00561, 2015.
(0)
|
[6] |
CHEN L C, PAPANDREOU G, KOKKINOS I, et al. Semantic image segmentation with deep convolutional nets and fully connected CRFs[J]. Computer sience, 2014(4): 357-361. (0)
|
[7] |
CHEN L C, PAPANDREOU G, KOKKINOS I, et al. DeepLab:Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs[J]. IEEE transactions on pattern analysis & machine Intelligence, 2017. (0)
|
[8] |
KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[J]. Advances in neural information processing Systems, 2012, 25(2): 2012. (0)
|
[9] |
SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[EB/OL]. (2015-4-10), arXiv preprint arXiv: 1409. 1556. http://www.oalib.com/paper/4068791
(0)
|
[10] |
SZEGEDY C, LIU W, JIA Y, et al. Going deeper with convolutions[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. Boston, USA, 2015: 1-9. http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=7298594
(0)
|
[11] |
LAFFERTY J D, MCCALLUM A, PEREIRA F C N. Conditional random fields: probabilistic models for segmenting and labeling sequence data[C]//Eighteenth International Conference on Machine Learning. Morgan Kaufmann Publishers Inc, 2001: 282-289. http://dl.acm.org/citation.cfm?id=655813&dl=
(0)
|
[12] |
ZHENG S, JAYASUMANA S, ROMERA-PAREDES B, et al. Conditional random fields as recurrent neural networks[C]//Proceedings of the IEEE International Conference on Computer Vision. Santiago, Chile, 2015: 1529-1537. http://doi.ieeecomputersociety.org/10.1109/ICCV.2015.179
(0)
|
[13] |
LIN G, SHEN C, VAN DEN HENGEL A, et al. Efficient piecewise training of deep structured models for semantic segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, USA, 2016: 3194-3203. http://ieeexplore.ieee.org/document/7780717/
(0)
|
[14] |
LIU F, LIN G, SHEN C. CRF learning with CNN features for image segmentation[J]. Pattern recognition, 2015, 48(10): 2983-2992. DOI:10.1016/j.patcog.2015.04.019 (0)
|
[15] |
BYEON W, LIWICKI M, BREUEL T M. Texture classification using 2d lstm networks[C]//201422nd International Conference on. Pattern Recognition (ICPR). [S. l. ]2014: 1144-1149. http://www.researchgate.net/publication/282799479_Texture_classification_using_2D_LSTM_networks?ev=auth_pub
(0)
|
[16] |
THEIS L, BETHGE M. Generative image modeling using spatial LSTMs[C]//Advances in Neural Information Processing Systems. [S. l. ] 2015: 1927-1935. http://dl.acm.org/citation.cfm?id=2969455
(0)
|
[17] |
BYEON W, BREUEL T M, RAUE F, et al. Scene labeling with lstm recurrent neural networks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Boston, USA, 2015: 3547-3555. http://doi.ieeecomputersociety.org/10.1109/CVPR.2015.7298977
(0)
|
[18] |
LIANG X, SHEN X, XIANG D, et al. Semantic object parsing with local-global long short-term memory[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, USA, 2016: 3185-3193. http://doi.ieeecomputersociety.org/10.1109/CVPR.2016.347
(0)
|
[19] |
LIANG X, SHEN X, FENG J, et al. Semantic object parsing with graph lstm[C]//European Conference on Computer Vision. Springer International Publishing, 2016: 125-143.
(0)
|
[20] |
LI Z, GAN Y, LIANG X, et al. LSTM-CF: Unifying context modeling and fusion with LSTMS for RGB-D scene labeling[C]//European Conference on Computer Vision. Springer International Publishing, 2016: 541-557. http://link.springer.com/chapter/10.1007/978-3-319-46475-6_34
(0)
|
[21] |
ZHANG R, YANG W, PENG Z, et al. Progressively Diffused Networks for Semantic Image Segmentation[EB/OL]. [2016-12-20], arXiv preprint arXiv: 1702. 05839. http://arxiv.org/abs/1702.05839
(0)
|
[22] |
BU S, HAN P, LIU Z, et al. Scene parsing using inference Embedded Deep Networks[J]. Pattern recognition, 2016, 59: 188-198. DOI:10.1016/j.patcog.2016.01.027 (0)
|
[23] |
ACHANTA R, SHAJI A, SMITH K, et al. SLIC superpixels compared to state-of-the-art superpixel methods[J]. IEEE transactions on pattern analysis and machine intelligence, 2012, 34(11): 2274-2282. DOI:10.1109/TPAMI.2012.120 (0)
|
[24] |
HUNTER R S. Photoelectric color difference meter[J]. JOSA, 1958, 48(12): 985-995. DOI:10.1364/JOSA.48.000985 (0)
|
[25] |
SMITH T, GUILD J. The CIE colorimetric standards and their use[J]. Transactions of the optical society, 1931, 33(3): 73. DOI:10.1088/1475-4878/33/3/301 (0)
|
[26] |
KOLLER D, FRIEDMAN N. Probabilistic graphical models:principles and techniques[M]. [S.l.]: MIT Press, 2009.
(0)
|
[27] |
HINTON G E, SALAKHUTDINOV R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006, 313(5786): 504-507. DOI:10.1126/science.1127647 (0)
|
[28] |
FREUND Y, HAUSSLER D. Unsupervised learning of distributions on binary vectors using two layer networks[C]//Advances in neural information processing systems, 1992: 912-919. http://dl.acm.org/citation.cfm?id=902676
(0)
|
[29] |
HINTON G E. Training products of experts by minimizing contrastive divergence[J]. Training, 2006, 14(8). (0)
|
[30] |
HINTON G E, OSINDERO S, TEH Y W. A fast learning algorithm for deep belief nets[J]. Neural computation, 2006, 18(7): 1527-1554. DOI:10.1162/neco.2006.18.7.1527 (0)
|
[31] |
BENGIO Y, LAMBLIN P, POPOVICI D, et al. Greedy layer-wise training of deep networks[C]//Advances in Neural Information Processing Systems, 2007: 153-160. http://dl.acm.org/citation.cfm?id=2976476
(0)
|
[32] |
HINTON G. A practical guide to training restricted Boltzmann machines[J]. Momentum, 2010, 9(1): 926. (0)
|
[33] |
LIU C, YUEN J, TORRALBA A. Nonparametric scene parsing via label transfer[J]. IEEE transactions on pattern analysis and machine intelligence, 2011, 33(12): 2368-2382. DOI:10.1109/TPAMI.2011.131 (0)
|
[34] |
EVERINGHAM M, ESLAMI S M A, VAN GOOL L, et al. The pascal visual object classes challenge:A retrospective[J]. International journal of computer vision, 2015, 111(1): 98-136. DOI:10.1007/s11263-014-0733-5 (0)
|
[35] |
LECUN Y A, BOTTOU L, ORR G B, et al. Efficient backprop[M]. Berlin Heidelberg: Springer, 2012: 9-48.
(0)
|
[36] |
VEDALDI A, LENC K. Matconvnet: convolutional neural networks for matlab[C]//Proceedings of the 23rd ACM international conference on Multimedia. 2015: 689-692. http://doi.acm.org/10.1145/2733373.2807412
(0)
|
[37] |
SCHMIDT M. UGM: A Matlab toolbox for probabilistic undirected graphical models[2016-12-20]. [EB/OL]. URL http://www.cs.ubc.ca/schmidtm/Software/UGM.html.
(0)
|
[38] |
PERCEPTRON M. DeepLearning 0. 1 documentation. [EB/OL]. 2014, URL http://deeplearning.net/tutorial/
(0)
|
[39] |
HARIHARAN B, ARBELáEZ P, BOURDEV L, et al. Semantic contours from inverse detectors[C]//2011 IEEE International Conference on Computer Vision (ICCV). 2011: 991-998. http://doi.ieeecomputersociety.org/10.1109/ICCV.2011.6126343
(0)
|
[40] |
LIN T Y, MAIRE M, BELONGIE S, et al. Microsoft coco: Common objects in context[C]//European conference on computer vision. Springer, 2014: 740-755.
(0)
|