HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

音频啸叫抑制方法、设备和系统及神经网络训练方法与流程

2021-01-28 15:01:31|229|起点商标网
音频啸叫抑制方法、设备和系统及神经网络训练方法与流程

本发明涉及音频数据处理技术领域,具体涉及一种音频啸叫抑制方法、设备和系统及神经网络训练方法。



背景技术:

啸叫是由于拾音器与扬声器之间形成正向反馈产生的一种刺耳声;经发明人研究发现,啸叫信号往往是单频信号所以在频域上表现为连续帧在相同频率的异常,也就是,在时域上连续的高能量信号。

当今,功放设备应用于生活的方方面面,通过麦克风采集语音信号,再经扬声器将语音信号放大并输出。例如,演讲、演唱会或者在ktv包房唱歌等。在这些场景中当麦克风和扬声器离得很近时,扬声器播放出来的语音信号又被麦克风采集,麦克风采集的语音信号通过扬声器又播放出来,这样反复叠加,构成回路,当反馈增益达到一定程度,就会形成自激系统,此时就会听到很刺耳的啸叫声,极大的影响了用户的体验。

为了抑制啸叫信号,传统的技术方案包括:移频法、陷波法和自适应反馈抵消法,其中:

1.移频法,通过对回声信号做移频,使得回声信号加上输入信号不会在某一频点能量过大产生啸叫。移频法将信号向低频或高频移动一定的频率避免反馈叠加,该方法会带来信号的失真。

2.陷波法,主要步骤为:频谱分析、反馈检测、陷波抑制。该方法先检测啸叫频率,再通过陷波器将对应频率滤除,依赖于检测模块,错检导致正常信号对应频率信号被滤除。

3.自适应反馈抵消法,利用自适应滤波器持续辨识反馈路径,从而抵消反馈。自适应反馈抵消法系统复杂并且滤波器更新太慢影响收敛速度,更新太快损伤有用信号,并且麦克风信号与反馈信号是强相关的,比较难控制。

因此,如何容易、简单地抑制啸叫,避免正常信号被滤除,并且减小信号失真成为亟待解决的技术问题。



技术实现要素:

基于上述现状,本发明的主要目的在于提供一种音频啸叫抑制方法、设备和系统及神经网络训练方法,以避免正常信号被滤除,并且减小信号失真。

为实现上述目的,本发明采用的技术方案如下:

根据第一方面,本发明实施例公开了一种基于神经网络的音频啸叫抑制方法,包括:

步骤s101,在时域上获取连续采集到的若干帧第一音频帧,第一音频帧为原始音频信号;步骤s103,将若干帧第一音频帧分别变换为若干帧第二音频帧,第二音频帧为频域中的音频信号,若干帧第二音频帧中的每一帧包括多个频点;步骤s105,确定若干帧第二音频帧中存在啸叫信号的啸叫频点,啸叫信号为连续的、单频高能量信号;步骤s107,在存在啸叫信号的第二音频帧中,剔除啸叫频点的音频信号;及步骤s109,将若干帧第二音频帧中、啸叫频点附近的频点信号输入啸叫频点修复神经网络模型,以输出修复后的啸叫频点替换音频信号,来替换啸叫频点位置的音频信号。

可选地,在步骤s103和步骤s105之间,还包括:步骤s104,将若干帧第二音频帧按预设长度合成语谱图;在语谱图中执行步骤s105、步骤s107和步骤s109。

可选地,语谱图包括第一部分和第二部分,第一部分的第二音频帧在时间上早于第二部分的第二音频帧;第二部分的第二音频帧数量为k,k为正整数;处于第一部分的第二音频帧为已经完成啸叫信号抑制的第二音频帧;在步骤s107中,针对第二部分的第二音频帧剔除啸叫频点的音频信号;在步骤s109中,针对第二部分的第二音频帧,替换修复啸叫频点位置的音频信号。

可选地,第一部分的第二音频帧的数量多于第二部分的第二音频帧的数量,第二部分的第二音频帧的数量小于或等于3。

可选地,在步骤s109中,啸叫频点附近的频点信号包括:在第二部分的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;及在第一部分的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;其中,在第二部分中,预设区间的频点未包含啸叫频点;在第一部分中,预设区间的频点包含了与啸叫频点同频的频点。

可选地,预设区间的区间大小为500-1000hz。

可选地,在步骤s109之后,还包括:步骤s111,更新语谱图的第一部分和第二部分,以使在更新后的语谱图中,执行步骤s105、步骤s107和步骤s109。

可选地,步骤s111包括:删除第一部分的前k帧第二音频帧;第一部分中未被删除的第二音频帧在时序上依次整体前移k帧;将第二部分的k帧第二音频帧在时序上依次整体前移至第一部分的后k帧位置;在时序上依次接收新的第二音频帧,并依次合成至第二部分的位置。

可选地,在步骤s105中,当在第二部分的第二音频帧中确定出多个啸叫频点时,步骤s109包括:针对多个啸叫频点,逐个替换修复各个啸叫频点的音频信号;其中,多个啸叫频点的频率各不相同。

可选地,在步骤s109之后,还包括:将第二部分中替换修复后的第二音频帧变换为时域信号,并按时序依次输出,以播放替换修复后的第二音频帧。

根据第二方面,本发明实施例公开了一种基于神经网络的音频啸叫抑制装置,其特征在于,包括:

音频获取模块,用于在时域上获取连续采集到的若干帧第一音频帧,第一音频帧为原始音频信号;时频变换模块,用于将若干帧第一音频帧分别变换为若干帧第二音频帧,第二音频帧为频域中的音频信号,若干帧第二音频帧中的每一帧包括多个频点;啸叫确定模块,用于确定若干帧第二音频帧中存在啸叫信号的啸叫频点,啸叫信号为连续的、单频高能量信号;啸叫剔除模块,用于在存在啸叫信号的第二音频帧中,剔除啸叫频点的音频信号;及抑制替换模块,用于将若干帧第二音频帧中、啸叫频点附近的频点信号输入啸叫频点修复神经网络模型,以输出修复后的啸叫频点位置替换音频信号,来替换啸叫频点位置的音频信号。

可选地,还包括:语谱图合成模块,用于将若干帧第二音频帧按预设长度合成语谱图;在语谱图中运行啸叫确定模块、啸叫剔除模块和抑制替换模块。

可选地,语谱图包括第一部分和第二部分,第一部分的第二音频帧在时间上早于第二部分的第二音频帧;第二部分的第二音频帧数量为k,k为正整数;处于第一部分的第二音频帧为已经完成啸叫信号抑制的第二音频帧;在啸叫剔除模块中,针对第二部分的第二音频帧剔除啸叫频点的音频信号;在抑制替换模块中,针对第二部分的第二音频帧,替换修复啸叫频点位置的音频信号。

可选地,第一部分的第二音频帧的数量多于第二部分的第二音频帧的数量,第二部分的第二音频帧的数量小于或等于3。

