动物的识别装置和方法与流程

文档序号:15387714发布日期:2018-09-08 00:46阅读:481来源:国知局

本发明涉及图像识别技术领域,具体而言,涉及一种动物的识别装置和方法。



背景技术:

自从深度学习为计算机视觉带来巨大的变革以来,深度学习、卷积神经网等(convolutionalneuralnetwork,cnn)等一直被广泛的应用于计算机视觉物体识别检测等领域。

图像识别分类的传统方法是特征描述及检测,通过人为设计的特征提取和描述方法进行信息配准和提取,但是有较大的应用局限性。这类传统方法可能对于一些简单的图像分类是有效的,但由于养殖场实际动物舍的环境非常复杂,动物体型都很相近,并且伴随着动物数量的增长,要想清晰的分辨出每一头动物的身份是十分困难的,无论传统的视觉方法还是人为的目视解义。

与此同时随着畜牧业保险业务的完善,越来越多的养殖户开始大量的为自己的动物投保,但是根据调查和本公司的业务得出:在保险理赔的过程中存在大量的动物的身份无法确认或存在养殖户作弊换动物的行为,因此本实用专利能很好的为保险公司解决不同动物投保和赔付时的动物的身份的确认问题。

拍摄光线和遮挡问题,例如在夜晚或者光线不好,或者待识别动物被其他物体遮挡的情况下,对识别的效果有很大的影响。



技术实现要素:

本发明提供了一种动物的识别装置和方法。

本发明第一方面的实施例提供了一种动物的识别装置,包括:

输入模块,用于将动物的图片作为训练数据输入到图像分类模型中;训练模型生成模块,用于通过所述图像分类模型对所述训练数据样本进行特征提取,并将提取的所述特征进行融合操作获取训练模型;识别模块,用于将采集到的待测试的动物的图像发送至所述训练模型,通过预设分类器进行识别。

本发明第二方面的实施例提供了一种动物的识别方法,包括:将动物的图片作为训练数据输入到图像分类模型中;通过所述图像分类模型对所述训练数据样本进行特征提取,并将提取的所述特征进行融合操作获取训练模型;将采集到的待测试的动物的图像发送至所述训练模型,通过预设分类器进行识别。

本发明第三方面的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述动物的识别方法的步骤。

本发明第四方面的实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述动物的识别方法的步骤。

本发明实施例所提供的动物的识别装置和方法、计算机可读存储介质、以及计算机设备,构建多视图卷积神经网络(convolutionalneuralnet-work,cnn),利用预训练的网络参数模型作为本公开的深度学习网络的初始权重和偏置,采用多模型融合的方法的动物的识别方法,解决现有的动物的身份识别认定难的问题。本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明第一实施例的动物的识别装置的结构示意图;

图2为图1所示的动物的识别装置的步骤流程图;

图3为本发明第二实施例的动物的识别装置的结构示意图;

图4为图3所示的动物的识别装置的步骤流程图;

图5为本发明第三实施例的动物的识别装置的结构示意图;

图6为图5所示的动物的识别装置的步骤流程图;

图7为本发明第四实施例的动物的识别装置的结构示意图;

图8为图7所示的动物的识别装置的步骤流程图;

图9(a)为本发明第五实施例的动物的识别装置的结构示意图;

图9(b)为本发明第五实施例的动物的识别装置中的多模型融合分类总结构示意图;

图10为图9所示的动物的识别装置的步骤流程图;

图10(a)为以猪作为示例的动物的识别装置中的训练数据样本示例图;

图10(b)为以猪为示例的动物的识别装置中的训练数据预处理前后对比示例图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

下述讨论提供了本发明的多个实施例。虽然每个实施例代表了发明的单一组合,但是本发明不同实施例可以替换,或者合并组合,因此本发明也可认为包含所记载的相同和/或不同实施例的所有可能组合。因而,如果一个实施例包含a、b、c,另一个实施例包含b和d的组合,那么本发明也应视为包括含有a、b、c、d的一个或多个所有其他可能的组合的实施例,尽管该实施例可能并未在以下内容中有明确的文字记载。

本发明实施例提供了一种动物的识别装置,包括:输入模块,用于将动物的图片作为训练数据输入到图像分类模型中;训练模型生成模块,用于通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型;识别模块,用于将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

