
传统图像分类与深度学习分类算法比较研究.docx
15页传统图像分类与深度学习分类算法比较研究 杨涛Summary:传统图像分类方法需要对图像进行手工特征设计和提取,而这些特征只是包含了图像的部分信息,通过对卷积神经网络算法进行特征进行提取,采用不断的训练大量不同组的卷积核来依次获得图像低级特征和高级特征研究结果表明,传统的分类算法的平均正确率在50%左右,而卷积神经网络的分类正确率能够达到90%以上,基于卷积神经网络的图像分类算法提升效果显著Key:图像分类;支持向量机;卷积神经网络:TP391.4;TP18 文献标志码:A :1008-4657(2020)02-0027-080 引言图像分类是计算机视觉中基础的一个任务,也是几乎所有的基准模型进行比较的任务图像分类就是使用给定的标签集合,当输入一幅图像时,在标签集合当中寻找一个合适的类别标签,将分类标签分配给该输入图像图像在分类之前需要进行预处理,原始图像包含许多干扰、噪声等,因此需要对图像进行裁剪,去噪,增强等操作经过预处理以后的图像受到的干扰噪声减少,有助于提高图像的分类准确度传统的机器学习算法当中,图像分类需要提取图像的特征来对图像进行描述当以整幅图像作为分类算法的输入时,算法计算的数据量庞大,其次图像包含背景等冗余信息,会导致分类效率降低,正确率下降。
特征提取的主要目的是对原始图像进行降维,将原图像映射到一个低维特征空间,得到最能反映图像本质或进行区分的低维样本特征图像的特征分为四大类:颜色特征,主要包括颜色直方图、颜色集、颜色矩等不同特征;纹理特征[1],常用的有灰度共生矩阵[2](Gray-Level Co-occurrence Matrix,GLCM)、局部二值模式[3](Local Binary Pattern,LBP)特征、方向梯度直方图[4](Histogram of Oriented Gradient,HOG)特征等;形状特征,如霍夫曼变换、傅里叶变换、小波变换等;空间关系特征,如模型的姿态估计方法、学习的姿态估计方法等提取到不同的特征以后,需要将特征作为输入送入到不同的机器学习算法当中传统的图像分类算法有很多,K邻近分类算(K-Nearest Neighbor,KNN)法是数据挖掘分类技术中最简单的方法,也可以用在图像分类的任务上,赵玉丹等[5]提出使用模糊KNN做刑偵场景图像分类贝叶斯分类器是一种基于条件概率的分类方法,通过给定对象的先验概率,利用贝叶斯公式求解出其后验概率在刘晓等[6]提出使用朴素贝叶斯算法对遥感图像分类。
黄亦其等[7]提出用朴素贝叶斯的算法对甘蔗种芽进行完好性进行检测支持向量机(Support Vector Machine,SVM)是基于统计学习理论当中一种二分类模型,因其坚实的理论基础及诸多良好特性而被广泛使用Cortes C等 [8]提出基于梯度直方图(HOG)结合SVM的人体识别算法达到了很高的精度BP神经网络是一种基于误差反向传递的算法,其参照生物神经元模型发展起来卷积神经网络近年来使用广泛的神经网络模型,在图像分类方面,各种更加优秀的网络优秀模型被提出,从最初的立昆杨网络(Lecun Network,LeNet)、亚里克斯网络(Alex Network,Alexnet)、视觉几何群网络[9](Visual Geometry Group Network,VggNet)到谷歌的扩散网络[10](Inception Network,InceptionNet)、残差网络 [11](Residual Network,ResNet),卷积神经网络做图像分类的精度不断提升,甚至超过人类水平1 图像特征提取图像的分类识别主要经过图像预处理、特征提取、分类器设计等步骤其中特征提取是极为重要的环节,图像特征提取是核心问题,特征提取的方式以及结果将直接影响分类的精度。
1.1 颜色特征颜色特征是一种全局特征,描述了图像或者图像局部区域所对应的颜色信息颜色特征中最常使用的颜色空间为RGB(Red Green Blue)颜色空间和HSV(Hue, Saturation,Value)颜色空间描述颜色特征的方法有很多,主要分为颜色直方图、颜色集、颜色矩、颜色聚合向量及颜色相关图1.2 纹理特征纹理特征描述了图像中重复出现的局部模式与他们的排列规则,反映了图像或图像区域所对应的表面性质纹理特征的优势在于,无论图像怎么旋转其纹理特征不会发生改变,又较强的抗干扰能力但是当图像的分辨率发生变化时候,纹理特征则可能发生较大的变化,此外光照,反射也可能会影响纹理特征灰度共生矩阵(GLCM,Gray-Level Co-occurrence Matrix)通过计算灰度图像得到他的共生矩阵,然后通过计算共生矩阵来得到矩阵部分的特征值,来分别代表图像的某些纹理特征常用的基于灰度共生矩阵构建的统计量的纹理特征有:能量,熵,对比度,相关性1.3 形状特征形状特征采用一种基于图像轮廓及区域边界的特征描述但由于其数学模型还是不够完善,本文将主要使用颜色及纹理特征作为分类器的输入2 分类算法在机器学习的分类问题当中,主要分为无监督学习和监督学习,监督学习根据已有的数据集,知道输入和输出结果之间的关系,根据这种已知的关系,训练得到一个最优的模型。
即给定样本的输入和输出标签,通过训练,分类算法可以找到输入特征与输出标签之间的联系,当给定一个未标注新样本时,分类算法可以学习到的知识输出一个类别标签无监督学习主要是根据数据特征之间的内在关系,结构特征的差异将数据分为不同的类别2.1 K近邻算法简称KNN(K-Nearest Neighbor)是一种非常简单的机器学习预测、分类算法当给定一个测试样例时,如果离它最近的k个训练数据大多数属于同一个类别,则认为该测试数据也属于这个类别如何衡量两个样本之间的距离是该算法的关键之处常用的距离衡量方式主要有欧式距离、曼哈顿距离、余弦距离等等其中欧式距离使用的最为广泛KNN作为一个实用的机器学习分类算法,其优点在于模型简单、通俗易懂、对于简单问题分类准确率较高、训练时间复杂度较低;但缺点也很明显,该算法计算量大、占用较大的储存空间,当特征维数变多时算法效率低下2.2 朴素贝叶斯分类算法(Naive Bayes)Bayes算法是一类利用概率统计知识进行分类的算法,该算法核心思想基于贝叶斯定理,主要用于预测未知类别隶属于各个类别的可能性,选择其中可能性最大的一个类别作为该样本的最终类别在数据集较大的情况下能够获得较高的准确率。
在使用贝叶斯算法时,为了方便建模计算,通常假定给定样本的各个属性之间相互条件独立,这种假定一定程度上会降低算法的分类精度,但是在实际的应用场景当中,能够有效降低算法的复杂性根据贝叶斯定理,对于一个分类问题,给定具有m个特征维度的样本的情况下,且假定各个特征之间相互独立全概率公式(1)表征了朴素贝叶斯分类算法的具体计算方式朴素贝叶斯分类算法的优点是对于数据缺失不敏感,对待预测的样本,分类过程快速高效;缺点是朴素贝叶斯算法分类时假设特征之间相互独立,当特征之间存在关联性时,会导致分类效果不好2.3 支持向量机支持向量机(Support Vector Machine)是一种监督式的学习方法,它是一种二分类的线性模型,目的是寻找一个超平面来对样本进行分割,分割的原则是正负样本之间间隔最大化,最终转化为一个凸二次规划问题来求解SVM是一种二分类的算法,如何实现用SVM对多个类别的划分,主要有两种不同的思路:分别是一对一方法和一对多的方法,一对多的方法是指在训练时依次把某个样本归为一类,其他剩余的样本归为另一类,这样k个类别的样本就构建了k个SVM一对一的方法,训练时对任意两类样本之间设计一个SVM,因此k个类别的样本需要设计k(k-1)/2个SVM分类器。
当对一个未知样本进行分类时,采用投票的方式,最后得票最多的类别即为该未知样本的类别在本研究中将采用一对一的方式训练SVM分类器SVM不需要大量的训练样本,只需少量样本就可达到很好的分类效果单样本在低维平面类线性不可分时,通过核函数映射到高维平面以后,样本就能够线性可分但当训练样本过大时候,SVM算法的计算内存和时间消耗巨大,效率变慢2.4 BP神经网络人工神经网络(Artificial Neural Network,ANN),是一种模仿生物神经网络的结构和功能的数学模型,用于对函数进行估计和近似BP[12](Back Propagation)神经网络是人工神经网络当中的一种,广泛的用于机器学习领域当中BP[13]神经网络的学习过程由信号的正向传播与误差的方向传播两个过程组成信号正向传播时,输入样本从输入层传入,经过隐藏逐层处理后,信号流入输出层当输出层的实际输出与期望输出不符,则将进入输出与期望之间的误差反向传播过程该过程将输出误差的梯度通过隐藏层向输入层逐层反传,将误差分配给各层的所有单元从而获得各层单元的误差信号,该误差信号将作为修正各个神经元权值的依据BP神经网络的优点是能够自适应、自主学习,且具有较强的非线性映射能力,以及较强的泛化能力。
但BP神经网络由于是全连接结构,因此网络参数较多,收敛速度较慢BP神經网络由于采用梯度下降算法,容易陷入局部最优解2.5 卷积神经网络卷积神经网络(Conventional Neural Network,CNN)是一种前馈神经网络,专门针对图像识别问题设计而成,模仿人类识别图像的多层过程:眼睛观察图像;大脑皮层某些细胞进行初步处理,发现形状边缘、方向;抽象判定形状;进一步判定图像类别本文构建的卷积神经网络的结构图如图1所示其中输入数据为图像,以数字矩阵来表示卷积层中包含大量的卷积滤波器,这些滤波器通过在原图像中按照一定规律滑动,与原图像对应的区域做卷积运算,每一个滤波器都可以得到一张特征图,每个卷积滤波器提取的图像特征都不一样,滤波器当中的参数通过正态分布函数来初始化,通过当前网络输出与真实输出之间误差的梯度反向传递,逐层更新滤波器当中的参数,最终结果让网络的输出与真实输出之间的误差越小越好卷积过程之后,通过一个激活函数来限定卷积输出的范围,通常采用的激活函数为Relu,Sigmoid,Tanh等函数其中Sigmoid,Tanh激活函数容易导致神经网络当中梯度消失或者爆炸[14]等问题。
由于Relu函数为线性,非饱和,且其导数为一,输出非负,因此简化了神经网络的计算复杂度的同时,也不会造成梯度消失或爆炸问题,能够使神经网络快速收敛采样层中数据采样是为了降低数据的维度,以2*2个像素的正方形窗口,步长为2,依次在特征图中滑动,只保留窗口当中最大的像素值或者窗口中的平均像素值,经过该操作以后特征图缩小至原来特征图的面积的四分之一,大大减少了网络的计算量全连接层的输出为列向量,可以将卷积神经网络理解成为一个编码器,其中全连接层输出的是该图像的编码向量oftmax层输出列向量,其中向量的长度等于图像需要分类的类别总数,向量中的每一位都代表了一个分类类别其数值大小代表输入图片为该类别的概率大小,该向量所有元素的值和为一优化的过程就是不断更新卷积网络当中滤波器的参数值,使得最终的输出向量的某个类别的概率最大,则该类别就是输入图像的真实类别卷积神经网络由于共享卷积核,大大减少了网络模型的参数量,提高了计算效率使用多个卷积核可以提取到图像各种不同的特征,避免了单一特征对分类结果产生不利影响低层的卷积核提取边缘,线等语义较低的特征,高层的卷积核提取形状,物体轮廓等特征但是卷积神经网络对物体的空间关系识别能力不强,举例来说,当人脸肖像五官位置发生互换,而卷积神经网络判定为人脸的概率依然很高。
当图像发生旋转之后,卷积神经网络的识别能力变差3 实验结果比较与分析3.1 数据集介绍本次。
