图像分类方法、模型、存储介质及电子设备与流程

文档序号:21985914发布日期:2020-08-25 19:23阅读:130来源:国知局
图像分类方法、模型、存储介质及电子设备与流程

本申请涉及图像处理技术领域,具体而言,涉及一种图像分类方法、模型、存储介质及电子设备。



背景技术:

图像分类是一种根据图像信息中所反映的不同特征,把不同类别的图像区分开来的图像处理方法。可以利用计算机对图像进行定量分析,把图像划归为若干个类别中的某一种,以代替人的视觉判读。目前,有多种图像分类模型:

例如一种cnn(convolutionalneuralnetwork,卷积神经网络)的染色体自动分类方法,可以基于卷积神经网络的分类单元,利用数据驱动的方法,不再需要人工提取大量特征,能自动从海量数据中提取出丰富的特征,免去了特征工程的麻烦,增加了特征提取的丰富度。或者,一种基于特殊的卷积神经网络——生成对抗网络的染色体分类方法,可以将染色体样本图像利用生成对抗网络进行数据扩充得到染色体模拟图像,利用染色体样本图像和/或染色体模拟图像训练分类单元,并根据所述分类单元进行染色体分类。又例如,一种基于循环神经网络的染色体分类预测方法,可以接收染色体图像,染色体图像预处理模块依次进行有效像素标记、染色体轮廓检测、分割成n个矩形图像,将两条染色体的n个矩形图像分别输入到序列特征提取模块,提取的序列特征sn1和sn2输出到融合分类模块,经计算输出染色体的分类预测概率,实现对染色体图像的分类。

但这样的方式,依然存在数据处理量较大的问题,图像分类的效率有待提升。



技术实现要素:

本申请实施例的目的在于提供一种图像分类方法、模型、存储介质及电子设备,以降低图像分类时的数据处理量,提高图像分类的效率。

为了实现上述目的,本申请的实施例通过如下方式实现:

本申请实施例提供一种图像分类方法,应用于包括特征提取单元和分类单元的图像分类模型中的所述分类单元,所述方法包括:获取通用数据集中待分类图像对应的图像特征向量,其中,所述图像特征向量为所述待分类图像经所述特征提取单元提取特征后所得;确定出所述分类单元中每个类别各自对应的类别特征向量,其中,所述类别特征向量为基于从原型数据集中映射到该类别的参考图像对应的参考特征向量而确定出的特征向量,所述原型数据集为训练和/或验证所述图像分类模型的数据集;根据所述图像特征向量和所述类别特征向量,确定出所述待分类图像的类别。

在本申请实施例中,通过获取待分类图像输入特征提取单元后得到的图像特征向量,以及确定出每个类别各自对应的类别特征向量(类别特征向量基于从原型数据集中映射到该类别的参考图像所对应的特征向量确定出,而原型数据集为训练和/或验证该特征提取单元的图像数据集),以确定出待分类图像的类别。这样可以提前提炼原型数据集的特征向量(包括每个类别各自对应的类别特征向量),无需再为获得原型数据集的特征向量而额外输入数据,这样显著降低了对数据量的需求,并且能够保证类别特征向量的准确性,从而有利于提高图像分类的效率。

结合第一方面,在第一方面的第一种可能的实现方式中,所述根据所述图像特征向量和所述类别特征向量,确定出所述待分类图像的类别,包括:确定出所述图像特征向量与每个所述类别特征向量的欧拉距离;根据所述图像特征向量与每个所述类别特征向量的欧拉距离,确定出所述图像特征向量与该类别特征向量对应的分值,其中,所述分值用于揭示所述图像特征向量属于与该类别特征向量对应的类别的概率;将分值中表示概率最大的类别特征向量所对应的类别确定为所述待分类图像的类别。

在该实现方式中,通过确定出图像特征向量与每个类别特征向量的欧拉距离,进一步确定出对应的分值,并将表示概率最大的类别特征向量的分值所对应的类别确定为待分类图像的类别,可以明显提高分类的准确性(并非限定于通过确定分值中表示概率最大的方式来实现准确分类,还依赖于通过计算特征向量之间的欧拉距离来体现待分类图像与某个类别的相似程度)。