本发明实施例针对现有技术的不足,和改变传统保险行业对动物的身份的认定问题,以及为了克服传统的分类方法对动物的识别预测结果不够准确且受环境影响较大,计算过程复杂,特征表达能力不强的问题,以及现在较为流行的单cnn模型提取特征预测结果的单一性和稳定性准确率受限等问题,本公开提供了一种基于深度学习技术,构建多视图卷积神经网络(convolutionalneuralnetwork,cnn),利用预训练的网络参数模型作为本发明的深度学习网络的初始权重和偏置,采用多模型融合的方法的动物的识别方法,解决现有的动物的身份识别认定难的问题。

实施例一

如图1所示,本实施例的动物的识别装置10,包括:输入模块200、训练模型生成模块400和识别模块600。

其中,输入输入模块200用于将动物的图片作为训练数据输入到图像分类模型中;训练模型生成模块400用于通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型;识别模块600用于将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

在本实施例中,输入模块200在对训练数据样本进行训练之前,先要收集动物例如猪的相关的视频或者图片,将动物的图片作为训练数据输入到图像分类模型中。针对收集到的图片进行相应的身份标注使其形成一个前期的训练数据集,即训练数据集作为训练数据样本。其中,训练数据样本可以为预设时间段内获取的动物的视频或图片。训练模型生成模块400通过至少一个图像分类模型对训练数据样本进行多个特征提取,并将提取的多个特征进行融合操作获取训练模型。其中,需要说明的是,本公开提出的动物的识别装置中图像分类模型采用3个图像分类模型进行动物的多个特征提取,并将提取的多个特征进行融合操作获取最优的训练模型。识别模块600将采集到的视频以图片形式发送至训练模型,通过预设分类器进行识别。

需要说明的是,识别模块600将采集到的任意的视频以图片形式发送至训练模型,预设分类器对接收的视频以图片作为视频帧进行识别。由此,提高了接收待测试动物的图像的识别的精确性。

图2为图1所示的动物的识别装置的工作流程图。具体说明如下:

步骤202,将动物的图片作为训练数据输入到图像分类模型中。

步骤204,通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型。

步骤206,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

在本实施例中,对动物的特征进行提取,并将其作为训练数据样本进行训练之前,先要收集动物例如猪的相关的视频或者图片。针对收集到的图片进行相应的身份标注使其形成一个前期的训练数据集,即训练数据集作为训练数据样本。其中,训练数据样本可以为预设时间段内获取的动物的视频或图片。通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型,通过至少一个图像分类模型对训练数据样本进行多个特征提取,并将提取的多个特征进行融合操作获取训练模型。其中,需要说明的是,本公开提出的动物的识别装置中图像分类模型采用3个图像分类模型进行动物的多个特征提取,并将提取的多个特征进行融合操作获取最优的训练模型。将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别过程中,将采集到的任意的待测试的动物的图像以视频的方式输入,用图片作为视频帧的方式发送至训练模型,通过预设分类器进行识别。

需要说明的是,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别过程中,将采集到的任意的待测试的动物的图像通过获取视频的形式,以图片作为视频帧的形式发送至训练模型,预设分类器对接收的图片进行识别。由此,提高了接收待测试动物的图像的识别的精确性。

本实施例中,一种动物的识别方法基于卷机神经网络(convolutionalneuralnetwork,cnn)的深度学习的多模型融合的动物的识别检测方法。fasterrcnn目标检测算法能够很好的提取出动物所在的最小矩形框,其中,最小矩形框可以理解为沿着动物周身线条围成的矩形框,大大降低了噪声对训练和测试的干扰性,同时cnn网络能够自适应的提取出动物的纹理信息,颜色信息等,再次采用多模型融合的方法,相比于传统的单模型预测而言,能够大大的提升预测的稳定性和鲁邦性。

优选地,经过测试,对于动物,例如猪之间的差异性不大,传统的分类识别方法效果不明显。在使用深度学习进行测试时效果好于传统的方法,但是由于单模型对特征提取的局限性,也不能在分类结果上起到很好的效果。但是经过三个差异性较大的模型融合训练后,识别精度有了极大的提升。

实施例二

如图3所示,本实施例的动物的识别装置与实施例不同的是:本实施例中添加了特征提取模块。

