一种根据家禽叫声判断呼吸道疾病的方法及系统与流程

文档序号:38710204发布日期:2024-07-19 15:09阅读:65来源:国知局
一种根据家禽叫声判断呼吸道疾病的方法及系统与流程

本发明涉及声音识别,具体为一种根据家禽叫声判断呼吸道疾病的方法及系统。


背景技术:

1、鸡群呼吸道疾病会导致鸡只呼吸系统受损,自身抗疾病能力下降,进而导致鸡群采食量减少,体质下降,生产性能降低,甚至大量淘汰鸡只,为广大蛋鸡、肉鸡养殖户带来不同程度的经济损失。监控鸡舍中鸡群的叫声,对音频数据进行分析,判断鸡只是否患呼吸道疾病及患病种类具有重要意义。现有的鸡只呼吸道疾病判断方法采用人工识别,由专业人员在鸡舍实地巡查,人工定位鸡只发病位置,这需要巨大的人工成本与时间成本,且由于鸡只发病不具有时间限制而专业巡查人员并非7*24h工作,这使得鸡只呼吸道病情捕捉存在疏漏。

2、利用计算机音频序列自动化处理的方法,主要包括以下几种:

3、一.基于发声信号的检测方法:该方法一般利用短时能量、短时过零率和持续时间三个参数,采用双阈值法自动检测发声端点,提取音频特征作为深度学习模型的输入进行学习和分类。存在准确率低;召回率低;而且鸡只被单独放在收声单元中收声,抗噪性差且不宜在实际鸡舍中使用;对于音频数据要求高等问题。

4、二.基于声音识别和鸡声音频谱分析的方法:该方法一般使用事先准备好的频谱图素材与图像进行匹配比对,比对方法包括色彩匹配、方差匹配等,存在召回率低,数据依赖强,耗时较长等问题。

5、三.机器学习、深度学习等人工智能的方法:该方法常用于特征提取、音频分类、目标检测等,机器学习方法可解释但准确性低,深度学习准确率有所提高,但模型为黑盒性质,难以解释,即使检测到鸡叫目标物,也难以划分具体的健康状况。

6、直接应用于家禽呼吸道疾病检测的自动化方法较少,并且现有方法中,灵活性较差,自动化程度低,统计效率较纯人工提升小。


技术实现思路

1、鉴于上述存在的问题,提出了本发明。

2、因此,本发明解决的技术问题是:现有的识别方法存在难以准确识别目标,已识别密集型的音频有障碍,人工参与度高,以及如何解决存在噪音的音频中效果差的优化问题。

3、为解决上述技术问题,本发明提供如下技术方案:一种根据家禽叫声判断呼吸道疾病的方法,包括:

4、集鸡舍的音频数据,对所述音频数据进行预处理;

5、对处理后的声音信号进行变换,转化为频域上的能量分布,获取声音片段的频谱特征;

6、将历史数据划分为训练集、验证集和测试集,对目标检测模型进行训练;

7、利用训练好的目标检测模型对采集的音频数据进行识别,预测声音的类别。

8、作为本发明所述的根据家禽叫声判断呼吸道疾病的方法的一种优选方案,其中:所述音频数据包括,通过录音设备在鸡舍中采集音频数据;

9、所述预处理包括,音频的预加重:使用高通滤波来减少噪声干扰,高通滤波函数公式为:

10、y(n)=x(n)-αx(n-1)

11、其中,n表示时间,x(n)表示采样数据,y(n)表示滤波结果,α表示强调系数;

12、音频的切片:将预加重后的音频信号切成大小为5秒的音频信号切片;

13、分帧处理:将一维的采样点数m转化成二维的分帧矩阵,其中矩阵的行数等于单帧的帧长,矩阵的列数为分帧的帧数:

14、采样点总数m:

15、m=sr*t

16、其中,sr表示采样率,t表示时间,固定采样率为22050hz,时间为5s,采样点总数m=110250;

17、单帧内的重叠点数overlap:

18、overlap=wlen-inc

19、其中,wlen表示帧长,inc表示帧移动长度,每个帧之间的重叠为15毫秒,每个帧的时间长度为25毫秒,分帧后的帧数nf:

20、

21、其中,表示每一帧的采样点数,表示相邻帧之间的采样点数,表示向下取整。

22、作为本发明所述的根据家禽叫声判断呼吸道疾病的方法的一种优选方案,其中:所述获取声音片段的频谱特征包括,分帧矩阵加窗:将信号分割成帧后,再对每个帧与窗口函数相乘,以增加帧左端和右端的连续性;

23、快速傅里叶变换:将声音信号转化为频域上的能量分布,对于每一帧的加窗信号,进行n点fft变换:

