一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种猪只声音提取方法、装置、设备及可读存储介质与流程

2021-07-23 21:35:00 来源:中国专利 TAG:提取 养殖 装置 可读 声音
一种猪只声音提取方法、装置、设备及可读存储介质与流程

本发明涉及智能养殖技术领域,特别是涉及一种猪只声音提取方法、装置、设备及可读存储介质。



背景技术:

随着畜牧业生产规模的扩大化趋势,智能化猪只养殖的需求越来越高。出于猪只健康成长的管理需求,需要采集猪只的声音以供后续的监测以及健康监控等猪只智能养殖。

目前没有专门针对猪只的声音检测以及识别方法,而针对其他对象(比如人)的声音检测以及识别方法对猪只的活动声音切分的效果有限,识别精准度较低,会经常出现错判的情况,导致后续有效的声音检不出,而且切分的猪只声音中噪声较多,无法精准的猪只声音识别以及切分。

综上所述,如何精准检测以及切分猪只声音,是目前本领域技术人员急需解决的技术问题。



技术实现要素:

本发明的目的是提供一种猪只声音提取方法、装置、设备及可读存储介质,以精准检测以及切分猪只声音。

为解决上述技术问题,本发明提供如下技术方案:

一种猪只声音提取方法,包括:

获取猪只养殖现场采集的声音数据;

对所述声音数据进行环境噪音去除处理,得到降噪声音数据;

提取所述降噪声音数据的短时能量特征以及短时过零率特征,得到短时能量以及短时过零率;

根据所述短时能量确定所述降噪声音数据对应的短时能量阈值,根据所述短时过零率确定所述降噪声音数据对应的短时过零率阈值;

根据所述短时过零率阈值对所述降噪声音数据进行短时过零率过滤,并获取短时过零率超过所述短时过零率阈值的声音数据,作为初步过滤声音数据;

根据所述短时能量阈值对所述初步过滤声音数据进行数据扩充,并将扩充后的声音数据作为猪只声音。

可选地,所述获取猪只养殖现场采集的声音数据,包括:

获取设置于猪只栏位上方预设高度的四麦克风阵列采集的pcm数据,作为所述声音数据。

可选地,所述对所述声音数据进行环境噪音去除处理,包括:

根据mcra谱减法对所述声音数据进行环境噪声估计,得到预估噪声;

根据所述预估噪声对所述声音数据进行噪音消除处理,将处理后的数据作为所述降噪声音数据。

可选地,所述根据所述短时能量确定所述降噪声音数据对应的短时能量阈值,包括:

计算所述降噪声音数据中各声音片段对应的所述短时能量的均值,得到短时能量均值;

根据所述短时能量均值生成所述短时能量阈值;

所述根据所述短时过零率确定所述降噪声音数据对应的短时过零率阈值,包括:

计算所述降噪声音数据中各声音片段对应的所述短时过零率的均值,得到短时过零率均值;

根据所述短时过零率均值生成所述短时过零率阈值。

可选地,所述根据所述短时能量均值生成所述短时能量阈值,包括:将所述短时能量均值的两倍作为所述短时能量阈值;

所述根据所述短时过零率均值生成所述短时过零率阈值,包括:将所述短时过零率均值的两倍作为所述短时过零率阈值。

可选地,还包括:记录所述猪只声音的开始和结束的时间。

可选地,在所述获取短时过零率超过所述短时过零率阈值的声音数据之后,还包括:

判断获取所述短时过零率超过所述短时过零率阈值的声音数据的总时长是否属于有效时长范围;

若属于,将短时过零率超过所述短时过零率阈值,且总时长属于所述有效时长范围的数据,作为初步过滤声音数据。

一种猪只声音提取装置,包括:

原始数据获取单元,用于获取猪只养殖现场采集的声音数据;

降噪单元,用于对所述声音数据进行环境噪音去除处理,得到降噪声音数据;

特征提取单元,用于提取所述降噪声音数据的短时能量特征以及短时过零率特征,得到短时能量以及短时过零率;

阈值生成单元,用于根据所述短时能量确定所述降噪声音数据对应的短时能量阈值,根据所述短时过零率确定所述降噪声音数据对应的短时过零率阈值;

过滤单元,用于根据所述短时过零率阈值对所述降噪声音数据进行短时过零率过滤,并获取短时过零率超过所述短时过零率阈值的声音数据,作为初步过滤声音数据;

