声音活动检测方法及装置和计算机可读存储介质
技术领域
本发明属于声音活动检测领域,具体涉及一种声音活动检测方法及装置以及计算机可读存储介质,用于目标声音活动的检测,例如用于语音活动检测。
背景技术
随着智能电子设备的普及和开发,很多智能电子设备集成了声音活动检测功能,例如语音活动检测功能,以检测人声活动,进一步提高人机交互的趣味性、便捷性和实用性。另外,为了降低电子设备的运行功耗,尤其是便携式电子设备的功耗(考虑到便携式电子设备上有限的电池电量),也采用声音活动检测技术来唤醒和启动设备中功耗更大的模块,这样,在该功耗更大的模块不需要运行时就可以处于休眠或停止运行状态,仅在通过声音活动检测装置检测到触发条件时再唤醒和启动该功耗更大的模块,从而降低电子设备的整体功耗。
另外,在现有的声音活动检测技术中,往往会采用频域处理技术来实现声音活动检测装置内部的计算,使得计算复杂、装置的软/硬件实现复杂且成本高,而且功耗大。因此,需要实现更加简单、功耗更低的声音活动检测方法和装置。
发明内容
针对上面提到的声音活动检测装置本身的内部计算复杂、其软/硬件实现复杂且成本高、功耗大的问题,提出了声音活动检测方法及装置,其实现简单,功耗低,配置灵活从而能够方便实现对不同频率的目标声音活动的检测。
依据本发明的第一方面,提供了一种声音活动检测方法,其包括:
获取声音输入信号;
对所述声音输入信号进行滤波,得到滤波后声音信号;
计算所述滤波后声音信号的能量与所述声音输入信号的能量的比值;以及
将所述比值与预定阈值进行比较,根据比较结果判断是否存在目标声音活动。
优选地,所述计算所述滤波后声音信号的能量与所述声音输入信号的能量的比值包括:
在时域中计算滤波后声音信号的能量以及声音输入信号的能量,以计算滤波后声音信号的能量与声音输入信号的能量的比值。
优选地,所述根据比较结果判断是否存在目标声音活动包括:
如果上述比较结果是所述比值大于所述预定阈值或者所述比值大于或等于所述预定阈值,则判断存在目标声音活动,否则判断不存在目标声音活动,即,如果上述比较结果是所述比值小于或等于所述预定阈值或者所述比值小于所述预定阈值,则判断不存在目标声音活动。
优选地,对所述声音输入信号进行滤波是利用具有预定通带的滤波模块进行。所述预定通带可以包括人声频率范围。例如,所述滤波模块为带通滤波器,所述预定通带的频率范围为20Hz~20kHz,或者为60Hz~2kHz,或者为150Hz~2kHz。当然,预定带通的频率范围也可以根据实际应用而包括其它频率范围,例如在检测车辆鸣笛的使用场景中,预定带通的频率范围可以设定为鸣笛声的通常频率范围,以检测是否发生鸣笛;又例如在其他示例中,预定带通的频率范围也可以包括报警声音或火车通过声音等的频率范围。
所述滤波模块也可以为复合带通滤波器,由依次连接的第一滤波器、降采样器和第二滤波器构成,其中所述第一滤波器的通带与所述第二滤波器的通带至少部分交叠,并且在计算所述声音输入信号的能量之前以与所述降采样器一样的降采样率对所述声音输入信号进行降采样。其中,第一滤波器可以为低通滤波器,第二滤波器可以为高通滤波器或带通滤波器,且所述低通滤波器的截止频率高于所述高通滤波器的截止频率,或所述低通滤波器的截止频率高于所述带通滤波器的下限截止频率且低于所述带通滤波器的上限截止频率;或者第一滤波器可以为带阻滤波器,第二滤波器可以为带通滤波器,所述带阻滤波器的下限截止频率在所述带通滤波器的下限截止频率与上限截止频率之间,且所述带阻滤波器的上限截止频率高于所述带通滤波器的上限截止频率。
在这里,具有预定通带的滤波模块的预定通带的频率范围可以是可调节的,例如通过调整滤波模块的滤波函数各预设参数来实现其通带频率范围的调节,这样,在使用之前或甚至使用过程中,可以调节预定通带的频率范围,以应用于不同的使用场景。
根据本发明的另一方面,提供了一种声音活动检测装置,包括:
声音采集模块,其用于采集并输出声音输入信号;
滤波模块,其与所述声音采集模块连接,用于对所述声音采集模块采集的声音输入信号进行滤波,得到滤波后声音信号;
计算模块,其与所述声音采集模块以及所述滤波模块连接,用于计算所述滤波后声音信号的能量与所述声音输入信号的能量的比值;以及
比较模块,其与所述计算模块连接,用于将所述比值与预定阈值进行比较,根据比较结果判断是否存在目标声音活动。
优选地,计算模块还可以用于:在时域中计算所述滤波后声音信号的能量以及所述声音输入信号的能量,以计算所述滤波后声音信号的能量与所述声音输入信号的能量的比值。
优选地,比较模块还可以用于:如果比较结果是所述比值大于所述预定阈值或者所述比值大于或等于所述预定阈值,则判断存在目标声音活动,否则判断不存在目标声音活动,即,如果上述比较结果是所述比值小于或等于所述预定阈值或者所述比值小于所述预定阈值,则判断不存在目标声音活动。
优选地,滤波模块具有预定通带。该预定通带可以包括人声频率范围。例如,滤波模块可以为带通滤波器,预定通带的频率范围为20Hz~20kHz,或者为60Hz~2kHz,或者为150Hz~2kHz。当然,预定带通的频率范围也可以根据实际应用而包括其它频率范围,例如在检测车辆鸣笛的使用场景中,预定带通的频率范围可以设定为鸣笛声的通常频率范围,以检测是否发生鸣笛;又例如在其他示例中,预定带通的频率范围也可以包括报警声音或火车通过声音等的频率范围。
滤波模块也可以为复合带通滤波器,由依次连接的第一滤波器、降采样器和第二滤波器构成,其中所述第一滤波器的通带与所述第二滤波器的通带至少部分交叠,其中计算模块在计算所述声音输入信号的能量之前以与所述降采样器一样的降采样率对所述声音输入信号进行降采样。其中,第一滤波器可以为低通滤波器,第二滤波器可以为高通滤波器或带通滤波器,且所述低通滤波器的截止频率高于所述高通滤波器的截止频率,或所述低通滤波器的截止频率高于所述带通滤波器的下限截止频率且低于所述带通滤波器的上限截止频率;或者第一滤波器可以为带阻滤波器,第二滤波器可以为带通滤波器,所述带阻滤波器的下限截止频率在所述带通滤波器的下限截止频率与上限截止频率之间,且所述带阻滤波器的上限截止频率高于所述带通滤波器的上限截止频率。
在这里,滤波模块的预定通带的频率范围是可调节的,例如通过调整滤波模块的滤波函数各参数来实现对其通带频率范围的调节,这样,在使用之前或甚至使用过程中,可以调节预定通带的频率范围,以应用于不同的使用场景。
根据本发明又一方面,提供了一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令被处理器执行时实现如上所述的声音活动检测方法。
在以上方案中,关于声音信号的能量计算,可以仅通过时域计算来计算滤波后声音信号的能量和声音输入信号的能量,避免了频率变换以及在频域中进行计算的复杂性,从而简化了计算过程和复杂度,降低了设备运行功耗。另外,滤波模块可以为由依次连接的第一滤波器、降采样器和第二滤波器构成的复合带通滤波器实现,其中接收声音输入信号的第一滤波器采用截止频率较高的低通滤波器或者下限截止频率较高的带阻滤波器,从而其不需要采用高阶滤波函数,另外,通过采用降采样器,显著降低了第二滤波器的阶数,从而简化了滤波模块的总体实现复杂度。
应当理解,上述说明仅是本发明技术方案的概述,以便能够更清楚地了解本发明的技术手段,从而可依照说明书的内容予以实施。为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举例说明本发明的具体实施方式。
附图说明
通过阅读下文的示例性实施例的详细描述,本领域普通技术人员将明白本文所述的有点和益处以及其他优点和益处。附图仅用于示出示例性实施例的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的标号表示相同的部件。在附图中:
图1为根据本发明一实施例的声音活动检测方法的示意图。
图2示意性示出根据本发明一实施例的滤波模块,其为复合带通滤波器。
图3示意性示出根据本发明一实施例的复合带通滤波器的构成示例(a)、(b)和(c)。
图4为根据本发明一实施例的声音活动检测装置的示意图。
图5为根据本发明一实施例的存储有计算机指令的计算机可读存储介质的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在本发明中,应理解,诸如“包括”或“具有”等术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不旨在排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在的可能性。
另外还需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
在图1中,示出了根据本发明一实施例的一种声音活动检测方法,其包括步骤:
S101:获取声音输入信号s;
S102:对声音输入信号s进行滤波,得到滤波后声音信号h;
S103:计算滤波后声音信号h的能量Eh与声音输入信号s的能量Es的比值r=Eh/Es;以及
S104:将比值r与预定阈值进行比较,根据比较结果判断是否存在目标声音活动。
在步骤S101中,获取的声音输入信号s可以是各种声音,例如应用该方法的各种应用场景中的声音,如背景噪声、包含目标声音活动(例如人声、鸣笛声、火车经过的声音等)的背景噪声等等,本实施例中的方法不受此限制。另外,声音输入信号s可以通过各种声音采集设备获取,例如通过麦克风或麦克风阵列获取,本实施例中的方法也不受此限制。
步骤S103具体可以包括:在时域中计算滤波后声音信号h的能量Eh以及声音输入信号s的能量Es,以计算滤波后声音信号h的能量Eh与声音输入信号s的能量Es的比值r。在这里,关于声音信号的能量计算,可以是仅通过时域计算来获得滤波后声音信号h的能量Eh和声音输入信号s的能量Es,在时域计算信号能量的具体方法可以与现有技术中的相同,例如对于预定时间段内的声音输入信号,计算其各个采样点幅值的平方并求和,得到该预定时间段内的声音输入信号的能量,类似的,在对该预定时间段内的声音输入信号进行滤波后得到滤波后声音信号,计算滤波后声音信号各采样点幅值的平方并求和,得到滤波后声音信号的能量,从而可以得到这两个能量的比值。因此,本实施例的声音活动检测方法中避免了频率变换以及在频域中进行计算的复杂性,从而简化了计算过程和复杂度,降低了声音活动检测设备的运行功耗。
接下来,在步骤S103中,将所得比值r与预定阈值进行比较,根据比较结果判断是否存在目标声音活动。例如,如果该比较结果是比值r大于预定阈值或者比值r大于或等于预定阈值,则判断存在目标声音活动,否则判断不存在目标声音活动,即,如果比较结果是比值r小于或等于预定阈值或者比值r小于预定阈值,则判断不存在目标声音活动。在这里,预定阈值可以根据实际需要进行取值,如果预定阈值较高,则目标声音活动强度较高时才会判定出检测到目标声音活动,反之,如果预定阈值较低,则目标声音活动强度较低时也会判定出检测到目标声音活动。例如,预定阈值可以大于0且小于1,例如可以根据情况取值为0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9等等。
在步骤S102中,对声音输入信号s进行滤波是利用具有预定通带的滤波模块进行。预定通带可以包括人声频率范围。例如,滤波模块可以为带通滤波器,预定通带的频率范围为20Hz~20kHz,或者为60Hz~2kHz,或者为150Hz~2kHz。当然,预定带通的频率范围也可以根据实际应用而包括其它频率范围,例如在检测车辆鸣笛的使用场景中,预定带通的频率范围可以设定为鸣笛声的通常频率范围,以检测是否发生鸣笛;又例如在其他示例中,预定带通的频率范围也可以包括报警声音或火车通过声音等的频率范围。
滤波模块也可以为复合带通滤波器。如图2中所示,滤波模块200由依次连接的第一滤波器201、降采样器202和第二滤波器203构成,其中第一滤波器201的通带与第二滤波器203的通带至少部分交叠,从而在频带上形成滤波模块200的预定通带。由于在计算滤波后声音信号h的能量Eh之前由降采样器202对滤波后声音信号h进行了降采样,为了保持上述比值r的准确性,在计算所述声音输入信号s的能量之前以与降采样器202一样的降采样率对声音输入信号s进行降采样,然后由其计算能量Es。
其中,第一滤波器201和第二滤波器203可以存在多种具体组合来实现复合带通滤波器。例如,如图3中示出了根据本发明一实施例的复合带通滤波器的构成示例(a)、(b)和(c)。如图3中(a)所示,第一滤波器201可以为低通滤波器,第二滤波器203可以为高通滤波器,该低通滤波器的截止频率f11高于该高通滤波器的截止频率f31,从而得到具有上下截止频率f11和f31的带通滤波器。或者如图3中(b)所示,第一滤波器201可以为低通滤波器,第二滤波器203可以为带通滤波器,该低通滤波器的截止频率f′11高于该带通滤波器的下限截止频率f′31且低于该带通滤波器的上限截止频率f′32,从而得到具有上下截止频率f′11和f′31的带通滤波器。或者如图3中(c)所示,第一滤波器201可以为带阻滤波器,第二滤波器203可以为带通滤波器,该带阻滤波器的下限截止频率f″11在该带通滤波器的下限截止频率f″31与上限截止频率f″32之间,且该带阻滤波器的上限截止频率f″12高于带通滤波器的上限截止频率f″32,从而得到具有上下截止频率f″11和f″31的带通滤波器。在滤波器中,为了实现滤除低频分量,往往需要采用高阶滤波器,而要滤除的低频分量的频率越低,滤波器的阶数往往越高,考虑到这点,在上述复合带通滤波器中,采用了降采样器202来对第一滤波器201滤波后的声音输入信号进行降采样,然后将降采样后的声音输入信号提供给第二滤波器203,从而可以显著降低第二滤波器203的阶数,从而简化了滤波模块200的总体实现复杂度
此外,具有预定通带的滤波模块200的预定通带的频率范围可以是可调节的,例如通过调整滤波模块200的滤波函数各预设参数来实现对其通带频率范围的调节,这样,在使用之前或甚至使用过程中,可以调节预定通带的频率范围,以应用于不同使用场景中的目标声音活动检测。
根据本发明的另一实施例,提供了一种声音活动检测装置,用于实现如上所述实施例中的声音活动检测方法。如图4所示,声音活动检测装置400包括:
声音采集模块401,其用于采集并输出声音输入信号;
滤波模块402,其与声音采集模块401连接,用于对声音采集模块401采集的声音输入信号s进行滤波,得到滤波后声音信号h;
计算模块403,其与声音采集模块401以及滤波模块402连接,用于计算滤波后声音信号h的能量Eh与声音输入信号s的能量Es的比值r;以及
比较模块404,其与计算模块403连接,用于将比值r与预定阈值进行比较,根据比较结果判断是否存在目标声音活动。
与上述声音活动检测方法的实施例类似,这里的声音输入信号s也可以是各种声音,本实施例不受此限制,在此不再赘述。
计算模块403在计算比值r时,可以在时域中计算滤波后声音信号h的能量Eh以及声音输入信号s的能量Es,以计算滤波后声音信号h的能量Eh与声音输入信号s的能量Es的比值r。比值r的具体计算方法与上述声音活动检测方法的实施例中相同,在此不再赘述。
比较模块404还可以用于:如果比较结果是比值r大于预定阈值或者比值r大于或等于预定阈值,则判断存在目标声音活动,否则判断不存在目标声音活动,即,如果比较结果是比值r小于或等于预定阈值或者比值r小于预定阈值,则判断不存在目标声音活动。其中预定阈值的具体取值与上述声音活动检测方法的实施例中相同,在此不再赘述。
另外,滤波模块402具有预定通带。该预定通带可以包括人声频率范围。例如,滤波模块402可以为带通滤波器,预定通带的频率范围为20Hz~20kHz,或者为60Hz~2kHz,或者为150Hz~2kHz。当然,预定带通的频率范围也可以根据实际应用而包括其它频率范围,例如在检测车辆鸣笛的使用场景中,预定带通的频率范围可以设定为鸣笛声的通常频率范围,以检测是否发生鸣笛;又例如在其他示例中,预定带通的频率范围也可以包括报警声音或火车通过声音等的频率范围。
滤波模块402也可以为复合带通滤波器,由依次连接的第一滤波器、降采样器和第二滤波器构成,其中所述第一滤波器的通带与所述第二滤波器的通带至少部分交叠,从而在频带上形成滤波模块402的预定通带。滤波模块402的构造可以与上述声音活动检测方法实施例中的滤波模块200相同,例如也可以由图2和图3中所示的复合带通滤波器构成,在此就不再赘述。类似地,如果滤波模块402的实现中采用了降采样器,那么计算模块403在计算声音输入信号的能量之前也会以与该降采样器一样的降采样率对声音输入信号进行降采样然后计算降采样后的声音输入信号的能量,以确保得到正确的能量比值r。
在这里,滤波模块402的预定通带的频率范围是可调节的,例如通过调整滤波模块402的滤波函数各参数来实现对其通带频率范围的调节,这样,在使用之前或甚至使用过程中,可以调节预定通带的频率范围,以应用于不同的使用场景中的目标声音活动检测。
在以上方案中,关于声音信号的能量计算,可以仅通过时域计算来计算滤波后声音信号的能量和声音输入信号的能量,避免了频率变换以及在频域中进行计算的复杂性,从而简化了计算过程和复杂度,降低了设备运行功耗。另外,滤波模块可以为由依次连接的第一滤波器、降采样器和第二滤波器构成的复合带通滤波器实现,其中接收声音输入信号的第一滤波器采用截止频率较高的低通滤波器或者下限截止频率较高的带阻滤波器,从而其不需要采用高阶滤波函数,另外,通过采用降采样器,显著降低了第二滤波器的阶数,从而简化了滤波模块的总体实现复杂度。
根据本发明的又一实施例,还提供了一种计算机可读存储介质。如图5所示,示出了根据本发明一实施例的计算机可读存储介质500的示意图,该计算机可读存储介质上存储有计算机指令,该计算机指令被处理器执行时实现如上所述的声音活动检测方法。该计算机可读存储介质500可以采用便携式紧凑盘只读存储器(CD-ROM)。然而,本发明的计算机可读存储介质500不限于此,在本文件中,计算机可读存储介质可以是任何包含或存储计算机指令的有形介质。
附图中的流程图和框图,图示了按照本公开各种实施例的方法、装置和计算机可读存储介质的可能实现的体系架构、功能和操作。应当注意,流程图中的每个方框所表示的步骤未必按照标号所示的顺序进行,有时可以基本并行地执行,有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的硬件来实现,或者可以用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。
通过以上对实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。