24、

25、其中,x[k]表示频域中第k个频率分量的幅度和相位,是在信号中的强度;x[n]表示时域中第n个时间点的样本值;j表示虚数单位,n表示信号的总长度;

26、取功率谱:功率谱的计算公式表示为:

27、

28、梅尔滤波器组:计算梅尔频率,使用以下公式将频率f转换为mel频率:

29、

30、计算滤波器中心频率,在mel频率刻度上均匀分布的m=23个滤波器通道的中心频率f(m)表示为:

31、

32、计算每个滤波器通道的频率响应,公式表示为:

33、

34、其中,k表示频域中的第k个频率分量,hm(k)是滤波器通道m的频率响应;

35、应用滤波器,将每个滤波器通道的频率响应hm(k)应用于信号的频率;

36、计算每个滤波通道的能量,对于每个滤波器通道m,计算em:

37、em=∑|x[k]*hm(k)|2

38、对数操作:对em进行对数变换:lm=ln em

39、离散余弦变换:对每个滤波器通道的对数能量lm应用离散余弦变换:

40、

41、其中,dtck表示第kd个dct系数,n表示信号的长度即帧的大小,lm(km)表示对数操作得到的对数能量序列的第km个元素。

42、作为本发明所述的根据家禽叫声判断呼吸道疾病的方法的一种优选方案,其中:对所述对目标检测模型进行训练包括,采用人工标注的方式标注声音切片的标签,分为三类:非鸡叫、健康、患病;

43、获得的原始音频信号转换的高维特征表示和对应标签,将每一段声音切片都转化为:

44、(batch,fea,feature_dim)

45、其中,batch为batch size,fea表示时间步长或者频率步长,feature_dim表示音频特征mfcc的维度;输入为(batch,fea,feature_dim)的三维张量,通过对输入数据的多次迭代遍历整个数据集,计算损失并更新权重,通过将预测标签与真实标签进行比对,进行反向传播更新模型参数,使得预测值贴近真实的标签;

46、定义损失函数:

47、

48、其中,xl表示模型的原始输出,是一个包含每个类别的得分的向量;yl表示真实标签;exp(·)表示指数函数;表示对所有类别j的求和;xl[yl]表示向量xl中索引为yl的元素。

49、作为本发明所述的根据家禽叫声判断呼吸道疾病的方法的一种优选方案,其中:所述目标检测模型还包括,对数据进行增强,设置频谱上掩蔽的频率范围freq_mask_width;音频特征取器所获得的每个样本的三维张量(batch,fea,feature_dim)作为输入,为每个样本生成一个随机的频率掩蔽长度mask_len和随机位置mask_pos,其中mask_len的取值范围为uniform(0,8),mask_pos的取值范围为uniform(0,max(1,fea-mask_len.max()));构造掩蔽矩阵mask公式与数值置零公式表示为:

50、

51、x[it,:,jt]=x[it,:,jt]×(1-mask[it,jt])

52、其中,x[it,:,jt]表示输入的频谱张量,it表示样本的索引,jt表示频率索引;

53、设置频谱上掩蔽的时域范围time_mask_width参数范围;音频特征取器所获得的每个样本的三维张量(batch,fea,feature_dim)作为输入,为每个样本生成一个随机的时域掩蔽长度mask_len和随机位置mask_pos,其中mask_len的取值范围为uniform(0,10),mask_pos的取值范围为uniform(0,max(1,fea-mask_len.max()));构造掩蔽矩阵mask公式与数值置零公式表示为:

54、

55、x[if,jf,:]=x[if,jf,:]×(1-mask[if,jf,:])

56、其中,x[if,jf,:]表示输入的频谱张量,if表示样本的索引,jf表示频率索引。

57、作为本发明所述的根据家禽叫声判断呼吸道疾病的方法的一种优选方案,其中:所述训练包括,以卷积神经网络为基础,加入了残差网络结构,并引入了注意力机制来调整卷积神经网络所提取的图像特征序列;

58、特征的提取通过多个卷积层和卷积组块实现,每个卷积组块通过卷积操作、激活函数和残差连接,逐渐提取并丰富图像的特征信息;一个卷积块的基本单元主要包含三个部分:卷积层、批量归一化、激活操作;卷积层的整体计算表示为:

59、

60、其中,x(ic+mc,jc+nc)表示输入特征图相应位置的值,y(ic,jc)表示输出特征图相应位置的值,w表示卷积操作的权重参数,b表示偏置项;

61、通过对输入特征图与滤波器进行点乘计算对不同位置图像特征进行深度提取并汇总,再经过批量归一化过程对输出特征图进行标准化,计算公式表示为:

62、

63、其中,x表示输入特征图,xnorm表示标准化后的特征图,μ表示输入特征图在当前通道的均值,σ2表示输入特征图在当前通道的方差,∈表示常数,是一个很小的正数;

64、批量归一化包括可学习的缩放和偏置参数,公式表示为:

65、ynorm=γnorm·xnorm+βnorm

66、其中,γnorm和βnorm表示在训练过程中学习并更新的参数,初始值为1和0;ynorm便是批量归一化所得结果;

67、使用relu作为下一步的激活函数在计算过程中引入非线性变换,计算公式为:

68、yactivate=max(0,ynorm)

69、其中,yactivate表示的输出结果;max()函数执行取最大值操作,输入所有负值均变为零,正数保持不变;

70、引入了残差链接的概念,形成了残差块,残差块基于卷积块构建,包括两个卷积操作;

71、第一个卷积过程:

72、f(xf)=relu(bn(conv(xf)))

73、其中,conv()表示卷积层,bn()表示批量归一化,relu()表示relu激活函数,输出为f(xf);

74、第二个卷积过程:

75、h(f(xf))=bn(conv(f(xf)))

76、其中,h(f(xf))表示整个卷积层的最终输出;

77、引入了se-attention模块,包括全连接层,通过学习通道之间的关系,生成通道注意力的权重;其中压缩(squeeze)和激励(excitation)的具体公式表示为:

78、

79、其中,zc表示特征图通道c上的输出值,uc表示输入特征图通道c上的原始值,fsq表示全局平均池化操作,h表示输入特征图的高度,w是输入特征图的宽度;

80、s=fex(z,w)=σ(g(z,w))=σ(w2δ(w1z))

81、其中,s表示网络的输出,z表示输入,w1和w2表示网络的权重参数,σ表示激活函数,δ表示非线性激活函数,g表示线性变换,用w1和w2对输入z进行变换;

82、在残差块的输出后加上一层全连接层,经过此层后得到类别分数;将原始分数转化为每个类别的概率分布,对于全连接层的输出使用softmax激活函数进行处理,其计算公式表示为:

83、

84、其中,zi表示第i个类别的类别分数,表示对类别分数进行自然指数运算,σ(z)i表示归一化之后输出的第i个类别的概率分布,k表示此分类任务共有k个类别,表示对整体类别分数的自然指数结果求和。

85、作为本发明所述的根据家禽叫声判断呼吸道疾病的方法的一种优选方案,其中:所述训练还包括,不断从图像数据集中提取图像特征,在一层层卷积过程中提取深层图像信息,利用提取到的信息对图像进行分类,将模型输出的概率分布结果利用交叉熵损失函数计算分类结果与真实值的差额,损失函数loss公式如下:

86、

87、其中,nsample表示样本数,ncls表示类别数,ys,c表示样本s是否属于类别c的标签,p(ys,c)表示样本i属于类别c的概率;

88、利用损失函数loss计算结果并使用反向传播计算梯度,选择adam优化器根据梯度更新模型参数,不断重复,更新迭代网络参数,最终网络逐步收敛到最佳性能;

89、利用训练好的目标检测模型对采集的音频数据进行识别,从而实现预测声音的类别。

90、一种采用本发明所述方法的根据家禽叫声判断呼吸道疾病的系统,其特征在于:

91、信息采集模块,采集鸡舍的音频数据,对所述音频数据进行预处理;

92、转换模块,对处理后的声音信号进行变换,转化为频域上的能量分布,获取声音片段的频谱特征;

93、训练模块,将历史数据划分为训练集、验证集和测试集,对目标检测模型进行训练;

94、预测模块,利用训练好的目标检测模型对采集的音频数据进行识别,预测声音的类别。

95、一种计算机设备,包括:存储器和处理器;所述存储器存储有计算机程序,其特征在于:所述处理器执行所述计算机程序时实现本发明中任一项所述的方法的步骤。

96、一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现本发明中任一项所述的方法的步骤。

97、本发明的有益效果:本发明提供的根据家禽叫声判断呼吸道疾病的方法具有目标识别准确、高准确率、高召回率、自动化识别、人工参与度低,自动化高的优点。可以识别复杂鸡舍环境的家禽健康状况,相比于已有方法,误差小,精确率高。与现有技术相比,本方法具有根据声学特征识别的计算方法,能够计算各类声音的声谱特征,在准确率,召回率上均高于已有算法,且能够解决饲养环境复杂情况下的高精准识别,识别各种噪声环境下的家禽叫声都有良好的鲁棒性。除此之外、自动化程度高,大幅降低人工及时间成本。

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