本发明实施例涉及身份识别技术,尤其涉及一种牲畜身份识别方法、装置、存储介质和电子设备。
背景技术:
在对牲畜进行舍饲圈养和管理时,需要定期对牲畜进行检疫、免疫处理,以防止发生影响食品安全的瘟疫;需要对出场到市场中的牲畜进行溯源,跟踪每头牲畜的出处,以确保在发生食品安全时,有效地控制疫情。此外,养殖户还可对养殖的牲畜投保,在发生规模性牲畜死亡的情况时,可对投保死亡的牲畜要求理赔。
在前述对圈养牲畜的管理任务中,均涉及对牲畜进行识别和跟踪的问题。然而,牲畜不是能够与人类进行智能交互的动物,无法保证在对其进行图像采集、免疫操作等时保持期望的姿态或状态,因此为牲畜的身份识别、跟踪等带来困难。
技术实现要素:
本发明实施例的目的在于,提供一种牲畜身份识别方法、存储介质和电子设备,以有效地对牲畜进行身份识别。
根据本发明实施例的第一方面,提供一种牲畜身份识别方法包括:获取待识别牲畜的当前行为环境数据和待验图像;根据所述待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果;根据所述当前行为环境数据和牲畜习性数据,确定所述待识别牲畜的身份识别辅助信息,所述牲畜习性数据包括多个牲畜身份标识集合,每个牲畜身份标识集合包括与行为环境分别对应的至少一个牲畜身份标识数据;根据所述主身份识别结果和所述身份识别辅助信息,确定所述待识别牲畜的身份。
根据本发明实施例的第二方面,提供一种牲畜习性信息的采集方法,包括:获取牲畜生活历史数据,所述牲畜生活历史数据包括牲畜采集图像及其行为环境数据;根据所述牲畜采集图像,分别获取相应的牲畜身份标识数据;根据所述行为环境数据对所述身份标识数据进行聚类,获取与各个所述行为环境数据各自相应的牲畜身份标识集合作为牲畜习性数据。
根据本发明实施例的第三方面,提供一种牲畜查询方法,包括:获取待查牲畜的信息;根据牲畜习性数据和所述待查牲畜的信息,获取所述待查牲畜的行为环境数据,所述牲畜习性数据包括多个牲畜身份标识集合,每个牲畜身份标识集合包括与行为环境分别对应的至少一个牲畜身份标识数据;根据获取到的所述行为环境数据,确定所述待查牲畜当前的行为和位置。
根据本发明实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,其中,所述程序指令被处理器执行时实现前述任一所述的牲畜身份识别方法的步骤。
根据本发明实施例的第五方面,提供一种电子设备,包括:处理器、存储器、通信元件和通信总线,所述处理器、所述存储器和所述通信元件通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行前述任一牲畜身份识别方法的步骤。
根据本发明实施例的第六方面,还提供一种计算机程序,其包括有计算机程序指令,所述程序指令被处理器执行时实现本申请实施例提供的任一牲畜身份识别方法。
根据本发明实施例的第七方面,提供一种计算机程序产品,用于存储计算机可读指令,所述指令被执行时使得计算机执行上述任一可能的实现方式中所述的牲畜身份识别方法。
可选地,所述计算机程序产品具体为计算机存储介质,在另一个可选实施方式中,所述计算机程序产品具体为软件产品,例如sdk等。
根据本发明实施例的第八方面,提供一种牲畜身份识别装置,包括:数据获取模块,用于获取待识别牲畜的当前行为环境数据和待验图像;主身份确定模块,用于根据所述数据获取模块获取的待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果;辅助信息确定模块,用于根据所述数据获取模块获取的当前行为环境数据和牲畜习性数据,确定所述待识别牲畜的身份识别辅助信息,所述牲畜习性数据包括多个牲畜身份标识集合,每个牲畜身份标识集合包括与行为环境分别对应的至少一个牲畜身份标识数据;身份识别模块,用于根据所述主身份确定模块确定的主身份识别结果和所述辅助信息确定模块确定的身份识别辅助信息,确定所述待识别牲畜的身份。
根据本发明实施例的牲畜身份识别方案,根据待识别牲畜的待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果,根据待识别牲畜的当前行为环境数据和牲畜习性数据,确定待识别牲畜的身份识别辅助信息,并且根据所述主身份识别结果和所述身份识别辅助信息,确定所述待识别牲畜的身份。由此,利用牲畜的牲畜习性获取的身份识别辅助信息作为辅助手段或佐证,对待识别牲畜进行准确身份识别。在由于牲畜持续活动或姿态不正对摄像装置,而无法获得高质量的待验图像的情况下,能够为待识别牲畜的识别提供辅助,从而提高牲畜身份识别的准确性。
附图说明
图1是示出根据本发明实施例一的牲畜习性信息的采集方法的流程图;
图2是示出根据本发明实施例二的牲畜身份识别方法的流程图;
图3是示出图2中的步骤s220的一种示例性处理的流程图;
图4是示出图2中的步骤s230的一种示例性处理的流程图;
图5是示出根据本发明实施例七的牲畜查询方法的流程图;
图6是示出根据本发明实施例八的牲畜身份识别装置的逻辑框图;
图7是示出根据本发明实施例十的电子设备的结构示意图。
具体实施方式
下面结合附图详细描述本发明实施例的示例性实施例。
在本申请中,“多个”指两个或两个以上,“至少一个”指一个、两个或两个以上。对于本申请中提及的任一部件、数据或结构,在没有明确限定一个的情况下,可理解为一个或多个。
实施例一
图1是示出根据本发明实施例一的牲畜习性信息的采集方法的流程图。可在任何例如个人电脑、服务器等具有计算功能的设备中执行实施例一的牲畜习性信息的采集方法。
众所周知,圈养牲畜经过训练后,形成较为规律的生活习惯/习性。例如,猪从幼崽时开始,被训练在某个地方a睡觉、在某个地方b吃食、在某个地方c大小便等等,它们的活动基本被限制在固定的区域,由此形成较为固定的生活习性。此外,动物具有天然的群体性。例如,在喂养奶牛的过程中,可以发现,在吃食或者挤奶时,很多奶牛旁的奶牛耳标号接近,而耳标号接近意味着这些奶牛出生地点与时间接近,有可能从小就在一起,从而形成了天然的群体。那么,未来这些奶牛在活动区域上会相互影响,或者可以相互的印证等。再例如,在猪群的饲养过程中,养殖户在对小猪进行分圈时,通常会有意识地将同一头母猪的一批小猪分到同一个圈,以此降低这些小猪融入新环境的时间等。牲畜的这些生活习性、社交习性等,在对牲畜进行识别、验证、跟踪时,具有附加价值和意义。
根据本发明的实施例一,可通过收集批量的牲畜生活数据并进行分析,获取表征牲畜习性的数据,从而可在对牲畜进行识别、验证、跟踪处理时,使用这些牲畜习性数据进行辅助处理。
参照图1,在步骤s110,获取牲畜生活历史数据,所述牲畜生活历史数据包括牲畜采集图像及其行为环境数据。
可在牲畜饲养过程中,持续地收集记录牲畜生活过程的牲畜生活数据。根据本发明的实施例一,可使用在一段时间内收集的牲畜生活数据形成的牲畜生活历史数据进行牲畜习性数据的分析。
在此,牲畜生活历史数据可含有多条(如成千条、上万条)生活记录,每条生活记录至少包括某个牲畜的牲畜采集图像以及该图像被采集时的牲畜行为环境数据。这里,行为环境数据可包括牲畜的行为数据和行为发生的环境数据。
具体地,行为数据可包括表示哺乳、吃食、睡觉、玩耍、排泄、社交等行为的数据,环境数据可包括表示圈养子区域、发生位置、时间等信息的数据,但不限于前述数据。例如,一条行为环境数据可指示牲畜相关习性,即,由某个喂乳牲畜哺乳、在猪圈某个角落睡觉等。
在步骤s120,根据所述牲畜采集图像,分别获取相应的牲畜身份标识数据。
具体地,针对牲畜生活历史数据中的各个牲畜采集图像,分别进行图像分析处理,获取图像中的牲畜的外观特征数据,并且根据牲畜的外观特征数据进行身份识别,获取牲畜的身份标识数据。这里所说的身份识别是指识别出某头牲畜,身份标识数据是指用于唯一地标识该牲畜的标识数据,其可以是牲畜的编号、名称等,例如,35763号猪、圈3-536猪等。
可通过任何适用的身份识别方法,从任一牲畜采集图像获取该牲畜身份标识数据。例如,最简单地,可将牲畜采集图像与牲畜数据库中收录的牲畜图像进行比对,来确定牲畜采集图像中的牲畜身份;再例如,可从牲畜采集图像提取牲畜的特征数据,将提取的特征数据与牲畜数据库中收录的各个牲畜特征数据进行比对,根据比对结果确定牲畜采集图像中的牲畜身份,等等。
此后,在步骤s130,根据所述行为环境数据对所述身份标识数据进行聚类,获取与各个所述行为环境数据各自相应的牲畜身份标识集合作为牲畜习性数据。
具体地,将与相同的行为环境数据的值相应的牲畜身份标识数据归类到一起,形成与该行为环境数据相应的牲畜身份标识集合。例如,假设35763号猪的行为环境数据指示由母猪56384哺乳,而65638号猪的行为环境数据也指示由母猪56384哺乳,则将35763号猪和65638号猪添加到指示母猪56384哺乳的行为环境数据相应的牲畜身份标识集合中。
前述多个行为环境数据以及与各个行为环境数据相应的牲畜身份标识集合形成牲畜习性数据。
根据本发明实施例一的牲畜习性信息的采集方法,通过使用包括牲畜采集图像及其行为环境数据的牲畜生活历史数据,分别获取各个牲畜采集图像中的牲畜的身份标识数据,并且根据所述行为环境数据对所述身份标识数据进行聚类,获取与各个所述行为环境数据相应的牲畜身份标识集合,以得到牲畜习性数据。这些牲畜习性数据可用于例如牲畜身份识别、牲畜跟踪、牲畜溯源等各种智能化牲畜管理。
实施例二
图2是示出根据本发明实施例二的牲畜身份识别方法的流程图。
参照图2,在步骤s210,获取待识别牲畜的当前行为环境数据和待验图像。
可通过在待识别牲畜的饲养环境设置的摄像装置采集该待识别牲畜的待验图像,并且与待验图像相应地标注待识别牲畜的当前行为环境数据,也可以从待验图像识别出当前行为环境数据。在该步骤,获取通过前述处理获得的待识别牲畜的当前行为环境数据和待验图像,以进行后续的身份识别处理,即步骤s220~s240。
如前所述,当前行为环境数据包括待识别牲畜的行为数据和与行为相应的环境数据。行为数据可包括表示哺乳、吃食、睡觉、玩耍、排泄、社交等行为的数据,环境数据可包括表示圈养子区域、发生位置、时间等信息的数据,但不限于前述数据。
在步骤s220,根据所述待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果。
如前所述,可通过对待验图像进行处理和分析,并且与牲畜数据库中收录的各个牲畜的身份特征数据进行比对,来识别待识别牲畜的身份,确定待识别牲畜的主身份识别结果。
该主身份识别结果至少包括识别出的一个牲畜的身份标识数据或多个待选的牲畜的身份标识数据,其也可以包括其他用于指示身份识别准确性的数据。
例如,通过待验图像的特征数据与牲畜数据库中的身份特征数据进行比对,获得比对结果较好的3头牲畜的信息,则主身份识别结果可包括这3头牲畜的身份标识数据。
在步骤s230,根据所述当前行为环境数据和牲畜习性数据,确定所述待识别牲畜的身份识别辅助信息,所述牲畜习性数据包括多个牲畜身份标识集合,每个牲畜身份标识集合包括与行为环境分别对应的至少一个牲畜身份标识数据。
如前所述,可根据牲畜生活历史数据,获取与各个行为环境数据相应的牲畜身份标识集合作为牲畜习性数据。在该步骤,将待识别牲畜的当前行为环境数据与牲畜习性数据中的行为环境数据进行匹配,并且获取匹配得到的行为环境数据对应的牲畜身份标识集合。此后,可根据匹配结果,获取待识别牲畜的身份识别辅助信息。例如,假设当前行为环境数据指示由母猪56384哺乳,根据先前收集的牲畜习性数据,获取到与其相应的35763号猪和65638号猪的身份识别辅助信息。
可以看出,由于具有某种生活习性的牲畜通常会有多个,并且牲畜习性无法用于直接确定牲畜的身份,因此通过步骤s230的处理获得的与待识别牲畜的当前行为环境数据对应的牲畜身份标识数据,仅能够作为身份识别的辅助信息,例如,可用于进一步确认前述主身份识别结果或者对前述主身份识别结果进行校正等。
类似地,该身份识别辅助信息至少包括匹配出的一个或多个待选的牲畜身份标识数据,其也可以包括其他用于指示身份识别准确性的数据。
可以理解,可顺序地或逆序地执行步骤s220和步骤s230,或者并行地执行该两个步骤。
在步骤s240,根据所述主身份识别结果和所述身份识别辅助信息,确定所述待识别牲畜的身份。
具体地,可以身份识别辅助信息作为辅助手段或佐证,根据主身份识别结果确定待识别牲畜的身份。例如,如果通过步骤s220的处理,获得奶牛aa、奶牛bb和奶牛cc的主身份识别结果,而通过步骤s230的处理,获得奶牛cc、奶牛dd、奶牛ee的身份识别辅助信息,则在步骤s240可确定待识别牲畜为奶牛cc。由此,通过奶牛的生活习性,确认当前由母猪56384哺乳的奶牛的身份。
在难以获得质量完全达到要求的待验图像(如牲畜持续低头、牲畜头部不正对摄像装置)的情况下,能够利用待识别牲畜的当前行为环境数据和已先前收集的牲畜习性数据,为待识别牲畜的识别提供辅助,从而提高牲畜身份识别的准确性。
根据本发明实施例二的牲畜身份识别方法,根据待识别牲畜的待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果,根据待识别牲畜的当前行为环境数据和牲畜习性数据,确定待识别牲畜的身份识别辅助信息,并且根据所述主身份识别结果和所述身份识别辅助信息,确定所述待识别牲畜的身份。由此,利用牲畜的牲畜习性获取的身份识别辅助信息作为辅助手段或佐证,对待识别牲畜进行准确身份识别。在由于牲畜持续活动或姿态不正对摄像装置,而无法获得高质量的待验图像的情况下,能够为待识别牲畜的识别提供辅助,从而提高牲畜身份识别的准确性。
实施例三
根据本发明的一种可选实施方式,前述主身份识别结果的数据至少包括第一身份标识数据,身份识别辅助信息的数据至少包括第二身份标识数据。这里,第一身份标识数据和第二身份标识数据均为牲畜身份标识数据。
相应地,根据步骤s240的一种示例性处理,如果所述主身份识别结果和所述身份识别辅助信息之间存在匹配的第三身份标识数据,则根据所述第三身份标识数据确定所述待识别牲畜的身份。也就是说,根据身份识别辅助信息,可确认通过步骤s220识别出的某个牲畜符合其通常的生活习性,从而可确认待识别牲畜为第三身份标识数据指示的牲畜身份。
例如,主身份识别结果指示待识别牲畜是牲畜ff、gg或hh,而根据身份识别辅助信息,牲畜hh的当前行为环境符合其生活习性,因此将待识别牲畜的身份确定为牲畜hh。
另一方面,如果所述主身份识别结果和所述身份识别辅助信息之间不存在匹配的第三身份标识数据,则可根据主身份识别结果确定所述待识别牲畜的身份。
返回前述示例,可将待识别牲畜的身份确定为牲畜ff、gg和hh中的任一个。
实施例四
根据本发明的另一种可选实施方式,前述主身份识别结果的数据至少包括第一身份标识数据及其身份识别准确度信息,身份识别辅助信息的数据至少包括第二身份标识数据。这里,身份识别准确度信息为第一身份标识数据的预测准确度数据,该预测准确度数据可以是预测概率值、预测置信度值等等。
主身份识别结果的数据可包括一条或多条第一身份标识数据及其身份识别准确度信息。
相应地,步骤s240可包括以下3个用于确定待识别牲畜的身份的操作。需要指出,该4个操作之间无明显顺序的关联,并且可根据身份识别的准确性要求或功能要求,确定执行该4个操作中的一个或多个,或者还可执行其他适用的用于确定待识别牲畜的身份的操作。
1、同前,如果所述主身份识别结果和所述身份识别辅助信息之间存在匹配的第三身份标识数据,则根据所述第三身份标识数据确定所述待识别牲畜的身份。
2、如果所述主身份识别结果和所述身份识别辅助信息之间存在匹配的第三身份标识数据,并且所述第三身份标识数据的身份识别准确度信息超过预定的识别准确度阈值,则根据所述第三身份标识数据确定所述待识别牲畜的身份。
也就是说,如果主身份识别结果和所述身份识别辅助信息之间存在共同的牲畜(与第三身份标识数据对应),并且第三身份标识数据的预测准确度达到预期,则可将待识别牲畜的身份确定为第三身份标识数据对应的牲畜身份,由此识别出的牲畜身份较为准确。
3、同前,如果所述主身份识别结果和所述身份识别辅助信息之间不存在匹配的第三身份标识数据,则根据所述主身份识别结果确定所述待识别牲畜的身份。
4、如果所述身份识别准确度信息均低于预定的识别准确度下限值,则确定无法识别所述待识别牲畜的身份,或者根据所述身份识别辅助信息确定所述待识别牲畜的可能身份。
也就是说,根据待验图像无法识别出待识别牲畜的身份,可确定无法识别所述待识别牲畜的身份;或者,根据待验图像无法识别出待识别牲畜的身份,在个别调查应用中对身份识别的要求不高的情况下,可根据所述身份识别辅助信息确定所述待识别牲畜的可能身份,作为参考数据。
实施例五
图3是示出图2中的步骤s220的一种示例性处理的流程图。
参照图3,在步骤s221,由所述待验图像获取所述待识别牲畜的待验特征数据。
可通过任何适用的图像处理技术,从待验图像获取所述待识别牲畜的待验特征数据,例如,待识别牲畜各个部位的形状特征数据、颜色特征数据、纹理特征数据等。
根据本发明的一种可选实施方式,可通过预先训练的用于图像特征提取的神经网络模型,从待验图像获取所述待识别牲畜的待验特征数据。获取的待验特征数据可包括表征牲畜各个外观特征的特征向量,以通过机器学习的方式获取更精细的特征数据。
在步骤s223,分别计算所述待验特征数据和牲畜数据库中的各个存档牲畜的参照特征数据之间的特征相似度值。
根据本发明的总体发明构思,在为各个牲畜在牲畜数据库中建档时,为各个存档牲畜采集存档图像,并且为存档牲畜生成表征其外观特征的参照特征数据,例如存档牲畜各个部位的形状特征数据、颜色特征数据、纹理特征数据等,或者表征存档牲畜的各个外观特征的特征向量。此后,将存档牲畜的基本信息、存档图像、参照特征数据等存储在牲畜数据库中。
具体地,在该步骤,分别计算所述待验特征数据和牲畜数据库中的各个存档牲畜的参照特征数据之间的特征相似度值。例如,可通过计算待验特征数据的特征向量与各个参照特征数据的特征向量之间的欧式距离或余弦相似度等,得到两者之间的特征相似度值,以确定待验特征数据可与哪个存档牲畜的参照特征数据匹配。
在步骤s225,选取计算出的特征相似度值最高的一个或多个存档牲畜的身份数据以及相应的特征相似度值作为所述第一身份标识数据及其身份识别准确度信息。
由于通常较容易通过脸部特征识别牲畜,因此,可选地,所述待验特征数据和参照特征数据均为所述待识别牲畜的脸部特征数据,例如与脸宽、脸高、眼距、鼻长、鼻宽、嘴长、嘴型等特征相应的特征向量,从而更有利于对待识别牲畜的特征数据进行比对、进而进行身份识别。相应地,待验图像和前述采集图像可为牲畜的脸部图像。
此外,可选地,在执行步骤s223之前,如果确定在所述待验图像中所述待识别牲畜的姿态不符合预定的姿态条件(例如,没有正面朝向摄像装置),则将所述主身份识别结果中的身份识别准确度信息设为低于所述识别准确度下限值。也就是说,待验图像不符合对牲畜进行身份识别的要求,则将主身份识别结果设为无效。
需要指出,实施例五仅给出步骤s220的一种示例性处理,还可使用其他适用的牲畜身份识别执行该步骤的处理,而不限于该示例性处理。
通过实施例五的处理,可通过将待识别牲畜的待验特征数据和牲畜数据库中的各个存档牲畜的参照特征数据进行比对的方式,来确定待识别牲畜的主身份识别结果,从而尽可能准确地对待识别牲畜进行身份识别。
实施例六
图4是示出图2中的步骤s230的一种示例性处理的流程图。
参照图4,在步骤s231,根据待识别牲畜的当前行为环境数据和前述牲畜习性数据,获取匹配的牲畜身份标识集合。
如前所述,根据实施例一的牲畜习性信息的采集方法,已获取牲畜习性数据,该牲畜习性数据包括与多个行为环境分别对应的多个备选牲畜身份标识集合。
在该步骤,根据待识别牲畜的当前行为环境数据与牲畜习性数据中的行为环境数据进行匹配,获取匹配出的牲畜身份标识集合。通过该步骤的处理,可获得具有相似生活习性的牲畜信息。
在步骤s233,根据所述当前行为环境数据和当前已识别牲畜的行为环境数据,获取与所述当前行为环境数据匹配的当前已识别牲畜的身份标识数据,并且从匹配的牲畜身份标识集合中去除所述匹配的当前已识别牲畜的身份标识数据。
在此,如果持续对多头牲畜进行身份识别,则可利用已识别牲畜的数据,获取当前已识别牲畜的行为环境数据,并且根据当前已识别牲畜的行为环境数据对匹配出的牲畜身份标识集合进行筛选。例如,将牲畜身份标识集合中当前已识别牲畜的身份标识数据去除。
在步骤s235,将经过步骤s233处理得到的牲畜身份标识集合作为所述身份识别辅助信息。
需要指出,实施例六仅给出步骤s230的一种示例性处理,还可使用其他适用的处理方法执行该步骤的处理,而不限于该示例性处理。
通过实施例六的处理,根据牲畜习性数据以及已识别出的牲畜的信息,生成将待识别牲畜的身份识别辅助信息,以用于辅助执行待识别牲畜的身份识别。
实施例七
图5是示出根据本发明实施例七的牲畜查询方法的流程图。
参照图5,在步骤s510,获取待查牲畜的信息。
待查牲畜的信息可以是待查牲畜的编号、标识、名称等。
在步骤s520,根据前述牲畜习性数据和待查牲畜的信息,获取所述待查牲畜的行为环境数据。
通过将待查牲畜的信息与前述牲畜习性数据进行匹配,可获得表征待查牲畜的生活习性的行为环境数据。
在步骤s530,根据获取到的所述行为环境数据,确定所述待查牲畜当前的行为和位置,以根据该行为和位置,查找待查牲畜。
根据本发明实施例七的牲畜查询方法,通过前述采集的牲畜习性数据和待查牲畜的信息,获取待查牲畜的行为环境数据,再根据获取到的所述行为环境数据,确定所述待查牲畜当前的行为和位置,以根据该行为和位置来查找待查牲畜。由此,可将待查牲畜的牲畜习性数据作为辅助,针对性地查找待查牲畜,并进行牲畜跟踪。
实施例八
图6是示出根据本发明实施例八的牲畜身份识别装置的逻辑框图。
参照图6,根据本发明实施例八的牲畜身份识别装置包括数据获取模块610、主身份确定模块620、辅助信息确定模块630和身份识别模块640。
数据获取模块610用于获取待识别牲畜的当前行为环境数据和待验图像。
主身份确定模块620用于根据数据获取模块610获取的待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果。
辅助信息确定模块630用于根据数据获取模块610获取的当前行为环境数据和牲畜习性数据,确定所述待识别牲畜的身份识别辅助信息,所述牲畜习性数据包括多个牲畜身份标识集合,每个牲畜身份标识集合包括与行为环境分别对应的至少一个牲畜身份标识数据。
身份识别模块640用于根据主身份确定模块620确定的主身份识别结果和辅助信息确定模块630确定的身份识别辅助信息,确定所述待识别牲畜的身份。
本实施例的牲畜身份识别装置用于实现前述方法实施例中相应的牲畜身份识别方法,并具有相应的方法实施例的有益效果,在此不再赘述。
实施例九
本发明实施例八提供一种计算机可读存储介质,其上存储有计算机程序指令,其中,所述程序指令被处理器执行时实现前述实施例二~实施例六所述的牲畜身份识别方法的步骤,并具有相应的实施例的有益效果,在此不再赘述。
本发明实施例八还提供一种计算机程序,其包括有计算机程序指令,其中,所述程序指令被处理器执行时实现前述实施例二~实施例六所述的牲畜身份识别方法的步骤,并具有相应的实施例的有益效果,在此不再赘述。
本发明实施例八还提供一种计算机程序产品,用于存储计算机可读指令,所述指令被执行时使得计算机执行上述任一可行的实现方式中所述的牲畜身份识别方法。
可选地,所述计算机程序产品具体为计算机存储介质,在另一个可选实施方式中,所述计算机程序产品具体为软件产品,例如sdk等。
实施例十
图7是示出根据本发明实施例十的电子设备的结构示意图。
本发明实施例提供了一种电子设备,例如可以是移动终端、个人计算机(pc)、平板电脑、服务器等。下面参考图7,其示出了适于用来实现本发明实施例的终端设备或服务器的电子设备700的结构示意图。
如图7所示,电子设备700包括一个或多个处理器、通信元件等,所述一个或多个处理器例如:一个或多个中央处理单元(cpu)701,和/或一个或多个图像处理器(gpu)713等,处理器可以根据存储在只读存储器(rom)702中的可执行指令或者从存储部分708加载到随机访问存储器(ram)703中的可执行指令而执行各种适当的动作和处理。通信元件包括通信组件712和通信接口709。其中,通信组件712可包括但不限于网卡,所述网卡可包括但不限于ib(infiniband)网卡,通信接口709包括诸如lan卡、调制解调器等的网络接口卡的通信接口,通信接口709经由诸如因特网的网络执行通信处理。
处理器可与只读存储器702和/或随机访问存储器703中通信以执行可执行指令,通过总线704与通信组件712相连、并经通信组件712与其他目标设备通信,从而完成本发明实施例提供的任一项方法对应的操作,例如,获取待识别牲畜的当前行为环境数据和待验图像;根据所述待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果;根据所述当前行为环境数据和牲畜习性数据,确定所述待识别牲畜的身份识别辅助信息,所述牲畜习性数据包括多个牲畜身份标识集合,每个牲畜身份标识集合包括与行为环境分别对应的至少一个牲畜身份标识数据;根据所述主身份识别结果和所述身份识别辅助信息,确定所述待识别牲畜的身份。
在一种可选的实施方式中,所述主身份识别结果的数据至少包括第一身份标识数据,所述身份识别辅助信息的数据至少包括第二身份标识数据。
在一种可选的实施方式中,可执行指令用于使得处理器进一步执行以下操作:如果所述主身份识别结果和所述身份识别辅助信息之间存在匹配的第三身份标识数据,则根据所述第三身份标识数据确定所述待识别牲畜的身份。
在一种可选的实施方式中,所述主身份识别结果的数据还包括与各个第一身份标识数据分别对应的身份识别准确度信息,所述身份识别辅助信息的数据还包括与各个第二身份标识数据。
在一种可选的实施方式中,可执行指令用于使得处理器进一步执行以下操作:如果所述主身份识别结果和所述身份识别辅助信息之间存在匹配的第三身份标识数据,则根据所述第三身份标识数据确定所述待识别牲畜的身份;如果所述主身份识别结果和所述身份识别辅助信息之间存在匹配的第三身份标识数据,并且所述第三身份标识数据的身份识别准确度信息超过预定的识别准确度阈值,则根据所述第三身份标识数据确定所述待识别牲畜的身份;以及/或者,如果所述主身份识别结果和所述身份识别辅助信息之间不存在匹配的第三身份标识数据,则根据所述主身份识别结果确定所述待识别牲畜的身份;以及/或者,如果所述身份识别准确度信息均低于预定的识别准确度下限值,则确定无法识别所述待识别牲畜的身份,或者根据所述身份识别辅助信息确定所述待识别牲畜的可能身份。
在一种可选的实施方式中,可执行指令用于使得处理器进一步执行以下操作:由所述待验图像获取所述待识别牲畜的待验特征数据;分别计算所述待验特征数据和牲畜数据库中的各个存档牲畜的参照特征数据之间的特征相似度值;选取计算出的特征相似度值最高的一个或多个存档牲畜的身份数据以及相应的特征相似度值作为所述第一身份标识数据及其身份识别准确度信息。
在一种可选的实施方式中,可执行指令用于使得处理器进一步执行以下操作:如果在所述待验图像中所述待识别牲畜的姿态不符合预定的姿态条件,则将所述主身份识别结果中的身份识别准确度信息设为低于所述识别准确度下限值。
在一种可选的实施方式中,可执行指令用于使得处理器进一步执行以下操作:根据所述当前行为环境数据和所述牲畜习性数据,获取匹配的牲畜身份标识集合;根据所述当前行为环境数据和当前已识别牲畜的行为环境数据,获取与所述当前行为环境数据匹配的当前已识别牲畜的身份标识数据,并且从匹配的牲畜身份标识集合中去除所述匹配的当前已识别牲畜的身份标识数据;将经过去除操作的牲畜身份标识集合作为所述身份识别辅助信息。
在一种可选的实施方式中,所述待验特征数据和参照特征数据均为所述待识别牲畜的脸部特征数据。
在一种可选的实施方式中,所述当前行为环境数据包括当前时间段数据、牲畜行为数据和相应的环境数据。
此外,在ram703中,还可存储有装置操作所需的各种程序和数据。cpu701、rom702以及ram703通过总线704彼此相连。在有ram703的情况下,rom702为可选模块。ram703存储可执行指令,或在运行时向rom702中写入可执行指令,可执行指令使处理器701执行上述通信方法对应的操作。输入/输出(i/o)接口705也连接至总线704。通信组件712可以集成设置,也可以设置为具有多个子模块(例如多个ib网卡),并在总线链接上。
以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan卡、调制解调器等的网络接口卡的通信接口709。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
需要说明的是,如图7所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图7的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如gpu和cpu可分离设置或者可将gpu集成在cpu上,通信组件712可分离设置,也可集成设置在cpu或gpu上,等等。这些可替换的实施方式均落入本发明的保护范围。
特别地,根据本发明实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本发明实施例提供的方法步骤对应的指令,例如,用于获取待识别牲畜的当前行为环境数据和待验图像的可执行代码;用于根据所述待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果的可执行代码;用于根据所述当前行为环境数据和牲畜习性数据,确定所述待识别牲畜的身份识别辅助信息的可执行代码,所述牲畜习性数据包括多个牲畜身份标识集合,每个牲畜身份标识集合包括与行为环境分别对应的至少一个牲畜身份标识数据;用于根据所述主身份识别结果和所述身份识别辅助信息,确定所述待识别牲畜的身份的可执行代码。在这样的实施例中,该计算机程序可以通过通信元件从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(cpu)701执行时,执行本发明实施例的方法中限定的上述功能。
本发明实施例十提供的电子设备,根据待识别牲畜的待验图像和牲畜数据库,确定所述待识别牲畜的主身份识别结果,根据待识别牲畜的当前行为环境数据和牲畜习性数据,确定待识别牲畜的身份识别辅助信息,并且根据所述主身份识别结果和所述身份识别辅助信息,确定所述待识别牲畜的身份。由此,利用牲畜的牲畜习性获取的身份识别辅助信息作为辅助手段或佐证,对待识别牲畜进行准确身份识别。在由于牲畜持续活动或姿态不正对摄像装置,而无法获得高质量的待验图像的情况下,能够为待识别牲畜的识别提供辅助,从而提高牲畜身份识别的准确性。
需要指出,根据实施的需要,可将本申请中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
在一个或多个可选实施方式中,本发明实施例还提供了一种计算机程序程序产品,用于存储计算机可读指令,所述指令被执行时使得计算机执行上述任一实施例中所述的牲畜身份识别方法。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选例子中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选例子中,所述计算机程序产品具体体现为软件产品,例如软件开发包(softwaredevelopmentkit,sdk)等等。
在一个或多个可选实施方式中,本发明实施例还提供了另一种牲畜身份识别方法及其对应的装置和电子设备、计算机存储介质、计算机程序以及计算机程序产品,其中,该方法包括:第一装置向第二装置发送牲畜身份识别指示,该指示使得第二装置执行上述任一可能的实施例中的牲畜身份识别方法;第一装置接收第二装置发送的后处理结果图像。
在一些实施例中,该牲畜身份识别指示可以具体为调用指令,第一装置可以通过调用的方式指示第二装置执行牲畜身份识别,相应地,响应于接收到调用指令,第二装置可以执行上述牲畜身份识别方法中的任意实施例中的步骤和/或流程。
应理解,本发明实施例中的“第一”、“第二”等术语仅仅是为了区分,而不应理解成对本发明实施例的限定。
还应理解,本发明对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
可能以许多方式来实现本发明的方法和装置、设备。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明实施例的方法和装置、设备。用于方法的步骤的上述顺序仅是为了进行说明,本发明实施例的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明实施例的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明实施例的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。