可选地,在抑制替换模块中,啸叫频点附近的频点信号包括:在第二部分的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;及在第一部分的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;其中,在第二部分中,预设区间的频点未包含啸叫频点;在第一部分中,预设区间的频点包含了与啸叫频点同频的频点。

可选地,预设区间的区间大小为500-1000hz。

可选地,还包括:语谱图更新模块,用于更新语谱图的第一部分和第二部分,以使在更新后的语谱图中,运行啸叫确定模块、啸叫剔除模块和抑制替换模块。

可选地,语谱图更新模块用于删除第一部分的前k帧第二音频帧;第一部分中未被删除的第二音频帧在时序上依次整体前移k帧;将第二部分的k帧第二音频帧在时序上依次整体前移至第一部分的后k帧位置;在时序上依次接收新的第二音频帧,并依次合成至第二部分的位置。

可选地,在啸叫确定模块中,当在第二部分的第二音频帧中确定出多个啸叫频点时,抑制替换模块包括:针对多个啸叫频点,逐个替换修复各个啸叫频点的音频信号;其中,多个啸叫频点的频率各不相同。

可选地,还包括:音频输出模块,用于将第二部分中替换修复后的第二音频帧变换为时域信号,并按时序依次输出,以播放替换修复后的第二音频帧。

根据第三方面,本发明实施例公开了一种音频设备,包括:

处理器,用于实现上述第一方面任意公开的方法。

可选地,音频设备为具有音频处理功能的麦克风、音箱、功放或智能设备。

根据第四方面,本发明实施例公开了一种音频信号交互系统,包括:第一设备和第二设备;第一设备将若干帧第一音频帧发送给第二设备;第二设备用于实现上述第一方面任意公开的方法。

可选地,第一设备为音频采集设备,第二设备为具有音频处理功能的音箱、功放或智能设备。

根据第五方面,本发明实施例公开了一种用于上述第一方面任一项中的啸叫频点修复神经网络的训练方法,包括:

步骤s201,获取待学习的语音信号样本数据,语音信号样本数据为在时域上连续的语音信号,语音信号样本数据被划分为多帧第一语音信号帧;步骤s203,将多帧第一语音信号帧变换为频域的多帧第二语音信号帧,多帧第二语音信号帧与多帧第一语音信号帧一一对应;步骤s205,在多帧第二语音信号帧中剔除预设频点的语音信号,以使多帧第二语音信号帧的各个第二语音信号帧缺少预设频点的语音信号;其中,预设频点表示存在啸叫信号的频点;步骤s207,在多帧第二语音信号帧中按预设区间提取预设频点附近的、各个频点的语音信号得到输入样本;及步骤s209,将输入样本输入至神经网络模型,以训练神经网络模型,得到啸叫频点修复神经网络模型;啸叫频点修复神经网络模型用于输出能够替换多帧第二语音信号帧中被剔除的预设频点语音信号的替换音频信号。

可选地,在步骤s203和步骤s205之间,还包括:

步骤s204,按预设帧数将多帧第二语音信号帧划分若干组;在执行步骤s205时:以组为单位,剔除本组内第二语音信号帧中预设频点的语音信号;在执行步骤s207时,以组为单位,提取本组内第二语音信号帧中靠近预设频点位置的、预设区间的频点的语音信号得到多组输入样本;步骤s209包括:将多组输入样本分别输入至神经网络模型,以训练得到啸叫频点修复神经网络模型。

可选地,步骤s204包括:按时间先后顺序依次提取预设帧数的第二语音信号帧;将提取的第二语音信号帧合并成语谱图,其中,处于语谱图中的预设帧数的第二语音信号帧为一组。

可选地,预设区间的区间大小为500-1000hz。

可选地,预设频点为多个,各预设频点的频率各不相同。

可选地,本组内的后k帧第二语音信号帧与下一组内的前k帧为重叠的第二语音信号帧k为正整数,下一组的第二语音信号帧时序上滞后于本组的第二语音信号帧。

可选地,步骤s205包括:在本组内,剔除与下一组重叠的k帧第二语音信号帧中预设频点的语音信号;步骤s207中,本组内靠近预设频点位置的、预设区间的频点的语音信号包括:在重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,重叠帧为本组内与下一组重叠的k帧第二语音信号帧;及在非重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,非重叠帧为本组内未与下一组重叠的第二语音信号帧;其中,在重叠帧中,预设区间的频点未包含预设频点;在非重叠帧中,预设区间的频点包含了与预设频点同频的频点。

可选地,本组内,非重叠帧的第二音频帧的数量多于重叠帧的第二音频帧的数量,k小于或等于3。

根据第六方面,本发明实施例公开了一种用于抑制音频啸叫的神经网络训练装置,包括:

样本获取模块,用于获取待学习的语音信号样本数据,语音信号样本数据为在时域上连续的语音信号,语音信号样本数据被划分为多帧第一语音信号帧;频域变换模块,用于将多帧第一语音信号帧变换为频域的多帧第二语音信号帧,多帧第二语音信号帧与多帧第一语音信号帧一一对应;频点剔除模块,用于在多帧第二语音信号帧中剔除预设频点的语音信号,以使多帧第二语音信号帧的各个第二语音信号帧缺少预设频点的语音信号;区间提取模块,用于在多帧第二语音信号帧中按预设区间提取预设频点附近的、各个频点的语音信号得到输入样本;及样本输入模块,用于将输入样本输入至神经网络模型,以训练神经网络模型,得到啸叫频点修复神经网络模型;啸叫频点修复神经网络模型用于输出能够替换多帧第二语音信号帧中被剔除预的设频点语音信号的替换语音信号。

可选地,还包括:分组模块,用于按预设帧数将多帧第二语音信号帧划分若干组;频点剔除模块用于以组为单位,剔除本组内第二语音信号帧中预设频点的语音信号;区间提取模块用于以组为单位,提取本组内第二语音信号帧中靠近预设频点位置的、预设区间的频点的语音信号得到多组输入样本;样本输入模块用于将多组输入样本分别输入至神经网络模型,以训练神经网络模型。

可选地,分组模块用于按时间先后顺序依次提取预设帧数的第二语音信号帧;将提取的第二语音信号帧合并成语谱图,其中,处于语谱图中的预设帧数的第二语音信号帧为一组。

可选地,预设区间的区间大小为500-1000hz。

可选地,预设频点为多个,各预设频点的频率各不相同。

可选地,本组内的后k帧第二语音信号帧与下一组内的前k帧为重叠的第二语音信号帧k为正整数,下一组的第二语音信号帧时序上滞后于本组的第二语音信号帧。

可选地,频点剔除模块用于在本组内,剔除与下一组重叠的k帧第二语音信号帧中预设频点的语音信号;区间提取模块中,本组内靠近预设频点位置的、预设区间的频点的语音信号包括:在重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,重叠帧为本组内与下一组重叠的k帧第二语音信号帧;及在非重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,非重叠帧为本组内未与下一组重叠的第二语音信号帧;其中,在重叠帧中,预设区间的频点未包含预设频点;在非重叠帧中,预设区间的频点包含了与预设频点同频的频点。

