一种基于多通道残差网络的珍珠分类方法与流程

文档序号:13618225阅读:289来源:国知局

本发明涉及图像处理和模式识别技术领域,具体涉及一种基于多通道残差网络的珍珠分类方法。



背景技术:

珍珠是一种由软体动物生产的硬的、圆滑的产物。珍珠一般被用在首饰和珍宝行业中。中国是淡水珍珠的生产大国,其产量占世界产量的95%。浙江省诸暨市被誉为“中国珍珠之乡”,其淡水珠养殖面积已达38万亩,拥有珍珠加工企业1500多家,是我国淡水珍珠养殖、加工和销售的最大基地,总产量占全国总产量一半以上。

随着生活水平的提高,人们对珍珠加工品的需求也不断提升。珍珠的价值主要和其形状、纹理和大小等特征有关。因此珍珠企业在采集大量珍珠后,需要根据珍珠的特征将珍珠分成不同的档次。然而目前大部分珍珠企业采用人工分类的方式对珍珠进行分类,用人量非常大,而且对分类人员的专业素养有较高的要求。由于珍珠体积小、数量多,长时间人工作业下,分类结果存在不稳定性,受个人的主观影响比较大。因此,利用计算机视觉结合分类算法对珍珠进行快速准确地分类成了很多珍珠企业的迫切需要。

中国发明申请号201210411980.5公开了一种基于单目多视角机器视觉的珍珠大小形状在线自动分级装置,包括用于对珍珠进行自动检测和分类的流水线,用于拍摄被检珍珠图像的单目多视角机器视觉装置。利用图像读取模块得到包含有从9个不同视角拍摄的被检珍珠的图像,通过形状大小模块对珍珠进行大小和形状的识别。该发明仅对珍珠的大小和形状进行了识别,但是仅仅有大小和形状信息对珍珠分类的帮助是很有限的。在珍珠的人工分类中,往往需要考虑珍珠的多种特征,分类规则也更加复杂。同时,不同的珍珠企业对珍珠的分类规则也不尽相同。因此,得到珍珠有效的分类特征并利用机器学习算法学习珍珠的分类规则,是现在珍珠企业迫切的需求。

早期的图像分类任务的解决方法主要含有两个步骤,首先手工设计和提取特征,然后利用svm等分类器对这些设计的特征进行分类。

由于珍珠拥有形状、大小和螺纹等多种特征,其螺纹的数量、位置各不相同,并且在珍珠图像采集时,珍珠螺纹的清晰程度受到其颜色和色泽的影响。因此,手工设计特征并不容易,并且往往需要设计多个特征。



技术实现要素:

为了克服已有基于机器视觉的珍珠分类系统难以对珍珠进行高精度的分类,手工设计特征提取珍珠的分类特征并不容易等问题,本发明提供一种基于多通道残差网络的珍珠分类方法,利用多通道残差网络训练大量已经由人工分类好的珍珠的图像数据,学习并构建珍珠分类模型,具有较高的识别率,实用性良好。

本发明实现上述发明目的所采用的技术方案为:

一种基于多通道残差网络的珍珠分类方法,包括以下步骤:

训练阶段:

1)获取珍珠的原始图像数据,每颗珍珠包含所设定数量幅的图像,并记录珍珠的类别作为图像的标签数据;

2)对珍珠的原始图像数据进行预处理操作,包括将图像调整成所设定的大小、对图像进行去噪;

3)构建多通道残差网络并设置训练参数,将训练数据和标签数据输入多通道残差网络训练网络参数;

4)保存步骤3)训练好的网络参数,作为珍珠分类模型;

分类阶段:

5)获取待分类珍珠的原始图像数据;

6)对原始图像数据进行预处理操作,包括将图像调整成所设定的大小、对图像进行去噪;

7)将预处理好的待分类珍珠图像数据输入训练阶段得到的珍珠分类模型,得到分类结果。

