CN114520948A - 啸叫检测方法、检测装置、终端及存储介质 - Google Patents
啸叫检测方法、检测装置、终端及存储介质 Download PDFInfo
- Publication number
- CN114520948A CN114520948A CN202011295093.7A CN202011295093A CN114520948A CN 114520948 A CN114520948 A CN 114520948A CN 202011295093 A CN202011295093 A CN 202011295093A CN 114520948 A CN114520948 A CN 114520948A
- Authority
- CN
- China
- Prior art keywords
- audio signal
- power spectrum
- historical
- correlation
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R29/00—Monitoring arrangements; Testing arrangements
- H04R29/001—Monitoring arrangements; Testing arrangements for loudspeakers
Abstract
本发明实施例公开了一种啸叫检测方法、检测装置、终端及存储介质,其中,啸叫检测方法通过获取第一时间音频播放设备向音频接收设备发送的目标音频信号,获取第二时间所述音频播放设备向所述音频接收设备发送的历史音频信号,根据所述目标音频信号确定得到目标功率谱,根据所述历史音频信号确定得到历史功率谱,当所述目标功率谱和所述历史功率谱的第一相关度大于阈值,则确定所述音频播放设备发生啸叫,从而可以通过第一相关度判断目标音频信号和历史音频信号之间的相似度,进而判断音频播放设备是否发生啸叫,能够提升啸叫检测的准确率。
Description
技术领域
本发明涉及音频处理技术领域,特别是涉及一种啸叫检测方法、检测装置、终端及存储介质。
背景技术
啸叫是一种声反馈的现象,是由于传声器(即麦克风)将扬声器重放出来的声音反复拾取并放大形成正反馈,当音量超过一定限度时,会在某频带出现啸叫。
现有的啸叫检测主要通过对音频信号的时频域能量做异常性判断的方式来实现,然而,由于通话过程声学环境的差异、设备声学特性的差异、不同人声发声特点的差异,即使某个音频信号符合啸叫的时频域能量特征,也并不意味一定存在啸叫,从而容易出现误检现象;并且,在进行啸叫判断时,也比较难确定一个精准的判断门限,如果设置一个保守型(偏向于不误判)的判断门限虽然可以减少正常声音的损伤,但会容易出现漏检现象。可见,现有的啸叫检测方法的准确率较低,存在较大的局限性。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供了一种啸叫检测方法、检测装置、终端及存储介质,能够提升啸叫检测的准确率。
第一方面,本发明实施例提供了一种啸叫检测方法,包括:
获取第一时间音频播放设备向音频接收设备发送的目标音频信号;
获取第二时间所述音频播放设备向所述音频接收设备发送的历史音频信号,其中,所述第二时间早于所述第一时间;
根据所述目标音频信号确定得到目标功率谱,根据所述历史音频信号确定得到历史功率谱;
当所述目标功率谱和所述历史功率谱的第一相关度大于阈值,则确定所述音频播放设备发生啸叫。
第二方面,本发明实施例还提供了一种啸叫检测装置,包括:
第一音频获取单元,用于获取第一时间音频播放设备向音频接收设备发送的目标音频信号;
第二音频获取单元,用于获取第二时间所述音频播放设备向所述音频接收设备发送的历史音频信号,其中,所述第二时间早于所述第一时间;
功率谱获取单元,用于根据所述目标音频信号确定得到目标功率谱,根据所述历史音频信号确定得到历史功率谱;
啸叫确定单元,用于当所述目标功率谱和所述历史功率谱的第一相关度大于阈值,则确定所述音频播放设备发生啸叫。
第三方面,本发明实施例还提供了一种啸叫检测装置,包括存储器、处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的啸叫检测方法。
第四方面,本发明实施例还提供了一种终端,包括第一方面所述的啸叫检测装置或者第二方面所述的啸叫检测装置。
第五方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如第一方面所述的啸叫检测方法。
本发明实施例至少包括以下有益效果:通过获取第一时间音频播放设备向音频接收设备发送的目标音频信号,获取第二时间所述音频播放设备向所述音频接收设备发送的历史音频信号,根据所述目标音频信号确定得到目标功率谱,根据所述历史音频信号确定得到历史功率谱,当所述目标功率谱和所述历史功率谱的第一相关度大于阈值,则确定所述音频播放设备发生啸叫,从而可以通过第一相关度判断目标音频信号和历史音频信号之间的相似度,进而判断音频播放设备是否发生啸叫,能够提升啸叫检测的准确率,并且,通过目标功率谱和历史功率谱之间的第一相关度判断目标音频信号和历史音频信号之间的相似度,具有收敛速度快的优点,有利于提高啸叫检测的效率。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1是本发明实施例提供的一种啸叫成因示意图。
图2是本发明实施例提供的一种网络架构示意图。
图3是本发明实施例提供的啸叫检测方法的流程图。
图4是本发明实施例提供的根据目标音频信号确定得到目标功率谱,根据历史音频信号确定得到历史功率谱的具体步骤流程图。
图5是本发明实施例提供的当目标功率谱和历史功率谱的第一相关度大于阈值,则确定音频播放设备发生啸叫的具体步骤流程图。
图6是本发明实施例提供的当第一相关度大于阈值,确定音频播放设备发生啸叫的具体步骤流程图。
图7是本发明实施例提供的根据多个第二相关度确定目标功率谱和历史功率谱的第一相关度的具体步骤流程图。
图8是本发明实施例提供的啸叫检测方法的一个示例的具体步骤流程图。
图9是本发明实施例提供的啸叫检测装置的结构示意图。
图10是本发明实施例提供的功率谱获取单元的结构示意图。
图11是本发明实施例提供的啸叫确定单元的结构示意图。
图12是本发明实施例提供的啸叫判断单元的结构示意图。
图13是本发明实施例提供的第二相关度确定单元的结构示意图。
图14是本发明实施例提供的终端的结构示意图。
图15是本发明实施例提供的啸叫检测装置的另一种结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
应了解,在本发明实施例的描述中,多个(或多项)的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到“第一”、“第二”等只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
啸叫是一种声反馈的现象,是由于传声器(即麦克风)将扬声器重放出来的声音反复拾取并放大形成正反馈,当音量超过一定限度时,会在某频带出现啸叫。啸叫的听感非常刺耳且让人难以忍受,在实际应用中,例如在通话过程中,若发生啸叫则会非常影响通话效果。作为一个示例,通话过程的啸叫现象经常发生在多人会议(部分与会者距离比较近)场景,当出现啸叫后,由于啸叫干扰较大,可能会直接导致通话过程被打断无法进行,所以啸叫问题是极其严重的通话故障问题。而啸叫检测是有效抑制啸叫的前提,如果啸叫检测漏检则啸叫会持续并且越发响亮刺耳;相反,如果啸叫检测误检则导致正常语音受损,同样不利于通话。
参照图1,以终端为例进行说明,第二终端扬声器播放的音频信号经过空气传播后进入第一终端麦克风被第一终端采集,第一终端采集到的音频信号经过网络传输回第二终端,经过第二终端内部的语音增强处理后又被第二终端扬声器播放,重新被第一终端麦克风采集,如此往复循环,当此闭环过程的闭环增益大于1则音频信号每循环一次都将被放大,多次循环后音频信号的音量可能大于原始信号甚至达到刺耳音量级别,这种周期性或类周期性的持续循环播放的音频信号就是啸叫。
现有的啸叫检测主要通过对音频信号的时频域能量做异常性判断的方式来实现,常见的啸叫检测可以分为时域检测和频域检测两种方法。
时域检测即基于啸叫的信号能量突变以及啸叫信号可能存在的往复周期性进行判断,当信号能量瞬间变大超过预设阈值或者具有周期性能量瞬变信号出现则判为啸叫。由于时域判断依据单一,仅仅基于整体能量,信息量少,容易出现语音被误判为啸叫的情况。
频域检测主要有以下两种:
一种是峰均比判断:即将当前帧的功率峰值与当前帧的平均功率的比值作为判断依据,将当前帧的功率峰值与音频信号的平均功率的比值与预设阈值作对比,如果超过该预设阈值则判断为发生啸叫。
另一种是多参考频点判断:与峰均比判断不同,多参考频点判断不使用当前帧的平均功率值,而将每帧在频域上划分为多个频带,不同频带设有不同的参考功率值,计算各频带内的各频点功率值与对应该频带的参考功率值的比值,若比值超过预设阈值则判断为发生啸叫。
然而,若采用峰均比判断的方式检测啸叫,由于音频信号在不同频点的功率差异较大,例如低频功率值大,而高频功率值小,或者不同频带功率变化波动较大,导致平均功率值各帧的波动较大,导致峰均值不稳定,例如部分浊音,超过70%的能量都在1.5khz以下,而1.5khz以上能量很弱,这样计算得到的平均值会被1.5khz以上至所拉低,导致峰均值偏高,这样浊音容易被误判为啸叫,所以峰均比判断的方式会导致啸叫频点误判概率高。
若采用多参考频点判断的方式检测啸叫,虽然划分了不同频带,避免频带功率差异大相互影响,啸叫判断的准确率比峰均比判断的方式有所提升,但多参考频点判断的方式忽视了不同语音类别的功率谱分布存在较大差异的客观事实,例如语音可以分为清音和浊音,而清音、浊音的功率谱在整个频域空间上的分布比重存在明显差异,清音的频域能量集中在中高频,而低频能量较低,而浊音则低频能量比重较高,中高频能量相对较低,而采用多参考频点判断的方式不对语音类别做细化区分,则会导致清音容易被误判为啸叫。
另外,由于通话过程声学环境的差异、设备声学特性的差异、不同人声发声特点的差异,也很难对上述几种检测方式的预设阈值进行较为精准的设定,因此,现有的啸叫检测方法的准确率有待提高。
为了解决上述问题,本发明实施例提供了一种啸叫检测方法、检测装置、终端及存储介质,能够提升啸叫检测的准确率。
参照图2,为本发明实施例提供的一种网络架构的结构示意图,该网络架构可以包括服务器2001以及终端集群2002,该终端集群2002可以包括多个终端,具体可以为终端2002a、终端2002b、终端2002c……终端2002n,本发明实施例提供的啸叫检测方法可以以终端集群2002中的任意一个终端作为执行主体,也可以以服务器2001作为执行主体。又或者,在其他实施例中,本发明实施例提供的啸叫检测方法还可以以独立的啸叫检测装置作为执行主体。其中,终端2002a可以为台式终端或移动终端,移动终端具体可以是手机、平板电脑、笔记本电脑的至少一种。服务器2001可以是提供终端集群2002语音通话支持的独立服务器或者是多个服务器组成的集群服务器来实现。本实施例中的啸叫检测方法也可以应用于只有终端集群2002或只由终端集群2002和服务器2001组成的应用场景中,例如设置于终端集群2002或服务器2001中的人机器人聊天程序或人工智能程序。
参照图3,为本发明实施例提供的一种啸叫检测方法的流程图,该啸叫检测方法可以包括但不限于以下步骤301、步骤302、步骤303和步骤304。
步骤301,获取第一时间音频播放设备向音频接收设备发送的目标音频信号。
可以理解,音频播放设备用于播放音频信号,示例性地,音频播放设备可以为带有扬声器的终端,也可以为单独的扬声器,相类似地,音频接收设备用于播放音频信号,音频接收设备可以为带有麦克风的终端,也可以为单独的麦克风。其中,音频播放设备和音频接收设备既可以为同一设备,也可以为不同设备。例如,当音频播放设备和音频接收设备为同一设备时,音频播放设备和音频接收设备可以是同一终端上的扬声器和麦克风;当音频播放设备和音频接收设备为不同设备时,音频播放设备和音频接收设备可以为不同的终端。以图2所示的网络架构为例,音频播放设备可以是终端2002a上的扬声器和麦克风,或者,音频播放设备可以是终端2002a,音频接收设备可以是终端2002b,当然,音频播放设备和音频接收设备也可以是图2中的其他终端。
步骤302,获取第二时间音频播放设备向音频接收设备发送的历史音频信号。
其中,第二时间早于第一时间,目标音频信号和历史音频信号均为音频播放设备发送的音频信号,目标音频信号和历史音频信号可以是音频播放设备在不同时间发送的音频信号。目标音频信号可以是音频播放设备当前发送的音频信号,历史音频信号可以是音频播放设备之前发送的音频信号。当然,目标音频信号也可以是音频播放设备之前发送音频信号,此时历史音频信号可以是在目标音频信号更早之前发送的音频信号。可见,目标音频信号可以是当前播放的音频信号,也可以是已经播放的录音信号。
可以理解,上述第一时间和第二时间可以是指某个时刻,也可以是指某个时间段,本发明实施例并不作出限定。
作为一个示例,若第一时间为当前时间,第二时间早于第一时间,则第一时间可以是8:00:00,第二时间可以是7:59:58;若第一时间为历史时间,第二时间早于第一时间,当前时间为8:00:00,则第一时间可以是7:59:58,第二时间可以是7:59:56。当然,以上仅为示例性说明,本发明实施例并不对第一时间和第二时间作出限定。
步骤303,根据目标音频信号确定得到目标功率谱,根据历史音频信号确定得到历史功率谱。
其中,功率谱表示了音频信号功率随着频率的变化情况,即信号功率在频域的分布状况,根据目标音频信号确定得到目标功率谱,根据历史音频信号确定得到历史功率谱,可以采用傅里叶变换等方式实现。
由于目标音频信号和历史音频信号的发送时间不一样,因此为了便于获取历史音频信号的历史功率谱,实现后续的目标功率谱和历史功率谱的比对,因此,在步骤303中,根据历史音频信号确定得到历史功率谱之后,对历史音频信号的历史功率谱进行缓存,此时,在对目标功率谱以及历史功率谱进行比对时,历史功率谱可以从缓存区中获取。示例性地,缓存区的数据空间大小可以为数秒长度的音频信号所占用的内存大小,例如5秒的音频信号所占用的内存大小,当然,数据空间大小可以根据实际情况设置,本发明实施例并不作出限定。
步骤304,当目标功率谱和历史功率谱的第一相关度大于阈值,则确定音频播放设备发生啸叫。
可以理解,第一相关度用于表征目标功率谱和历史功率谱的之间的相似程度,由于啸叫具有往复传输播放的特性,各周期之间的啸叫信号存在一定的相似性,因此通过获取目标功率谱和历史功率谱之间的第一相关度,通过该第一相关度即可判断目标音频信号和历史音频信号之间的相似程度,当目标功率谱和历史功率谱之间的第一相关度较高,进而可以确定音频播放设备发生啸叫。
可以理解,上述阈值可以根据实际情况设置,本发明实施例不作出限定。
在一个实施例中,上述第一相关度可以采用协方差相关系数,能够更好地反映出目标音频信号和历史音频信号的功率谱之间的相似程度。其中,可以通过获取目标功率谱的第一功率绝对值与历史功率谱的第二功率绝对值,获取第一功率绝对值与第二功率绝对值之间的第一协方差,获取第一功率绝对值的第一标准差以及第二功率绝对值的第二标准差,获取第一标准差与第二标准差之间的第一乘积,以第一协方差与第一乘积之间的第一商值作为第一相关度。
在一个实施例中,第一相关度的计算公式包括:其中,ρ(X)为第一相关度,X1为目标功率谱,X2为历史功率谱,其中,Conv(X1,X2)代表X1和X2的协方差,Conv(X1,X2)=E(X1X2)-E(X1)E(X2),其中,E(X1)代表X1的均值,同理,E(X2)代表X2的均值;D(X1)=(X1-E(X1))2,同理,D(X2)=(X2-E(X2))2。
通过获取第一时间音频播放设备向音频接收设备发送的目标音频信号,获取第二时间音频播放设备向音频接收设备发送的历史音频信号,根据目标音频信号确定得到目标功率谱,根据历史音频信号确定得到历史功率谱,当目标功率谱和历史功率谱的第一相关度大于阈值,则确定音频播放设备发生啸叫,从而可以通过第一相关度判断目标音频信号和历史音频信号之间的相似度,进而判断音频播放设备是否发生啸叫,能够提升啸叫检测的准确率,并且,通过目标功率谱和历史功率谱之间的第一相关度判断目标音频信号和历史音频信号之间的相似度,具有收敛速度快的优点,有利于提高啸叫检测的效率。
可以理解,基于图2所示的网络架构,音频播放设备、音频接收设备和服务器中的任意一个均可以执行上述啸叫检测方法,因此,获取目标音频信号和历史音频信号,可以是从本地获取,也可以是从其他设备中获取,获取方式可以是网络、蓝牙等传输方式,本发明实施例并不作出限定。
示例性地,基于图2所示的网络架构,音频播放设备可以是终端2002a,音频接收设备可以是终端2002b,目标音频信号和历史音频信号可以是终端2002a发出的音频信号,若执行啸叫检测方法的主体为终端2002a,则终端2002a可以获取自身发出的音频信号作为目标音频信号,终端2002a可以获取自身缓存的音频信号作为历史音频信号;若执行啸叫检测方法的主体为终端2002b,则终端2002b可以获取自身接收到的由终端2002a发出的音频信号作为目标音频信号,终端2002b可以获取自身缓存的由终端2002a发出的音频信号作为历史音频信号;若执行啸叫检测方法的主体为服务器2001,则服务器可以通过网络的方式获取目标音频信号和历史音频信号。
需要补充说明的是,本申请实施例的啸叫检测方法,可以应用于语音通信的应用场景,也可以应用于带有扬声器播放的人机交互场景,例如具有语音通话的智能机器人、智能音箱、智能手表等智能设备。目标音频信号和历史音频信号可以包括但不限于用户语音(包括通话语音)、音乐、其他背景音、合成音和提示音等音频信号。
在一个实施例中,参照图4,上述步骤303可以进一步包括步骤401、步骤402、步骤403、步骤404和步骤405。
步骤401,对目标音频信号和历史音频信号进行分帧处理。
具体地,可以利用窗函数对目标音频信号和历史音频信号进行分帧加窗,为了减少频谱能量泄漏,可采用窗函数实现。示例性地,可以采用以下其中一种窗函数:矩形窗、三角窗、汉宁窗、汉明窗等等。其中,矩形窗属于时间变量的零次幂窗。矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象。三角窗是幂窗的一次方形式。与矩形窗比较,主瓣宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。汉宁窗可以看作是3个矩形时间窗的频谱之和,汉宁窗的主瓣加宽并降低,旁瓣则显著减小,有利于减小泄漏。汉明窗与汉宁窗都是余弦窗,只是加权系数不同,汉明窗加权的系数能使旁瓣达到更小。
可以理解,每一帧的时间长度可以根据实际情况设定,例如可以设定为10毫秒或者20毫秒,本发明实施例并不作出限定。
步骤402,获取进行分帧处理后的目标音频信号中当前帧的第一子音频信号。
其中,当前帧可以是进行分帧处理后的目标音频信号中的其中一帧,可以理解,也可以仅将当前帧看作是目标音频信号。在实际检测过程中,可以按照顺序依次获取进行分帧处理后的目标音频信号的每一帧音频信号,当获取第一帧目标音频信号时,当前帧就是第一帧,目标音频信号的第一帧即为第一子音频信号。当然,在实际检测过程中,也可以根据实际情况设置目标音频信号中每一帧音频信号的获取顺序。
在一个实施例中,当目标音频信号和历史音频信号连续时,当前帧为第二帧时,第一帧的相应地可以被缓存于缓存区而成为历史音频信号,如此类推。
步骤403,获取进行分帧处理后的历史音频信号中当前帧之前或者之后的多个第二子音频信号。
历史音频信号经过分帧处理后可以得到多帧音频信号,进行分帧处理后的历史音频信号中当前帧之前或者之后的多个第二子音频信号,实际上为目标音频信号的当前帧往历史时间的多个偏移帧。其中,获取进行分帧处理后的历史音频信号中当前帧之前或者之后的多个第二子音频信号,可以是获取多帧历史音频信号中当前帧之后的所有第二子音频信号,也可以获取历史音频信号中当前帧之后的部分第二子音频信号,本发明实施例不作限定。获取多帧历史音频信号中当前帧之后的所有第二子音频信号,有利于提高后续比对的准确率。
可以理解,根据历史音频信号功率谱的缓存方式,第二子音频信号可以是当前帧之前的历史音频信号,也可以是当前帧之后的历史音频信号,本发明实施例不作出限定。
步骤404,获取第一子音频信号的第一功率谱和第二子音频信号的第二功率谱。
其中,获取第一子音频信号的第一功率谱,可以是对第一子音频信号做傅里叶变换,并求出其对应的功率绝对值,第一子音频信号为第i帧目标音频信号,计算公式可以包括:
相类似地,第二子音频信号的第二功率谱X(i+j,k)的计算方式一样,在此不再赘述。
作为一种示例,第二子音频信号的数量为九个,相应地第二相关度的数量也为九个,获取第一功率谱与多个第二功率谱之间的多个第二相关度,即分别获取第一功率谱与九个第二功率谱之间的九个第二相关度。
需要补充说明的是,第二子音频信号的数量并不限定于上述的九个,仅仅作为一种示例性的说明,具体数量可以根据步骤401中的分帧处理而定。
在一实施例中,获取第一子音频信号的第一功率谱与多个第二子音频信号的多个第二功率谱,可以是根据预设的频率范围获取第一子音频信号的第一功率谱与多个第二子音频信号的多个第二功率谱,即上述k=N1-N2,其中,N1和N2代表预设的频率范围。由于啸叫通常不是全频带发生,因此通过设置预设的频率范围,只利用部分频带进行相似度的判断,从而有利于提高啸叫检测方法的收敛速度,提高啸叫检测的效率。
步骤405,将第一功率谱作为目标音频信号的目标功率谱,将第二功率谱作为历史音频信号的历史功率谱。
参照图5,在上述步骤401至步骤405的基础上,上述步骤304具体可以包括步骤501至步骤503。
步骤501,分别获取第一功率谱与多个第二功率谱之间的第二相关度。
在一个实施例中,可以通过获取第一子音频信号中第i帧各频点的第三功率绝对值与第二子音频信号中第i帧之前或者之后的第j帧各频点的第四功率绝对值,获取第三功率绝对值与第四功率绝对值之间的第二协方差,获取第三功率绝对值的第三标准差以及第四功率绝对值的第四标准差,获取第三标准差与第四标准差之间的第二乘积,以第二协方差与第二乘积之间的第二商值作为第二相关度,其中,i、j均为正整数。
在一个实施例中,上述第二相关度可以采用以下计算公式得到:
其中,Conv(X(i,k),X(i+j,k))代表X(i,k)和X(i+j,k)的协方差,Conv(X(i,k),X(i+j,k))=E(X(i,k)X(i+j,k))-E(X(i,k))E(X(i+j,k)),其中,E(X(i,k))代表X(i,k)的均值,同理,E(X(i+j,k))代表X(i+j,k)的均值;D(X(i,k))=(X(i,k)-E(X(i,k)))2,同理,D(X(i+j,k))=(X(i+j,k)-E(X(i+j,k)))2。
上述ρ(j)为协方差相关系数,能够更好地反映出目标音频信号和历史音频信号的功率谱之间的相似程度。
通过对目标音频信号和历史音频信号进行分帧处理,得到多帧目标音频信号和多帧历史音频信号,然后分别获取第一功率谱和多个第二功率谱的第二相关度,由于对目标音频信号和历史音频信号进行分帧处理,使得音频信号的维度更小,相比于直接对音频信号进行整体相似度判断的方案,本发明实施例提供的啸叫检测方法进行在判断相似程度时有利于提高准确性。
步骤502,根据多个第二相关度确定目标功率谱和历史功率谱的第一相关度。
其中,根据多个第二相关度确定目标功率谱和历史功率谱的第一相关度,可以是将第三功率谱对应的第二相关度作为第一相关度,其中,第三功率谱为与第一功率谱相似程度最高的第二功率谱。例如可以是将最大的第二相关度作为第一相关度,其中,将与第一功率谱相似程度最高的第二功率谱所对应的第二相关度作为第一相关度,有利于使得第一相关度更加合理地反映出第一功率谱和第二功率谱的相似程度。当然,其他的实施例中,也可以不直接利用第二相关度的大小进行相似程度的判断,例如可以利用第二相关度进行一些数学运算转化成另一个参数,再利用这个参数进行判断。
步骤503,当第一相关度大于阈值,确定音频播放设备发生啸叫。
其中,当第一相关度大于阈值,确定音频播放设备发生啸叫,基于步骤502,可以是当多个第二相关度中的最大值大于阈值,确定音频播放设备发生啸叫,因此,即当目标音频信号中某一帧音频信号的第一功率谱与历史音频信号中的某一帧音频信号的第二功率谱相似度较大,即可确定音频播放设备发生啸叫。可以理解,第二相关度中的最大值即代表第一功率谱与第二功率谱的相似程度最高。
可以理解,在其他实施例中,也可以每获取第一功率谱与一个第二功率谱之间的第二相关度,就将该阈值进行比较,一旦第二相关度大于该阈值,即确定音频播放设备发生啸叫。这种方式的好处在于,无须全部获取第一功率谱与多个第二功率谱之间的多个第二相关度,因此,有利于提高啸叫检测方法的收敛速度,提高啸叫检测的效率。
参照图6,在一个实施例中,上述步骤503可以进一步包括步骤601和步骤602。
步骤601,当第一相关度大于阈值,根据第二相关度获取相似程度最高的第一子音频信号和第二子音频信号之间的时间差。
在实际应用过程中,即使两个音频信号的相似度较高时,也可能会存在一种情况,这两个音频信号均为正常的语音信号,此时并没有发生啸叫,因此,基于上述步骤501至步骤503,本发明实施例在判断出第一相关度大于阈值后,还根据第二相关度获取相似程度最高的第一子音频信号和第二子音频信号之间的时间差,其中,相似程度最高的第一子音频信号和第二子音频信号,可以是第二相关度的最大值所对应的第一子音频信号和第二子音频信号。其中,第一子音频信号和第二子音频信号之间的时间差,可以看作是啸叫发生的周期。
在一个实施例中,第一子音频信号和第二子音频信号之间的时间差,可以通过第一子音频信号和第二子音频信号之间的帧距离得到。例如,第一子音频信号和第二子音频信号之间的帧距离为5帧时,若每一帧的长度为10毫秒,则第一子音频信号和第二子音频信号的时间差为50毫秒。
步骤602,当时间差处于预设的周期范围内,确定音频播放设备发生啸叫。
由于啸叫发生的周期一般很短,为了排除两个相似度较高的正常语音信号的情况,因此通过将第一子音频信号和第二子音频信号之间的时间差于预设的周期范围进行比较,当时间差处于预设的周期范围内,才确定音频播放设备发生啸叫,从而提高啸叫检测的准确性,减少误判现象的发生。作为一个示例,上述周期范围可以是2秒以内,可以理解,上述周期范围可以根据实际情况设置,本发明实施例并不作出限定。
参照图7,在一个实施例中,上述步骤502可以进一步包括步骤701和步骤702。
步骤701,对多个第二相关度进行平滑滤波处理。
其中,得到第二相关度之后,还可以对该第二相关度进行平滑滤波处理,从而能够过滤在计算第二相关度的过程中产生的干扰信号,提高啸叫检测的准确性。
其中,该平滑滤波处理的计算公式包括:
P(j)=(1-α)*P(j)+α*ρ(j),其中,ρ(j)为进行分帧处理后的历史音频信号中当前帧之前或者之后的第j帧第二子音频信号与第一子音频信号之间的第二相关度,P(j)为平滑滤波处理之后的第二相关度,j为正整数,α为小于1的正数。
步骤702,根据多个经平滑滤波处理后的第二相关度确定目标功率谱和历史功率谱的第一相关度。
其中,由于第二相关度经过了平滑滤波处理,因此有利于提高最终得到的目标功率谱和历史功率谱的第一相关度的准确性。
需要补充说明的是,上述任一实施例中的啸叫检测方法,可以以终端的系统程序作为载体,也可以以终端中需要使用麦克风和扬声器的应用程序作为载体,本申请的实施例并不做具体限定。当上述任一实施例中的啸叫检测方法以终端的系统程序作为载体时,用户只需对终端的系统程序进行升级更新,即可使用上述任一实施例中的啸叫检测方法,而无需对终端进行出厂调试,方便用户的更新使用。当上述任一实施例中的啸叫检测方法以终端中需要使用麦克风和扬声器的应用程序作为载体,只需要安装该应用程序即可使用上述任一实施例中的啸叫检测方法,同样无需对终端进行出厂调试,方便用户的更新使用。该应用程序可以是独立的语音信号处理软件或插件,也可以是内置于语音通话软件中的算法程序,例如微信音视频通话、直播、广播等应用程序,本申请的实施例并不作出限定。
基于图2所示的网络架构,其中,终端2002a和终端2002b均安装有能够进行语音通信的语音通信软件,语音通信软件可以是聊天、社交软件,又或者是远程视频会议软件等等,下面以远程视频会议场景为例说明本发明实施例的啸叫检测方法。
作为一个示例,在此应用场景下,终端2002a和终端2002b之间的距离较近,并且,终端2002a和终端2002b均通过服务器2001建立语音通信连接,与远端的另一个终端进行远程视频会议,终端2002a和终端2002b分别通过自身的扬声器播放远端终端发送的音频信号。由于终端2002a和终端2002b之间的距离较近,因此终端2002a扬声器播放的音频信号会被终端2002b的麦克风拾取,终端2002b将其麦克风拾取的音频信号通过网络传输至服务器,服务器再将该音频信号传输至终端2001a,终端2001a再次将该音频信号通过自身的扬声器进行播放,终端2002b的麦克风再次拾取该音频信号……如此往复,一旦该音频信号的音量达到一定的限度,则会发生啸叫,从而影响了终端2002a、终端2002b以及远端终端之间的视频通话。为了检测终端2002a是否发生啸叫,首先,当终端2002a、终端2002b以及远端终端开始进行视频通话时,终端2002a开始采集由自身扬声器播放的音频信号,并将其缓存在自身预设设置好的缓存区中,其中,缓存区大小可以供终端2002a缓存5秒的音频信号,终端2002a持续采集自身扬声器播放的目标音频信号,并将当前采集到的目标音频信号的当前帧的功率谱依次与缓存区中历史音频信号的每一帧的功率谱进行相关度的计算,取这些相关度的最大值与阈值进行比较,一旦这些相关度的最大值达到阈值,则确认与获取相关度最大的历史音频信号的某一帧和目标音频信号的当前帧之间的时间差,进一步将该时间差与预设的周期范围进行对比,一旦该时间差在预设的周期范围之内,则确定终端2002a发生啸叫,后续需要执行相应的啸叫抑制动作,已经被检测的目标音频信号可以进行缓存成为历史音频信号。通过上述的啸叫检测方法,通过目标音频信号和历史音频信号的功率谱之间的相关度判断两者之间的相似度,进而判断终端2002a是否发生啸叫,相比于现有技术的啸叫检测方法可以提高啸叫检测的准确性,并且,在相似度达到阈值的基础上,进一步引入啸叫周期值的判断,有利于进一步提高啸叫检测的准确性,降低误判现象发生的概率。需要说明的是,由于目标音频信号或者历史音频每一帧的时长较短,因此上述啸叫检测方法实际上处理时间较短,检测速度较快。
参照图8,上述示例中的啸叫检测方法具体可以包括以下步骤801、步骤802、步骤803、步骤804、步骤805、步骤806和步骤807:
步骤801:获取终端扬声器播放的目标音频信号以及缓存区中的历史音频信号;
步骤802:对目标音频信号和历史音频信号进行分帧处理,获取目标音频信号和历史音频信号的功率谱;
步骤803:获取目标音频信号中当前帧功率谱与历史音频信号中各帧功率谱之间的相关度;
步骤804:判断目标音频信号中当前帧功率谱与历史音频信号中某一帧功率谱之间的相关度是否大于阈值,若是,则跳转步骤805,否则跳转步骤806;
步骤805:判断目标音频信号当前帧与历史音频信号中该帧之间的时间差是否处于周期范围,若是,则跳转步骤807,否则跳转步骤806;
步骤806:将目标音频信号中该当前帧缓存于缓存区中,继续获取目标音频信号的另一帧作为当前帧,跳转步骤803;
步骤807:确认终端发生啸叫。
相类似地,对于终端2002b来讲,也会因为类似的原因而发生啸叫,并且,终端2002b同样可以通过相同的方式进行啸叫检测,在此不再赘述。
可以理解的是,检测终端2002a是否发生啸叫,除了可以由终端2002a自身进行检测以外,也可以由终端2002b或者服务器2001进行检测,例如,若由终端2002b检测,终端2002b可以通过蓝牙等无线传输方式获取终端2002a扬声器播放的目标音频信号,并且将历史音频信号进行缓存;同理,若由服务器2001检测,服务器2001可以通过网络等传输方式获取终端2002a扬声器播放的目标音频信号,并且将历史音频信号进行缓存。
作为另一个示例,基于图2所示的网络架构,还存在一种情况,终端2002a扬声器播放的音频信号会被终端2002a自身的麦克风拾取,终端2002a将其麦克风拾取的音频信号通过网络传输至服务器,服务器再将该音频信号传输至终端2001a,终端2001a再次将该音频信号通过自身的扬声器进行播放,终端2002a的麦克风再次拾取该音频信号……如此往复,一旦该音频信号的音量达到一定的限度,同样会发生啸叫,从而影响了终端2002a、终端2002b以及远端终端之间的视频通话。因此,可以利用上述第一个示例的啸叫检测方法判断终端2002a是否发生啸叫,具体的检测原理与第一个示例一致,在此不再赘述。
参照图9,本发明的另一个实施例还提供了一种啸叫检测装置900,该啸叫检测装置900包括:
第一音频获取单元901,用于获取第一时间音频播放设备向音频接收设备发送的目标音频信号;
第一音频获取单元902,用于获取第二时间音频播放设备向音频接收设备发送的历史音频信号,其中,第二时间早于第一时间;
功率谱获取单元903,用于根据目标音频信号确定得到目标功率谱,根据历史音频信号确定得到历史功率谱;
啸叫确定单元904,用于当目标功率谱和历史功率谱的第一相关度大于阈值,则确定音频播放设备发生啸叫。
其中,音频播放设备用于播放音频信号,示例性地,音频播放设备可以为带有扬声器的终端,也可以为单独的扬声器,相类似地,音频接收设备用于播放音频信号,音频接收设备可以为带有麦克风的终端,也可以为单独的麦克风。其中,音频播放设备和音频接收设备既可以为同一设备,也可以为不同设备。例如,当音频播放设备和音频接收设备为同一设备时,音频播放设备和音频接收设备可以是同一终端上的扬声器和麦克风;当音频播放设备和音频接收设备为不同设备时,音频播放设备和音频接收设备可以为不同的终端。目标音频信号和历史音频信号均为音频播放设备发送的音频信号,目标音频信号和历史音频信号可以是音频播放设备在不同时间发送的音频信号。目标音频信号可以是音频播放设备当前发送的音频信号,历史音频信号可以是音频播放设备之前发送的音频信号。当然,目标音频信号也可以是音频播放设备之前发送音频信号,此时历史音频信号可以是在目标音频信号更早之前发送的音频信号。
其中,功率谱表示了音频信号功率随着频率的变化情况,即信号功率在频域的分布状况,根据目标音频信号确定得到目标功率谱,根据历史音频信号确定得到历史功率谱,可以采用傅里叶变换等方式实现。
由于目标音频信号和历史音频信号的发送时间不一样,因此为了便于获取历史音频信号的历史功率谱,实现后续的目标功率谱和历史功率谱的比对,因此,功率谱获取单元903根据历史音频信号确定得到历史功率谱之后,对历史音频信号的历史功率谱进行缓存,此时,在对目标功率谱以及历史功率谱进行比对时,历史功率谱可以从缓存区中获取。示例性地,缓存区的数据空间大小可以为数秒长度的音频信号所占用的内存大小,例如5秒的音频信号所占用的内存大小,当然,数据空间大小可以根据实际情况设置,本发明实施例并不作出限定。
第一相关度用于表征目标功率谱和历史功率谱的之间的相似程度,由于啸叫具有往复传输播放的特性,各周期之间的啸叫信号存在一定的相似性,因此啸叫确定单元904通过获取目标功率谱和历史功率谱之间的第一相关度,通过该第一相关度即可判断目标音频信号和历史音频信号之间的相似程度,当目标功率谱和历史功率谱之间的第一相关度较高,进而可以确定音频播放设备发生啸叫。
通过第一音频获取单元901获取第一时间音频播放设备向音频接收设备发送的目标音频信号,第一音频获取单元902获取第二时间音频播放设备向音频接收设备发送的历史音频信号,功率谱获取单元903根据目标音频信号确定得到目标功率谱,功率谱获取单元903根据历史音频信号确定得到历史功率谱,当目标功率谱和历史功率谱的第一相关度大于阈值,啸叫确定单元904则确定音频播放设备发生啸叫,从而可以通过第一相关度判断目标音频信号和历史音频信号之间的相似度,进而判断音频播放设备是否发生啸叫,能够提升啸叫检测的准确率,并且,通过目标功率谱和历史功率谱之间的第一相关度判断目标音频信号和历史音频信号之间的相似度,具有收敛速度快的优点,有利于提高啸叫检测的效率。
需要补充说明的是,本申请实施例的啸叫检测装置900,可以应用于语音通信的应用场景,也可以应用于带有扬声器播放的人机交互场景,例如具有语音通话的智能机器人、智能音箱、智能手表等智能设备。目标音频信号和历史音频信号可以包括但不限于用户语音(包括通话语音)、音乐、其他背景音、合成音和提示音等音频信号。
参照图10,在一个实施例中,功率谱获取单元903进一步包括:
分帧单元1001,用于对目标音频信号和历史音频信号进行分帧处理;
第一子音频信号获取单元1002,用于获取进行分帧处理后的目标音频信号中当前帧的第一子音频信号;
第二子音频信号获取单元1003,用于获取进行分帧处理后的历史音频信号中当前帧之前或者之后的多个第二子音频信号;
功率谱计算单元1004,用于获取第一子音频信号的第一功率谱和第二子音频信号的第二功率谱;
功率谱确定单元1005,用于将第一功率谱作为目标音频信号的目标功率谱,将第二功率谱作为历史音频信号的历史功率谱。
具体地,第一子音频信号获取单元1002可以利用窗函数对目标音频信号进行分帧加窗,第二子音频信号获取单元1003也可以利用窗函数对历史音频信号进行分帧加窗,为了减少频谱能量泄漏,可采用窗函数实现。示例性地,可以采用以下其中一种窗函数:矩形窗、三角窗、汉宁窗、汉明窗等等。其中,矩形窗属于时间变量的零次幂窗。矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象。三角窗是幂窗的一次方形式。与矩形窗比较,主瓣宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。汉宁窗可以看作是3个矩形时间窗的频谱之和,汉宁窗的主瓣加宽并降低,旁瓣则显著减小,有利于减小泄漏。汉明窗与汉宁窗都是余弦窗,只是加权系数不同,汉明窗加权的系数能使旁瓣达到更小。
其中,当前帧可以是进行分帧处理后的目标音频信号中的其中一帧。在实际检测过程中,可以按照顺序依次获取进行分帧处理后的目标音频信号的每一帧音频信号,当获取第一帧目标音频信号时,当前帧就是第一帧,目标音频信号的第一帧即为第一子音频信号。当然,在实际检测过程中,也可以根据实际情况设置目标音频信号中每一帧音频信号的获取顺序。
历史音频信号经过分帧处理后可以得到多帧音频信号,进行分帧处理后的历史音频信号中当前帧之前或者之后的多个第二子音频信号,实际上为目标音频信号的当前帧往历史时间的多个偏移帧。其中,获取进行分帧处理后的历史音频信号中当前帧之前或者之后的多个第二子音频信号,可以是获取多帧历史音频信号中当前帧之后的所有第二子音频信号,也可以获取历史音频信号中当前帧之后的部分第二子音频信号,本发明实施例不作限定。获取多帧历史音频信号中当前帧之后的所有第二子音频信号,有利于提高后续比对的准确率。
其中,功率谱计算单元1004获取第一子音频信号的第一功率谱,可以是对第一子音频信号做傅里叶变换,并求出其对应的功率绝对值。第二子音频信号的获取方式一致,在此不再赘述。
参照图11,在一个实施例中,啸叫确定单元904可以进一步包括:
第一相关度获取单元1101,用于分别获取第一功率谱与多个第二功率谱之间的第二相关度;
第二相关度确定单元1102,用于根据多个第二相关度确定目标功率谱和历史功率谱的第一相关度;
啸叫判断单元1103,用于当第一相关度大于阈值,则确定音频播放设备发生啸叫。
由于通过分帧单元对目标音频信号和历史音频信号进行分帧处理,得到多帧目标音频信号和多帧历史音频信号,然后第一相关度获取单元1101分别获取第一功率谱和多个第二功率谱的第二相关度,由于对目标音频信号和历史音频信号进行分帧处理,使得音频信号的维度更小,相比于直接对音频信号进行整体相似度判断的方案,本发明实施例提供的啸叫检测方法进行在判断相似程度时有利于提高准确性。
其中,第二相关度确定单元1102根据多个第二相关度确定目标功率谱和历史功率谱的第一相关度,可以是将与第一功率谱相似程度最高的第二功率谱所对应的第二相关度作为第一相关度,例如可以是将最大的第二相关度作为第一相关度,其中,将与第一功率谱相似程度最高的第二功率谱所对应的第二相关度作为第一相关度,有利于使得第一相关度更加合理地反映出第一功率谱和第二功率谱的相似程度。当然,其他的实施例中,也可以不直接利用第二相关度的大小进行相似程度的判断,例如可以利用第二相关度进行一些数学运算转化成另一个参数,再利用这个参数进行判断。
其中,当第一相关度大于阈值,啸叫判断单元1103确定音频播放设备发生啸叫,可以是当多个第二相关度中的最大值大于阈值,确定音频播放设备发生啸叫,因此,即当目标音频信号中某一帧音频信号的第一功率谱与历史音频信号中的某一帧音频信号的第二功率谱相似度较大,啸叫判断单元1103即可确定音频播放设备发生啸叫。
可以理解,在其他实施例中,啸叫判断单元1103也可以每获取第一功率谱与一个第二功率谱之间的第二相关度,就将该阈值进行比较,一旦第二相关度大于该阈值,即确定音频播放设备发生啸叫。这种方式的好处在于,无须全部获取第一功率谱与多个第二功率谱之间的多个第二相关度,因此,有利于提高啸叫检测方法的收敛速度,提高啸叫检测的效率。
参照图12,在一个实施例中,啸叫判断单元1103可以进一步包括:
时间差获取单元1201,用于当第一相关度大于阈值,根据第二相关度获取相似程度最高的第一子音频信号和第二子音频信号之间的时间差;
时间差判断单元1202,用于当时间差处于预设的周期范围内,确定音频播放设备发生啸叫。
在实际应用过程中,即使两个音频信号的相似度较高时,也可能会存在一种情况,这两个音频信号均为正常的语音信号,此时并没有发生啸叫,因此,在判断出第一相关度大于阈值后,时间差获取单元1201还根据第二相关度获取相似程度最高的第一子音频信号和第二子音频信号之间的时间差,其中,相似程度最高的第一子音频信号和第二子音频信号,可以是第二相关度的最大值所对应的第一子音频信号和第二子音频信号。其中,第一子音频信号和第二子音频信号之间的时间差,可以看作是啸叫发生的周期。
由于啸叫发生的周期一般很短,为了排除两个相似度较高的正常语音信号的情况,因此时间差判断单元1202通过将第一子音频信号和第二子音频信号之间的时间差于预设的周期范围进行比较,当时间差处于预设的周期范围内,才确定音频播放设备发生啸叫,从而提高啸叫检测的准确性,减少误判现象的发生。
参照图13,在一个实施例中,第二相关度确定单元1102可以进一步包括:
平滑滤波单元1301,用于对多个第二相关度进行平滑滤波处理;
第三相关度确定单元1302,用于根据多个经平滑滤波处理后的第二相关度确定目标功率谱和历史功率谱的第一相关度。
其中,通过第一相关度获取单元得到第二相关度之后,还可以对该第二相关度进行平滑滤波处理,从而能够过滤在计算第二相关度的过程中产生的干扰信号,提高啸叫检测的准确性。由于第二相关度经过了平滑滤波单元1301进行平滑滤波处理,因此有利于提高第三相关度确定单元1302最终得到的目标功率谱和历史功率谱的第一相关度的准确性。
还应了解,本发明实施例提供的各种实施方式可以任意进行组合,以实现不同的技术效果。
参照图14,本发明实施例还提供了一种终端1400,该终端包括上述实施例中的啸叫检测装置900,因此,该终端1400可以通过第一音频获取单元901获取第一时间音频播放设备向音频接收设备发送的目标音频信号,第一音频获取单元902获取第二时间音频播放设备向音频接收设备发送的历史音频信号,功率谱获取单元903根据目标音频信号确定得到目标功率谱,功率谱获取单元903根据历史音频信号确定得到历史功率谱,当目标功率谱和历史功率谱的第一相关度大于阈值,啸叫确定单元904则确定音频播放设备发生啸叫,从而可以通过第一相关度判断目标音频信号和历史音频信号之间的相似度,进而判断音频播放设备是否发生啸叫,能够提升啸叫检测的准确率,并且,通过目标功率谱和历史功率谱之间的第一相关度判断目标音频信号和历史音频信号之间的相似度,具有收敛速度快的优点,有利于提高啸叫检测的效率。
图15示出了本发明实施例提供的啸叫检测装置900。啸叫检测装置900包括:存储器1501、处理器1502及存储在存储器1501上并可在处理器1502上运行的计算机程序,计算机程序运行时用于执行上述的啸叫检测方法。
处理器1502和存储器1501可以通过总线或者其他方式连接。
存储器1501作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本发明实施例描述的啸叫检测方法。处理器1502通过运行存储在存储器1501中的非暂态软件程序以及指令,从而实现上述的啸叫检测方法。
存储器1501可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述的啸叫检测方法。此外,存储器1501可以包括高速随机存取存储器1501,还可以包括非暂态存储器1501,例如至少一个储存设备存储器件、闪存器件或其他非暂态固态存储器件。在一些实施方式中,存储器1501可选包括相对于处理器1502远程设置的存储器1501,这些远程存储器1501可以通过网络连接至该啸叫检测装置900。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述的啸叫检测方法所需的非暂态软件程序以及指令存储在存储器1501中,当被一个或者多个处理器1502执行时,执行上述的啸叫检测方法,例如,执行图3中的方法步骤301至304、图4中的方法步骤401至405、图5中的方法步骤501至503、图6中的方法步骤601至602、图6中的方法步骤601至605、图7中的方法步骤701至702、图8中的方法步骤801至807。
本发明实施例还提供了计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令用于执行上述的啸叫检测方法。
在一实施例中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,被上述啸叫检测装置900中的一个处理器1502执行,可使得上述处理器1502执行上述的啸叫检测方法,例如,执行图3中的方法步骤301至304、图4中的方法步骤401至405、图5中的方法步骤501至503、图6中的方法步骤601至602、图6中的方法步骤601至605、图7中的方法步骤701至702、图8中的方法步骤801至807。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、储存设备存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包括计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的共享条件下还可作出种种等同的变形或替换,这些等同的变形或替换均包括在本发明权利要求所限定的范围内。
Claims (15)
1.一种啸叫检测方法,包括:
获取第一时间音频播放设备向音频接收设备发送的目标音频信号;
获取第二时间所述音频播放设备向所述音频接收设备发送的的历史音频信号,其中,所述第二时间早于所述第一时间;
根据所述目标音频信号确定得到目标功率谱,根据所述历史音频信号确定得到历史功率谱;
当所述目标功率谱和所述历史功率谱的第一相关度大于阈值,则确定所述音频播放设备发生啸叫。
2.根据权利要求1所述的方法,其特征在于,所述第一相关度为协方差相关系数,所述第一相关度通过以下步骤得到:
获取所述目标功率谱的第一功率绝对值与所述历史功率谱的第二功率绝对值;
获取所述第一功率绝对值与所述第二功率绝对值之间的第一协方差;
获取所述第一功率绝对值的第一标准差以及所述第二功率绝对值的第二标准差;
获取所述第一标准差与所述第二标准差之间的第一乘积;
以所述第一协方差与所述第一乘积之间的第一商值作为所述第一相关度。
3.根据权利要求1所述的方法,其特征在于,所述根据所述历史音频信号确定得到历史功率谱之后,还包括:
对所述历史音频信号的历史功率谱进行缓存。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述根据所述目标音频信号确定得到目标功率谱,根据所述历史音频信号确定得到历史功率谱,包括:
对所述目标音频信号和所述历史音频信号进行分帧处理;
获取进行分帧处理后的所述目标音频信号中当前帧的第一子音频信号;
获取进行分帧处理后的所述历史音频信号中所述当前帧之前或者之后的多个第二子音频信号;
获取所述第一子音频信号的第一功率谱和所述第二子音频信号的第二功率谱;
将所述第一功率谱作为所述目标音频信号的目标功率谱,将所述第二功率谱作为所述历史音频信号的历史功率谱。
5.根据权利要求4所述的方法,其特征在于,所述当所述目标功率谱和所述历史功率谱的第一相关度大于阈值,则确定所述音频播放设备发生啸叫,包括:
分别获取所述第一功率谱与多个所述第二功率谱之间的第二相关度;
根据多个所述第二相关度确定所述目标功率谱和所述历史功率谱的第一相关度;
当所述第一相关度大于阈值,则确定所述音频播放设备发生啸叫。
6.根据权利要求5所述的方法,其特征在于,所述根据多个所述第二相关度确定所述目标功率谱和所述历史功率谱的第一相关度,包括:
将第三功率谱对应的所述第二相关度作为所述第一相关度,其中,所述第三功率谱为与所述第一功率谱相似程度最高的所述第二功率谱。
7.根据权利要求5所述的方法,其特征在于,所述当所述第一相关度大于阈值,则确定所述音频播放设备发生啸叫,包括:
当所述第一相关度大于阈值,根据所述第二相关度获取相似程度最高的所述第一子音频信号和所述第二子音频信号之间的时间差;
当所述时间差处于预设的周期范围内,确定所述音频播放设备发生啸叫。
8.根据权利要求5所述的方法,其特征在于,所述第二相关度为协方差相关系数,所述第二相关度通过以下步骤得到:
获取所述第一子音频信号中第i帧各频点的第三功率绝对值与所述第二子音频信号中第i帧之前或者之后的第j帧各频点的第四功率绝对值;
获取所述第三功率绝对值与所述第四功率绝对值之间的第二协方差;
获取所述第三功率绝对值的第三标准差以及所述第四功率绝对值的第四标准差;
获取所述第三标准差与所述第四标准差之间的第二乘积;
以所述第二协方差与所述第二乘积之间的第二商值作为所述第二相关度;
其中,i、j均为正整数。
9.根据权利要求4所述的方法,其特征在于,所述获取所述第一子音频信号的第一功率谱和所述第二子音频信号的第二功率谱,包括:
根据预设的频率范围获取所述第一子音频信号的第一功率谱和所述第二子音频信号的第二功率谱。
10.根据权利要求5所述的方法,其特征在于,所述根据多个所述第二相关度确定所述目标功率谱和所述历史功率谱的第一相关度,包括:
对多个所述第二相关度进行平滑滤波处理,其中,所述平滑滤波处理的计算公式包括:P(j)=(1-α)*P(j)+α*ρ(j),其中,ρ(j)为进行分帧处理后的所述历史音频信号中所述当前帧之前或者之后的第j帧第二子音频信号与所述第一子音频信号之间的第二相关度,P(j)为平滑滤波处理之后的第二相关度,j为正整数,α为小于1的正数;
根据多个经平滑滤波处理后的所述第二相关度确定所述目标功率谱和所述历史功率谱的第一相关度。
11.根据权利要求1所述的方法,其特征在于,所述目标音频信号为当前播放的音频信号或者已经播放的录音信号。
12.一种啸叫检测装置,其特征在于,包括:
第一音频获取单元,用于获取第一时间音频播放设备向音频接收设备发送的目标音频信号;
第二音频获取单元,用于获取第二时间所述音频播放设备向所述音频接收设备发送的历史音频信号,其中,所述第二时间早于所述第一时间;
功率谱获取单元,用于根据所述目标音频信号确定得到目标功率谱,根据所述历史音频信号确定得到历史功率谱;
啸叫确定单元,用于当所述目标功率谱和所述历史功率谱的第一相关度大于阈值,则确定所述音频播放设备发生啸叫。
13.一种啸叫检测装置,其特征在于,包括存储器、处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至11中任意一项所述的啸叫检测方法。
14.一种终端,其特征在于,包括权利要求12所述的啸叫检测装置或权利要求13所述的啸叫检测装置。
15.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序,所述程序被处理器执行实现如权利要求1-11中任意一项所述的啸叫检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011295093.7A CN114520948A (zh) | 2020-11-18 | 2020-11-18 | 啸叫检测方法、检测装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011295093.7A CN114520948A (zh) | 2020-11-18 | 2020-11-18 | 啸叫检测方法、检测装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114520948A true CN114520948A (zh) | 2022-05-20 |
Family
ID=81595385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011295093.7A Pending CN114520948A (zh) | 2020-11-18 | 2020-11-18 | 啸叫检测方法、检测装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114520948A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115835092A (zh) * | 2023-02-15 | 2023-03-21 | 南昌航天广信科技有限责任公司 | 一种音频扩音反馈抑制方法、系统、计算机及存储介质 |
-
2020
- 2020-11-18 CN CN202011295093.7A patent/CN114520948A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115835092A (zh) * | 2023-02-15 | 2023-03-21 | 南昌航天广信科技有限责任公司 | 一种音频扩音反馈抑制方法、系统、计算机及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8842851B2 (en) | Audio source localization system and method | |
CN107464565B (zh) | 一种远场语音唤醒方法及设备 | |
CN108141502A (zh) | 音频信号处理 | |
CN107863099B (zh) | 一种新型双麦克风语音检测和增强方法 | |
CN107770683B (zh) | 一种回声场景下音频采集状态的检测方法及装置 | |
US11869528B2 (en) | Voice signal processing method and device, apparatus, and readable storage medium | |
KR102409536B1 (ko) | 오디오 디바이스에서 재생 관리를 위한 사건 검출 | |
CN110956976B (zh) | 一种回声消除方法、装置、设备及可读存储介质 | |
CN110677796B (zh) | 一种音频信号处理方法及助听器 | |
US9521263B2 (en) | Long term monitoring of transmission and voice activity patterns for regulating gain control | |
US8924199B2 (en) | Voice correction device, voice correction method, and recording medium storing voice correction program | |
US20190214036A1 (en) | Voice isolation system | |
US11302298B2 (en) | Signal processing method and device for earphone, and earphone | |
US20190132452A1 (en) | Acoustic echo cancellation based sub band domain active speaker detection for audio and video conferencing applications | |
CN111145771A (zh) | 语音信号处理方法、处理装置、终端及其存储介质 | |
CN112466319A (zh) | 音频处理方法、装置、计算机设备和存储介质 | |
US11785406B2 (en) | Inter-channel level difference based acoustic tap detection | |
CN111294719A (zh) | 耳戴式设备入耳状态检测方法、设备和移动终端 | |
CN112581960A (zh) | 语音唤醒方法、装置、电子设备及可读存储介质 | |
CN114520948A (zh) | 啸叫检测方法、检测装置、终端及存储介质 | |
US20210006899A1 (en) | Howling suppression apparatus, and method and program for the same | |
CN112235462A (zh) | 语音调节方法、系统、电子设备及计算机可读存储介质 | |
CN109068213A (zh) | 一种耳机响度控制方法和装置 | |
CN115696110A (zh) | 音频设备和音频信号处理方法 | |
CN115410593A (zh) | 音频信道的选择方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |