基于深度卷积神经网络的细粒度图像分类方法技术

技术编号:19779138 阅读:120 留言:0更新日期:2018-12-15 11:36
本发明专利技术公开了一种基于深度卷积神经网络的细粒度图像分类方法,包括以下步骤:1)准备细粒度图像分类数据集,将训练数据划分为训练数据集和验证数据集;2)搭建细粒度图像分类的深度卷积神经网络模型,使用训练数据集训练模型,当训练的模型在验证数据集上达到设定的精度,保存网络模型参数;3)使用训练好的模型计算测试图像分类的标签或测试数据集的分类精度。本发明专利技术提出的细粒度图像分类框架独立于并可应用于任何DCNN结构,具有很好的可移植性。

【技术实现步骤摘要】
基于深度卷积神经网络的细粒度图像分类方法
本专利技术属于计算机视觉图像分类
,具体涉及一种基于深度卷积神经网络的细粒度图像分类方法。
技术介绍
细粒度图像分类任务相对通用图像分类任务的区别在于其图像所属类别的粒度更为精细,不同细粒度物体类的差异仅体现在细微之处。细粒度图像分类的主要挑战在于类间相似性和和类内多样性。一方面,不同的细粒度类之间的视觉差异仅仅体现在细微之处;另一方面,由于受到位置、视角、光照等条件的影响,即使是同一类的实例也可能会有变化较大的类内视觉差异。例如,Californiagull和Ringed-beakgull的差异仅仅在于鸟嘴部位的区别,但即使是同一类Californiagull(或Ringed-beakgull),也会表现出较大的类内差异性。基于部分的算法细粒度图像分类方法,首先检测目标物体的不同部分,然后通过局部特征建模增加类间的区别、减小类内的差异,这类方法高度依赖精确的部件检测,容易受到遮挡、角度和姿态等影响。应用contractive和triplet损失函数训练深度卷积神经网络的方法,收敛速度较慢,计算复杂度高。
技术实现思路
本专利技术的目的在于针对现有技术的不足,提供了一种基于深度卷积神经网络的细粒度图像分类方法。为达到上述目的,本专利技术采用如下技术方案:基于深度卷积神经网络的细粒度图像分类方法,包括以下步骤:1)准备细粒度图像分类数据集,将训练数据划分为训练数据集和验证数据集;2)搭建细粒度图像分类的深度卷积神经网络模型,使用训练数据集训练模型,当训练的模型在验证数据集上达到设定的精度,保存网络模型参数;3)使用训练好的模型计算测试图像分类的标签或测试数据集的分类精度。本专利技术进一步的改进在于,步骤2)的具体实现方法如下:201)搭建细粒度图像分类的深度卷积神经网络模型时,根据图像类标签层级结构特性,对通用图像分类深度卷积神经网络的结构和损失函数进行改进;202)搭建细粒度图像分类的深度卷积神经网络模型时,在深度卷积神经网络的训练过程中,在网络的特征层使用large-margin损失函数进行监督。本专利技术进一步的改进在于,步骤201)的具体实现方法如下:2011)搭建细粒度图像分类的深度卷积神经网络模型时,在网络结构方面,用标签层数个全连接层替换通用图像分类神经网络的最后一个全连接层,网络特征层和各个全连接层两两之间有直接连接或者跨层连接;2012)搭建细粒度图像分类的深度卷积神经网络模型时,在损失函数方面,对2011)中新增加的全连接层,使用级联softmax损失函数进行训练;在细粒度图像分类的典型数据集中,类别标签通常根据它们的语义使用树形结构表示,其中叶节点和根节点分别对应细粒度级和粗粒度级标签;定义具有层次结构标签的图像数据集的数学符号如下:表示训练样本集,其中Xi表示第i个样本图像,n表示训练样本的总数;每个样本图像Xi对应一个有层次结构的类标签其中是第j层的类标签,C(j)是第j层类标签的数量,h是层次结构标签集的层数;假设细粒度类标签是第一级类标签,即是样本Xi的细粒度类标签,且C(1)是细粒度类的数量;对于图像Xi,用xi表示深度卷积神经网络特征层的输出,即xi为网络提取的Xi的特征向量;定义级联的softmax损失函数如下:其中表示整个网络的参数。本专利技术进一步的改进在于,步骤202)中搭建细粒度图像分类的深度卷积神经网络模型时,深度卷积神经网络的训练过程中,在网络的特征层使用large-margin损失函数进行监督,其中large-margin损失函数的定义说明如下:对于每个给定的细粒度类c,将剩下的细粒度类划分为两个组SP(c)和其中一类细粒度类与细粒度类c共享父粗粒度类别,另一类不与细粒度类c共享同一父粗粒度类别,细粒度类c的训练样本的特征向量集表示如下:其中,πc是属于类别c的训练样本的索引集,的平均向量表示为:其中,nc=|πc|,的类间距离函数表示为:对于细粒度类p和细粒度类q,设特征向量集和定义如下:和的类间距离表示为:其中,表示和之间仿射矩阵G(p,q)的第(i,j)个元素,是样本集中k近邻样本对的集合,H=[x1,…,xn],Ψ(p,q)是G(p,q)的拉普拉斯矩阵,即Ψ(p,q)=D(p,q)-G(p,q),i=1,2,…,n,tr(·)表示矩阵的迹;给定上述定义,GLM损失函数的两个约束推导如下:其中,α1和α2是两个预设的间隔,[x]+=max{x,0},且:在上述公式中,SP(c)由与c共享同一父粗粒度类别的细粒度类组成,是SP(c)中距离c最近的细粒度类别训练样本的特征向量集,是SP(c)中距离c最远的细粒度类别训练样本的特征向量集;此外,由与c不共享同一父粗粒度类的细粒度类组成,是中最接近类别c的训练样本的特征向量集;使用上述定义,两级标签结构的GLM损失定义为:同样的,三级标签结构的GLM损失推导如下:首先,对于每个给定的细粒度类c,除了将其余的细粒度类划分为两个组SP(c)和外,还将它们划分为SG(c)和分别为与细粒度类c具有相同的祖父粗粒度类和不同的祖父粗粒度类;接下来,将第三个约束添加到GLM损失函数中:c和中距离最近的细粒度类之间的距离比c和SG(c)中距离最远的细粒度类之间的距离大于预定义的间隔,用数学表达如下式:其中,α3是预定义的间隔,且使用上述定义,三层标签结构的GLM损失函数定义为:其中,和分别在前面定义;同理,将GLM损失函数扩展到一般的多层次结构标签的情况。相对于现有技术,本专利技术具有如下的优点:本专利技术提出的细粒度图像分类框架独立于并可应用于任何DCNN结构,具有很好的可移植性。具体的主要贡献有:本专利技术引入h个fc层来替换给定DCNN模型的顶层fc层,并用级联的softmax损失函数进行模型的训练,以更好地模拟细粒度图像类的h级分层标签结构。本专利技术提出广义大边缘(GLM)损失,使给定的DCNN模型明确地探索分级标签结构和细粒度图像类的相似性规律。本专利技术利用Caffe开发平台在3个最流行的深度卷积神经网络(AlexNet、GoogLeNet和VGG-19)和3个学术界广泛利用的细粒度图像分类数据集(Stanfordcar、CUB-200-2011和FGVC-aircraft)上对本专利技术所提出的框架进行了充分的评估验证。Stanfordcar数据集包含16185张图像,共196类;CUB-200-2011数据集包含11788张图像,共200类;FGVC-aircraft数据集包含10000张图像,共100类。图5、6、7中的表格分别列出了性能比较结果,在这三个表还包含了当前一些最具代表性的方法的测试结果。从这三个表可以看出,本团队提出细粒度图像分类的深度卷积神经网络训练方法,无论在什么样的网络上都能显著提高分类精度,充分证明了本团队所提框架的有效性。附图说明图1为Stanfordcar数据集的样本图像,该数据集的类别标签具两层级关系。图2为以改进AlexNet为例的两层标签结构细粒度图像分类方法示意图。图3为以改进AlexNet为例的三层标签结构细粒度图像分类框架示意图。图4为两层标签分层结构示意图。图5为在Stanfordcar数据集上的性能比较结果。图6为在CUB-200-2011数据集上的性本文档来自技高网...

【技术保护点】
1.基于深度卷积神经网络的细粒度图像分类方法,其特征在于,包括以下步骤:1)准备细粒度图像分类数据集,将训练数据划分为训练数据集和验证数据集;2)搭建细粒度图像分类的深度卷积神经网络模型,使用训练数据集训练模型,当训练的模型在验证数据集上达到设定的精度,保存网络模型参数;3)使用训练好的模型计算测试图像分类的标签或测试数据集的分类精度。

【技术特征摘要】
1.基于深度卷积神经网络的细粒度图像分类方法,其特征在于,包括以下步骤:1)准备细粒度图像分类数据集,将训练数据划分为训练数据集和验证数据集;2)搭建细粒度图像分类的深度卷积神经网络模型,使用训练数据集训练模型,当训练的模型在验证数据集上达到设定的精度,保存网络模型参数;3)使用训练好的模型计算测试图像分类的标签或测试数据集的分类精度。2.根据权利要求1所述的基于深度卷积神经网络的细粒度图像分类方法,其特征在于,步骤2)的具体实现方法如下:201)搭建细粒度图像分类的深度卷积神经网络模型时,根据图像类标签层级结构特性,对通用图像分类深度卷积神经网络的结构和损失函数进行改进;202)搭建细粒度图像分类的深度卷积神经网络模型时,在深度卷积神经网络的训练过程中,在网络的特征层使用large-margin损失函数进行监督。3.根据权利要求2所述的基于深度卷积神经网络的细粒度图像分类方法,其特征在于,步骤201)的具体实现方法如下:2011)搭建细粒度图像分类的深度卷积神经网络模型时,在网络结构方面,用标签层数个全连接层替换通用图像分类神经网络的最后一个全连接层,网络特征层和各个全连接层两两之间有直接连接或者跨层连接;2012)搭建细粒度图像分类的深度卷积神经网络模型时,在损失函数方面,对2011)中新增加的全连接层,使用级联softmax损失函数进行训练;在细粒度图像分类的典型数据集中,类别标签通常根据它们的语义使用树形结构表示,其中叶节点和根节点分别对应细粒度级和粗粒度级标签;定义具有层次结构标签的图像数据集的数学符号如下:表示训练样本集,其中Xi表示第i个样本图像,n表示训练样本的总数;每个样本图像Xi对应一个有层次结构的类标签其中是第j层的类标签,C(j)是第j层类标签的数量,h是层次结构标签集的层数;假设细粒度类标签是第一级类标签,即是样本Xi的细粒度类标签,且C(1)是细粒度类的数量;对于图像Xi,用xi表示深度卷积神经网络特征层的输出,即xi为网络提取的Xi的特征向量;定义级联的softmax损失函数如下:其中表示整个网络的参数。4.根据权利要求2所述的基于深度...

【专利技术属性】
技术研发人员:张玥龚怡宏石伟伟程德陶小语
申请(专利权)人:西安交通大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1