进一步,所述步骤1)中,采集珍珠的标签数据包括8点差米形、8点二档冲头、8点高档米珠、8点中档米珠、8点短螺纹、8点高档颗头螺纹和8点高档面光;每颗珍珠包含5幅图像,分别为俯、左、右、后和主视图。

进一步,所述步骤3)包括以下步骤:

3.1)构建多通道残差网络;

3.2)用均值为0的高斯函数,随机初始化网络参数;

3.3)将训练数据和标签数据输入所述多通道残差网络;

3.4)计算所述多通道残差网络的输出与标签数据之间的误差,通过误差反向传播算法调整所述多通道残差网络的各层权值和偏置项值,直到网络收敛或到达所设定的最大迭代次数。

再进一步,所述步骤3)中,构建的多通道残差网络是由5个残差网络构成,珍珠的5幅视图分别作为这5个残差网络的输入。

优选的,所述5个残差网络采用相同的结构,分别包括2个conv卷积层,2个pooling池化层、1个残差模块和1个fc全连接层。

所述残差模块包含一条主径和一条捷径,主径上有3个卷积层用于提取珍珠的深层特征,捷径连接残差模块的输入和输出;主径和捷径得到的特征图在残差模块结束时叠加汇合,进入下一个阶段。

进一步,所述4个对应左、右、后和主视图的残差网络,其第一层池化层输出的特征图还将并联到俯视图所对应残差网络的第一层池化层输出上。

进一步,所述多通道残差网络中,所有卷积层的输出需要进行bn规范化操作。

进一步,所述步骤3)中,多通道残差网络的架构具体是:将预处理后的图像作为5个残差网络的输入层;5个残差网络的输出特征需要由eltwise层对其进行累加,合并为1个特征向量,并将该特征向量输入fc全连接层,由fc全连接层将特征向量映射到7维后,输入到softmax层,softmax层由7个独立的神经元组成,对应标签数据中7种不同的珍珠类别。

本发明的技术构思为:得益于gpu的发展和信息化时代下大量可用的数据,深度学习快速发展,在学术领域出现了很多技术突破。其中首当其冲的是图像分类方面的长足进步,基于深度学习的图像分类方法,可以通过有监督或无监督的方式学习层次化的特征描述,从而避免了传统机器学习手工设计或选择图像特征的不足之处。深度学习的概念源于人工神经网络的研究,含多隐藏层的多层感知器就是一个深度学习结构。深度学习通过卷积等操作,可以将样本在原空间的特征表示变换到新的特征空间,自动地学习得到层次化的特征表示,从而更有利于分类。近年来,越来越多有效的深度学习网络结构被提出来。其中残差网络凭借其优越的特性,使得其越来越多地被应用在生产环境中。

本发明的有益效果为:1)使用多通道残差网络提取珍珠的分类特征,充分发挥深度学习提取深层特征的优势,自动学习珍珠良好的分类特征,免去了繁琐的手工设计和提取特征的过程,避免手工设计特征的弊端,简化了特征提取的流程,节约时间;2)针对珍珠的5幅视图构建了5个残差网络,充分利用了整颗珍珠的图像信息,避免了单一视角下的图像没有整体代表性的弊端;3)在俯视图通道的残差网络上构建了与其余通道残差网络的连边,使得俯视图通道的残差网络能够得到更多的特征信息,从而提升整体多通道网络的特征表达能力;

附图说明

图1为整个分类方法的流程示意图。

图2为多通道残差网络整体结构的示意图。

图3为残差模块的结构示意图。

具体实施方式

下面结合说明书附图对本发明的具体实施方式作进一步详细描述。

参照图1~图3,一种基于多通道残差网络的珍珠分类方法,包括以下步骤:

训练阶段:

1)获取珍珠的原始图像数据,每颗珍珠包含5幅图像,并记录珍珠的类别作为图像的标签数据;

