一种基于非线性重构模型的植物图像集的分类识别方法与流程

文档序号:11865395阅读:310来源:国知局
一种基于非线性重构模型的植物图像集的分类识别方法与流程
本发明涉及植物叶片图像集的自动分类识别系统,特别涉及一种k-means特征提取和基于深度学习的非线性重构模型的植物图像集的分类识别方法。
背景技术
:植物是地球上物种数量最多、分布最广泛的生命形式之一,并为人类的生存和发展提供必要的资源。然而随着人类生产活动的日益增加,生态环境不断地遭到破坏,从而导致众多的植物物种灭绝,对人类的生产和生活也产生了巨大的影响。因此对植物的分类识别具有非常重要的意义。然而单靠人工的操作是无法实现的,而且需要大量的人力和物力。近年来,随着计算机硬件性能的不断提高,数字图像采集设备的广泛使用,以及网络的普及应用,大量植物信息已经被数字化,而利用计算机处理数字植物信息可以避免传统研究过程中的工作效率低、工作量大且客观性难以保证等缺点。在植物图像集分类识别系统中,通常分为两个阶段,第一个阶段是特征的提取,第二个阶段是分类器的设计。在现有的植物图像集分类识别系统中学习或提取的特征一般是通过手动提取特征的方法如形状特征(傅里叶描述子、多尺度曲率空间、PHOG)、纹理特征(Gabor小波变换、局域二值模式、二值模式)、颜色特征(颜色矩、颜色直方图、颜色均值)等。尽管手动选择的特征在某些领域取得非常好的效果,但是当面对新的数据或者新的条件下,手动选择特征方法可能不一定能适合。对于图像集的分类方法主要分类两类:基于参数化模型的方法和基于非参数化模型的方法。基于参数化模型方法假设每个图像集服从某种概率分布,然后用K-L散度来度量两个概率分布之间的相似度,但这种方法当测试集和训练集没有强的统计相关性时,分类效果不佳。基于非参数化模型的方法通过用线性/仿射子空间、混合子空间、非线性流行、图像集协方差矩阵和字典来表示图像集,然后重定义图像集间的距离度量,但这些方法当遇到奇异值时分类效果不佳或者需要假设图像集数据分布在某种几何表面。近年来学习的深度学习,也能够用来自动的学习图像集数据潜在的流行结构。深度学习是机器学习的一个领域,其动机在于建立和,模拟人脑进行学习分析的神经网络,它模仿人脑的机制来解释数据。深度学习的网络结构含有多个隐含层,通过组合底层特征形成更加抽象的高层表示,以发现数据特征潜在的流行结构。但是随着隐含层层数的增多和每个隐含层中神经元个数的增加,导致需要学习的参数急剧增加,对运算性能提出了很高的要求,这也是深度学习需要解决的问题。技术实现要素:本发明的目的在于克服现有技术的不足,提出一种k-means特征提取和基于深度学习的非线性重构模型的植物图像集的分类识别方法。该方法提供了一种自动的特征提取方法和一种自动的学习数据潜在的流行结构,能够实现快速学习和高精度的分类识别。本发明解决其技术问题所采用的技术方案是:一种基于非线性重构模型的植物图像集的分类识别方法,对植物叶片图像进行预处理后,用k-means方法提取叶片图像的特征,然后PCA算法来降低特征的维度。用高斯RBMs非监督预训练非线性重构模型的参数。用预训练得到的参数为每一类植物叶片初始化一个非线性重构模型,并用该类的训练数据训练得到特定的模型参数。最后用测试样本的最小重构误差和测试集的最多投票策略来进行最终的类别判定。1、对图像进行预处理图像的预处理包含彩色图像灰度化,目标对象的边界提取,目标对象的切割,假设切割后的图像为x∈RN×M,N≤M,根据需要标准化块大小L×L,根据来缩放目标图像,最后将缩放后的图像放置于标准化块的中心,从而得到预处理后的图像。2、基于K-means聚类方法提取图像的特征向量从图像集中随机的提取m个图像块N=w×w并列向量化构成块矩阵X={x(1),…,x(m)},然后进行白化处理,根据k-means聚类方法对白化处理后的块矩阵进行聚类得到k个聚类中心c(k)。对于特征映射采用如下非线性映射函数:fk(x)=max{0,μ(z)-zk}(1)其中,zk=||x-c(k)||2,μ(z)表示z的均值;该激活函数将图像块到k个中心的距离大于这k个距离均值的赋值为0。对于预处理后的每张大小为L×L的图像,根据非线性映射函数f和大小为w×w,w<L子块,得到该子块的非线性表示进一步的,整幅图像可以得到((L-w)/s+1)×((L-w)/s+1)×K特征矩阵。当步长s=1时,整幅图像就可以得到(L-w+1)×(L-w+1)×K特征矩阵。然后将特征矩阵按四个象限分别池化并级联池化的结果,得到4K×1维的特征向量。3、使用PCA方法对得到的特征向量进行降维4、建立非线性重构模型并训练非线性重构模型的参数非线性重构模型能够自动的学习数据潜在的非线性结构,包括一个输入层、三个隐含层和一个输出层,并且每个隐含层的“神经元”较少,有效地减少了模型需要训练的参数。为了使网络运行的更好,采用高斯RBMs通过非监督预训练的方法来逐层训练得到模型的初始化权值,避免模型陷入极小值和出现梯度弥散。每个类用得到的权值初始化模型参数,并用各自的训练集训练模型,得到各自的模型参数。最后根据测试样本的最小重构误差和测试集的最多投票策略进行类别的判定。具体包括如下步骤:(1)建立非线性重构模型非线性重构模型结构是一个自动编码器,由编码器和解码器组成。编码器和解码器分别含有两个隐含层,其中共享第二个隐含层。编码器的两个隐含层分别用如下公式表示:h1=s(We(1)x+be(1))]]>h=s(We(2)h1+be(2))---(2)]]>解码器的两个隐含层分别用如下公式表示:x′′=s(Wd(1)h+bd(1))]]>x′=s(Wd(2)X′′+bd(2))---(3)]]>其中,其中,是网络的权值矩阵,第i层有di各结点,是偏差向量,s(·)表示非线性激活函数,常用的非线性激活函数有sigmoid函数和正切双曲线函数。编码器部分是为了找到输入数据的一种紧凑的低维表示;编码器的参数是结合编码器和解码器并联合训练编码-解码结构通过最小化代价函数来重构输入数据。因此,可以将解码器定义为结合非线性函数从编码器的输出重构输入数据。模型的参数可以表示为θ={θW,θb},其中(2)模型参数的初始化这里使用随机梯度的反向传播算法类分别用上述的模型为每一类训练一个特定的模型,但是不适当的模型初始化权值,训练的模型很可能陷入局部的极小值,或者出现梯度弥散的问题。为了解决上述的问题,这里采用高斯RBMs,通过非监督的预训练方法来逐层初始化模型的权值。由于标准的RBMs的结点只能取0或1,这里通过修改其能量函数将其扩展到实数域。修改后的能量函数为:EGRBM(v,h)=Σi(vi-bi)22σi2-Σjcjhj-Σijwijviσihj---(4)]]>其中,bi和cj分别是可视层单元vi及隐藏层单元hj的偏置,wij是它们之间的权重系数,σi表示可视层实值输入数据的标准差,单个RBM的训练就是学习模型的参数{W,b,c};。由于对比差异的方法不适合高斯RBMs参数的学习,修改的高斯RBMs的概率分布如下:p(hj=1|v)=sigmoid(Σiwijvi+cj)---(5)]]>p(vi|h)=1σi2πexp(-(vi-ui)22σi2)---(6)]]>其中,因为我们的数据都是实值的,所以就可以用高斯RBMs来初始化模型的权值和由于编码层学习的权值分别与相对应的解码层的权值关联,则有:至此就得到了非线性重构模型的初始化权值。模型的其他参数和通过获取。(3)学习特定的类模型预训练得到模型的初始化权值后,对于K个类,分别为每个类训练微调模型的权值,这样就得到K个特定的模型。每一个模型的参数θ(c)是再反向学习中通过随机梯度下降来最小化类Xc中所有训练样本x(t)的重构误差得到的。J(θ;x(t)∈Xc)=Σx(t)||x(t)-x′(t)||2---(7)]]>为了避免过拟合和提高可扩展性,引入了正则化的代价函数,添加了权重延迟判罚项Jwd和稀疏约束项Jsp的代价函数形式为:Jreg(θ;x(t)∈Xc)=Σx(t)||x(t)-x′(t)||2+λwdJwd+λspJsp---(8)]]>其中,λwd、λsp为正则化参数,Jwd确保所有隐含层的权重值是一个很小的值,其函数形式为:Jwd=Σi2||We(i)||F2+Σi2||Wd(i)||F2---(9)]]>Jsp确保第i个隐含层的第j个单元的平均激活度尽可能的接近稀疏目标值ρ(一个很小的值),它是根据KL散度定义的,其函数形式为:Jsp=Σi3ΣjKL(ρ||ρ‾j(i))=Σi3Σjρlogρρ‾j(i)+(1-ρ)log1-ρρ‾j(i)---(10)]]>类特定模型参数θ(c)是通过用训练集Xc训练正则化的非线性重构模型得到:θ(c)=minθJreg(θ;x(t)∈Xc)---(11)]]>5、根据测试样本的最小重构误差和测试样本集的最多投票策略来判定植物图像集的类别给定一个测试样本集我们通过所有的类模型参数θ(c),c=1…k来重构每一个测试样本x(t)∈Xtest。如果x'(t)(c)是x(t)通过模型参数θ(c)重构得到的,则重构误差为:r(t)(c)=||x(t)-x'(t)(c)||2(12)根据最小重构误差来判定测试样本x(t)的类标签:y(t)=argmincr(t)(c)---(13)]]>测试样本的最小重构误差只有从用与本测试样本相同的训练集训练的模型中获得,据此,测试集Xtest的标签ytest通过测试样本投票最多的类决定:ytest=argmaxcΣtδc(y(t)),δ(c)(y(t))=1,y(t)=c0,otherwise---(14).]]>本发明具有如下有益效果:本发明方法提供了一种自动的特征提取方法和一种自动的学习数据潜在的流行结构,能够实现快速学习和高精度的分类识别植物图像集。以下结合附图及实施例对本发明作进一步详细说明,但本发明的一种基于非线性重构模型的植物图像集的分类识别方法不局限于实施例。附图说明图1为本发明方法的主流程图;图2是本发明的整体流程图;图3是本发明方法的图像预处理流程图;图4是本发明方法的K-means聚类方法流程图;图5是本发明方法的图像特征提取流程图;图6是本发明方法的非线性重构模型示意图;图7是本发明实施例用到的植物数据库的部分样本示例图;图8是本发明实施例用到的植物数据库的另一部分样本示例图;图9是不同样本数目对本发明方法的分类识别的影响结果图。具体实施方式参见图1,一种基于非线性重构模型的植物图像集的分类识别方法,包括如下步骤:步骤101,对图像进行预处理;步骤102,基于K-means聚类方法提取图像的特征向量;步骤103,使用PCA方法对得到的特征向量进行降维;步骤104,建立非线性重构模型并训练非线性重构模型的参数;步骤105,根据测试样本的最小重构误差和测试样本集的最多投票策略来判定植物图像集的类别。上述各步骤的详细说明请参考“
发明内容”部分。为了对本发明方法有一个更直观的理解,本发明方法流程图的另一种表示方法如图2所示。图2中,首先对训练图像集进行图像预处理、K-means特征提取和PCA降维,提取出图像的特征,再通过建立非线性重构模型和训练模型的初始化参数后获取到各个类特定模型;最后根据测试样本的最小重构误差和测试样本集的最多投票策略来判定植物图像集的类别。图像预处理的过程如图3所示。具体包括彩色图像灰度化、边界提取、目标对象的切割。进一步的,假设目标对象切割后得到目标图像的大小为x∈RN×M,N≤M,且需要标准化块的大小为L×L,则根据来缩放目标图像,最后将缩放后的图像放置于标准化块的中心,从而得到预处理后的图像。基于k-means的聚类流程图如图4所示。通过随机的提取大量的图像块并列向量化,构成块矩阵;然后进行块矩阵的白化处理;最后根据K-means聚类算法求得k个聚类中心。图像特征提取过程如图5所示。对于预处理后的每张大小为L×L的图像,根据非线性映射函数f和大小为w×w,w<L子块,得到该子块的非线性表示则当步长s=1时,对于整幅图像就可以得到(L-w+1)×(L-w+1)×K特征矩阵;然后将特征矩阵按四个象限分别池化并级联池化的结果,得到4K×1维的特征向量。非线性重构模型如图5所示。用高斯RBMs通过非监督的预训练方法得到模型的初始化权值。然后每个类使用各自训练集数据训练得到一个特定的模型。最后根据测试样本的最小重构误差和测试集的最多投票策略进行植物叶片图像集类别的判定。本实施例中,通过实验进行验证。实验中使用的数据集来自中国科学院智能计算实验室,该数据集包含220个类,17000多个植物图像。实验中从数据集中选择出85个类作为子集,其中每个类至少包含260张图像,里面的图像具有高度的可变性(如图像的大小,叶片的正反面放置,叶片的朝向等)。植物数据库部分样本示例图如图7、图8。在预处理中,将彩色图像标准化为大小为80*80的灰度图像。在k-means特征提取中,设置K=800,块大小为8*8,步长s=1,运用非线性映射函数,得到73*73*800的特征矩阵,然后四象限分别池化并级联池化结果,最后每张图像得到1*3200特征。然后利用PCA方法进行降维。对于非线性重构模型,隐含层设置为[400100400],每个类随机的选择90个作为训练数据,90个作为测试数据,每类训练数据和测试数据无交集。最后根据测试样本的最小重构误差和最多投票策略进行类别判定。重复实验10次,以获得真实客观的评价。从实验的结果来看,实验的平均准确率为100%且平均的运行时间为740秒。图9为样本数目的变化对算法分类准确率的影响,每个实验重复10次,以获得知识客观的评价。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1