扩充单元,用于根据所述短时能量阈值对所述初步过滤声音数据进行数据扩充,并将扩充后的声音数据作为猪只声音。

一种猪只声音提取设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现上述猪只声音提取方法的步骤。

一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述猪只声音提取方法的步骤。

本发明实施例所提供的方法,首先对猪只养殖现场采集的声音数据进行环境噪音去除,排除环境噪音对于后续检测识别的干扰,然后先根据短时过零率阈值进行过滤筛选,得到初步过滤声音数据,再根据短时能量阈值对初步过滤声音数据进行扩充处理,该种处理顺序的配置可以显著提升对于猪声音检测的精准度,实现精准切分;同时在进行过滤筛选以及扩充处理中使用的阈值为根据每段降噪声音数据自适应调整生成的阈值,通过将阈值根据检测对象进行自适应调整,可以使每个阈值都能贴合对应检测对象的实际声音特征,实现精准检测,从而提升猪只声音的提取精度。

相应地,本发明实施例还提供了与上述猪只声音提取方法相对应的猪只声音提取装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。

附图说明

为了更清楚地说明本发明实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中一种猪只声音提取方法的实施流程图;

图2为本发明实施例中一种猪只声音提取结果示意图;

图3为本发明实施例中一种猪只声音提取装置的结构示意图;

图4为本发明实施例中一种猪只声音提取设备的结构示意图。

具体实施方式

本发明的核心是提供一种猪只声音提取方法,可以精准检测以及切分猪只声音。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明实施例中一种猪只声音提取方法的流程图,该方法包括以下步骤:

s101、获取猪只养殖现场采集的声音数据;

获取猪只养殖的现场采集声音,本实施例中可以直接获取已采集的现场声音,也可以进行实时声音的采集,对此不做限定。声音数据中需包含猪只的声音,声音越清晰,后续检测识别效果越好。本实施例中对于声音数据的具体采集实现过程不做限定。

为保证获取的声音数据中有清晰的猪只声音,同时尽量减少环境噪音,可选地,猪只养殖现场的声音数据的采集过程具体可以为:获取设置于猪只栏位上方预设高度的四麦克风阵列采集的pcm数据(指通过麦克风采集的原始数据),作为声音数据。其中,在猪只的养殖现场使用四麦克风阵列进行实时声音的采集可以还原出清晰不失真的现场声音,声音印制较高,本实施例中仅以上述声音采集设备为例进行介绍,也可以采用其它声音采集设备,在此对于声音采集设备的类型不做限定。为避免环境噪音过大,声音采集设备可以固定于猪只栏位上方,比如可以架设于猪的栏位上方距离地面1.8米(一种预设高度)的位置,具体声音采集设备的架设高度和架设位置可以根据实际采集以及安装情况进行设定,本实施例中对此不做限定。

另外,本实施例中对于猪只的声音采集设备的采集策略不做限定,可以根据实际数据采集需要进行设定。比如出于对于猪只的持续监测的需要,声音采集设备24小时循环采集,从而获取长时间持续采集的声音数据。而由于循环采集时生成的数据量较大,后续声音检测的工作量较大,为减少数据量,可以间歇性抽样采集,比如每采集3分钟的音频,就停止3分钟,以此循环,本实施例中仅以上述采集策略为例进行介绍,其它情况在此不再赘述,均可参照本实施例的介绍。

s102、对声音数据进行环境噪音去除处理,得到降噪声音数据;

得到现场采集的声音数据后,由于其中除了猪只的声音之外,还包含大量的环境噪音(指出了猪只以外的声音),为避免这些环境噪音对于后续声音检测识别的影响,进而影响识别精准度,在进行猪只声音的特征识别之前,需要对声音数据进行环境噪音去除处理,尽量去掉环境的噪声干扰,保留纯净的猪只声音信号。

而本实施例中对于环境噪音去除处理的具体实现步骤不做限定,可以根据实际识别的需要选用相关的噪声去除算法。

可选地,一种对声音数据进行环境噪音去除处理的方法具体可以包括以下步骤:

(1)根据mcra谱减法对声音数据进行环境噪声估计,得到预估噪声;

(2)根据预估噪声对声音数据进行噪音消除处理,将处理后的数据作为降噪声音数据。