用于采集图像的珍珠是已经经过人工分类的有标签数据,包括7类,分别为8点差米形、8点二档冲头、8点高档米珠、8点中档米珠、8点短螺纹、8点高档颗头螺纹和8点高档面光;每颗珍珠包含5幅图像,分别为俯、左、右、后和主视图。

2)对珍珠的原始图像数据进行预处理操作,将图像调整成300×300像素,采用中值滤波对图像进行去噪,也可采用其它去噪算法;

3)构建多通道残差网络并设置训练参数,将训练数据和标签数据输入多通道残差网络训练网络参数;

3.1)构建多通道残差网络;

构建的多通道残差网络是由5个残差网络构成的,珍珠的5幅视图分别作为这5个残差网络的输入。

5个残差网络采用相同的结构,如图2所示,分别包括2个conv卷积层,2个pooling池化层、1个残差模块和1个fc全连接层。

记4个对应左、右、后和主视图的残差网络的第一层池化层输出的特征图分别为fb,fc,fd,fe,对应俯视图的残差网络的第一层池化层输出为fa。本发明在俯视图通道的残差网络上构建了与其余通道残差网络的连边,将fb,fc,fd,fe并联到fa,使得俯视图通道的残差网络能够得到更多的特征信息,并联后的特征图fa′如下

fa′=[fa,fb,fc,fd,fe]

多通道残差网络中的卷积层的输出记为xi,且xi∈{x1,…,xm},其中m为网络训练时的批大小,所述网络中所有卷积层的输出需要进行bn批规范化操作,即yi=bnγ,β(xi)。其中γ,β为批规范化的参数,需要在训练过程中学习得到。批规范化的具体操作如下,

其中,

残差网络中的残差模块包含一条主径和一条捷径,如图3所示,主径上有3个卷积层,用于提取珍珠的深层特征,捷径连接残差模块的输入和输出;主径和捷径得到的特征图在残差模块结束时叠加汇合,进入下一个阶段。记残差模块的输入为gi-1,主径的输出记为net(gi-1),本发明中gi-1与net(gi-1)的尺寸大小相同,则残差模块的输出gi为,

gi=relu(gi-1+net(gi-1))

其中relu为网络的激活函数,

relu(x)=max(0,x)

3.2)用均值为0的高斯函数,随机初始化网络参数;

3.3)将训练数据和标签数据输入多通道残差网络;

将预处理后的图像作为5个残差网络的输入层;5个残差网络的输出特征图需要由eltwise层对其进行累加,合并为1个特征向量,并将该特征向量输入fc全连接层,由fc全连接层将特征向量映射到7维,并输入到softmax层,softmax层由7个独立的神经元组成,对应标签数据中7种不同的珍珠类别。

3.4)计算所述多通道残差网络的输出与标签数据之间的误差,通过误差反向传播算法调整所述多通道残差网络的各层权值和偏置项值,直到网络收敛或到达所设定的最大迭代次数。

按照所设定的批大小,对训练数据按批进行多次训练,每次训练均对多通道残差网络的参数进行更新,以不断缩小预测输出与所述训练数据的标签数据之间的误差,当所述误差小于所设定的预定值时,可以认为网络收敛,或训练迭代次数超过预设定的最大迭代次数,就可确定当前学习到的模型参数为训练好的模型参数。

4)保存步骤3)训练好的网络模型参数,作为珍珠分类模型;

所保存的网络参数包括网络中所有卷积层和全连接层的参数和bn批规范化操作的参数γ,β。

分类阶段:

5)获取待分类珍珠的原始图像数据;

6)对原始图像数据进行预处理操作,包括将图像调整成300×300像素,采用中值滤波对图像进行去噪;

7)将预处理好的待分类珍珠图像数据输入所述的珍珠分类模型,得到分类结果。

网络的softmax输出层由7个独立的神经元组成,对应标签数据中7种不同的珍珠类别。待分类珍珠图像作为多通道残差网络的输入后,可以得到待分类珍珠在各个类别上的概率,由其中的最大值来确定待分类珍珠的类别。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1