本实施例的动物的识别装置,包括:特征提取模块100、输入模块200、训练模型生成模块400和识别模块600。

其中,特征提取模块100用于对动物的特征进行局部特征与全局特征提取,其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。输入模块200用于将动物的图片作为训练数据输入到图像分类模型中;训练模型生成模块400用于通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型;识别模块600用于将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

本实施例中,特征提取模块100可以根据动物特征进行局部特征与全局特征提取。例如,猪的局部特征包括但不限于猪的胎记,五官的大小等;猪的全局特征包括但不限于猪的毛的颜色,猪的肥胖长度等。由此,提高了对训练数据样本获取的精准性。

图4为图3所示的动物的识别装置的工作流程图。具体说明如下:

步骤401,对动物的特征进行局部特征与全局特征提取。其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。

步骤402,将动物的图片作为训练数据输入到图像分类模型中。

步骤404,通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型。

步骤406,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

本实施例中,对动物的特征进行局部特征与全局特征的提取。例如,猪的局部特征包括但不限于猪的胎记,五官的大小等;猪的全局特征包括但不限于猪的毛的颜色,猪的肥胖长度等。由此,提高了对训练数据样本获取的精准性。

进一步地,在本实施例中,对动物的特征进行提取,并将其作为训练数据样本进行训练之前,先要收集动物例如猪的相关的视频或者图片。针对收集到的图片进行相应的身份标注使其形成一个前期的训练数据集,即训练数据集作为训练数据样本。其中,训练数据样本可以为预设时间段内获取的动物的视频或图片。通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型中,通过至少一个图像分类模型对训练数据样本进行多个特征提取,并将提取的多个特征进行融合操作获取训练模型。其中,需要说明的是,本公开提出的动物的识别装置中图像分类模型采用3个图像分类模型进行动物的多个特征提取,并将提取的多个特征进行融合操作获取最优的训练模型。将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别过程中,将采集到的任意的待测试的动物的图像,通过获取的视频以图片作为视频帧的形式发送至训练模型,通过预设分类器进行识别。

需要说明的是,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别过程中,将采集到的任意的待测试的动物的图像,通过获取视频以图片作为视频帧的形式发送至训练模型,通过训练模型对输入图片进行特征提取,然后将提取到的特征自定送入预设分类器对接受到的特征进行识别。由此,提高了接收待测试动物的图像的识别的精准性。

实施例三

如图5所示,本实施例的动物的识别装置与实施例不同的是,包括:特征提取模块100,还包括:关键帧提取模块310、检测模块320和降噪模块330。

其中,特征提取模块100用于对动物的特征进行局部特征与全局特征的提取,其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。输入模块200用于将动物的图片作为训练数据输入到图像分类模型中;关键帧提取模块310用于提取训练数据样本中的动物的视频中的关键帧,其中,关键帧为监控中的输出视频为x264编码中的三种类型帧中的i帧;检测模块320用于通过fasterrcnn算法对动物进行目标检测;降噪模块320用于将检测到的动物所在的第一矩形框之外的图片进行裁剪,以实现对关键帧中的噪声信息进行降噪处理,其中,第一矩形框为沿着动物周身线条围成的矩形框;训练模型生成模块400用于通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型;识别模块600用于将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

需要说明的是,视频都是由图片构成的,在视频中这些图片被称为帧,在监控中的输出视频为x264编码,其有三种帧类型:i帧关键帧,是类似于图片形式的存在;p帧前向预测帧,由前面的帧预测而来;b帧前后向预测帧,由前一帧和后一帧预测而来,所以为了让深度学习卷积神经网络学到更多的信息,在此本公开提出的动物的识别装置获取每个视频中的关键帧i帧(keyframe)。此外,由于截取到的关键帧含有大量的噪声信息例如:猪栏,人等,为了获取到最纯净的样本,采用fasterrcnn算法对动物进行目标检测,找到动物所在的最小矩形框并剪切掉矩形框外的图片,这样既不会丢失掉识别方想要的信息,同时也不会引入无关的噪音。有效提高了信息获取精准性。

其中,特征提取模块100用于对动物的特征进行局部特征与全局特征提取,其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。输入模块200用于将动物的图片作为训练数据输入到图像分类模型中;训练模型生成模块400用于通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型;识别模块600用于将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

在本实施例中,输入模块200在对训练数据样本进行训练之前,先要收集动物例如猪的相关的视频或者图片,将动物的图片作为训练数据输入到图像分类模型中。针对收集到的图片进行相应的身份标注使其形成一个前期的训练数据集,即训练数据集作为训练数据样本。其中,训练数据样本可以为预设时间段内获取的动物的视频或图片。关键帧提取模块310可以在预设时间段内提取一个窗口视频中的动物的视频中的关键帧,由此,可以单位帧为单位精确获得前期数据。检测模块320用于通过fasterrcnn算法对动物进行目标检测,需要说明的是,本公开提出的一种动物的识别装置中检测模块320使用对动物进行目标的检测算法不局限于上述示例。fasterrcnn为一个开源的网络框架,本公开在此框架上做了相应的优化,作为新的算法应用于本公开。降噪模块330用于将检测到的动物所在的第一矩形之外的图片进行裁剪,其中,此处的裁剪操作也有相应的预设算法,此处不再进行赘述。训练模型生成模块400通过至少一个图像分类模型对训练数据样本进行多个特征提取,并将提取的多个特征进行融合操作获取训练模型。其中,需要说明的是,本公开提出的动物的识别装置中图像分类模型采用3个图像分类模型进行动物的多个特征提取,并将提取的多个特征进行融合操作获取最优的训练模型。识别模块600将采集到的任意的待测试的动物的图像以视频获取,以图片作为视频帧的方式发送至训练模型,通过预设分类器进行识别。

需要说明的是,识别模块600将采集到视频转换为图片,以图片形式发送至训练模型,预设分类器对接收的图片进行识别;识别模块600将采集到的任意的待测试的动物的图像,通过视频获取,以图片为视频帧的形式发送至训练模型,预设分类器对接收的视频以图片作为视频帧为单位进行识别。由此,提高了接收待测试动物的图像的识别的精准性。

本实施例中,通过关键帧提取模块、检测模块以及降噪模块的添加,为后续的训练模型生成模块的准确性提供了精准的数据。

图6为图5所示的动物的识别装置的工作流程图。本实施例的动物的识别装置的工作流程步骤为:

步骤601,对动物的特征进行提取。其中,动物的特征包括:局部特征与全局特征。其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。

步骤602,将动物的图片作为训练数据输入到图像分类模型中。

步骤603提取训练数据样本中的动物的视频中的关键帧,其中,关键帧为监控中的输出视频为x264编码中的三种类型帧中的i帧。

步骤604,通过fasterrcnn算法对动物进行目标检测。

步骤605,将检测到的动物所在的第一矩形框之外的图片进行裁剪,以实现对关键帧中的噪声信息进行降噪处理,其中,第一矩形框为沿着动物周身线条围成的矩形框。

步骤606通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型。

步骤607,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

本实施例中,对动物的特征进行提取,经过多步骤卷积操作,可以自动提取动物的局部特征和全局特征。例如,猪的局部特征包括但不限于猪的胎记,五官的大小等;猪的全局特征包括但不限于猪的毛的颜色,猪的肥胖长度等。由此,提高了对训练数据样本获取的精准性。

进一步地,在本实施例中,对动物的特征进行提取,并将其作为训练数据样本进行训练之前,先要收集动物例如猪的相关的视频或者图片,将动物的图片作为训练数据输入到图像分类模型中。针对收集到的图片进行相应的身份标注使其形成一个前期的训练数据集,即训练数据集作为训练数据样本。其中,训练数据样本可以为预设时间段内获取的动物的视频或图片。

更进一步地,视频都是由图片构成的,在视频中这些图片被称为帧,在监控中的输出视频为x264编码,其有三种帧类型:i帧关键帧,是类似于图片形式的存在;p帧前向预测帧,由前面的帧预测而来;b帧前后向预测帧,由前一帧和后一帧预测而来,所以为了让深度学习卷积神经网络学到更多的信息,在此本公开提出的动物的识别装置获取每个视频中的关键帧i帧(keyframe)。此外,由于截取到的关键帧含有大量的噪声信息例如:猪栏,人等,为了获取到最纯净的样本,采用fasterrcnn算法对动物进行目标检测,找到动物所在的最小矩形框并剪切掉矩形框外的图片,这样既不会丢失掉识别方想要的信息,同时也不会引入无关的噪音。有效提高了信息获取精准性。