经实际反复实验验证,本实施例中提出了一种基于mcra(最小值控制的递归平均)谱减法的环境噪音去除方法,上述方法中使用mcra(最小值控制的递归平均)谱减法对收集到的声音信号进行噪声估计,再把估计出来的噪音消除。该方法应用于猪只声音提取领域可以较好的区分猪只声音以及环境噪音,从而实现较好的环境噪音去除效果。

具体地,谱减法基于一个简单的假设:假设语音中的噪声只有加性噪声,只要将带噪语音谱减去噪声谱,就可以得到纯净语音。相应地,谱减法就是用带噪信号(即声音数据)的频谱减去噪声信号的频谱。

上述步骤(1)中进行环境噪音估计的过程可以假设输入的声音数据中前n(比如5)帧作为静音时间,也就是说这段时间没有语音输入,只有噪音,可以称之为底噪,将这n帧中的噪音强度取平均值,作为估计出来的噪音,即预估噪声。

上述步骤(2)中根据预估噪声对声音数据进行噪音消除处理的过程可以为:先将输入的声音数据计算为频谱ps(w)。

根据谱减计算公式:d(w)=ps(w)-αpn(w)计算噪音消除处理后的频谱数据,谱减计算公式中,ps(w)为输入的带噪频谱,pn(w)为评估的噪声的频谱,α为相减因子。

再将计算的干净的频谱信号d(w)还原为音频数据,作为降噪声音数据。

本实施例中仅以上述环境噪音去除步骤进行介绍,其它实现方式(包括基于mcra谱减法的其它实现步骤以及基于其他噪声去除原理的实现步骤)均可参照本实施例的介绍,在此不再赘述。

s103、提取降噪声音数据的短时能量特征以及短时过零率特征,得到短时能量以及短时过零率;

降噪处理后,对降噪声音数据进行特征提取。本实施例中主要提取两种特征——短时能量特征以及短时过零率特征。

其中,短时能量是一种反应信号幅度变化的有效描述方法,其在端点检测中可用于判定有声段和无声段,也作为表示语音信号能量大小的特征参数。

短时能量特征的提取方法可以参照现有的短时能量的计算方式,比如其中,h(n)=w(n)2,w(n)是窗口函数。

短时过零率是指声音振动方向持续变化的信号在一个短时帧长内通过横坐标轴的次数。由过零率的定义可知,信号高频率段具有高过零率,低频率段具有低过零率,因此,过零率可以在一定程度上反映信号的频率特性。本实施例中利用过零率(zero-crossingrate,zcr)描述动物声音在时域上波动的激烈程度。

具体地,针对一个声音片段计算短时过零率的实现步骤本实施例中不做限定,可以目前过零率的计算公式进行相应设定。比如可以按照下述公式计算短时过零率:

其中,sgn[n]为符号函数:

w(n)函数用来计算比:

本实施例中仅以上述计算方式为例进行介绍,其它计算方式均可参照本实施例的介绍,在此不再赘述。

需要说明的是,短时能量特征以及短时过零率特征计算的都是较短时间内的特征值,由于降噪声音数据的总时长本实施例中不做限定,若降噪声音数据的总时长大于短时能量特征以及短时过零率特征所针对的计算对象(较短的声音片段)的长度,则需要将降噪声音数据切分为若干声音片段,每个声音片段的时长为两特征的计算间隔,即时间范围。另外,还需保证短时能量特征以及短时过零率特征的时间间隔以及起始时间相同,即计算的声音片段相同。比如降噪声音数据的总时长为3min,可以将10ms作为一个时间间隔,将降噪声音数据分为3×60×100/10=1800个声音片段,计算每个10ms的声音片段的短时能量特征以及短时过零率特征。

s104、根据短时能量确定降噪声音数据对应的短时能量阈值,根据短时过零率确定降噪声音数据对应的短时过零率阈值;

本实施例中根据每个检测对象(每段降噪声音数据)设置对应的阈值(包括短时能量阈值以及短时过零率阈值),则针对不同的检测对象,其阈值也不同。通过将阈值根据检测对象进行自适应调整,可以使每个阈值都能贴合对应检测对象的实际声音特征,实现精准检测。相比目前针对所有检测对象的固定阈值检测可以显著提升检测对象的检测精准度,本实施例提供的自适应阈值调整策略可以提升猪只声音的提取精度。