第二方面,本申请实施例提供一种图像分类模型,包括特征提取单元和分类单元,所述特征提取单元,用于对通用数据集中待分类图像进行特征提取,以确定出所述待分类图像对应的图像特征向量,以及,用于对原型数据集中的参考图像进行特征提取,以确定出所述参考图像对应的参考特征向量,其中,所述原型数据集为训练和/或验证所述图像分类模型的数据集;所述分类单元,用于获取所述待分类图像对应的图像特征向量,以及,获取映射到所述分类单元中每个类别的所述参考图像对应的参考特征向量,以确定出每个类别各自对应的类别特征向量,以及,根据所述图像特征向量和所述类别特征向量,确定出所述待分类图像的类别。

第三方面,本申请实施例提供一种图像分类模型,包括特征提取单元、分类辅助单元和分类单元,所述特征提取单元,用于接收输入的图像,并对所述图像进行特征提取,以确定出所述图像对应的特征向量;所述分类辅助单元,用于接收并对所述图像对应的特征向量进行处理,以确定出预设维度的图像特征向量,其中,所述维度与所述分类单元中预设的维度对应;所述分类单元,用于接收所述图像特征向量,并根据所述图像特征向量对所述图像进行分类。

在该实现方式中,通过构建包括特征提取单元、分类辅助单元和分类单元的图像分类模型(传统的分类模型包括特征提取单元和分类单元,将特征提取出来后输入到分类单元实现对图像的分类),而分类辅助单元可以接收并对待分类图像对应的特征向量进行处理,以确定出预设维度的图像特征向量,输入到分类单元中,有利于提高图像分类的准确性。

结合第三方面,在第三方面的第一种可能的实现方式中,所述特征提取单元包括:输入层,用于接收输入的所述图像;骨干网络,用于对所述图像进行特征提取,以确定出所述图像对应的第一特征向量;压缩层,用于对所述第一特征向量进行压缩,以确定出所述图像对应的特征向量。

在该实现方式中,特征提取单元包括输入层、骨干网络和压缩层,可以实现对图像特征的高效提取。

结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述特征提取单元为神经网络卷积模型,所述骨干网络中包括res_r0r2网络。

在该实现方式中,特征提取单元为神经网络卷积模型,通过在骨干网络中设置res_r0r2网络(可以为替代原有网络的方式,也可以为新增的方式),有助于对待分类图像的图像特征向量高效准确的提取。

结合第三方面,在第三方面的第三种可能的实现方式中,所述分类辅助单元包括:第一全连接层,用于接收所述图像对应的特征向量并进行全连接运算,输出预设维度的第二特征向量;第一激活层,用于将所述第一全连接层输出的所述第二特征向量映射到所述第一激活层的输出端,其中,所述第一激活层输出的所述第二特征向量为预设维度的所述图像特征向量。

在该实现方式中,分类辅助单元的第一全连接层可以对待分类图像对应的特征向量进行全连接运算,输出预设维度的特征向量,而第一激活层可以将预设维度的特征向量映射到第一激活层的输出端,以便分类单元进行分类。这样对待分类图像对应的特征向量进行全连接运算,有利于提高图像分类的准确率。

结合第三方面,在第三方面的第四种可能的实现方式中,所述分类辅助单元包括:第一全连接层,用于接收所述图像对应的特征向量并进行全连接运算后输出;第一激活层,用于对所述第一全连接层输出的特征向量进行线性整流并映射到所述第一激活层的输出端;丢弃层,用于将所述第一激活层输出的特征向量中的部分神经网络单元丢弃后输出;第二全连接层,用于对所述丢弃层输出的特征向量进行全连接运算,输出预设维度的第三特征向量;第二激活层,用于将所述第二全连接层输出的所述第三特征向量映射到所述第二激活层的输出端,其中,所述第二激活层输出的所述第三特征向量为预设维度的所述图像特征向量。

在该实现方式中,分类辅助单元可以对待分类图像对应的特征向量进行两次全连接运算,并且,分类辅助单元中的丢弃层可以用于降低cnn的过拟合问题,这样能够进一步提高图像分类的准确率。

第四方面,本申请实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如第一方面或第一方面的可能的实现方式中任一项所述的图像分类方法。

第五方面,本申请实施例提供一种电子设备,包括存储器和处理器,所述存储器用于存储包括程序指令的信息,所述处理器用于控制程序指令的执行,所述程序指令被处理器加载并执行时实现第一方面或第一方面的可能的实现方式中任一项所述的图像分类方法。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种图像分类模型的结构示意图。