此外,通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型中,通过至少一个图像分类模型对训练数据样本进行多个特征提取,并将提取的多个特征进行融合操作获取训练模型。其中,需要说明的是,本公开提出的动物的识别装置中图像分类模型采用3个图像分类模型进行动物的多个特征提取,并将提取的多个特征进行融合操作获取最优的训练模型。将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别过程中,将采集到的任意的待测试的动物的图像,通过视频获取,以图片作为视频帧的形式发送至训练模型,通过预设分类器进行识别。需要说明的是,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别过程中,将采集到的任意的待测试的动物的图像,通过视频获取,以图片作为视频帧的形式发送至训练模型,预设分类器对接收的图片进行识别。由此,提高了接收待测试动物的图像的识别的精准性。

本实施例中,通过提取训练数据样本中的动物的视频中的关键帧,本公开也可以将图片理解为提取训练数据样本中动物的视频中的关键帧,由此,针对关键帧的提取与分析提高了后续训练模型生成的精准性。此外,通过fasterrcnn算法对动物进行目标检测,以及将检测到的动物所在的第一矩形框之外的图片进行裁剪,以实现对视频中的关键帧中的噪声信息进行降噪处理。可以理解关键帧还可以为图片。其中,第一矩形框为沿着动物周身线条围成的矩形框。

实施例四

如图7所示,本实施例的动物的识别装置与实施例一不同的是,包括:特征提取模块100,关键帧提取模块310、检测模块320、降噪模块330、赋值模块340和预处理模块350。

其中,特征提取模块100用于对动物的特征进行局部特征与全局特征提取,其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。输入模块200用于将动物的图片作为训练数据输入到图像分类模型中;关键帧提取模块310用于提取训练数据样本中的动物的视频中的关键帧,其中,关键帧为监控中的输出视频为x264编码中的三种类型帧中的i帧;检测模块320用于通过fasterrcnn算法对动物进行目标检测;降噪模块330用于将检测到的动物所在的第一矩形框之外的图片进行裁剪,以实现对关键帧中的噪声信息进行降噪处理,其中,第一矩形框为沿着动物周身线条围成的矩形框;赋值模块340用于对多种图像分类模型中的动物的图片输入尺寸进行预设值赋值;预处理模块350用于对多种图像分类模型中的动物的图片进行预处理操作。其中,预处理操作包括:对动物的图片进行旋转操作、对动物的图片进行对称操作、对动物的图片进行拉伸操作。训练模型生成模块400用于通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型;识别模块600用于将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

需要说明的是,视频都是由图片构成的,在视频中这些图片被称为帧,在监控中的输出视频为x264编码,其有三种帧类型:i帧关键帧,是类似于图片形式的存在;p帧前向预测帧,由前面的帧预测而来;b帧前后向预测帧,由前一帧和后一帧预测而来,所以为了让深度学习卷积神经网络学到更多的信息,在此本公开提出的动物的识别装置获取每个视频中的关键帧i帧(keyframe)。此外,由于截取到的关键帧含有大量的噪声信息例如:猪栏,人等,为了获取到最纯净的样本,采用fasterrcnn算法对动物进行目标检测,找到动物所在的最小矩形框并剪切掉矩形框外的图片,这样既不会丢失掉识别方想要的信息,同时也不会引入无关的噪音。有效提高了信息获取精准性。

此外,目前存在许多图像分类模型,例如inception,resnet,densenet等,但是还没有任何一个模型专门用来做动物,例如猪的细粒度分类。所以在本实施例中,基于本实验的训练集,采用inceptionv3,resnet,densenet的分类器之前的网络对训练及进行特征提取。进一步地,将上述步骤中形成的训练样本进行resize到299x299,即inceptionv3的数据输入尺寸和224x224,即resnet和densenet的数据输入尺寸,并做相关的图片旋转、对称、拉伸等操作实现对数据的增强,目的是使模型能够更充分的被训练。

本实施例,通过赋值模块与预处理模块的添加,为后续的识别模块进行充分识别提供了便捷性与易用性。

图8为图7所示的动物的识别装置的工作流程图。本实施例的动物的识别装置的工作流程步骤为:

步骤801,对动物的特征进行提取。其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。

步骤802,将动物的图片作为训练数据输入到图像分类模型中。