可选地,本组内,非重叠帧的第二音频帧的数量多于重叠帧的第二音频帧的数量,k小于或等于3。

根据第七方面,本发明实施例公开了一种用于抑制音频啸叫的神经网络训练系统,包括:语音信号获取装置、存储器和处理器,其中:语音信号获取装置用于获取待学习的语音信号样本数据;存储器用于存储程序;处理器接收待学习的语音信号样本数据,用于执行程序以实现上述第五方面任意一项公开的方法。

根据第八方面,本发明实施例公开了一种计算机可读存储介质,其上存储有计算机程序,存储介质中存储的计算机程序用于被执行实现上述第一方面任意一项的方法;或者,存储介质中存储的计算机程序用于被执行实现上述第五方面任意一项的方法。

根据第九方面,本发明实施例公开了一种音频设备的芯片,其上具有集成电路,集成电路被设计成用于实现上述第一方面任意一项的方法;或者用于实现上述第五方面任意一项的方法。

根据第十方面,本发明实施例公开了一种服务器,其上存储有计算机程序,存储的计算机程序用于被执行实现上述第一方面任意一项的方法;或者用于实现上述第五方面任意一项的方法。

根据第十一方面,本发明实施例公开了一种平台服务器,包括:请求接收模块,用于接收数据请求;数据下发模块,用于根据数据请求向用户提供计算机程序和/或计算机程序链接,计算机程序用于被执行实现上述第一方面任意一项的方法;或者用于实现上述第五方面任意一项的方法。

依据本发明实施例公开的一种音频啸叫抑制方法、设备和系统及神经网络训练方法,将时域上的若干帧第一音频帧分别变换为频域上的若干帧第二音频帧,而后,在确定第二音频帧中的啸叫频点后,剔除啸叫频点的音频信号,从而相对容易、简单地抑制了啸叫信号,并且,将若干帧第二音频帧中、啸叫频点附近的频点信号输入啸叫频点神经网络模型,通过啸叫频点神经网络模型可以输出啸叫频点位置的、修复后的音频信号,通过修复后的音频信号替换修复啸叫频点替换音频信号,从而能够避免正常信号被滤除,另外,由于修复后的替换音频信号是依据啸叫频点附近的频点信号得到的,因此,修复后的替换音频信号与其附近频点具有较强的关联性,附近的音频信号能够平滑过渡,从而避免音频信号断层,减小了音频信号的失真。

作为可选的方案,在通过语谱图来抑制啸叫信号时,语谱图分为第一部分和第二部分,而处于第一部分的第二音频帧为已经完成啸叫信号抑制的第二音频帧,而后,在替换修复第二部分的啸叫频点位置的音频信号过程中,采用第一部分的第二音频帧,使得在替换修复第二部分时,能够具有更多的正常信号来作为参考,从而提高了替换修复第二部分的啸叫频点位置的音频信号的精度。

作为可选的方案,第一部分的第二音频帧的数量多于第二部分的第二音频帧的数量,第二部分的第二音频帧的数量小于或等于3,使得在替换修复少量第二部分啸叫频点位置的音频信号时,有更多的正常信号来作为参考,一方面提高了替换修复的精度,另一方面,也将第二部分的第二音频帧与更多的第二音频帧建立了关联,从而,能够进一步减小信号突变的概率,减小了音频信号的失真。

作为可选的方案,在更新语谱图时,将第二部分的k帧第二音频帧在时序上依次整体前移至第一部分的后k帧位置,由此,可以迭代更新第一部分的第二音频帧,使得在后续抑制第二部分的第二音频帧时,由于更新后的音频数据与后续待抑制的第二音频帧时序上更靠近,因此,能够具有更强的关联性,减小了后续替换修复啸叫频点的失真。

作为可选的方案,将第二部分中替换修复后的第二音频帧变换为时域信号,并按时序依次输出,以播放替换修复后的第二音频帧,由此可以减小音频播放的延迟性。此外,由于第一部分的存在,因此,可以缓存已修复的第二音频帧,为后续的修复提供足够的数据输入。通过语谱图的第一部分和第二部分同时满足了数据缓存和数据播放及时性的要求。

在用于抑制音频啸叫的神经网络训练方法的方案中,通过预设频点表示存在啸叫信号的频点,在多帧第二语音信号帧中剔除预设频点的语音信号,而后,在多帧第二语音信号帧中按预设区间提取预设频点附近的、各个频点的语音信号得到输入样本,并将输入样本输入至神经网络模型,可以使得神经网络模型学习得到预设频点的语音信号,从而,使得训练后的神经网络能够基于啸叫信号频点附近的语音信号,学习得到啸叫信号频点的语音信号,由此,能够通过学习后的语音信号代替啸叫信号频点的信号,从而,可以实现抑制啸叫信号。从而能够避免正常信号被滤除,另外,由于修复后的语音信号是依据啸叫信号频点附近的频点信号得到的,因此,修复后的语音信号与其附近频点具有较强的关联性,附近的语音信号能够平滑过渡,从而避免音频信号断层,减小了语音信号的失真。

本发明的其他有益效果,将在具体实施方式中通过具体技术特征和技术方案的介绍来阐述,本领域技术人员通过这些技术特征和技术方案的介绍,应能理解所述技术特征和技术方案带来的有益技术效果。

附图说明

以下将参照附图对根据本发明实施例进行描述。图中:

图1为本实施例公开的一种基于神经网络的音频啸叫抑制方法流程图;

图2a和图2b为本实施例公开的一种具有啸叫频点的示例示意图,其中,图2a为本实施例公开的一种具有一个啸叫频点的示例示意图;图2b为本实施例公开的一种具有多个啸叫频点的示例示意图;

图3为本实施例公开的一种语谱图结构示意图;

图4为本实施例公开的一种语谱图的更新过程示意图;

图5为本实施例公开的一种基于神经网络的音频啸叫抑制装置结构示意图;

图6为本实施例公开的一种用于啸叫频点修复的神经网络训练方法流程图;

图7为本实施例公开的一种构建输入样本的示意图;

图8为本实施例公开的一种语谱图结构示意图;

图9为本实施例公开的一种本组与下一组重叠第二语音信号帧示意图;

图10为本实施例公开的一种用于抑制音频啸叫的神经网络训练装置结构示意图。

具体实施方式

为了相对容易、简单地抑制啸叫,避免正常信号被滤除,并且减小信号失真,本实施例公开了一种基于神经网络的音频啸叫抑制方法,请参考图1,为本实施例公开的一种基于神经网络的音频啸叫抑制方法流程图,该基于神经网络的音频啸叫抑制方法包括:

步骤s101,在时域上获取连续采集到的若干帧第一音频帧。本实施例中,所称第一音频帧为原始音频信号,也就是,若干帧第一音频帧为通过麦克风(mic)采集到的音频信号。需要说明的是,若干帧第一音频帧可以是麦克风直接采集到的音频信号,也可以是通过通信技术接收到的、麦克风采集到的音频信号。在具体实施例中,若干帧第一音频帧在时序上依次排序。在具体实施过程中,可以在采集到原始音频信号后划分若干帧第一音频帧,也可以按预设时间间隔(例如10毫秒)一边采集一边划分若干帧第一音频帧。在具体实施过程中,也可以对采集到的原始音频信号进行特定的预处理,例如加汉宁窗,以使音频数据更加平滑。需要说明的是,在具体实施过程中,通过麦克风按时间先后顺序采集到的若干帧音频信号帧,通常即可认为是时域上连续采集的若干帧第一音频帧。

步骤s103,将若干帧第一音频帧分别变换为若干帧第二音频帧。本实施例中,所称第二音频帧为频域中的音频信号,若干帧第二音频帧中的每一帧包括多个频点。具体地,可以进行时频域变换,例如通过fft变换,将时域的若干帧第一音频帧分别变换为频域信号,得到频域的若干帧第二音频帧。在变换为若干帧第二音频帧后,每个第二音频帧内会具有多个频点,具体的频点数目与频率分辨率有关。

步骤s105,确定若干帧第二音频帧中存在啸叫信号的啸叫频点。本实施例中,所称啸叫信号为连续的、单频高能量信号。在具体实施例中,可以采用常规的检测方式或神经网络来检测存在啸叫信号的啸叫频点。需要说明的是,在具体实施过程中,啸叫频点可以是一个,例如频点600hz;也可以是多个啸叫频点,例如频点700hz、1.9khz、3khz等。请参考图2a和图2b,其中,图2a为本实施例公开的一种具有一个啸叫频点的示例示意图,其中,图2a示例了频点600hz存在啸叫信号;图2b为本实施例公开的一种具有多个啸叫频点的示例示意图,图2b示例了频点700hz、1.9khz、3khz存在啸叫信号。需要说明的是,本实施例中,所列举的频点具体数值、啸叫频点数目仅仅是为了便于本领域技术人员理解而举的示例性描述,不能理解为对本申请技术方案构成的限制。

步骤s107,在存在啸叫信号的第二音频帧中,剔除啸叫频点的音频信号。本实施例中,在确定存在啸叫信号的频点后,可以在频域中直接剔除啸叫频点所对应的的音频信号,也就是,删除了啸叫频点中的原始数据,请参考图2a和图2b,在图2a中,可以直接删除频点600hz所对应的音频信号;在图2b中,可以直接删除频点700hz、1.9khz、3khz所对应的音频信号。

步骤s109,将若干帧第二音频帧中、啸叫频点附近的频点信号输入啸叫频点修复神经网络模型。本实施例中,啸叫频点修复神经网络模型用于基于输入的、啸叫频点附近的频点信号,输出修复后的啸叫频点位置音频信号,将该输出的、修复后的音频信号填补到啸叫频点的位置,从而可以替换修复啸叫频点位置的音频信号。在具体实施过程中,可以通过剔除啸叫频点位置的音频信号后,将剔除位置附近的音频信号输入神经网络模型进行训练,训练后可以得到啸叫频点修复神经网络模型。具体训练过程请参见下文描述,在此不再赘述。也就是,在步骤s107中,啸叫频点位置的数据被删除后,可以用啸叫频点修复神经网络模型输出的音频信号来填补,从而可以完善啸叫频点位置的音频信号,并且,该修复后的音频信号已经被抑制了啸叫。需要说明的是,在具体实施过程中,步骤s107和步骤s109也可以同时进行,具体而言,在找到啸叫频点,通过啸叫频点修复神经网络模型输出修复后的音频信号后,将该修复后的音频信号直接替换修复啸叫频点位置的音频信号,应当视为也执行了步骤s107,亦即,这种方式应当认为是对本实施例技术方案的等同替换。

依据本发明实施例公开的一种音频啸叫抑制方法,将时域上的若干帧第一音频帧分别变换为频域上的若干帧第二音频帧,而后,在确定第二音频帧中的啸叫频点后,剔除啸叫频点的音频信号,从而相对容易、简单地抑制了啸叫信号,并且,将若干帧第二音频帧中、啸叫频点附近的频点信号输入啸叫频点神经网络模型,通过啸叫频点神经网络模型可以输出啸叫频点位置的、修复后的音频信号,通过修复后的音频信号替换修复啸叫频点替换音频信号,从而能够避免正常信号被滤除,另外,由于修复后的替换音频信号是依据啸叫频点附近的频点信号得到的,因此,修复后的替换音频信号与其附近频点具有较强的关联性,附近的音频信号能够平滑过渡,从而避免音频信号断层,减小了音频信号的失真。

在具体实施例中,可以通过语谱图来确定并抑制啸叫信号,具体地,请参考图1,本实施公开的

在步骤s103和步骤s105之间,还包括:

步骤s104,将若干帧第二音频帧按预设长度合成语谱图。请参考图3,为本实施例公开的一种语谱图结构示意图,其中,横轴为时间轴,纵轴为频率轴,图3示意了10个第二音频帧,分别为编号为1-10,每一帧的时间长度为与之对应的第一音频帧的长度,具体参见步骤s101和步骤s103,每一帧的时间长度为例如10ms。图3中,每一帧第二音频帧的坐标点值为语音数据能量,由于是采用二维平面表达三维信息,所以能量值的大小是通过颜色来表示的,颜色深,表示该点的语音能量越强。在图3示例的语谱图中,未区分能量值的大小。本实施例中,仅仅是示例性描述了10个第二音频帧,在其它可替代的实施例中,也可以是其它数目的第二音频帧,本实施例并不限制语谱图中具体的第二音频帧数量。

本实施例中,可以在语谱图中执行步骤s105、步骤s107和步骤s109。具体而言,以语谱图为对象,在语谱图中确定存在啸叫信号的啸叫频点,剔除啸叫频点的音频信号,并替换修复啸叫频点位置的音频信号。

为了提供更多的参考信号,提高替换修复啸叫频点音频信号的精度,请参考图3,在可选的实施例中,语谱图包括第一部分a1和第二部分a2,第一部分a1的第二音频帧在时间上早于第二部分a2的第二音频帧;第二部分a2的第二音频帧数量为k,k为正整数;处于第一部分a1的第二音频帧为已经完成啸叫信号抑制的第二音频帧。作为示例性的描述,请参考图3,第一部分a1为帧编号1-7的第二音频帧,第二部分a2为帧编号8、9和10的第二音频帧;帧编号1-10的第二音频帧在时序上依次滞后。第一部分a1帧编号1-7的第二音频帧已经完成啸叫信号抑制的第二音频帧,第二部分a2帧编号8、9和10的第二音频帧为待抑制啸叫信号的第二音频帧。

本实施例中,在步骤s107中,针对第二部分的第二音频帧剔除啸叫频点的音频信号;在步骤s109中,针对第二部分的第二音频帧,替换修复啸叫频点位置的音频信号。