而本实施例中对于每个检测对象的两阈值(包括短时能量阈值以及短时过零率阈值)设置规则不做限定,可以根据实际检测精准度需要进行相应阈值设置规则的设置。

可选地,为了体现对于降噪声音数据中每个声音片段的全面分析,阈值的计算可以计算降噪声音数据中各声音片段对应的短时能量的均值,得到短时能量均值;并根据短时能量均值生成短时能量阈值。

短时能量是针对降噪声音数据中各声音片段计算的,在上述计算短时能量阈值时统计降噪声音数据中所有声音片段对应的短时能量,计算均值,根据均值计算生成阈值。该方式考虑到降噪声音数据中每段声音片段的特殊性,并加以度量。其中,根据均值计算生成阈值的计算过程在此不做限定,可以将短时能量均值的两倍作为短时能量阈值,经反复实验测得,短时能量均值的两倍作为短时能量阈值可以有效区分猪只声音以及其他声音,实现精准检测。

相应地,短时过零率阈值可以参照上述过程,具体为:计算降噪声音数据中各声音片段对应的短时过零率的均值,得到短时过零率均值;根据短时过零率均值生成短时过零率阈值。根据短时过零率均值生成短时过零率阈值也可以将短时过零率均值的两倍作为短时过零率阈值,可以参照上述介绍。

s105、根据短时过零率阈值对降噪声音数据进行短时过零率过滤,并获取短时过零率超过短时过零率阈值的声音数据,作为初步过滤声音数据;

在得到两阈值后,本实施例中先根据短时过零率阈值进行过滤筛选,得到初步过滤声音数据,再根据短时能量阈值对初步过滤声音数据进行处理。申请人经过大量数据研究以及测试发现,先通过短时过零率进行筛选,再通过短时能量特征进行筛选,可以显著提升对于猪声音检测的精准度,实现精准切分。

具体地,根据短时过零率阈值对降噪声音数据进行短时过零率过滤的具体实现过程可以参照相关技术中的实现方式,用短时过零率阈值对降噪声音数据中每个时间片段进行逐一过滤,只保留过零率大于阈值的声音数据。

需要说明的是,为保证最后筛选得到的声音中包含猪只一次发声的完整声音,又避免出现多次发声的声音或无关声音,获取的初步过滤声音数据应在预设的有效时长范围内,相应地,为实现上述目的,在获取短时过零率超过短时过零率阈值的声音数据之后,可以进一步执行以下步骤:

判断获取短时过零率超过短时过零率阈值的声音数据的总时长是否属于有效时长范围;

若属于,将短时过零率超过短时过零率阈值,且总时长属于有效时长范围的数据,作为初步过滤声音数据。

用短时过零率阈值进行过滤,只保留大于阈值且属于有效时长范围的声音数据片段,作为初步过滤声音数据,初步过滤声音数据不能过短或过长,以保证提取的猪只声音的有效性。

而若总时长不属于有效时长范围,本实施例中对于该情况不做限定,可以直接丢弃,执行下一个声音片段的筛选过滤步骤。

另外,若在短时过零率的过滤中,发现降噪声音数据中某个声音片段未超过短时过零率阈值,则跳转至下一个声音片段的过滤,直至得到若干连续的超过短时过零率阈值的声音片段,作为声音数据(包含若干连续的声音片段)。若整个降噪声音数据中不存在超过短时过零率阈值的声音片段,则跳转至下一段降噪声音数据的筛选过滤。

s106、根据短时能量阈值对初步过滤声音数据进行数据扩充,并将扩充后的声音数据作为猪只声音。

经过短时过零率筛选后,得到初步过滤声音数据,再对初步过滤声音数据进行短时能量过滤,具体地,使用短时能量特征,用短时能量阈值对初步过滤声音数据的头尾进行扩充,以便于扩充后的数据覆盖有效声音(比如咳嗽、打呵欠等)信。

需要说明的是,根据短时能量阈值进行数据扩充的过程可以参照相关技术中的实现方式,在此不再赘述。

另外,扩充的时长不宜过多,以包含一次完整的有效声音为准,比如可以限制扩充的特征值的数量不多于100个,以保证扩充后的总时长不超过1s。

经过短时能量阈值扩充后,得到的声音数据就可以作为检测得到的猪只声音,可以对猪只声音进行保存,以便后续的声音精准识别等操作。

为方便猪只声音的进一步追溯,从各段猪只声音之间的时间关系进一步实现精准分析,可以在保存猪只声音时记录下在原始采集的声音数据中开头与结束的时间,或采集的时间,本实施例中对此不做限定。

基于上述介绍,本发明实施例所提供的技术方案,首先对猪只养殖现场采集的声音数据进行环境噪音去除,排除环境噪音对于后续检测识别的干扰,然后先根据短时过零率阈值进行过滤筛选,得到初步过滤声音数据,再根据短时能量阈值对初步过滤声音数据进行扩充处理,该种处理顺序的配置可以显著提升对于猪声音检测的精准度,实现精准切分;同时在进行过滤筛选以及扩充处理中使用的阈值为根据每段降噪声音数据自适应调整生成的阈值,通过将阈值根据检测对象进行自适应调整,可以使每个阈值都能贴合对应检测对象的实际声音特征,实现精准检测,从而提升猪只声音的提取精度。

为加深理解,本实施例中介绍一种上述方法的实际实现过程。

以某养猪场的一个栏位为例,假设该栏位有10头猪,使用一个麦克风阵列放在栏位中进行声音采集;

麦克风阵列通电后,开始实时对栏位中的声音进行采集,当声音信号长度到达1分钟后,获取这1分钟的声音进行声音检测;

首先这1分钟的声音对降噪处理,处理后的相对噪声更小的声音;

再对降噪的信号进行特征提取,得到短时能量以及短时过零率;

计算短时能量以及短时过零率的阈值,得到短时能量阈值以及短时过零率阈值;

根据短时能量阈值以及短时过零率阈值进行片段切分;

若是没有找到满足条件的片段,则舍弃当前的声音信息,使用设备采集的下1分钟的声音片段再重复上述步骤,直到获得满足条件的片段。

假设共计切分出10个有效片段,则认为该1分钟中,包含了10次猪只发出的声音。

如图2所示为一种猪只声音提取结果示意图,本申请提供的方法可以将一段声音中的有效声音部分检测出来。该图为一段3分钟的音频片段的截选,选6-18秒,先计算出最下方的短时过零率,进行片段筛选,再计算中间的短时能量,进行片段扩充,是单个片段的长度能包含猪只的一种声音,最后共计标出20个片段。

相应于上面的方法实施例,本发明实施例还提供了一种猪只声音提取装置,下文描述的猪只声音提取装置与上文描述的猪只声音提取方法可相互对应参照。

参见图3所示,该装置包括以下模块:

原始数据获取单元110主要用于获取猪只养殖现场采集的声音数据;

降噪单元120主要用于对声音数据进行环境噪音去除处理,得到降噪声音数据;

特征提取单元130主要用于提取降噪声音数据的短时能量特征以及短时过零率特征,得到短时能量以及短时过零率;

阈值生成单元140主要用于根据短时能量确定降噪声音数据对应的短时能量阈值,根据短时过零率确定降噪声音数据对应的短时过零率阈值;

过滤单元150主要用于根据短时过零率阈值对降噪声音数据进行短时过零率过滤,并获取短时过零率超过短时过零率阈值的声音数据,作为初步过滤声音数据;

扩充单元160主要用于根据短时能量阈值对初步过滤声音数据进行数据扩充,并将扩充后的声音数据作为猪只声音。

相应于上面的方法实施例,本发明实施例还提供了一种猪只声音提取设备,下文描述的一种猪只声音提取设备与上文描述的一种猪只声音提取方法可相互对应参照。

该猪只声音提取设备包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现上述方法实施例的猪只声音提取方法的步骤。

具体的,请参考图4,为本实施例提供的一种猪只声音提取设备的具体结构示意图,该猪只声音提取设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)322(例如,一个或一个以上处理器)和存储器332,存储器332存储有一个或一个以上的计算机应用程序342或数据344。其中,存储器332可以是短暂存储或持久存储。存储在存储器332的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储器332通信,在猪只声音提取设备301上执行存储器332中的一系列指令操作。

猪只声音提取设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。

上文所描述的猪只声音提取方法中的步骤可以由猪只声音提取设备的结构实现。

相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种猪只声音提取方法可相互对应参照。

一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的猪只声音提取方法的步骤。

该可读存储介质具体可以为u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可存储程序代码的可读存储介质。

本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