步骤803提取训练数据样本中的动物的视频中的关键帧,其中,关键帧为监控中的输出视频为x264编码中的三种类型帧中的i帧。

步骤804,通过fasterrcnn算法对动物进行目标检测。

步骤805,将检测到的动物所在的第一矩形框之外的图片进行裁剪,以实现对关键帧中的噪声信息进行降噪处理,其中,第一矩形框为沿着动物周身线条围成的矩形框。

步骤806,对多种图像分类模型中的动物的图片输入尺寸进行预设值赋值。

步骤807,对多种图像分类模型中的动物的图片进行预处理操作。其中,预处理操作包括:对动物的图片进行旋转操作、对动物的图片进行对称操作、对动物的图片进行拉伸操作。

步骤808通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型。

步骤809,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

本实施例中,视频都是由图片构成的,在视频中这些图片被称为帧,在监控中的输出视频为x264编码,其有三种帧类型:i帧关键帧,是类似于图片形式的存在;p帧前向预测帧,由前面的帧预测而来;b帧前后向预测帧,由前一帧和后一帧预测而来,所以为了让深度学习卷积神经网络学到更多的信息,在此本公开提出的动物的识别装置获取每个视频中的关键帧i帧(keyframe)。此外,由于截取到的关键帧含有大量的噪声信息例如:猪栏,人等,为了获取到最纯净的样本,采用fasterrcnn算法对动物进行目标检测,找到动物所在的最小矩形框并剪切掉矩形框外的图片,这样既不会丢失掉识别方想要的信息,同时也不会引入无关的噪音。有效提高了信息获取精准性。

此外,目前存在许多图像分类模型,例如inception,resnet,densenet等等,但是还没有任何一个模型专门用来做动物的细粒度分类。所以在本实施例中,基于本实验的训练集,采用inceptionv3模型,resnet模型和,densenet模型的分类器之前的网络对训练及进行特征提取。进一步地,将上述步骤中形成的训练样本进行resize到299x299,即inceptionv3的数据输入尺寸和224x224,即resnet和densenet的数据输入尺寸,并做相关的图片旋转、对称、拉伸等操作实现对数据的增强,目的是使模型能够更充分的被训练。

本实施例,通过赋值以及预处理操作,为后续的识别模块进行充分识别提供了便捷性与易用性。

实施例五

结合图9(a)-9(b)所示,本实施例的动物的识别装置与实施例一不同的是,包括:特征提取模块100,关键帧提取模块310、检测模块320、降噪模块330、赋值模块340、预处理模块350,还包括:定义模块510、模型误差回传模块520以及输出模块700。

其中,特征提取模块100用于对动物的特征进行局部特征与全局特征的提取,其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。输入模块200用于将动物的图片作为训练数据输入到图像分类模型中;关键帧提取模块310用于提取训练数据样本中的动物的视频中的关键帧,其中,关键帧为监控中的输出视频为x264编码中的三种类型帧中的i帧;检测模块320用于通过fasterrcnn算法对动物进行目标检测;降噪模块330用于将检测到的动物所在的第一矩形框之外的图片进行裁剪,以实现对关键帧中的噪声信息进行降噪处理,其中,第一矩形框为沿着动物周身线条围成的矩形框;赋值模块340用于对多种图像分类模型中的动物的图片输入尺寸进行预设值赋值;预处理模块350用于对多种图像分类模型中的动物的图片进行预处理操作。其中,预处理操作包括:对动物的图片进行旋转操作、对动物的图片进行对称操作、对动物的图片进行拉伸操作。训练模型生成模块400用于通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型;定义模块510用于对softmax分类器进行预定义;模型误差回传模块520用于对多种图像分类模型训练过程中进行误差回传;识别模块600用于将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别;输出模块700用于通过预设分类器输出待测试的动物的图像属于每一类的概率或输出最高概率的类。其中,需要说明的是,模型误差回传模块520的功能可以理解为学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可接受的程度,或进行到预先设定的学习次数为止。

本实施例中,预设分类器为softmax分类器,且图像分类模型包括:inception模型、resnet模型和densenet模型。