图2为本申请实施例提供的一种图像分类模型的结构示意图。

图3为本申请实施例提供的一种图像分类模型的结构示意图。

图4为本申请实施例提供的一种图像分类方法应用于图像分类模型的示意图。

图5为本申请实施例提供的一种分类单元中图像类别的示意图。

图6为本申请实施例提供的一种图像分类方法的流程图。

图7为本申请实施例提供的基于resnet-50网络而得到的图像分类数据。

图8为本申请实施例提供的基于alexnet和vgg16网络的测试结果。

图9为本申请实施例提供的基于vgg的测试精度与训练精度的数据而得到的图表。

图10为本申请实施例提供的基于res_r0r2网络的测试精度与训练精度的数据而得到的图表。

图11为本申请实施例提供的一种电子设备的结构框图。

图标:10-图像分类模型;11-特征提取单元;111-输入层;112-骨干网络;113-压缩层;12-分类辅助单元;121-第一全连接层;122-第一激活层;123-丢弃层;124-第二全连接层;125-第二激活层;13-分类单元;20-电子设备;21-存储器;22-通信模块;23-总线;24-处理器。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

为了便于对本方案的理解,此处先对本方案中图像分类模型所采用的模型架构和将涉及到的数据集进行简单的介绍:

在本实施例中,可以采用siamese架构作为图像分类模型的基础架构,其中,siamese架构:对比两组输入图像(a和b)的异同,如果来自a的图像a与来自b的图像b的对比结果为相同,则a与b为同一类别,从而可以通过查找b所属的类别来对a进行分类。当然,本实施例中的图像分类模型,在基于siamese架构的基础上,对模型加以设计和改进,采用特征比较的方式对原有的图像比较的方式进行分类(通过两组向量的对比,可以采用提前提炼部分向量特征的方式,从而在分类的时候减少数据处理量),以及,具有用于辅助分类的分类辅助单元,以提升分类的准确性。

querydataset,q数据集,即通用数据集(也有一些其他叫法,例如查询数据集),q数据集中包含多个待分类图像,在本实施例中,将以对q数据集中的待分类图像进行分类为例对本方案进行介绍。gallerydataset,g数据集,即原型数据集(也有一些其他叫法,例如画廊数据集,可以理解为训练集),g数据集包含多个参考图像(即训练和/或验证模型时所使用的图像),在本实施例中,原型数据集为训练和/或验证特征提取单元(也可以为其他模型,例如整个图像分类模型,此处不作限定)的图像数据集。

请参阅图1,图1为本申请实施例提供的一种图像分类模型10的结构示意图。图像分类模型10可以包括特征提取单元11、分类辅助单元12和分类单元13。特征提取单元11可以接收输入的图像,并对图像进行特征提取,以确定出图像对应的特征向量。分类辅助单元12可以接收并对图像对应的特征向量进行处理,以确定出预设维度的图像特征向量,其中,维度与分类单元13中预设的维度对应。而分类单元13可以接收图像特征向量,以基于图像特征向量对图像进行分类。

请参阅图2,在本实施例中,特征提取单元11可以采用cnn(卷积神经网络)模型,以便高效提取图像特征。例如,经典的卷积神经网络模型可以包括alexnet、vgg16、resnet等。

示例性的,特征提取单元11可以包括输入层111、骨干网络112和压缩层113。

输入层111可以接收输入的图像,并将图像输出至骨干网络112。例如,输入层111接收输入的q数据集中的待分类图像,并将该待分类图像输入到骨干网络112中。

cnn模型的骨干网络112可以为resnet_50网络,为了实现对图像的图像特征向量的高效而准确的提取,可以使用res_r0r2网络替代原有的resnet_50网络(这样还可以使得特征提取单元11更加有利于图像分类方法的运行)。在本实施例中,骨干网络112可以对图像进行特征提取,以确定出图像对应的第一特征向量。

而压缩层113可以对第一特征向量进行压缩,以确定出图像对应的特征向量。

请继续参阅图2,在本实施例中,分类辅助单元12可以包括第一全连接层121和第一激活层122。其中,第一全连接层121可以接收图像对应的特征向量(即特征提取单元输出的图像对应的特征向量)并进行全连接运算,以输出预设维度的第二特征向量。而第一激活层122可以将第一全连接层输出的第二特征向量映射到第一激活层的输出端(第一激活层122输出的预设维度的第二特征向量即为预设维度的图像特征向量,此处的预设维度可以以分类单元所需要的维度为参照进行设置),以便将预设维度的特征向量输入分类单元13,实现分类单元13对图像的分类。这样对图像对应的特征向量进行全连接运算,有利于提高图像分类的准确率。