本实施例中,语谱图包括第一部分a1和第二部分a2,可以将已经完成啸叫抑制的第二音频帧缓存至第一部分a1,将待抑制的第二音频帧放置第二部分a2,由此,可以通过第一部分a1和第二部分a2的第二音频帧来作为参考抑制第二部分a2中将待抑制的第二音频帧,由此,可以具有更多的正常信号来作为参考,从而提高替换修复第二部分的啸叫频点位置的音频信号的精度。

为了提供相对更多的参考信号,在可选的实施例中,第一部分的第二音频帧的数量多于第二部分的第二音频帧的数量,第二部分的第二音频帧的数量小于或等于3;也就是,缓存部分的第二音频帧数量多于待抑制的第二音频帧数量,并且,待抑制部分的数量小于三帧。从而,提供了相对更多的正常信号作为参考,来替换修复更少帧数的啸叫信号,由此,可以将待抑制的第二音频帧与更多的第二音频帧建立了关联,从而,能够进一步减小信号突变的概率,减小了音频信号的失真。

请参考图3,在具体实施例中,在步骤s109中,啸叫频点附近的频点信号包括两部分,其中一部分来自第一部分a1,另一部分来自第二部分a2。具体地,在第二部分a2的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;在第一部分a1的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;其中,在第二部分a2中,预设区间的频点未包含啸叫频点;在第一部分a1中,预设区间的频点包含了与啸叫频点同频的频点。

为便于本领域技术人员理解,作为示例,请参考图3:

假设在执行步骤s105中,确定第二部分a2的第二音频帧中在频点f1存在啸叫信号,该啸叫信号有可能是存在于第二部分a2中的部分帧,也有可能是存在于第二部分a2中的全部帧。

在执行步骤s107的过程中,可以在第二部分a2的各个第二音频帧中,将啸叫频点f1的音频信号全部剔除,也就是,无论该啸叫信号是存在于第二部分a2中的部分帧,还是全部帧,均在第二部分a2全部帧中,将该啸叫频点f1的音频信号剔除。

在执行步骤s109的过程中,分别在第一、第二部分a1、a2中提取啸叫频点附近的频点信号,具体地:

(1)在第二部分a2中,从各个第二音频帧中,取靠近啸叫频点f1位置的、预设区间δf的频点音频信号,也就是,在第8帧取预设区间δf的频点音频信号,在第9帧取预设区间δf的频点音频信号,在第10帧取预设区间δf的频点音频信号;需要说明的是,在第二部分a2取预设区间δf的频点音频信号时,应当不能包括啸叫频点f1的音频信号。

(2)在第一部分a1中,从各个第二音频帧中,取靠近啸叫频点f1位置的、预设区间δf的频点音频信号,也就是,在第1-7帧中,分别取预设区间δf的频点音频信号,由于第一部分a1的各个第二音频帧已经完成啸叫信号抑制,因此,在第一部分a1中,预设区间的频点包含了与啸叫频点f1同频的频点所对应的音频信号。

在具体实施例中,预设区间δf应当以靠近原则,也就是,在纵轴上,该预设区间的各个频点相对于其它频点更靠近啸叫频点f1,预设区间δf可以包括啸叫频点f1之上和之下两部分,预设区间δf的区间大小为500-1000hz。

为了开始后续帧的啸叫抑制,请参考图1,在可选的实施例中,在步骤s109之后,还包括:

步骤s111,更新语谱图的第一部分和第二部分,以使在更新后的语谱图中,执行步骤s105、步骤s107和步骤s109,从而抑制后续真的啸叫信号。

在具体实施例中,步骤s111包括:删除第一部分的前k帧第二音频帧;第一部分中未被删除的第二音频帧在时序上依次整体前移k帧;将第二部分的k帧第二音频帧在时序上依次整体前移至第一部分的后k帧位置;在时序上依次接收新的第二音频帧,并依次合成至第二部分的位置。具体地,请参考图4,为本实施例公开的一种语谱图的更新过程示意图,作为非限制性示例,以k=3为例进行说明,图4示意了当前状态(图4的上图)和下一状态(图4的下图)的语谱图结构示意,在当前状态下,第一部分a1包含的第二音频帧如横线框所示,第二部分a2包含的第二音频帧如斜线框所示,第二部分a2之后的第二音频帧如黑框所示,更新过程如下:

(1)在当前状态下,删除第一部分a1的前k帧第二音频帧,也就是,图4上图所示的编号为1-3的第二音频帧;

(2)第一部分a1中未被删除的第二音频帧在时序上依次整体前移k帧,请参考图4,黑色实线箭头所示,也就是,编号为例如4-7的第二音频帧依次移到编号为1-4的第二音频帧位置;

(3)将第二部分a2的k帧第二音频帧在时序上依次整体前移至第一部分的后k帧位置,请参考图4,虚线箭头所示,也就是,编号为例如8-10的第二音频帧依次移到编号为5-7的第二音频帧位置,由此,将已经完成抑制的第二部分a2的第二音频帧整体移到了第一部分a1;

(4)在时序上依次接收新的第二音频帧,并依次合成至第二部分a2的位置,请参考图4,白色空心箭头所示,也就是,编号为例如8-10的第二音频帧位置依次接收新的第二音频帧,新的第二音频帧为待确定是否存在啸叫信号、抑制啸叫信号的帧。当第二部分a2新的第二音频帧中存在啸叫信号时,可以采用更新后的、编号1-10的第二音频帧作为输入,得到啸叫信号频点的替换修复的音频信号。

为了减小音频播放的延迟性,在可选的实施例中,在步骤s109之后,还包括:将第二部分a2中替换修复后的第二音频帧变换为时域信号,并按时序依次输出,以播放替换修复后的第二音频帧。在具体实施过程中,第二部分a2中替换修复后的第二音频帧一方面可以变换为时域信号依次输出;另一方面,也可以同步地将频域的第二音频帧整体移至第一部分a1,具体地,请参见上述实施例的记载,在此不再赘述。

在可选的实施例中,在步骤s105中,当在第二部分的第二音频帧中确定出多个啸叫频点时,步骤s109包括:针对多个啸叫频点,逐个替换修复各个啸叫频点的音频信号;其中,多个啸叫频点的频率各不相同。具体地,请参考图2b,示例性地示意了存在三个啸叫频点,因此,在执行步骤s109时,应当针对该三个啸叫频点,逐个替换修复,具体地,替换修复该三个啸叫频点的预设区间δf的区间段可以不同。需要说明的是,在替换修复该三个啸叫频点的过程中,当替换修复其中某个啸叫频点时,其预设区间δf的区间段包含了其它频点的啸叫信号时,应当将啸叫信号剔除;当然,如果该啸叫信号已经被替换修复,则可以包含替换修复后的音频信号。

本实施例还公开了一种基于神经网络的音频啸叫抑制装置,请参考图5,为本实施例公开的一种基于神经网络的音频啸叫抑制装置结构示意图,该音频啸叫抑制装置包括:音频获取模块101、时频变换模块103、啸叫确定模块105、啸叫剔除模块107和抑制替换模块109,其中:

音频获取模块101用于在时域上获取连续采集到的若干帧第一音频帧,第一音频帧为原始音频信号;时频变换模块103用于将若干帧第一音频帧分别变换为若干帧第二音频帧,第二音频帧为频域中的音频信号,若干帧第二音频帧中的每一帧包括多个频点;啸叫确定模块105用于确定若干帧第二音频帧中存在啸叫信号的啸叫频点,啸叫信号为连续的、单频高能量信号;啸叫剔除模块107用于在存在啸叫信号的第二音频帧中,剔除啸叫频点的音频信号;抑制替换模块109用于将若干帧第二音频帧中、啸叫频点附近的频点信号输入啸叫频点修复神经网络模型,以输出修复后的啸叫频点位置替换音频信号,来替换啸叫频点位置的音频信号。

在可选的实施例中,还包括:语谱图合成模块,用于将若干帧第二音频帧按预设长度合成语谱图;在语谱图中运行啸叫确定模块105、啸叫剔除模块107和抑制替换模块109。

在可选的实施例中,语谱图包括第一部分和第二部分,第一部分的第二音频帧在时间上早于第二部分的第二音频帧;第二部分的第二音频帧数量为k,k为正整数;处于第一部分的第二音频帧为已经完成啸叫信号抑制的第二音频帧;在啸叫剔除模块107中,针对第二部分的第二音频帧剔除啸叫频点的音频信号;在抑制替换模块109中,针对第二部分的第二音频帧,替换修复啸叫频点位置的音频信号。

在可选的实施例中,第一部分的第二音频帧的数量多于第二部分的第二音频帧的数量,第二部分的第二音频帧的数量小于或等于3。

在可选的实施例中,在抑制替换模块109中,啸叫频点附近的频点信号包括:在第二部分的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;在第一部分的各个第二音频帧中,靠近啸叫频点位置的、预设区间的频点音频信号;其中,在第二部分中,预设区间的频点未包含啸叫频点;在第一部分中,预设区间的频点包含了与啸叫频点同频的频点。

在可选的实施例中,预设区间的区间大小为500-1000hz。

在可选的实施例中,还包括:语谱图更新模块,用于更新语谱图的第一部分和第二部分,以使在更新后的语谱图中,运行啸叫确定模块105、啸叫剔除模块107和抑制替换模块109。

在可选的实施例中,语谱图更新模块用于删除第一部分的前k帧第二音频帧;第一部分中未被删除的第二音频帧在时序上依次整体前移k帧;将第二部分的k帧第二音频帧在时序上依次整体前移至第一部分的后k帧位置;在时序上依次接收新的第二音频帧,并依次合成至第二部分的位置。

在可选的实施例中,在啸叫确定模块105中,当在第二部分的第二音频帧中确定出多个啸叫频点时,抑制替换模块109包括:针对多个啸叫频点,逐个替换修复各个啸叫频点的音频信号;其中,多个啸叫频点的频率各不相同。

在可选的实施例中,还包括:音频输出模块,用于将第二部分中替换修复后的第二音频帧变换为时域信号,并按时序依次输出,以播放替换修复后的第二音频帧。

本实施例还公开了一种音频设备,音频设备为具有音频处理功能的麦克风、音箱、功放或智能设备等,作为非限制性示例,智能设备可以是例如移动终端、笔记本等,也可以是其它配有音频播放和音频采集功能的智能设备,例如智能音箱等。

本实施例中,音频设备包括处理器,处理器用于实现上述任意实施例公开的基于神经网络的音频啸叫抑制方法。

本实施例还公开了一种音频信号交互系统,包括:第一设备和第二设备;

第一设备将若干帧第一音频帧发送给第二设备;第二设备用于实现上述任意实施例公开的基于神经网络的音频啸叫抑制方法。

在可选的实施例中,第一设备为音频采集设备,第二设备为具有音频处理功能的音箱、功放或智能设备。智能设备可以是例如移动终端、笔记本等,也可以是其它配有音频播放和音频采集功能的智能设备,例如智能音箱等。

本实施例还公开了一种用于抑制音频啸叫的神经网络训练方法,用于训练上述任意实施例公开的啸叫频点修复神经网络模型,请参考图6,为本实施例公开的一种用于啸叫频点修复的神经网络训练方法流程图,该神经网络训练方法包括:

步骤s201,获取待学习的语音信号样本数据。本实施例中,所称语音信号样本数据为在时域上连续的语音信号,语音信号样本数据被划分为多帧第一语音信号帧。在具体实施过程中,可以直接获取已经划分为多帧第一语音信号帧的数据作为待学习的语音信号样本数据,也可以在获取预设时长的语音信号后,再对语音信号进行划分得到多帧第一语音信号帧。

步骤s203,将多帧第一语音信号帧变换为频域的多帧第二语音信号帧。多帧第二语音信号帧与多帧第一语音信号帧一一对应。本实施例中,所称第二语音信号帧为频域中的音频信号,若干帧第二语音信号帧中的每一帧包括多个频点。具体地,可以进行时频域变换,例如通过fft变换,将时域的若干帧第一语音信号帧分别变换为频域信号,得到频域的若干帧第二语音信号帧。在变换为若干帧第二语音信号帧后,每个第二语音信号帧内会具有多个频点,具体的频点数目与频率分辨率有关。

步骤s205,在多帧第二语音信号帧中剔除预设频点的语音信号。本实施例中,所称预设频点用来表征存在啸叫信号的频点,在抑制啸叫信号时,可以有一个前置步骤:找到具有啸叫信号的啸叫频点,而后,将啸叫频点的音频信号剔除,从而可以使得啸叫频点的信号缺省。本实施例中,基于抑制啸叫信号的前置步骤所实施的方式,可以剔除预设频点的语音信号,从而,可以使多帧第二语音信号帧的各个第二语音信号帧缺少预设频点的语音信号。在具体实施过程中,可以剔除多帧第二语音信号帧中部分帧的预设频点的语音信号,也可以剔除全部帧的预设频点的语音信号。请参考图7,为本实施例公开的一种构建输入样本的示意图,图7示意了编号为1-10的第二语音信号帧,其中,可以剔除预设频点f1的语音信号,图7示意了剔除编号为8-10的第二语音信号帧中预设频点f1的语音信号,编号为1-7的第二语音信号帧中保留了预设频点f1的语音信号。本实施例中,编号为8-10的第二语音信号帧中,被剔除的预设频点f1的语音信号,可以认为是啸叫信号。

考虑到存在啸叫信号的频点可能为多个,因此,在具体实施过程中,预设频点为多个,各预设频点的频率各不相同。请参考图2a和图2b,其中,图2a为本实施例公开的一种具有一个啸叫频点的示例示意图,其中,图2a示例了频点600hz存在啸叫信号;图2b为本实施例公开的一种具有多个啸叫频点的示例示意图,图2b示例了频点700hz、1.9khz、3khz存在啸叫信号。需要说明的是,本实施例中,所列举的频点具体数值、啸叫频点数目仅仅是为了便于本领域技术人员理解而举的示例性描述,不能理解为对本申请技术方案构成的限制。