需要说明的是,视频都是由图片构成的,在视频中这些图片被称为帧,在监控中的输出视频为x264编码,其有三种帧类型:i帧关键帧,是类似于图片形式的存在;p帧前向预测帧,由前面的帧预测而来;b帧前后向预测帧,由前一帧和后一帧预测而来,所以为了让深度学习卷积神经网络学到更多的信息,在此本公开提出的动物的识别装置获取每个视频中的关键帧i帧(keyframe)。此外,由于截取到的关键帧含有大量的噪声信息例如:猪栏,人等,为了获取到最纯净的样本,采用fasterrcnn算法对动物进行目标检测,找到动物所在的最小矩形框并剪切掉矩形框外的图片,这样既不会丢失掉识别方想要的信息,同时也不会引入无关的噪音。有效提高了信息获取精准性。

此外,目前存在许多图像分类模型,例如inception,resnet,densenet等等,但是还没有任何一个模型专门用来做动物,例如猪的细粒度分类。所以在本实施例中,基于本实验的训练集,采用inceptionv3模型,resnet模型,densenet模型的分类器之前的网络对训练及进行特征提取。进一步地,将上述步骤中形成的训练样本进行resize到299x299,即inceptionv3的数据输入尺寸和224x224,即resnet和densenet的数据输入尺寸,并做相关的图片旋转、对称、拉伸等操作实现对数据的增强,目的是使模型能够更充分的被训练。

此外,将训练样本集送入写好的模型进行特征提取,之后对三个模型提到的特征进行特征融合,最后采用softmax分类器进行分类并输出分类概率,分类器的定义如下:假设softmax函数的输入数据是c维度的向量z,那么softmax函数的数据也是一个c维度的向量y,里面的值是0到1之间。softmax函数其实就是一个归一化的指数函数,定义如下:

其中:c为分类数量,例如在本发明中有30个类别的猪,故c=30;分母为所有本层神经元的e次方之和。

此外,对于模型的识别误差采用交叉熵算法。交叉熵的定义如下:根据训练图片分类概率,按如下公式计算得到分数,其中n为测试图片的数量,m为分类的数量,pij为预测图像i是第j头猪的概率,为防止出现计算异常,计算时会将p替换为max(min(p,1-10-15,10-15),yij为图像i的真实分类,即如果图像i是第j头猪,则y=1,否则y=0:

进一步地,通过上述步骤训练所得到的inceptionv3,densenet和resnet融合得到的模型,发送至模型新的图片给上述步骤中训练得到的模型,进行预测并输出该测试图片属于每一类的概率或输出最高概率的类。

本实施例,通过定义模块、模型误差回传模块的添加,提升了训练模型生成模块的准确性,同时,添加了输出模块,即增强了识别的可见性与易用性。

图10为图9所示的动物的识别装置的工作流程图。本实施例的动物的识别装置的工作流程步骤为:

步骤901,对动物的特征进行局部特征与全局特征提取。其中,局部特征包括:动物的胎记、动物的五官的大小;全局特征包括:动物的颜色、动物的长度、动物的肥胖体重度。

步骤902,将动物的图片作为训练数据输入到图像分类模型中。如图10(a)所示为以猪作为示例的训练数据样本示例。

步骤903提取训练数据样本中的动物的视频中的关键帧,其中,关键帧为监控中的输出视频为x264编码中的三种类型帧中的i帧。

步骤904,通过fasterrcnn算法对动物进行目标检测。

步骤905,将检测到的动物所在的第一矩形框之外的图片进行裁剪,以实现对关键帧中的噪声信息进行降噪处理,其中,第一矩形框为沿着动物周身线条围成的矩形框。

步骤906,对多种图像分类模型中的动物的图片输入尺寸进行预设值赋值。

步骤907,对多种图像分类模型中的动物的图片进行预处理操作。其中,预处理操作包括:对动物的图片进行旋转操作、对动物的图片进行对称操作、对动物的图片进行拉伸操作。如图10(b)所示的以猪为示例的训练数据预处理前后对比图。

步骤908,对softmax分类器进行预定义。

步骤909,对多种图像分类模型训练过程中进行误差回传。可以理解为,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可接受的程度,或进行到预先设定的学习次数为止。

步骤910通过图像分类模型对训练数据样本进行特征提取,并将提取的特征进行融合操作获取训练模型。

步骤911,将采集到的待测试的动物的图像发送至训练模型,通过预设分类器进行识别。

步骤912,通过预设分类器输出待测试的动物的图像属于每一类的概率或输出最高概率的类。

本实施例中,视频都是由图片构成的,在视频中这些图片被称为帧,在监控中的输出视频为x264编码,其有三种帧类型:i帧关键帧,是类似于图片形式的存在;p帧前向预测帧,由前面的帧预测而来;b帧前后向预测帧,由前一帧和后一帧预测而来,所以为了让深度学习卷积神经网络学到更多的信息,在此本公开提出的动物的识别装置获取每个视频中的关键帧i帧(keyframe)。此外,由于截取到的关键帧含有大量的噪声信息例如:猪栏,人等,为了获取到最纯净的样本,采用fasterrcnn算法对动物进行目标检测,找到动物所在的最小矩形框并剪切掉矩形框外的图片,这样既不会丢失掉识别方想要的信息,同时也不会引入无关的噪音。有效提高了信息获取精准性。

此外,目前存在许多图像分类模型,例如inception,resnet,densenet等等,但是还没有任何一个模型专门用来做动物,例如猪的细粒度分类。所以在本实施例中,基于本实验的训练集,采用inceptionv3,resnet,densenet的分类器之前的网络对训练及进行特征提取。进一步地,将上述步骤中形成的训练样本进行resize到299x299,即inceptionv3的数据输入尺寸和224x224,即resnet和densenet的数据输入尺寸,并做相关的图片旋转、对称、拉伸等操作实现对数据的增强,目的是使模型能够更充分的被训练。

本实施例,通过定义与模型误差回传操作,提升了训练模型生成模块的准确性,同时,通过输出操作的实施增强了动物的识别的可见性与易用性。

本说明书中,对于动物的识别方法实施例、计算机设备实施例、计算机可读存储介质实施例而言,由于其基本相似于动物的识别装置实施例,相关支出参见动物的识别装置实施例的说明书部分即可,以避免重复性描述。本发明另一方面的实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现动物的识别方法的步骤。

本发明再一方面的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现动物的识别方法的步骤。其中,计算机可读存储介质可以包括但不限于任何形式的盘,包括软盘、光盘、dvd、cd-rom、rom、ram、eprom、eeprom、dram、vram、微型驱动器以及磁盘、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器ic),或适合于存储指令和/或数据的任何类型的媒介或设备。处理设备例如可以是个人计算机、通用或专用数字计算机、计算设备、机器等任何适于处理数据的设备。

