牲畜发情的判定方法、装置、存储介质及电子设备与流程-j9九游会真人

文档序号:35755743发布日期:2023-10-16 20:56阅读:9来源:国知局
1.本技术涉及畜牧养殖
技术领域
:,具体涉及一种牲畜发情的判定方法、装置、存储介质及电子设备。
背景技术
::2.提高牲畜养殖产量能够极大地推动畜牧养殖业的发展。在提高畜牧养殖产量方面,准确把握牲畜发情时机至关重要。比如,对于养殖的母牛、母猪、母鸡等牲畜而言,通过电子设备检测牲畜的运动数据,从而根据运动数据判断牲畜是否发情,以在牲畜发情时对其进行配种繁殖。3.现有技术是通过对运动数据与预设发情数据进行比较分析来判断牲畜是否发情的。由于运动数据受干扰因素的影响较大,此种分析方式存在误差较大的弊端。技术实现要素:4.本技术实施例提供一种牲畜发情的判定方法、装置、存储介质及电子设备,能够提高对牲畜发情判定的准确度。5.第一方面,本技术实施例提供一种牲畜发情的判定方法,方法包括:6.获取待识别牲畜在预设时间区间内的运动特征序列,运动特征序列包括不同时刻的运动特征,各运动特征通过对待识别牲畜在对应时刻的运动数据进行特征分析得到;7.从不同时刻的运动特征中,确定出属于预设特征类别的目标运动特征;8.对目标运动特征在运动特征序列中的数量分布情况进行分析,得到待识别牲畜的运动参考参数;9.获取运动参考参数对应的运动衡量参数,运动衡量参数用于对待识别牲畜的发情状态进行判定;10.若运动参考参数处于运动衡量参数的参数范围内,则判定待识别牲畜处于发情状态。11.第二方面,本技术实施例还提供一种牲畜发情的判定装置,包括:12.牲畜数据获取模块,用于获取待识别牲畜在预设时间区间内的运动特征序列,运动特征序列包括不同时刻的运动特征,各运动特征通过对待识别牲畜在对应时刻的运动数据进行特征分析得到;13.特征标识模块,用于从不同时刻的运动特征中,确定出属于预设特征类别的目标运动特征;14.参考参数确定模块,用于对目标运动特征在运动特征序列中的数量分布情况进行分析,得到待识别牲畜的运动参考参数;15.衡量参数获取模块,用于获取运动参考参数对应的运动衡量参数,运动衡量参数用于对待识别牲畜的发情状态进行判定;16.发情判定模块,用于若运动参考参数处于运动衡量参数的参数范围内,则判定待识别牲畜处于发情状态。17.第三方面,本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,当计算机程序在计算机上运行时,使得计算机执行如本技术任一实施例提供的牲畜发情的判定方法。18.第四方面,本技术实施例还提供一种电子设备,包括处理器和存储器,存储器有计算机程序,处理器通过调用计算机程序,用于执行如本技术任一实施例提供的牲畜发情的判定方法。19.本技术实施例提供的技术方案,通过对待识别牲畜的运动数据进行运动特征分析,并从分析得到的各运动特征中确定出属于预设特征类别的目标运动特征。并基于目标运动特征在运动特征序列中的数量分布情况,以确定待识别牲畜的运动参考参数,进而将运动参考参数与运动衡量参数进行比较,以在运动参考参数处于运动衡量参数的参数范围内时,判定待识别牲畜处于发情状态。相比于现有技术,本技术通过对待识别牲畜的运动数据进行特征分析,准确地获取待识别牲畜的运动参考参数,从而根据运动衡量参数对运动参考参数进行分析,以准确地判定待识别牲畜是否处于发情状态。附图说明20.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。21.图1为本技术实施例提供的牲畜发情的判定方法的流程示意图。22.图2为本技术实施例提供的方法中根据第一参考分量和第二参考分量判定待识别牲畜的发情状态的示意图。23.图3a为本技术实施例提供的方法中关于牲畜编号1的配对t检验的可视化结果的示意图。24.图3b为本技术实施例提供的方法中关于牲畜编号2的配对t检验的可视化结果的示意图。25.图3c为本技术实施例提供的方法中关于牲畜编号3的配对t检验的可视化结果的示意图。26.图3d为本技术实施例提供的方法中关于牲畜编号4的配对t检验的可视化结果的示意图。27.图4为本技术实施例提供的方法中确定运动衡量参数的流程示意图。。28.图5为本技术实施例提供的牲畜发情的判定装置的结构示意图。29.图6为本技术实施例提供的电子设备的结构示意图。具体实施方式30.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本技术的保护范围。31.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。32.本技术实施例提供一种牲畜发情的判定方法,该牲畜发情的判定方法的执行主体可以是本技术实施例提供的牲畜发情的判定装置,或者集成了该牲畜发情的判定装置的电子设备。其中,该牲畜发情的判定装置可以采用硬件或者软件的方式实现,电子设备可以是智能手机、平板电脑、台式电脑等设备。33.请参阅图1,图1为本技术实施例提供的牲畜发情的判定方法的流程示意图。本技术实施例提供的牲畜发情的判定方法的具体流程可以如下:34.110、获取待识别牲畜在预设时间区间内的运动特征序列,运动特征序列包括不同时刻的运动特征,各运动特征通过对待识别牲畜在对应时刻的运动数据进行特征分析得到。35.其中,待识别牲畜可以为养殖场中的任意一个牲畜,该牲畜可以是母牛、母猪、母鸡等,养殖场中可以仅有一种牲畜,还可以有至少两种牲畜。养殖场中的每一牲畜可以携带运动检测设备,以实时地记录该牲畜的运动数据,该运动检测设备可以包括各种运动传感器中的至少一种,如加速度传感器、陀螺仪传感器、心率传感器、角速度传感器等。另外,每一牲畜还可以携带温度传感器、红外线传感器、心率传感器中的至少一种,以全面分析每一牲畜的运动情况和生理情况。36.示例性地,运动检测设备可以集成在牲畜所携带的耳标上,以实时地记录牲畜在每一时刻的运动数据。在本实施例中,运动数据可以为运动加速度,将连续时刻记录的运动加速度可以表示成时序运动数据。37.其中,预设时间区间可按照采样周期为单位进行设定,采样周期可以为天、周、月等。比如,将每天0:00-12:00作为预设时间区间。又比如,将每天0:00-24:00作为预设时间区间。再比如,将每天0:00-17:00作为预设时间区间。或者,还可将每周周一的一整天作为预设时间区间。由于可实施方式有多种,此处不再逐一列举。38.示例性地,可以对处于预设时间的每一时刻的运动数据进行特征分析,以得到每一时刻的运动特征,而每一时刻的运动特征组成预设时间区间的运动特征序列。其中,对运动数据进行特征分析的方式包括但不限于按照运动数据的数值大小将其归类至对应的运动特征,或者使用神经网络模型对运动数据进行特征提取以得到对应的运动特征。39.120、从不同时刻的运动特征中,确定出属于预设特征类别的目标运动特征。40.其中,不同时刻的运动特征按照时间顺序排列成运动特征序列,对于运动特征序列中各不同时刻对应的运动特征,可以从运动特征序列中确定出属于预设特征类别的目标运动特征。该预设特征类别可以指示待识别牲畜的运动幅度大且运动持续时间长。41.示例性地,可以按照预设特征类别将运动特征序列中的各运动特征进行类别划分,以得到属于预设特征类别的目标运动特征,以及不属于预设特征类别的其它运动特征。42.130、对目标运动特征在运动特征序列中的数量分布情况进行分析,得到待识别牲畜的运动参考参数。43.其中,分析数量分布情况的方式有多种。比如,分析目标运动特征在运动特征序列的数量,以数量表示运动参考参数,或者以数量占比表示运动参考参数。再比如,分析目标运动特征在运动特征序列中的分布情况,以分布情况表示运动参考参数,或者以分布趋势表示运动参考参数。其中分布情况可以包括分布集中、分布疏散等,分布趋势可以包括分布趋向于集中、分布趋向于疏散等。44.140、获取运动参考参数对应的运动衡量参数,运动衡量参数用于对待识别牲畜的发情状态进行判定。45.其中,运动衡量参数可以为预先设定的数值,在获得运动参考参数之后,可以基于运动衡量参数对运动参考参数进行分析。若运动参考参数处于运动衡量参数的参数范围内,则判定待识别牲畜处于发情状态。而若运动参考参数不处于运动衡量参数的参数范围内,则判定待识别牲畜不处于发情状态。46.150、若运动参考参数处于运动衡量参数的参数范围内,则判定待识别牲畜处于发情状态。47.其中,在判定出待识别牲畜处于发情状态后,还可以通过信息提示的方式提醒畜牧者及时对该待识别牲畜进行配种,以提高牲畜的产量。另外,在判定出待识别牲畜不处于发情状态后,还可以继续执行上述步骤,直至判定出待识别牲畜处于发情状态。48.示例性地,通过信息提示的方式包括但不限于:控制待识别牲畜携带的耳标闪烁、发出声音等,或者向畜牧者发送短信、语音提示、通知消息等以提醒待识别牲畜处于发情状态等。由于可选方式有多种,此处不再逐一列举。49.具体实施时,本技术不受所描述的各个步骤的执行顺序的限制,在不产生冲突的情况下,某些步骤还可以采用其它顺序进行或者同时进行。50.通过本技术实施例中的牲畜发情的判定方法,能够对待识别牲畜的时序运动数据进行特征分析,并根据运动特征生成运动量相关的运动参考参数,从而准确地且直观地表述待识别牲畜的运动情况,以当运动参考参数处于运动衡量参数的参数范围内时,判定待识别牲畜处于发情状态,从而能够及时且准确地分析出待识别牲畜是否处于发情状态,在减少计算量的同时,提高了对牲畜的发情状态进行识别的准确度。51.根据前面实施例所描述的方法,以下将举例作进一步详细说明。52.在一些实施例中,可以通过对不同时刻的运动数据进行特征分析,以得到对应的运动特征。比如,步骤110包括:53.111、获取待识别牲畜在预设时间区间内的时序运动数据,时序运动数据包括不同预设方向上的时序子运动数据。54.预设时间区间比如为每半天(0:00-12:00),时序运动数据由各个时刻的运动数据组成。各运动数据还包括不同预设方向上的子运动数据,而不同时刻的子运动数据组成时序子运动数据。比如,运动数据为运动加速度时,运动加速度还可以包括三轴的子运动加速度,而不同时刻的三轴子运动加速度分别构成不同轴的时序子运动加速度。其中,时刻可以指的是每1秒、每5秒、每10秒等。55.其中,待识别牲畜的运动数据可以表示为dt,其中,t表示时刻,t∈t,t表示预设时间区间,待识别牲畜的时序运动数据可以表示为x∈(t,d)。56.112、对各预设方向上的时序子运动数据进行矢量合成,得到时序矢量数据。57.其中,每一时刻t的运动数据dt皆包括各预设方向上的子运动数据,如三轴子运动加速度可以分别表示为dtx,dty,dtz。对t时刻的三个子运动加速度进行矢量合成的方式可通过如下公式表示:[0058][0059]其中,gt表示dt的矢量数据。而待识别牲畜的时序矢量数据可以表示为(t,g)。[0060]113、以预设采样率对时序矢量数据进行均值聚合处理,得到运动特征序列。[0061]本实施例中,预设采样率可以设置为5t、10t、15t、20t等。比如,对每隔10个t时刻的10个矢量数据进行均值聚合处理,得到该10个t时刻对应的运动特征,而各10t时刻对应的运动特征按照时间顺序组成运动特征序列。[0062]其中,以预设采样率对时序矢量数据进行均值聚合处理的方式比如先按照预设采样率将时序矢量数据切分成多个集合,每一集合包括对应数量的多个矢量数据,比如预设采样率为10t,则一个集合中具有10个矢量数据。之后将每一个集合中所有矢量数据的平均值作为该集合的返回值,从而得到每一集合对应的运动特征,而所有集合对应的运动特征按照时间顺序组成运动特征序列。[0063]比如,以f表示预设采样率,通过设置f以将预设时间区间t划分成m个时间段,每一个时间段用m表示,m=t/f,每一个时间段包括的矢量数据的集合表示为{di,di 1...di f},其中,di表示第i个矢量数据,i=n*f 1,n=0,1...(m-1)。对于每一个集合,该集合中f个矢量数据的平均值表示为该集合对应的运动特征,以md表示运动特征,进而可将待识别牲畜的运动特征序列表示为(m,md)。[0064]本实施例中,通过对不同预设方向上的时序子运动数据进行矢量合成,能够以时序矢量数据综合地表示待识别牲畜的时序运动数据,进而以预设采样率对时序矢量数据进行均值聚合处理,能够很好地避免因运动数据存在缺失影响计算结果的弊端,从而提高了后续进行发情状态判定的准确度。[0065]在一些实施例中,步骤120包括:[0066]121、对于运动特征序列中的各运动特征,求取处于运动特征之前预设时长内的历史运动特征的特征均值。[0067]比如,以h表示预设时长,对于运动特征序列中第mj个运动特征mdmj,j=1,2...m,将第mdmj个运动特征之前预设时长内的历史运动特征的集合表示为{mdmj-h,mdmj-h 1...mdmj-1},通过对集合中h个运动特征求取平均值作为该集合的特征均值amj。[0068]122、若运动特征大于特征均值,则将运动特征确定为属于预设特征类别的目标运动特征。[0069]通过将mdmj与amj进行比较,若mdmj>amj,则将mdmj确定为目标运动特征。反之,若mdmj≤amj,则确定mdmj不属于预设特征类别。其中,预设特征类别指示当前运动特征相较于历史运动特征呈增长趋势。[0070]其中,在获得待识别牲畜的运动参考参数时,还可以通过对目标运动特征进行多维度的分析,以得到多维度的运动参考参数,其中,运动参考参数还可以包括至少两个运动分量,以分别表示为第一运动参考分量和第二运动参考分量。相应地,在使用运动衡量参数对运动参考参数进行分析时,还可以分别获取与第一运动参考分量对应的第一运动衡量分量,以及与第二运动参考分量对应的第二运动衡量分量,也即运动衡量参数包括第一运动衡量分量和第二运动衡量分量。在以下实施例中则描述关于第一运动参考分量以及第二运动参考分量,并基于两个运动参考分量判断待识别牲畜是否处于发情状态的方案。[0071]在一些实施例中,步骤130包括:[0072]131、为目标运动特征赋予第一特征标识,为运动特征序列中除目标运动特征之外的运动特征赋予第二特征标识,得到特征标识序列。[0073]比如,对运动特征序列中的每一个运动特征赋予特征标识。具体地,可以为运动特征序列中属于预设特征类别的目标运动特征赋予第一特征标识,为运动特征序列中不属于预设特征类别的运动特征赋予第二特征标识。其中,按照时间顺序对每一运动特征对应的特征标识进行排序,可以得到特征标识序列,且特征标识序列中仅包括两类特征标识,即为第一特征标识和第二特征标识。[0074]其中,第一特征标识和第二特征标识还可以使用二分类数值表示,比如使用“1”表示第一特征标识,使用“0”表示第二特征标识,“1”和“0”的数量总和为m。[0075]结合上述步骤122,并通过下述列表一表示特征标识序列,表一:[0076][0077][0078]表一中仅截取了运动特征序列中前10个时间段对应的运动特征,且每一个时间段m的时长为10s,t表示时刻,ab表示特征标识。[0079]132、根据第一特征标识在特征标识序列中的数量占比,确定待识别牲畜的第一运动参考分量。[0080]其中,可以统计第一特征标识的数量,并分析第一特征标识的数量与特征标识序列中特征标识的数量的关系,以表示第一运动参考分量。比如,可以将第一特征标识的数量与所有特征标识数量的比值作为第一运动参考分量,还可以对特征标识序列进行分段,以得到每个分段中第一特征标识的数量在该分段所有特征标识中的数量占比。由于可选方式有多种,此处不再逐一列举。[0081]133、根据特征标识序列中连续分布的第一特征标识的数量,确定待识别牲畜的第二运动参考分量。[0082]比如,可以统计特征标识序列中连续出现第一特征标识的数量,也即截取连续出现至少两个第一特征标识的序列段,并统计该序列段中第一特征标识的数量,从而根据每一序列段中第一特征标识的标识数量来确定第二运动参考分量。其中,序列段至少有两个时,还可以从各序列段对应的标识数量中选取一个作为第二运动参考分量。而选取第二运动参考分量的方式包括但不限于:选择最大值、选择中值、选择平均值等。本实施例中将从各序列段对应的标识数量中选取的最大值作为第二运动参考分量。[0083]如上,步骤140包括:[0084]获取第一运动参考分量对应的第一运动衡量分量,以及获取第二运动参考分量对应的第二运动衡量分量。[0085]如上,步骤150包括:[0086]若第一运动参考分量处于第一运动衡量分量的分量范围内,或者第二运动参考分量处于第二运动衡量分量的分量范围内,则判定待识别牲畜处于发情状态。[0087]其中,第一运动衡量分量和第二运动衡量分量可以指示参数范围,还可以指示参数的最大值。[0088]本实施例中,一方面,基于第一运动衡量分量对第一运动参考分量进行分析,以判断第一运动参考分量是否处于第一运动衡量分量的分量范围内,若是,则判定待识别牲畜处于发情状态,若否,可以判定待识别牲畜不处于发情状态,或者结合其它手段继续对待识别牲畜进行发情状态的判定。另一方面,还基于第二运动衡量分量对第二运动参考分量进行分析,以判断第二运动参考分量是否处于第二运动衡量分量的分量范围内,若是,则判定待识别牲畜处于发情状态,若否,可以判定待识别牲畜不处于发情状态,或者结合其它手段继续对待识别牲畜进行发情状态的判定。[0089]其中,其它手段比如为获取通过摄像头对待识别牲畜的行为进行拍摄得到的图像,以通过该图像识别待识别牲畜是否存在符合发情行为的目标行为,若否,则判定待识别牲畜不处于发情状态。还比如获取通过温度传感器对待识别牲畜进行检测得到的体温,若体温不高于预设体温阈值超过预设时长,则判定待识别牲畜不处于发情状态。[0090]请参阅图2,图2为本技术实施例提供的方法中根据第一参考分量和第二参考分量判定待识别牲畜的发情状态的示意图。其中,通过对特征标识序列中第一特征标识的数量分布情况从两个方面进行分析,一方面分析第一特征标识在特征标识序列中的数量占比,以得到第一运动参考分量。另一方面分析连续分布的第一特征标识的数量,以得到第二运动参考分量。之后设定两个判断条件分别为条件1:判断第一运动参考分量是否处于第一运动衡量分量的分量范围内,条件2:判断第二运动参考分量是否处于第二运动衡量分量的分量范围内,若两个条件满足其一的结果为“是”,则判定待识别牲畜处于发情状态。[0091]在一些实施例中,还可以通过对特征标识序列进行分段以得到第一运动参考分量,具体地,预设时间区间包括至少两个时间单元,步骤132包括:[0092]1321、从特征标识序列中确定各时间单元对应的子标识序列。[0093]其中,时间单元以r表示,r>m,且为m的整数倍。比如,将一个小时作为时间单元,r=1为第一个时间段,可以指示00:00-01:00的时间段,该时间段内包括的第一特征标识和/或第二特征标识组成子标识序列。而子标识序列表示为ab,ab∈(r,ab),每一个子标识序列ab中包括r个特征标识。[0094]1322、将第一特征标识在各子标识序列中的数量占比,确定为各子标识序列的单位运动量。[0095]以p表示单位运动量,以cr表示子标识序列中第一特征标识的数量,对于第e个时间单元对应的子标识序列abe而言,其对应的单位运动量表示为pe=cre/r,e=1,2...r。[0096]1323、获取多个单位运动量的标准差、多个单位运动量的波动率中的最大波动率以及多个波动率的标准差中的至少一种,作为待识别牲畜的第一运动参考分量。[0097]其中,通过如下公式(1)计算r个单位运动量的标准差:[0098][0099]其中,x表示r个单位运动量p的平均值。[0100]示例性地,获取各单位运动量的波动率,包括:[0101]对于各单位运动量,从处于单位运动量之前的历史单位运动量中,确定出最大历史运动量;[0102]求取单位运动量与最大历史运动量的差值绝对值;[0103]将差值绝对值与单位运动量的比值,确定为单位运动量的波动率。[0104]其中,通过如下公式(2)计算第e个单位运动量的波动率ve:[0105][0106]其中,处于第e个单位运动量之前的历史单位运动量由集合max{p1,p1…pe-1}表示,通过从该集合中选择最大值,以与pe计算出第e个波动率ve。[0107]之后,可以从r个单位运动量的波动率v中选择出最大波动率作为第一运动参考分量。[0108]其中,通过如下公式(3)计算r个波动率v的标准差:[0109][0110]其中,y表示r个波动率v的平均值。[0111]在一些实施例中,还可以按照上述的时间单元对预设时间区间进行分段,以得到第二参考分量。其中,步骤133包括:[0112]1331、从特征标识序列中确定各时间单元对应的子标识序列。[0113]1332、确定各子标识序列中连续分布的第一特征标识的数量最大值。[0114]通过统计每一个子标识序列ab中连续分布的第一特征标识的数量ck,以从至少一个ck中确定出数量最大值mk,mk=max{ck}。可以理解地,每一个子标识序列中可以有连续分布的第一特征标识,也可以没有连续分布的第一特征标识,通过统计每一段连续分布的第一特征标识的数量,以从中选择数量最大的作为该子标识序列对应的数量最大值。比如,对于第e个时间单元对应的子标识序列abe而言,若其对应的连续分布的第一特征标识有三段其数量分别为3个、5个、2个,则从三段中选择数量最大的5作为子标识序列abe对应的数量最大值mke。[0115]1333、获取多个数量最大值的标准差、多个数量最大值的波动率中的最大波动率以及多个波动率的标准差中的至少一种,作为待识别牲畜的第二运动参考分量。[0116]其中,通过如下公式(4)计算r个数量最大值的标准差:[0117][0118]其中,z表示r个数量最大值mk的平均值。[0119]示例性地,获取各数量最大值的波动率,包括:[0120]对于各数量最大值,从处于数量最大值之前的历史数量最大值中,确定出最大历史数量最大值;[0121]求取数量最大值与最大历史数量最大值的差值绝对值;[0122]将差值绝对值与数量最大值的比值,确定为数量最大值的波动率。[0123]其中,通过如下公式(5)计算第e个数量最大值的波动率qe:[0124][0125]其中,处于第e个数量最大值之前的历史数量最大值由集合max{mk1,mk2…mke-1}表示,通过从该集合中选择最大值,以与mke计算出第e个波动率qe。[0126]之后,可以从r个单位运动量的波动率q中选择出最大波动率作为第一运动参考分量。[0127]其中,通过如下公式(6)计算r个波动率q的标准差:[0128][0129]其中,s表示r个波动率q的平均值。[0130]配对t检验(也被称为从属或相关t检验)是一种统计检验,它比较两个相关群体的平均数/平均值和标准差,以确定两组之间是否存在显著差异。当各组之间的差异不太可能是由于抽样误差或偶然性造成的,就会出现显著差异;这些组可以通过是同一群人、同一个项目或受到相同条件的影响而相关。本实施例中还通过配对t检验对第一运动参考分量和第二运动参考分量的差异性进行检测,具体如下:[0131]python是一种解释型、面向对象、动态数据类型的高级程序设计语言。本技术实施例中,还将养殖场多个牲畜的第一运动参考参数和第二运动参考参数用来进行配对t检验。该多个牲畜包括上述的待识别牲畜。具体地,可以使用python中的levene函数以及ttest_ind函数分别对每一牲畜的单位运动量和各单位运动量的波动率,以及每一牲畜的数量最大值和各数量最大值的波动率进行配对t检验。并以预设时间区间为00:00到17:00为例,如下表二提供了配对t检验的数据。[0132]表二:[0133][0134][0135]从配对t检验结果可以看出,不同牲畜的不同运动参考参数的显著性结果并不同一,但单位运动量的波动率和数量最大值的波动率都是最为显著的两个特征。因此,采用t检验结果或单一运动特征作为发情的判定条件并不充分,所以有必要考虑不同特征的分布情况,需要用多个特征相互补充。[0136]另外,对于牲畜的t检验结果,还可以使用tableau(一款数据分析与可视化工具)进行可视化处理,观察牲畜在发情当天的运动情况是否在绝对数值上或连续性上与其他时间存在差异。可以参阅本技术实施例提供的方法中关于牲畜的配对t检验的可视化结果的示意图。[0137]其中,牲畜编号1的可视化结果如图3a所示。[0138]该图中横轴为时间,共展示了2023.2.8-2023.2.12共5天的数据,其中,2023.2.12为牲畜发情当天。纵轴由上至下分别表示单位运动量(p)和各单位运动量的波动率(ve),以及数量最大值(mk)和各数量最大值的波动率(qe)。[0139]牲畜编号4的可视化结果如图3b所示。该图中共展示了2023.28-2023.2.13共6天的数据,其中,2023.2.12为牲畜发情当天。[0140]牲畜编号5的可视化结果如图3c所示。该图中共展示了2023.28-2023.2.12共5天的数据,其中,2023.2.12为牲畜发情当天。[0141]牲畜编号6的可视化结果如图3d所示。该图中共展示了2023.28-2023.2.13共6天的数据,其中,2023.2.12为牲畜发情当天。[0142]通过可视化结果可以看出,发情当天牲畜的运动状态与其他时间呈现出了显著不同,但不同牲畜在不同特征上的显著程度有差异。首先,牲畜在发情当天单位运动量曲线的整体趋势更平缓,波动率相对其他时间更低,但整体数值更高,意味着牲畜的运动状态持续时间更长,呈现出长时间的躁动不安。其次,牲畜在发情当天的数量最大值相对其他时间更低,波动率更低,整体数值较为集中,峰值不明显;而其他日期的连续运动则呈现出随时间变化更为明显的阶段性起伏,绝对数值也更高,峰值通常出现在上午10-12点。根据可视化的结论,本技术从连续性和绝对数值两个方面来判定牲畜的发情状态。因此,进一步对单位运动量和数量最大值的绝对数值进行统计,从而确定出对应的运动衡量参数。[0143]在以下实施例中,侧重于描述关于如何确定运动衡量参数的方案。具体内容如下。[0144]请参阅图4,图4为本技术实施例提供的方法中确定运动衡量参数的流程示意图。其中,获取运动参考参数对应的运动衡量参数之前,还包括:[0145]210、获取各样本牲畜在不同采样周期的预设时间区间内的多个样本标准差,样本标准差为预设时间区间内多个单位样本运动量的标准差。[0146]其中,样本牲畜可以为养殖场中的多个牲畜,对于每一个样本牲畜而言,可以使用上述实施例中提及的方式得到每一样本牲畜的单位运动量,也称为单位样本运动量。还可以使用上述提及的公式得到多个单位样本运动量的标准差。且预设时间区间与上述提及的预设时间区间一致。比如,预设时间区间指示的是0.00-17:00时,采样周期可以按照天、周、月进行衡量,比如获取每一牲畜每天在0.00-17:00之间所有时间单元对应的单位样本运动量的标准差。[0147]220、从各样本牲畜中确定出处于发情状态的目标牲畜,以及从目标牲畜对应不同采样周期的预设时间区间中确定出发情时间区间。[0148]其中,每一牲畜在不同采样周期的标准差构成一个标准差集合,集合中一个标准差对应一个采样周期,表示为{σd11,σd21...σdn1}。比如,不同采样周期可以指示2023.2.8-2023.2-13的6,若某一样本牲畜在发情时的时间为2023.2.13,则可以将2023.2.13作为发情时间区间,而2023.2.8-2023.2.12则不属于发情时间区间。[0149]230、从各样本牲畜对应的多个预设时间区间中,确定出不属于发情时间区间的候选时间区间。[0150]其中,在从多个样本牲畜中确定出处于发情状态的目标牲畜之后,还可以确定出每一目标牲畜的发情时间区间。可以理解地,每一目标牲畜发情当天日期对应的预设时间区间称为发情时间区间,而其它日期对应的预设时间区间可以称为候选时间区间。[0151]240、从发情时间区间对应的样本标准差中确定出最大样本标准差。[0152]其中,将所有目标牲畜的发情时间区间对应的标准差组成发情标准差集合,然后从该发情标准差集合中筛选出标准差的最大值,称为最大样本标准差。[0153]250、若各候选时间区间对应的样本标准差均大于最大样本标准差,则将最大样本标准差确定为运动衡量参数的上限值。[0154]另外,还可以将所有样本牲畜的候选时间区间对应的标准差组成非发情标准差集合。可以理解地,对于样本牲畜中不属于目标牲畜的,其所有采样周期对应的预设时间区间均称为候选时间区间。[0155]通过从非发情标准差集合中筛选出最大值作为阈值,以与最大样本标准差进行比较。若该阈值大于最大样本标准差,则将最大样本标准差作为运动衡量参数的上限值。具体地,可以作为第一运动衡量参数包括的多个单位运动量的标准差的第一上限值。[0156]可以理解地,不同采样周期所对应的预设时间区间可以至少有两个,比如一个预设时间区间为0:00-12:00,另一个预设时间区间为0:00-17:00。运动衡量参数包括第一运动衡量分量和第二运动衡量分量。第一运动衡量分量包括对应多个单位运动量的标准差的第一上限值,对应多个单位运动量的波动率中的最大波动率的第二上限值,以及对应多个单位运动量的波动率的标准差的第三上限值。第二运动衡量分量包括对应多个数量最大值的标准差的第四上限值,对应多个数量最大值的波动率中的最大波动率的第五上限值,以及对应多个数量最大值的波动率的标准差的第六上限值。[0157]而获取第一上限值、第二上限值、第三上限值、第四上限值以及第五上限值的方式可以参照上述步骤210-250,此处不再赘述。[0158]在下表三中还提供了关于不同预设时间区间、关于各个上限值的举例。[0159]表三:12:00处于发情状态。[0167]另外,还可以将多个数量最大值的标准差与对应预设时间区间(0:00-12:00)的第四上限值进行比较,将多个数量最大值的波动率中的最大波动率与对应预设时间区间(0:00-12:00)的第五上限值进行比较,以及将多个数量最大值的波动率的标准差与对应预设时间区间(0:00-12:00)的第六上限值进行比较。以在各标准差或波动率最大值均小于对应的第四上限值、第五上限值以及第六上限值时,判定待识别牲畜在当天0:00-12:00处于发情状态。比如,若多个数量最大值的标准差小于2.9,且多个数量最大值的波动率中的最大波动率小于2,且多个数量最大值的波动率的标准差小于0.79,则判定待识别牲畜在当天0:00-12:00处于发情状态。[0168]还比如,当前的时间达到17:00时,则获取预设时间区间(0:00-17:00)内待识别牲畜的运动特征序列,进而根据该运动特征序列得到多个单位运动量的标准差、多个单位运动量的波动率中的最大波动率以及多个波动率的标准差。以及多个数量最大值的标准差、多个数量最大值的波动率中的最大波动率以及多个波动率的标准差中的至少一种,作为待识别牲畜的第二运动参考分量。[0169]之后,将多个单位运动量的标准差与对应预设时间区间(0:00-17:00)的第一上限值进行比较,将多个单位运动量的波动率中的最大波动率与对应预设时间区间(0:00-17:00)的第二上限值进行比较,以及将多个单位运动量的波动率的标准差与对应预设时间区间(0:00-17:00)的第三上限值进行比较。以在各标准差或波动率最大值均小于对应的第一上限值、第二上限值以及第三上限值时,判定待识别牲畜在当天0:00-17:00处于发情状态。比如,若多个单位运动量的标准差小于0.12,且多个单位运动量的波动率中的最大波动率小于2.2,且多个单位运动量的波动率的标准差小于0.52,则判定待识别牲畜在当天0:00-17:00处于发情状态。[0170]另外,还可以将多个数量最大值的标准差与对应预设时间区间(0:00-17:00)的第四上限值进行比较,将多个数量最大值的波动率中的最大波动率与对应预设时间区间(0:00-17:00)的第五上限值进行比较,以及将多个数量最大值的波动率的标准差与对应预设时间区间(0:00-17:00)的第六上限值进行比较。以在各标准差或波动率最大值均小于对应的第四上限值、第五上限值以及第六上限值时,判定待识别牲畜在当天0:00-17:00处于发情状态。比如,若多个数量最大值的标准差小于3.4,且多个数量最大值的波动率中的最大波动率小于2,且多个数量最大值的波动率的标准差小于0.82,则判定待识别牲畜在当天0:00-17:00处于发情状态。[0171]可以理解地,预设时间区间还可以根据实际需求选择,而相应的运动衡量参数则根据预设时间区间的变更进行更新,具体实施方式如上,此处不再赘述。[0172]由上可知,本发明实施例提出的牲畜发情的判定方法,能够大幅提高养殖场牲畜的繁殖率以及繁殖质量,可以很好的改善传统方法所带来的不精确性和低效性。且所需要的设备简单,也降低了养殖成本。[0173]在一实施例中还提供一种牲畜发情的判定装置。请参阅图5,图5为本技术实施例提供的牲畜发情的判定装置300的结构示意图。其中该牲畜发情的判定装置300应用于电子设备,该牲畜发情的判定装置300包括,如下:[0174]牲畜数据获取模块301,用于获取待识别牲畜在预设时间区间内的运动特征序列,运动特征序列包括不同时刻的运动特征,各运动特征通过对待识别牲畜在对应时刻的运动数据进行特征分析得到;[0175]特征标识模块302,用于从不同时刻的运动特征中,确定出属于预设特征类别的目标运动特征;[0176]参考参数确定模块303,用于对目标运动特征在运动特征序列中的数量分布情况进行分析,得到待识别牲畜的运动参考参数;[0177]衡量参数获取模块304,用于获取运动参考参数对应的运动衡量参数,运动衡量参数用于对待识别牲畜的发情状态进行判定;[0178]发情判定模块305,用于若运动参考参数处于运动衡量参数的参数范围内,则判定待识别牲畜处于发情状态。[0179]在一些实施例中,运动参考参数包括第一运动参考分量和第二运动参考分量,运动衡量参数包括与第一运动参考分量对应的第一运动衡量分量,以及与第二运动参考分量对应的第二运动衡量分量;[0180]参考参数确定模块303还用于:[0181]为目标运动特征赋予第一特征标识,为运动特征序列中除目标运动特征之外的运动特征赋予第二特征标识,得到特征标识序列;[0182]根据第一特征标识在特征标识序列中的数量占比,确定待识别牲畜的第一运动参考分量;[0183]根据特征标识序列中连续分布的第一特征标识的数量,确定待识别牲畜的第二运动参考分量;[0184]发情判定模块305还用于:[0185]若第一运动参考分量处于第一运动衡量分量的分量范围内,或者第二运动参考分量处于第二运动衡量分量的分量范围内,则判定待识别牲畜处于发情状态。[0186]在一些实施例中,预设时间区间包括至少两个时间单元;[0187]参考参数确定模块303还用于:[0188]从特征标识序列中确定各时间单元对应的子标识序列;[0189]将第一特征标识在各子标识序列中的数量占比,确定为各子标识序列的单位运动量;[0190]获取多个单位运动量的标准差、多个单位运动量的波动率中的最大波动率以及多个波动率的标准差中的至少一种,作为待识别牲畜的第一运动参考分量。[0191]在一些实施例中,参考参数确定模块303还用于:[0192]对于各单位运动量,从处于单位运动量之前的历史单位运动量中,确定出最大历史运动量;[0193]求取单位运动量与最大历史运动量的差值绝对值;[0194]将差值绝对值与单位运动量的比值,确定为单位运动量的波动率。[0195]在一些实施例中,牲畜发情的判定装置300还包括衡量参数确定模块,若第一运动参考分量包括多个单位运动量的标准差;[0196]获取运动参考参数对应的运动衡量参数之前,衡量参数确定模块用于:[0197]获取各样本牲畜在不同采样周期的预设时间区间内的多个样本标准差,样本标准差为预设时间区间内多个单位样本运动量的标准差;[0198]从各样本牲畜中确定出处于发情状态的目标牲畜,以及从目标牲畜对应不同采样周期的预设时间区间中确定出发情时间区间;[0199]从各样本牲畜对应的多个预设时间区间中,确定出不属于发情时间区间的候选时间区间;[0200]从发情时间区间对应的样本标准差中确定出最大样本标准差;[0201]若各候选时间区间对应的样本标准差均大于最大样本标准差,则将最大样本标准差确定为运动衡量参数的上限值。[0202]在一些实施例中,预设时间区间包括至少两个时间单元;参考参数确定模块303还用于:[0203]从特征标识序列中确定各时间单元对应的子标识序列;[0204]确定各子标识序列中连续分布的第一特征标识的数量最大值;[0205]获取多个数量最大值的标准差、多个数量最大值的波动率中的最大波动率以及多个波动率的标准差中的至少一种,作为待识别牲畜的第二运动参考分量。[0206]在一些实施例中,特征标识模块302还用于:[0207]对于运动特征序列中的各运动特征,求取处于运动特征之前预设时长内的历史运动特征的特征均值;[0208]若运动特征大于特征均值,则将运动特征确定为属于预设特征类别的目标运动特征。[0209]在一些实施例中,牲畜数据获取模块301还用于:[0210]获取待识别牲畜在预设时间区间内的时序运动数据,时序运动数据包括不同预设方向上的时序子运动数据;[0211]对各预设方向上的时序子运动数据进行矢量合成,得到时序矢量数据;[0212]以预设采样率对时序矢量数据进行均值聚合处理,得到运动特征序列。[0213]在一些实施例中,获取待识别牲畜在预设时间区间内的运动特征序列之前,牲畜数据获取模块301还用于:[0214]确定运动参考参数在不同预设时间区间对应的运动衡量参数;[0215]对于达到截止时刻的预设时间区间,获取待识别牲畜在预设时间区间内的运动特征序列。[0216]应当说明的是,本技术实施例提供的牲畜发情的判定装置300与上文实施例中的牲畜发情的判定方法属于同一构思,通过该牲畜发情的判定装置300可以实现牲畜发情的判定方法实施例中提供的任一方法,其具体实现过程详见牲畜发情的判定方法实施例,此处不再赘述。[0217]本技术实施例还提供一种电子设备,该电子设备可以是智能手机、平板电脑、台式电脑等设备。如图6所示,图6为本技术实施例提供的电子设备的结构示意图。该电子设备400包括有一个或者一个以上处理核心的处理器401、有一个或一个以上计算机可读存储介质的存储器402及存储在存储器402上并可在处理器上运行的计算机程序。其中,处理器401与存储器402电性连接。本领域技术人员可以理解,图中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。[0218]处理器401是电子设备400的控制中心,利用各种接口和线路连接整个电子设备400的各个部分,通过运行或加载存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备400的各种功能和处理数据,从而对电子设备400进行整体监控。[0219]在本技术实施例中,电子设备400中的处理器401会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能:[0220]获取待识别牲畜在预设时间区间内的运动特征序列,运动特征序列包括不同时刻的运动特征,各运动特征通过对待识别牲畜在对应时刻的运动数据进行特征分析得到;[0221]从不同时刻的运动特征中,确定出属于预设特征类别的目标运动特征;[0222]对目标运动特征在运动特征序列中的数量分布情况进行分析,得到待识别牲畜的运动参考参数;[0223]获取运动参考参数对应的运动衡量参数,运动衡量参数用于对待识别牲畜的发情状态进行判定;[0224]若运动参考参数处于运动衡量参数的参数范围内,则判定待识别牲畜处于发情状态。[0225]以上各个操作的具体实施可参见前面的实施例,在此不再赘述。[0226]在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。[0227]本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。[0228]为此,本技术实施例提供一种计算机可读存储介质,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括如下步骤:[0229]获取待识别牲畜在预设时间区间内的运动特征序列,运动特征序列包括不同时刻的运动特征,各运动特征通过对待识别牲畜在对应时刻的运动数据进行特征分析得到;[0230]从不同时刻的运动特征中,确定出属于预设特征类别的目标运动特征;[0231]对目标运动特征在运动特征序列中的数量分布情况进行分析,得到待识别牲畜的运动参考参数;[0232]获取运动参考参数对应的运动衡量参数,运动衡量参数用于对待识别牲畜的发情状态进行判定;[0233]若运动参考参数处于运动衡量参数的参数范围内,则判定待识别牲畜处于发情状态。[0234]以上各个操作的具体实施可参见前面的实施例,在此不再赘述。[0235]上述的存储介质可以为rom/ram、磁碟、光盘等。由于该存储介质中所存储的计算机程序,可以执行本技术实施例所提供的任一种牲畜发情的判定方法中的步骤,因此,可以实现本技术实施例所提供的任一种牲畜发情的判定方法所能实现的有益效果,详见前面的实施例,在此不再赘述。[0236]以上对本技术实施例所提供的一种牲畜发情的判定方法、装置、存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本技术的限制。当前第1页12当前第1页12
当前第1页1  
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
网站地图