当然,分类辅助单元12的结构,并不限定于图2中所示出的结构。请参阅图3,本申请实施例还提供包括另一种分类辅助单元12的图像分类模型10。

在本实施例中,分类辅助单元12可以包括第一全连接层121、第一激活层122、丢弃层123、第二全连接层124和第二激活层125。

第一全连接层121可以接收图像对应的特征向量(即特征提取单元输出的图像对应的特征向量)并进行全连接运算(此处为第一次全连接运算)后输出。例如,特征提取单元输出的图像对应的特征向量为二维向量,经第一全连接层121运算后,可以输出维度为{m,2048}的特征向量(此处的2048也是示例性的,并不限定于此),其中m为本次的批输入数据,常为16,32,64,128等。

第一激活层122可以对第一全连接层121输出的特征向量进行线性整流并映射到第一激活层122的输出端。例如,第一激活层122可以为线性整流函数(rectifiedlinearunit,relu),具体的计算公示可以为:

f(x)=max(0,x),··············(1)

其中x为第一激活层122的输入,f(x)为第一激活层122的输出,max为取最大值操作。

丢弃层123可以将第一激活层122输出的特征向量中的部分神经网络单元丢弃后再输出。例如,丢弃层123可以采用常用的正则化方法,用以降低cnn的过拟合问题(即,在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃)。

第二全连接层124可以对丢弃层123输出的特征向量进行全连接运算(此处为第二次全连接运算),从而输出预设维度的第三特征向量。例如,第二全连接层124可以将丢弃层123的输出进行全连接运算,输出维度为{m,24}的第三特征向量,其中,此处的24表示预设维度(即分类单元13中包含的图像类别数,类别数不限定于举例所设定的数目)。

而第二激活层125可以将第二全连接层124输出的预设维度的第三特征向量映射到第二激活层125的输出端,其中,此处的第二激活层125输出的预设维度的第三特征向量即为预设维度的图像特征向量(用于输入到分类单元13中的图像特征向量)。另外,此处的第二激活层125可以参照第一激活层122的线性整流函数,与第二激活层125不同的是第二激活层125的输出端将图像特征向量输出至分类单元13中。

而分类单元13,则可以根据图像特征向量,实现对图像的分类(具体的分类方式,将在后文中对图像分类方法的介绍时进行详细介绍)。例如,分类单元13可以为softmax分类器,可将{m,24}维的图像特征向量映射到{m,c},其中c是预测出的类别,取值为[1,24]。此处的分类单元13中的类别数为24,但不作限定。

通过构建包括特征提取单元、分类辅助单元和分类单元的图像分类模型(传统的分类模型包括特征提取单元和分类单元,将特征提取出来后输入到分类单元中实现对图像的分类),而分类辅助单元可以接收并对待分类图像对应的特征向量进行处理,以确定出预设维度的图像特征向量,输入到分类单元中,有利于提高图像分类的准确性。

以上,是对本申请实施例提供的图像分类模型的介绍,而以下,将对应用于图像分类模型的图像分类方法进行介绍。请参阅图4,图4为本申请实施例提供的一种图像分类方法应用于图像分类模型的示意图。

此处将图像分类模型应用到一个具体的应用场景中,以便对本方案的理解。例如,图像分类模型用于对染色体图像进行分类,对应的,g数据集中的参考图像为染色体图像,q数据集中的待分类图像为染色体图像,而模型的分类单元中的图像类别数可以设定为24(如图5所示,22对常染色体、x染色体和y染色体,共24类,其中,编号1至24为染色体的编号,与图像分类模型10、特征提取单元11、分类辅助单元12、分类单元13等的标号含义不同,应作区别理解,另外,分类单元中的类别编号可以记为i,i的取值为0至23)。当然,此种应用场景仅为示例性的,图像分类模型和图像分类方法的应用领域和方式还有很多其他的,例如对动物图像的分类、对图像中植物种类的分类识别等,不应视为对本申请的限定。

在本实施例中,cnn可以为本实施例中的图像分类模型,bestmodel可以表示本实施例中更新(或优化)的图像分类模型,而图4中竖直虚线的右侧部分(即包括运行1strounddistance开始至结束时的accuracyfinal的流程),则可以视为通过本申请实施例提供的图像分类模型对待分类图像分类后,再次进行图像分类和验证图像分类的准确率(accuracyfinal)的过程。

此处,将对图像分类模型的运行过程(仅是一种示例性的运行方式,也可以有其他的运行方式,此处不应视为对本申请的限定)进行介绍:

在图像分类模型(以包括特征提取单元、分类辅助单元和分类单元)建立后,可以利用g数据集对图像分类模型进行训练。例如图4中竖直虚线左侧的相对较粗的单线箭头的过程:通过将traindata(训练数据,即g数据集中的参考图像,例如染色体图像)输入cnn(即图像分类模型)中,提取出对应的trainlabel(对应的标签),进一步计算出jointloss(损失函数),以对模型进行训练。

对图像分类模型的训练完成后,可以进一步通过g数据集对训练的模型进行验证。例如图4中竖直虚线左侧的双线箭头的过程:通过将validdata(验证数据,或称有效数据)输入到cnn中,cnn根据validdata对图像分类模型(cnn)进行验证,并输出到bestmodel中,而bestmodel可以进一步确定出与输入的数据(validdata)对应的validfeature(即validdata对应的特征向量,也可以理解为预设维度的特征向量),以及,对应的validlabel(相当于提取出该数据的标签)。确定出的validfeature,可以作为图像分类模型对图像分类后,再次进行图像分类和验证图像分类的准确率时的一个输入。

在使用图像分类模型对待分类图像(例如q数据集中的待分类图像)进行分类时,可以将待分类图像输入到cnn中进行图像分类。例如图4中竖直虚线左侧的相对较细的单线箭头的过程:通过将testdata(测试数据,测试或者实际分类时使用的数据,例如q数据集中的待分类图像)输入到cnn(图像分类模型)中,得到与输入的数据(testdata)对应的testfeature(即testdata对应的特征向量,也可以理解为图像特征向量),以及,可以确定出对应的testlabel,确定出的testfeature可以作为图像分类模型对图像分类后,再次进行图像分类和验证图像分类的准确率时的另一个输入。

分类单元在接收到testfeature和validfeature后,可以进一步对图像分类模型分类后的图像再次进行图像分类和验证图像分类的准确率。此处,先对图像分类模型中分类单元对待分类图像进行分类的过程进行介绍。

分类单元可以执行本申请实施例提供的图像分类方法。请参阅图6,图6为本申请实施例提供的一种图像分类方法的流程图。在本实施例中,图像分类方法可以包括:步骤s10、步骤s20和步骤s30。

在图像分类模型用于对图像进行分类时,分类单元可以执行步骤s10。

步骤s10:获取通用数据集中待分类图像对应的图像特征向量,其中,所述图像特征向量为所述待分类图像经所述特征提取单元提取特征后所得。

在本实施例中,分类单元可以获取通用数据集中待分类图像对应的图像特征向量,而图像特征向量可以是待分类图像输入到特征提取单元进行特征提取后得到的,而后将其输入到分类单元,而分类单元即可获得待分类图像对应的图像特征向量。

例如,将q数据集中的待分类图像输入到特征提取单元后,特征提取单元对其进行特征提取,得到对应的图像特征向量fk。

在图像分类模型用于对图像进行分类时,分类单元还可以执行步骤s20。

步骤s20:确定出所述分类单元中每个类别各自对应的类别特征向量,其中,所述类别特征向量为基于从原型数据集中映射到该类别的参考图像对应的参考特征向量而确定出的特征向量,所述原型数据集为训练和/或验证所述图像分类模型的数据集。

在本实施例中,分类单元可以确定出分类单元中每个类别各自对应的类别特征向量。在此之前,分类单元可以先获取原型数据集中参考图像对应的参考特征向量。

示例性的,分类单元可以获取g数据集(原型数据集)中参考图像对应的参考特征向量,而参考图像对应的参考特征向量为g数据集对图像分类模型进行训练和/或验证时的得到而保存在g数据集中的。因此,参考图像对应的参考特征向量可以是提前提炼好的,在需要时,可以快速获取,而无需引入新的数据集和特征向量(现有的方式中,若要获取g数据集中的参考图像对应的参考特征向量,通常需要对参考图像进行特征提取;而获取其他数据集中参考图像的参考特征向量,则是通过引入新的图像,利用图像分类模型的特征提取单元进行提取),这样可以大大地降低数据处理量,提升处理效率。

g数据集中参考图像对应的参考特征向量可以映射到分类单元中固定的分类中,例如,g数据集中包括1000个参考图像(每个参考图像具有对应的参考特征向量,当然,也可以同时具有对应的标签),因此每一个类别i对应s(不同类别的s值可以不同)个参考图像的参考特征向量。

而后,分类单元可以基于每个类别对应的参考特征向量,确定出该类别对应的类别特征向量。

示例性的,可以通过以下公式提取每个类别对应的类别特征向量:

其中:i∈(0,n-1),k∈(1,m),cf∈(1,2),n是染色体类别总数(即24),m是本次的批输入数据(例如16,32,64,128等),表示存储的第i个类别的类别特征向量,fk表示第k个输入数据的特征向量(即参考特征向量),β为特征放大系数。

通过以上方式可以确定出每个类别对应的类别特征向量fg(此处通过fg表示类别特征向量,用于与第i个类别的类别特征向量区别)。

通过这样的方式,可以高效且准确地确定出类别的类别特征向量。

需要说明的是,步骤s10和步骤s20之间的执行顺序不限定于此,可以先执行步骤s10后执行步骤s20,也可以先执行步骤s20后执行步骤s10,还可以同时执行步骤s10和步骤s20。

确定出每个类别对应的类别特征向量后,分类单元可以执行步骤s30。

步骤s30:根据所述图像特征向量和所述类别特征向量,确定出所述待分类图像的类别。

在本实施例中,分类单元可以确定出图像特征向量与每个类别特征向量的欧拉距离。

示例性的,分类单元可以通过以下方式确定出图像特征向量fk和每个类别特征向量fg之间的欧拉距离:

其中,d为图像特征向量与类别特征向量之间的欧拉距离,n为该特征向量的维度(例如2048),为类别特征向量fg的集合中所有向量(每个类别对应一个类别特征向量,例如24个染色体类别的数目)的第k个元素值;为图像特征向量fk的第k个元素值。

确定出图像特征向量与每个类别特征向量之间的欧拉距离(图像特征向量对应有24个欧拉距离)后,分类单元可以根据图像特征向量与每个类别特征向量的欧拉距离,确定出图像特征向量与该类别特征向量对应的分值,其中,分值用于揭示图像特征向量属于与该类别特征向量对应的类别的概率。

示例性的,可以针对图像特征向量制作选票,每个选票中包括该图像特征向量与每个类别特征向量之间的欧拉距离(24个)。另外,选票中还可以包括每个图像特征向量对应的标签。

例如,通过以下方式确定出图像特征向量的选票:

bi=vsi∪vli,··················(5)

其中,bi即为第i个选票集,是vsi和vli的集合;vsi为q数据集的第i个特征向量(即q数据集中的第i个待分类图像对应的图像特征向量)的分数的集合(即欧拉距离d,或者通过欧拉距离d确定出的值),vli为q数据集的第i个特征向量对应的标签(即q数据集中的第i个待分类图像对应的标签)。

确定出图像特征向量与类别特征向量对应的分值后,分类单元可以将分值中表示概率最大的类别特征向量所对应的类别确定为待分类图像的类别。

示例性的,分类单元可以根据选票中的分值,将分值按照数值大小增序或者降序排列,得到新的选票组合(即将选票中的24个欧拉距离d或欧拉距离d确定出的对应的分值进行排序),确定出分值中最小值(对应概率最大)为代表,从而确定出这个代表所对应的类别为待分类图像的类别(这个代表为g数据集中的元素,即参考图像对应的特征向量,而参考图像对应的类别,即为待分类图像对应的预测类别)。

通过确定出图像特征向量与每个类别特征向量的欧拉距离,进一步确定出对应的分值,并将表示概率最大的类别特征向量的分值所对应的类别确定为待分类图像的类别,可以明显提高分类的准确性。

请参阅图7至图10,图7为基于resnet-50网络的不同修改而得到的图像分类数据,可见将resnet-50网络替换为res_r0r2网络时,图像分类数据揭示的图像分类的准确率很高。图8为基于alexnet和vgg16网络的测试结果,可见其表现不如采用res_r0r2网络得到的效果。而图9为基于vgg的测试精度与训练精度的数据而得到的图表,图10为基于res_r0r2网络的测试精度与训练精度的数据而得到的图表。可见以res_r0r2网络替换resnet-50网络,可以使得本申请实施例提供的图像分类模型的精度及图像分类方法的分类准确性有很大的提升。

需要说明的是,本实施例中以包括特征提取单元、分类辅助单元和分类单元的图像分类模型实施图像分类方法为例进行说明,但不应视为对本申请的限定。例如,实施图像分类方法的图像分类模型,也可以不包括分类辅助单元。其中的特征提取单元,可以对通用数据集中待分类图像进行特征提取,以确定出待分类图像对应的图像特征向量,以及,对原型数据集(训练和/或验证该图像分类模型的数据集)中的参考图像进行特征提取,以确定出参考图像对应的参考特征向量。其中的分类单元则可以获取待分类图像对应的图像特征向量,以及,获取映射到分类单元中每个类别的参考图像对应的参考特征向量,以确定出每个类别各自对应的类别特征向量,以及,根据图像特征向量和类别特征向量,确定出待分类图像的类别。

另外,在图像分类模型对待分类图像分类后,提高分类的准确性和验证图像分类的准确率,可以执行图4中竖直虚线右侧部分的流程。示例性的,可以根据得到的数据(即validfeature和testfeature),进行欧拉距离的计算(即1strounddistance的过程),并基于这些欧拉距离进行排序(即sorteddistance的过程)。

而后,可以根据欧拉距离,将计算结果划分为两个分组(即feat1big和feat2big),分组的方式可以为按照比例比例划分。例如根据欧拉距离对计算结果大小排序后,欧拉距离中相对较大的20%作为一个分组,记为featbig(可以包括feat1big和feat2big),将欧拉距离中相对较小的80%作为另一个分组,记为featsmall(可以包括feat1small和feat2small)。而后,再分别进行一次欧拉距离的计算(即2ndrounddistance的过程),从而可以分别得到featbig组的分类准确率(accuracybig)和featsmall组的分类准确率(accuracysmall)。进一步地,根据accuracybig和accuracysmall可以得到accuracyfinal(即最终的分类准确性)。

例如,1strounddistance是batchsize(一次训练选区的样本数,例如64)个距离,若取bound=80(即80%),那么featbig就是64*0.8=52个值,featsmall就是64*0.2=12个值。

而最终的accuracyfinal,可以把featsmall和featbig的准确率相加.。例如,featbig里预测对了50个,featsmall里预测对了6个,那么accuracyfinal就是(50+6)/(52+12)=56/64=0.875。

请参阅图11,图11为本申请实施例提供的一种电子设备20的结构框图。在本实施例中,电子设备20可以为服务器,在电子设备20为服务器时,可以为网络服务器、云服务器、多个服务器构成的服务器集群等;电子设备20也可以为终端,在电子设备20为终端时,可以为智能手机、平板电脑、个人电脑等,此处不作限定。

示例性的,电子设备20可以包括:通过网络与外界连接的通信模块22、用于执行程序指令的一个或多个处理器24、总线23、不同形式的存储器21,例如,磁盘、rom(read-onlymemory,只读存储器)、或ram(randomaccessmemory,随机存取存储器),或其任意组合。其中,存储器21、通信模块22和处理器24之间通过总线23连接。

示例性的,存储器21中存储有程序。处理器24可以从存储器21调用并运行这些程序,从而便可以通过运行程序而执行图像分类方法。

本申请实施例还提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如本实施例中所述的图像分类方法。

综上所述,本申请实施例提供一种图像分类方法、模型、存储介质及电子设备,通过获取待分类图像输入特征提取单元后得到的图像特征向量,以及获取每个类别各自对应的类别特征向量(类别特征向量基于从原型数据集中映射到该类别的参考图像确定出,而原型数据集为训练和/或验证该特征提取单元的图像数据集),以确定出待分类图像的类别。这样可以提前提炼原型数据集的特征向量(包括每个类别各自对应的类别特征向量),无需再为获得原型数据集的特征向量而额外输入数据,这样显著降低了对数据量的需求,并且能够保证类别特征向量的准确性,从而有利于提高图像分类的效率。

在本申请所提供的实施例中,应该理解到,所揭露的方法,可以通过其它的方式实现。以上所描述的方法实施例仅仅是示意性的,一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

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