在本发明实施例中,处理器为计算机系统的控制中心,利用各种接口和线路连接整个计算机系统的各个部分,通过运行或执行存储在存储器内的软件程序和/或单元、模块,以及调用存储在存储器内的数据,以执行计算机系统的各种功能和/或处理数据。处理器可以由集成电路(integratedcircuit,简称ic)组成,例如可以由单颗封装的ic所组成,也可以由连接多颗相同功能或不同功能的封装ic而组成。在本发明实施例中,处理器可以为至少一个中央处理器(centralprocessingunit,简称cpu),cpu可以是单元算核心,也可以是多运算核心,可以是实体机的处理器,也可以是虚拟机的处理器。

本领域的技术人员可以清楚地了解到本发明的技术方案可借助软件和/或硬件来实现。本说明书中的“模块”和“单元”是指能够独立完成或与其他部件配合完成特定功能的软件和/或硬件,其中硬件例如可以是fpga(field-programmablegatearray,现场可编程门阵列)、ic(integratedcircuit,集成电路)。

本发明实施例所提供的动物的识别装置和方法、计算机可读存储介质、以及计算机设备,实现了构建多视图卷积神经网络,利用预训练的网络参数模型作为本发明的深度学习网络的初始权重和偏置,采用多模型融合的方法的猪的识别方法,解决现有的猪的身份识别认定难的问题。

在本发明中,术语“第一”、“第二”、“第三”仅用于描述的目的,而不能理解为指示或暗示相对重要性;术语“多个”则指两个或两个以上,除非另有明确的限定。术语“安装”、“相连”、“连接”、“固定”等术语均应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;“相连”可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

本发明的描述中,需要理解的是,术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或单元必须具有特定的方向、以特定的方位构造和操作,因此,不能理解为对本发明的限制。

在本说明书的描述中,术语“一个实施例”、“一些实施例”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

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

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