步骤s207,在多帧第二语音信号帧中按预设区间提取预设频点附近的、各个频点的语音信号得到输入样本。具体地,请参考图7,可以提取每一帧预设区间δf的频点的语音信号,在具体实施过程中,提取的语音信号可以包含两部分,其中一部分来自已经剔除预设频点f1信号的第二语音信号帧,另一部分来自未剔除预设频点信号f1的第二语音信号帧。在已经剔除预设频点f1信号的第二语音信号帧中,预设区间δf的频点的语音信号不包含预设频点f1的语音信号;在未剔除预设频点f1信号的第二语音信号帧中,预设区间δf的频点的语音信号包含预设频点f1同频的语音信号。

需要说明的是,当预设频点为多个时,对于存在预设频点的第二语音信号帧中,选取预设区间δf的语音信号时,应当不能包含本帧中的预设频点的语音信号。

在具体实施例中,预设区间δf应当以靠近原则,也就是,该预设区间δf的各个频点相对于其它频点更靠近被剔除的预设频点f1,预设区间δf可以包括被剔除的预设频点f1之上和之下两部分,预设区间δf的区间大小为500-1000hz。

步骤s209,将输入样本输入至神经网络模型,以训练神经网络模型。在训练神经网络模型后,可以得到啸叫频点修复神经网络模型。本实施例中,啸叫频点修复神经网络模型用于输出能够替换多帧第二语音信号帧中被剔除的预设频点语音信号的替换音频信号。在具体实施过程中,由于预设频点f1附近的语音信号与预设频点f1的语音信号存在强关联性,因此,通过输入预设频点f1附近的语音信号,可以使得神经网络模型学习并拟合出预设频点f1附近的语音信号。在具体抑制啸叫频点信号的实施过程中,可以将啸叫频点修复神经网络学习输出的语音信号来直接替代啸叫频点的信号,从而能够抑制啸叫频点的啸叫信号,并且可以替换修复啸叫频点的信号。

在具体实施过程中,可以采用例如反复迭代的方式来训练神经网络模型,当然,也可以采用其它的方式来训练神经网络模型。具体而言,在神经网络模型基于预设频点f1附近的语音信号生成新的语音信号后,将新的语音信号与提出的预设频点f1的实际语音信号进行比较,如果二者的误差小于或等于阈值,则可以固化神经网络模型。具体表示误差范围的阈值大小可以根据经验来确定,一般而言,误差范围依据语音信号与神经网络拟合程度有关,拟合程度的强弱与语音数据源、语音数据库大小、神经网络系统大小等等相关。

请参考图6,在可选的实施例中,在步骤s203和步骤s205之间,还包括:

步骤s204,按预设帧数将多帧第二语音信号帧划分若干组。在执行步骤s205时:以组为单位,剔除本组内第二语音信号帧中预设频点的语音信号;在执行步骤s207时,以组为单位,提取本组内第二语音信号帧中靠近预设频点位置的、预设区间的频点的语音信号得到多组输入样本;步骤s209包括:将多组输入样本分别输入至神经网络模型,以训练得到啸叫频点修复神经网络模型。具体地,请参考图7,示例性地示意了10帧第二语音信号帧为一组。在执行步骤s205时,可以剔除本组内第二语音信号帧中,若干帧的、预设频点的语音信号,剔除预设频点的语音信号的帧数可以是一帧、两帧,或多帧,还可以是全部的第二语音信号帧;在具体实施过程中,每组的预设频点可以相同,也可以不同。在执行步骤s207时,可以提取该10帧内的、每一帧预设频点位置的、预设区间的频点的语音信号,从而得到10帧的语音信号作为本组的输入样本。需要说明的是,本实施例中,并不限制具体的预设帧数,上述实施例公开的具体数值,仅仅是示例性描述,并不能理解为对本申请方案构成的限制。

在具体实施例中,可以通过语谱图的方式来划分分若干组,步骤s204包括:按时间先后顺序依次提取预设帧数的第二语音信号帧;将提取的第二语音信号帧合并成语谱图,其中,处于语谱图中的预设帧数的第二语音信号帧为一组。

请参考图8,为本实施例公开的一种语谱图结构示意图,其中,横轴为时间轴,纵轴为频率轴,图8示意了10个第二语音信号帧,分别为编号为1-10,每一帧的时间长度为与之对应的第一语音信号帧的长度,具体参见步骤s201和步骤s203,每一帧的时间长度为例如10ms。图8中,每一帧第二语音信号帧的坐标点值为语音数据能量,由于是采用二维平面表达三维信息,所以能量值的大小是通过颜色来表示的,颜色深,表示该点的语音能量越强。在图8示例的语谱图中,未区分能量值的大小。本实施例中,仅仅是示例性描述了10个第二语音信号帧,在其它可替代的实施例中,也可以是其它数目的第二语音信号帧,本实施例并不限制语谱图中具体的第二语音信号帧数量。本实施例中,如8所示,编号1-10的第二语音信号帧处于同一个语谱图中,该10帧第二语音信号帧为一组,编号11-13的第二语音信号帧处于该语谱图外,属于下一组。

为了避免遗漏第二语音信号帧,在可选的实施例中,本组内的后k帧第二语音信号帧与下一组内的前k帧为重叠的第二语音信号帧,k为正整数,下一组的第二语音信号帧时序上滞后于本组的第二语音信号帧。以k=3为例,请参考图9,为本实施例公开的一种本组与下一组重叠第二语音信号帧示意图,其中,编号为1-10的第二语音帧为本组的第二语音信号帧,编号为8-17的第二语音帧为本组的下一组内第二语音信号帧;编号为8-17的第二语音帧分别之后于编号为1-10的第二语音帧。本组的后k帧(例如8、9、10)与下一组内的前k帧(例如8、9、10)为重叠的第二语音信号帧。

本实施例中,通过相邻组的首尾k帧重叠,可以避免训练时,遗漏某些第二语音帧所导致的信号不连贯,由此,可能造成神经网络的训练误差。

在可选的实施例中,在执行步骤s205时,在本组内,剔除与下一组重叠的k帧第二语音信号帧中预设频点的语音信号;在骤s207中,本组内靠近预设频点位置的、预设区间的频点的语音信号包括:在重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,重叠帧为本组内与下一组重叠的k帧第二语音信号帧;在非重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,非重叠帧为本组内未与下一组重叠的第二语音信号帧;其中,在重叠帧中,预设区间的频点未包含预设频点;在非重叠帧中,预设区间的频点包含了与预设频点同频的频点。请参考图9,在本组内,由于后k帧(例如8、9、10)与下一组重叠,因此,可以在本组内的后k帧剔除预设频点的语音信号。

在可选的实施例中,本组内,非重叠帧的第二音频帧的数量多于重叠帧的第二音频帧的数量,k小于或等于3。

在具体实施过程中,对于本组内的各第二语音信号帧:

在抑制啸叫信号时,非重叠帧的位置可以作为缓存区,重叠帧的位置可以作为待抑制啸叫信号的区域,也就是,非重叠帧的位置的第二语音信号帧为正常的语音信号帧,重叠帧的位置为可能存在啸叫信号的第二语音信号帧。可以在重叠帧的位置剔除存在啸叫信号的频点的信号,而后,通过非重叠帧、重叠帧的预设区间来替换修复啸叫频点的信号,从而抑制替换了啸叫信号。

需要说明的是,在具体实施过程中,由于是按时间的顺序依次排布分组,因此,当重叠帧的位置的第二语音信号帧(k帧)完成抑制后,可以删除非重叠帧的位置的前k帧;未被删除的第二语音信号帧在时序上依次整体前移k帧;在时序上依次接收新的第二语音信号帧,并依次合成至重叠帧的位置,由此可以得到本组的下一组第二语音信号帧,从而,开始下一组的啸叫信号抑制。

需要说明的是,对于本组内,重叠帧的位置的k帧完成抑制后,便可以技术进行傅里叶反变换,得到抑制啸叫信号的时域信号,从而可以输出给播放设备进行播放。

本实施例中,区分非重叠的位置和重叠位置,并将非重叠帧的位置可以作为缓存区,重叠帧的位置可以作为待抑制啸叫信号的区域,一方面可以及时输出待抑制啸叫信号的区域的第二语音信号帧,从而可以减小音频播放的延迟性;另一方面,可以缓存已修复的第二语音信号帧,为后续的修复提供足够的数据输入。提供了同时满足数据缓存和数据播放及时性的要求的条件。

本实施例还公开了一种用于抑制音频啸叫的神经网络训练装置,请参考图10,为本实施例公开的一种用于抑制音频啸叫的神经网络训练装置结构示意图,该神经网络训练装置包括:样本获取模块201、频域变换模块203、频点剔除模块205、区间提取模块207和样本输入模块209,其中:

样本获取模块201用于获取待学习的语音信号样本数据,语音信号样本数据为在时域上连续的语音信号,语音信号样本数据被划分为多帧第一语音信号帧;频域变换模块203用于将多帧第一语音信号帧变换为频域的多帧第二语音信号帧,多帧第二语音信号帧与多帧第一语音信号帧一一对应;频点剔除模块205用于在多帧第二语音信号帧中剔除预设频点的语音信号,以使多帧第二语音信号帧的各个第二语音信号帧缺少预设频点的语音信号;区间提取模块207用于在多帧第二语音信号帧中按预设区间提取预设频点附近的、各个频点的语音信号得到输入样本;样本输入模块209用于将输入样本输入至神经网络模型,以训练神经网络模型,得到啸叫频点修复神经网络模型;啸叫频点修复神经网络模型用于输出能够替换修复多帧第二语音信号帧中被剔除的预设频点语音信号的替换语音信号。

在可选的实施例中,还包括:分组模块,用于按预设帧数将多帧第二语音信号帧划分若干组;频点剔除模块205用于以组为单位,剔除本组内第二语音信号帧中预设频点的语音信号;区间提取模块207用于以组为单位,提取本组内第二语音信号帧中靠近预设频点位置的、预设区间的频点的语音信号得到多组输入样本;样本输入模块209用于将多组输入样本分别输入至神经网络模型,以训练神经网络模型。

在可选的实施例中,分组模块用于按时间先后顺序依次提取预设帧数的第二语音信号帧;将提取的第二语音信号帧合并成语谱图,其中,处于语谱图中的预设帧数的第二语音信号帧为一组。

在可选的实施例中,预设区间的区间大小为500-1000hz。

在可选的实施例中,预设频点为多个,各预设频点的频率各不相同。

在可选的实施例中,本组内的后k帧第二语音信号帧与下一组内的前k帧为重叠的第二语音信号帧k为正整数,下一组的第二语音信号帧时序上滞后于本组的第二语音信号帧。

在可选的实施例中,频点剔除模块205用于在本组内,剔除与下一组重叠的k帧第二语音信号帧中预设频点的语音信号;区间提取模块207中,本组内靠近预设频点位置的、预设区间的频点的语音信号包括:在重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,重叠帧为本组内与下一组重叠的k帧第二语音信号帧;及在非重叠帧中,各帧内靠近预设频点位置的、预设区间的频点音频信号,非重叠帧为本组内未与下一组重叠的第二语音信号帧;其中,在重叠帧中,预设区间的频点未包含预设频点;在非重叠帧中,预设区间的频点包含了与预设频点同频的频点。

在可选的实施例中,本组内,非重叠帧的第二音频帧的数量多于重叠帧的第二音频帧的数量,k小于或等于3。

本实施例还公开了一种用于音频丢包修复的神经网络训练系统,包括:语音信号获取装置、存储器和处理器,其中:

语音信号获取装置用于获取待学习的语音信号样本数据;存储器用于存储程序;处理器,接收待学习的语音信号样本数据,用于执行程序以实现上述任意实施例公开的神经网络训练方法。

本实施例中,神经网络训练系统可以通过电脑来实现,也可以通过服务器来实现。

本实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,存储介质中存储的计算机程序用于被执行实现上述任意实施例公开的基于神经网络的音频啸叫抑制方法。

本实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,存储介质中存储的计算机程序用于被执行实现上述任意实施例公开的用于啸叫频点修复的神经网络训练方法。

本实施例还公开了一种音频设备的芯片,其上具有集成电路,集成电路被设计成用于实现上述任意实施例公开的基于神经网络的音频啸叫抑制方法。

本实施例还公开了一种音频设备的芯片,其上具有集成电路,集成电路被设计成用于实现上述任意实施例公开的用于啸叫频点修复的神经网络训练方法。

本实施例还公开了一种服务器,其上存储有计算机程序,存储的计算机程序用于被执行实现上述任意实施例公开的基于神经网络的音频啸叫抑制方法。

本实施例还公开了一种服务器,其上存储有计算机程序,存储的计算机程序用于被执行实现上述任意实施例公开的用于啸叫频点修复的神经网络训练方法。

本实施例还公开了一种平台服务器,包括:请求接收模块,用于接收数据请求;数据下发模块,用于根据数据请求向用户提供计算机程序和/或计算机程序链接,计算机程序用于被执行实现上述任意实施例公开的基于神经网络的音频啸叫抑制方法。

本实施例还公开了一种平台服务器,包括:请求接收模块,用于接收数据请求;数据下发模块,用于根据数据请求向用户提供计算机程序和/或计算机程序链接,计算机程序用于被执行实现上述任意实施例公开的用于啸叫频点修复的神经网络训练方法。

本领域的技术人员能够理解的是,在不冲突的前提下,上述各优选方案可以自由地组合、叠加。

应当理解,上述的实施方式仅是示例性的,而非限制性的,在不偏离本发明的基本原理的情况下,本领域的技术人员可以针对上述细节做出的各种明显的或等同的修改或替换,都将包含于本发明的权利要求范围内。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips