文献标识码: A
DOI:10.16157/j.issn.0258-7998.2017.07.033
中文引用格式: 白艳宇,申超群,杨新锋. 结合SIFT特征和神经网络池的物体分类方法[J].电子技术应用,2017,43(7):130-134,139.
英文引用格式: Bai Yanyu,Shen Chaoqun,Yang Xinfeng. An object classification method combing with SIFT features and neural network pool[J].Application of Electronic Technique,2017,43(7):130-134,139.
0 引言
基于图像的物体分类是计算机视觉领域的基础研究课题,在人工智能、自动化生成等领域应用广泛[1]。物体分类的关键是提取图像特征和设计分类器。这两个方面目前的成果都比较多,如特征提取方面,目前应用比较成熟的有Haar特征[2]、方向梯度直方图(Histograms of Oriented Gradients,HOG)特征[3]、局部二元模式(Local Binary Pattern,LBP)特征[4]、尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)特征[5]等。在分类器设计方面,目前常用的有Adaboost分类器、支持向量机(Support Vector Machine,SVM)分类器、决策树、随机森林、神经网络等[6-7]。针对不同的图像内容,特征的表述能力也不尽相同。文献[8]提出一种基于Kolmogorov-Sinai熵的分类方法,通过构建模糊集进行物体分类。文献[9]采用图像局部区域的梯度特征来描述特征,并采用稀疏分布构建图像描述子,能有效提高物体的分类效果。文献[10]结合近似Fisher核特征和词袋模型,实现物体的有效分类。
为了进一步提高物体分类的性能,本文提出了一种结合SIFT特征和神经网络池的物体分类方法,主要创新是提出了神经网络池的特征分类方法。该方法采用径向基神经网络构建基元分类器,通过重复迭代方式构建基元分类器集合,结合增强技术组建神经网络池,采用朴素贝叶斯分类器预测特征分类结果,有效提高了物体分类性能。
1 本文方法
本文提出一种结合SIFT特征和神经网络池的物体分类方法。对于不同物体的图像集合,首先提取图像的SIFT特征,然后构建神经网络池分类器,实现物体的分类。其中,SIFT特征是目前非常成熟的特征提取方法,本文将在实验部分对不同特征提取方法进行对比实验,验证SIFT方法在物体分类领域的优势。基本框架如图1所示。
由图1可见,神经网络池的构建过程主要分为三个阶段:(1)基元分类器的构建,本文采用径向基(Radial Basis Function,RBF)神经网络来构造基元分类器;(2)神经网络池的组建,本文采用重复迭代和增强技术组建神经网络池;(3)最终分类器的构建,本文采用朴素贝叶斯分类器作为最终的分类器,对神经网络池中各个基元分类器集合的预测结果进行融合,得到最终的预测结果。
1.1 基元分类器
目前,基元分类器有很多种,如Adaboost、SVM、决策树、神经网络等。本文采用径向基神经网络构建基元分类器。RBF神经网络是一种3层的前向网络,由输入层、隐含层和输出层组成。对于特征分类而言,输入层为特征向量,输出层为分类结果。中间的隐含层的变换函数采用径向基函数。该函数是一种非负非线性函数,对中心点径向对称且衰减。输入层与隐含层之间采用权重向量,相当于一种非线性映射。同样地,隐含层与输出层之间也是一种非线性映射,采用不同的权重相连接。在径向基神经网络中,激活函数采用径向基函数,以输入向量与权值向量之间的距离作为自变量,调整神经元的灵敏度。随着权值与输入向量之间距离的减少,网络输出是递增的。
1.2 神经网络池
本文将多个基元分类器构建成一个基元分类器集合,由各个类别的基元分类器集合组建神经网络池。具体方法是:在基元分类器构建阶段,将K个二元神经网络{BNNi|i=1,2,…,K}应用于数据集合D,得到K个基元分类器,记为{Ci|i=1,2,…,K}。将这一过程重复执行T次,可以对每一个类别ci生成T个基元分类器集合,记为{ECi|i=1,2,…,T}。
在构建神经网络池中的每一个基元分类器集合时,本文采用了一对多的分类策略。在二元策略中,分类器对未知样本x的预测是二元的,也即该样本x的预测结果只有两个,即属于某一类别或者不属于某一类别。对于未知样本x,基元分类器C中的K个预测结果可以组合生成一个基元分类器集合。每一个基元分类器集合对未知样本x的预测结果可以用类别出现的概率表示为:
其中,S(x)表示基元分类器集合的预测结果,其值为0或1,由设定的概率阈值θ1决定。因此,二元策略允许每一个独立的基元分类器集合接受或者拒绝某一个类别的出现。该策略将一个复杂的多元分类问题转化为多个简单的二元分类的子问题。P(x)表示类别ci出现的概率,由基元分类器{Ci|i=1,2,…,K}预测得到,表示为:
其中,hi表示第i个基元分类器判断x属于类别ci的分类结果,取值为0或1,0表示x不属于类别ci,1表示x属于类别ci。
为了分类一个未知样本x,N个基元分类器集合对样本x给出N个预测结果,本文采用朴素贝叶斯模型作为最终的预测器,对这N个预测结果进行综合。这部分内容在下一节介绍,下面先介绍神经网络池的训练过程。
作为一个分类器,基元分类器集合依靠径向基神经网络的输出来计算概率,用于估计某一类别是否存在。某一类别是否存在的概率同样在每一个基元分类器集合分类器的训练阶段计算,后续用于计算朴素贝叶斯分类器的先验概率。先验概率分布用于估计未知样本的特征向量所对应的类别的出现概率。因此,样本的特征向量输入到神经网络池的多个基元分类器集合之后,最终得到一个概率值,作为样本分类的依据。本文采用增强技术来训练神经网络池,最后采用朴素贝叶斯分类器构建最终的预测器。
本文通过为二元神经网络随机选择训练样本进行重复训练来解决过拟合问题。在训练基元分类器集合时,借鉴词袋的思想,随机从整体训练数据中选取一定数量的子样本集,每一个样本子集用于训练一个基元分类器。
基元分类器集合通过对大量的二元神经网络进行学习得到。因此,每一个基元分类器集合很难确定一个最优的二元神经网络数量。本文训练了许多冗余的二元神经网络,以此来实现最优的分类性能。得到许多基元分类器集合之后,即构建了神经网络池。
本文将增强技术引入到神经网络池的训练过程,由增强技术组合多个基元分类器集合。这些基元分类器集合通过多次迭代构建,每一个新的基元分类器集合都受上一级基元分类器集合的预测误差的影响。增强技术鼓励新的基元分类器集合对前一级分类错误的样本尽可能正确分类,方法是依据它们的分类性能来调整权重。初始时,为所有训练样本(样本数为N)分配相同的权重,表示为:
然后,随机选取一个训练样本子集来训练一个二元神经网络,用于构建基元分类器集合。并依据基元分类器集合的性能来修改每一个样本的权重,正确分类样本的权重降低,误分类样本的权重增加。
本文将训练数据划分为两组:低权重组和高权重组。然后,依据该基元分类器集合的性能来增加或者减少训练样本的权重。结果是,部分样本拥有很高的权重,而部分样本可能拥有很低的权重。权重值反映了训练样本被误分类的频率。本文方法通过维护权重的变化率,构造了一种有效的基元分类器集合生成策略。其中,权重变化率主要依赖于当前基元分类器集合的分类错误率。实现流程为:
首先,从整个训练数据集中随机选择训练样本子集Se,用于训练二元神经网络,构造基元分类器集合。每一个基元分类器集合的输出用于量化输入特征向量与输出类别之间的关系,可以采用类别出现的概率来表示,如式(1)所示。其中,每一个基元分类器集合的权重的计算方法为:
其中,εt表示基元分类器集合的分类错误率。对于特征分类而言,在训练样本上的分类正确率的期望值应当大于零。如果该值不大于零,则丢弃对应的基元分类器集合。每一个基元分类器集合的错误率可以表示为:
在更新了训练样本的权重之后,将权重归一化到N。对于每一类图像,权重更新过程执行T次,构建T个增强的基元分类器集合,组建神经网络池。
综上所述,神经网络池的训练过程伪代码如下:
输入:训练样本集{x1,y1,w1}、{x2,y2,w2}、…、{xN,yN,wN},类别数E,基元分类器集合数量T,基元分类器数量K,阈值θ1、θ2,以及随机选取的样本子集中的样本数量M。
输出:神经网络池{SBNNi}。
过程:
1.3 朴素贝叶斯分类器
目前常采用投票的方式来融合多个分类器的预测结果,而本文提出一种新的融合思路,采用概率分布来融合神经网络池中各个基元分类器集合的预测结果,减少个别基元分类器奇异的问题。具体地,本文采用朴素贝叶斯模型来组合多个基元分类器,提供了一个最终预测器与基元分类器之间的桥梁。朴素贝叶斯分类器作为最终的预测器,依据预测误差最小准则,在神经网络池中进行学习和预测。
考虑到基元分类器集合是二元分类器,其输出的决策值是二值形式。因此,本文采用传统的朴素贝叶斯分类器来分类这些二值数据,具体是采用多维伯努利(Bernoulli)分布的形式。对于一个D维的输入特征向量d,其对应的类别c可以表示为:
2 仿真实验与分析
2.1 实验说明
本文采用神经网络池进行物体分类实验,选择国际上公开的VOC-2007数据集对算法性能进行评测。该数据集共包含20个物体类别。其中,训练集中图像样本5 011幅,测试集中图像样本4 952幅。
2.2 神经网络池训练过程的参数说明
在训练基元分类器时,涉及一些对训练结果影响较大的参数。一是基元分类器集合的错误率上限θ2。在训练过程中,可以通过估算每一个基元分类器的分类类别,计算分类错误率指标,如果基元分类器的分类错误率大于设定的错误率上限θ2,则丢弃该基元分类器,重新构建一个新的基元分类器。错误率上限越大,丢弃的基元分类器越少,训练速度越快,但最终的错误率就可能提高,本文取θ2为0.01。
另外,学习速率对训练速度和分类错误率的影响也比较大。学习速率太小会导致过拟合,且导致训练效率降低。然而,学习速率过大尽管会加快训练速度,但也有可能导致分类错误率提高。本文设定的学习速率参数为0.4。
最大迭代次数阈值用于作为基元分类器训练的一个终止条件,当迭代次数大于该阈值时,停止基元分类器的训练过程。在本文中,最大迭代次数设置为1 000。
随机选取一定数量的隐含神经元可能导致过拟合或者欠拟合问题。这里,采用不同数量的隐含层神经元来训练各种基元分类器。实验中,当隐含层数量达到9时识别结果最好。因此,本文的径向基神经网络的隐含层数量设为9。
在训练神经网络池时涉及的参数取值为:E=20、T=100、N=5 011、M=2 000、K=20、θ1=0.5。
2.3 特征提取方法对比与选择
常用的图像特征有Haar、HOG、LBP和SIFT,下面分别采用这4种图像特征,结合本文的神经网络池进行物体分类实验。以分类正确率为评价指标来选取最优的图像特征。分类正确率定义为分类正确的图像数量与图像总数的比值。
图2显示了不同特征对应的分类正确率。很明显,SIFT特征的分类正确率明显高于其他3种特征。故本文选择SIFT特征和神经网络池分类器结合的方法进行物体分类。
2.4 不同物体分类方法的实验结果与分析
本文选择文献[8]、[9]和[10]所述的物体分类方法进行对比实验,实验所用训练数据集和测试数据集都是相同的,计算机处理平台也是相同的,具体为:CPU四核 3.6 GHz、内存16 GB。实验结果如图3所示。
由图3可见,采用本文所述的SIFT特征和神经网络池分类器相结合的方法取得了最高的分类正确率指标,比排名第2的文献[10]方法高2.3%。
表1给出了4种方法的物体分类时间指标,该时间是指从输入一幅图像到输出分类结果所需要的平均时间,不包括训练过程所耗费的时间。由表1可见,本文方法的分类时间最短,说明本文方法的运算效率最高。综合评价,本文方法的分类性能优于所对比的3种方法。
3 结束语
本文提出了一种结合SIFT特征和神经网络池的物体分类方法。该方法选择经典的SIFT特征描述特征,通过构建神经网络池分类器实现特征分类。其关键是构建神经网络分类器,设计思想是采用随机采样方式选择样本子集,采用径向基神经网络为每一个样本子集构建基元分类器,通过重复迭代方式得到许多基元分类器集合,再结合增强技术组建神经网络池,最后采用朴素贝叶斯分类器进行融合预测。实验表明,本文方法分类正确率高且分类耗时少。
参考文献
[1] 黄凯奇,任伟强,谭铁牛.图像物体分类与检测算法综述[J].计算机学报,2014,37(6):1225-1240.
[2] CHANG Z,BAN X,WANG Y.Fatigue driving detection based on Haar feature and extreme learning machine[J].Journal of China Universities of Posts & Telecommunications,2016,23(4):91-100.
[3] 陆星家.基于HOG和Haar特征的行人追踪算法研究[J].计算机科学,2013,40(s1):199-203.
[4] SATPATHY A,JIANG X,ENG H L.LBP-based edgetexture features for object recognition[J].IEEE Transactions on Image Processing,2014,23(5):1953-1964.
[5] WANG Y,BAN X,CHEN J,et al.License plate recognition based on SIFT feature[J].Optik-International Journal for Light and Electron Optics,2015,126(21):2895-2901.
[6] 许剑,张洪伟.Adaboost算法分类器设计及其应用[J].四川理工学院学报:自然科学版,2014,27(1):28-31.
[7] WANG Y,YANG M,WEI G,et al.Improved PLS regression based on SVM classification for rapid analysis of coal properties by near-infrared reflectance spectroscopy[J].Sensors & Actuators B Chemical,2014,193(3):723-729.
[8] PHAM T D.The Kolmogorov-Sinai entropy in the setting of fuzzy sets for image texture analysis and classification[J].Pattern Recognition,2016,38(53):229-237.
[9] SUDHAKARAN S,JAMES A P.Sparse distributed localized gradient fused features of objects[J].Pattern Recognition,2014,46(4):1538-1546.
[10] CINBIS R G,VERBEEK J,SCHMID C.Approximate Fisher Kernels of non-iid image models for image categorization[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2015,38(6):1084-1098.
作者信息:
白艳宇1,申超群2,杨新锋3
(1.中原工学院信息商务学院 信息技术系,河南 郑州451191;
2.河南机电职业学院,河南 郑州451191;3.南阳理工学院 计算机与信息工程学院,河南 南阳473004)