音频数据处理方法及相关装置与流程

文档序号:33398671发布日期:2023-03-08 15:03阅读:46来源:国知局
音频数据处理方法及相关装置与流程

1.本技术实施例涉及计算机技术领域,具体涉及音频数据处理方法及相关装置。


背景技术:

2.日常生活中,能够被人耳听到的声音是机械波,也可以称为声波。声波在传播介质中传播到达接收端的过程中,往往会被障碍物反射和吸收。例如,声波在室内传播时,要被例如墙壁、天花板以及地板等障碍物反射,每反射一次,声波都被障碍物吸收一部分。当声源停止发声后,声波在室内要经过多次反射和吸收才消失。因此,声源停止发声后还有多个声波混合持续一段时间,也就是室内声源停止发声后仍然存在声音的延续现象。其中,上述延续现象可以称为混响现象。
3.正是由于混响现象,例如麦克风等接收端接收到的音频信号除了包括声源直达部分外,还包括声源信号通过传播信道时由于多径传播而到达的反射信号,导致接收端接收到的音频信号质量差。为了提高接收端接收的音频信号质量,需要对接收到的音频信号进行去混响处理,如何提高去混响后的音频信号的音频质量是本领域技术人员不断努力的方向。


技术实现要素:

4.本技术实施例提供了音频数据处理方法及相关装置,通过本技术对待处理音频数据进行去混响,可以提高去混响后的音频信号的音频质量。
5.第一方面,本技术实施例提供了一种音频数据处理方法,包括:
6.获取待处理音频数据中的一帧音频数据,上述待处理音频数据为通过第一通道对声源信号采集后得到的音频数据;
7.基于上述一帧音频数据计算第一自相关矩阵;
8.在上述第一自相关矩阵中对角线上的数值不相等的情况下,将上述第一自相关矩阵中对角线上的数值修改为相等的常数,得到第二自相关矩阵;
9.基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
10.本技术实施例中,对于上述一帧音频数据,在计算出的第一自相关矩阵中对角线上的数值不相等的情况下,将该第一自相关矩阵中对角线上的数值修改为相等的常数。由于自相关矩阵中对角线体现的是自相关特性,因此,自相关矩阵对角线上的数值不同意味着自相关矩阵包括第一通道自身的影响。在对上述一帧音频数据进行去混响处理的过程中,将第一自相关矩阵中对角线上的数值修改为相等的常数,可以减弱通道自相关的影响,从而提高去混响之后的音频数据的音频质量。
11.在一种可能的实现方式中,上述基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据,包括:
12.在上述第二自相关矩阵中非对角线上的每个数值均大于或等于第一阈值的情况
下,执行上述基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据步骤。
13.在一种可能的实现方式中,上述方法还包括:
14.在上述第二自相关矩阵中非对角线上存在数值小于上述第一阈值的情况下,将上述第二自相关矩阵中非对角线上小于上述第一阈值的数修改为0,得到第三自相关矩阵;
15.基于上述第三自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
16.在一种可能的实现方式中,上述方法还包括:
17.在上述一帧音频数据为上述待处理音频数据中的第一帧音频数据的情况下,将上述第一帧音频数据分别与其他通道采集的第一帧音频数据之间的互相关结果的平均值作为初始方差;上述其他通道为电子设备中除上述第一通道以外的用于采集上述声源信号的通道;
18.上述基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据,包括:
19.基于上述第二自相关矩阵和上述初始方差对上述第一帧音频数据进行去混响处理,得到处理后的音频数据。
20.在一种可能的实现方式中,上述方法还包括:
21.在上述一帧音频数据不为上述待处理音频数据中的第一帧音频数据的情况下,基于第一方向角和第二方向角的差值对第一方差和第二方差进行加权,得到第三方差;
22.其中,上述第一方向角为上述一帧音频数据的前一帧音频数据所在时间段内,声源与上述第一通道所在的位置之间的方向角,上述第二方向角为上述一帧音频数据的前第二帧音频数据所在时间段内,上述声源与上述第一通道所在的位置之间的方向角;上述第一方差为根据上述一帧音频数据的前一帧音频数据分别与其他通道对应采集的一帧音频数据之间的互相关结果的平均值得到的方差,上述第二方差为根据上述一帧音频数据的前一帧音频数据去混响处理后的音频数据得到的方差;上述声源用于产生上述声源信号;
23.上述基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据,包括:
24.基于上述第二自相关矩阵和上述第三方差对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
25.在一种可能的实现方式中,上述方法还包括:
26.在上述处理后的音频数据的信号幅度大于上述一帧音频数据的信号幅度的情况下,将上述处理后的音频数据的信号幅度修改为上述一帧音频数据的信号幅度。
27.第二方面,本技术实施例提供了一种音频数据处理装置,包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的单元。
28.第三方面,本技术实施例提供了一种电子设备,包括处理器和存储器;上述存储器,用于存储数据和计算机执行指令;上述处理器,用于执行存储器所存储的计算机执行指令,以使第一方面或第一方面的任意可能的实现方式中的方法被执行。
29.第四方面,本技术实施例提供了一种芯片,包括逻辑电路和接口,上述逻辑电路和接口耦合;上述接口用于输入和/或输出代码指令,上述逻辑电路用于执行上述代码指令,
以使第一方面或第一方面的任意可能的实现方式中的方法被执行。
30.第五方面,本技术提供了一种模组设备,上述模组设备包括通信模组、电源模组、存储模组以及芯片模组,其中,上述电源模组用于为上述模组设备提供电能;上述存储模组用于存储数据和指令;上述通信模组用于进行模组设备内部通信,或者用于上述模组设备与外部设备进行通信;上述芯片模组用于执行第一方面或第一方面的任意可能的实现方式中的方法。
31.第六方面,本技术实施例公开了一种计算机程序产品,上述计算机程序产品包括程序指令,上述程序指令当被处理器执行时,以使第一方面或第一方面的任意可能的实现方式中的方法被执行。
32.第七方面,本技术实施例提供一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,当上述计算机程序在处理器上运行时,以使第一方面或第一方面的任意可能的实现方式中的方法被执行。
附图说明
33.图1是本技术实施例提供的一种去混响的模型结构图;
34.图2是本技术实施例提供的一种音频数据处理方法的流程示意图;
35.图3是本技术实施例提供的一种电子设备30的结构示意图;
36.图4是本技术实施例提供的一种电子设备40的结构示意图;
37.图5是本技术实施例提供的一种模组设备的结构示意图。
具体实施方式
38.本技术以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本技术的限制。如在本技术的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,本技术中使用的术语“和/或”是指包含一个或多个所列出项目的任何或所有可能组合。本技术的说明书、权利要求书及附图中的术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定顺序。
39.日常生活中,能够被人耳听到的声音是机械波,因此,可以将声音理解为声波。声波在传播介质中传播到达接收端的过程中,往往会被障碍物反射。示例性地,上述接收端也可以称为声音采集设备,例如可以是麦克风。
40.示例性地,声波在室内传播时,要被例如墙壁、天花板以及地板等障碍物反射,每反射一次,声波都被障碍物吸收一部分。上述情况下,当声源停止发声后,声波在室内要经过多次反射和吸收才消失,因此,声源停止发声后还有多个声波混合持续一段时间,也就是室内声源停止发声后仍然存在声音的延续现象。其中,上述延续现象可以称为混响,延续现象的持续时间可以称为混响时间。
41.又示例性地,在实际环境中,语音作为人与人、人与机器进行交流的重要信息载体,不可避免的受到混响、环境噪声等干扰,使得接收端接收到的语音信号的清晰度、可懂度和舒适度大大降低,严重影响人耳的听觉感知或后续语音处理的性能。
42.正是由于混响现象,接收端接收到的音频信号除了包括声源直达部分外,还包括
声源通过传播信道时由于多径传播而到达的反射信号,从而导致接收端接收到的音频信号质量下降。其中,本技术实施例中,上述音频信号可以是任意声源产生或输出的信号,比如可以是人说话的语音信号,也可以是电子设备的音频输出模块输出的音频信号等。可以理解的是,由于接收端接收的音频信号包括了混响部分,因此,上述音频信号也可以称为混响音频信号,待处理音频信号,待处理混响音频信号,待处理信号等。示例性地,接收端接收音频信号得到的数据可以称为音频数据。
43.为了抵消由混响引起的音质下降,去混响(或混响消除)技术应运而生。其中,去混响技术也可以称为混响消除技术、语音去混响技术等。一般地,去混响技术可以分为单通道去混响和多通道去混响技术。其中:
44.单通道去混响技术利用单个麦克风进行语音增强,上述方法以其简单的模型和廉价的成本已取得广泛的应用。但是,由于单通道去混响技术只能利用单路信号的统计特性来抑制混响,去混响效果有限。
45.多通道去混响技术利用多个麦克风,即麦克风阵列采集音频信号,得到多路信号。可以理解的是,由于输入通道数的增加,基于麦克风阵列的多通道去混响算法不仅可以利用单路信号的时频信息,还可以利用多路信号之间的相关性以及信号的空间信息进行语音增强,相比单通道只能利用语音和混响在时频域上的差异进行增强的局限,麦克风阵列的引入可以弥补单通道去混响技术的不足。
46.多通道线性预测(multichannel linear prediction,mclp)是多通道去混响技术中的一种方法,mclp模型表示当前接收的待处理音频信号为当前纯净音频信号与过去若干帧接收信号的线性组合。去混响的目标是估计相关系数,根据相关系数从待处理音频信号中去除混响部分,也就是从待处理音频信号获取期望语音,即直达声以及早期反射的部分。
47.mclp算法假设声源信号具有时变方差的高斯分布,且期望语音服从高斯分布,语音信号在短时间内具有相关性。为便于理解,示例性地,请参阅图1,图1是本技术实施例提供的一种去混响的模型结构图。
48.如图1所示,s(t)表示声源信号,即未经过混响的纯净音频信号;h1(z)-hm(z)表示不同声学通道的房间脉冲响应(room impulse response,rir);v1(t)-vm(t)表示不同声学通道中的的加性噪声,x1(t)-xm(t)表示不同的麦克风接收的待处理音频信号,该待处理音频信号包括混响部分;以第m个麦克风为例,示例性地,第m个麦克风接收的待处理音频信号xm(t)可以用式(1)表示:
[0049][0050]
式(1)中,s(t-k)表示时域内的纯净音频信号;hm(k)表示声源信号与第m个麦克风之间长度为lh的房间脉冲响应;vm(t)表示加性背景噪声,可以理解的是,为了表示简单,可以在无噪声的情况下对后续公式进行推导,因此,上述vm(t)可以等于0。
[0051]
在mclp中,麦克风接收的待处理音频信号可以由期望信号(也就是直达声与早期反射部分)与后期混响信号的线性组合表示。以第m个麦克风为例,示例性地,第m个麦克风接收的待处理音频信号xm(t)可以用式(2)表示:
[0052]
[0053]
式(2)中,dm(t)表示期望信号,rm(t)表示后期混响信号,d表示后期混响的开始时刻。
[0054]
在mclp算法中,采用最大似然估计法计算上述相关系数,其中,似然函数可以用式(3)表示:
[0055][0056]
式(3)中,t表示观测信号最大时延;n表示的概率密度函数符合正态分布;表示期望信号;σ2(t)为时域表示的方差,c1为时域表示的相关系数,const表示常量部分,
[0057]
其中,lc表示回归向量的阶数。最终,
[0058]
以上为似然函数在时域上的表示方式,为了简化计算,可以将似然函数转换到频域上,例如式(4):
[0059][0060]
其中,p(d
n,f
)为复高斯随机过程的概率密度函数,n表示帧索引,f表示频率索引,ρ
f2
为频域表示的方差,cf为频域表示的相关系数,const表示常量部分。
[0061]
上述式(4)中,其中,其中,其中,其中,lc为回归向量的阶数。
[0062]
可以理解的是,在式(4)中,在通过θf得到最大化似然函数时可以认为完成去混响,即得到去混响之后的音频信号。但是,现实情况中很难求得上述式(4)中最大化似然函数的封闭解,因此,可以通过不断对每帧音频数据迭代cf和ρ
f2
,以逐步逼近似然函数的最大化范数解。本技术实施例中,一帧音频数据可以理解为持续时长为阈值的音频数据,示例性地,上述阈值可以是5毫秒、10毫秒、15毫秒等,本技术对此不作限定。
[0063]
在对每帧待处理音频数据进行去混响处理的过程中,如何提高去混响效果是本领域技术人员不断努力的方向。基于上述问题,本技术实施例提供了一种音频数据处理方法,通过本技术对待处理音频数据进行去混响,可以提高去混响后的音频数据的音频质量。本技术实施例提供的方法可以由电子设备执行,示例性地,上述电子设备可以是手机、平板,笔记本电脑等设备,本技术对此不作限定。
[0064]
示例性地,请参阅图2,图2是本技术实施例提供的一种音频数据处理方法的流程
示意图。如图2所示,上述方法包括:
[0065]
201:获取待处理音频数据中的一帧音频数据,该待处理音频数据为通过第一通道对声源信号采集后得到的音频数据。
[0066]
本实施例中,上述待处理音频数据为通过第一通道对声源信号采集后得到的音频数据,其中,上述第一通道可以理解为至少两个通道中的一个通道。比如某一个麦克风接收的待处理音频数据。
[0067]
在一种可能的实现方式中,电子设备中可以包括多个用于接收声源信号的通道,由此,电子设备可以直接通过自身的通道获取到上述待处理音频数据,例如电子设备中有3*3的麦克风阵列,上述待处理音频数据可以是其中一个麦克风采集到的音频数据。
[0068]
在另一种可能的实现方式中,电子设备可以与其他电子设备之间建立通信连接,从其他电子设备处获取待处理音频数据。
[0069]
202:基于该一帧音频数据计算第一自相关矩阵。
[0070]
本技术实施例中,电子设备以帧为单位对待处理音频数据进行去混响处理。其中,根据前文式(3)以及式(4)的描述可以理解,电子设备可以根据上述一帧音频数据计算相关系数,在相关系数的计算过程中,会先计算出自相关矩阵。本步骤中,上述第一自相关矩阵可以理解为初始自相关矩阵,即未经过步骤203的修改的自相关矩阵。
[0071]
203:在该第一自相关矩阵中对角线上的数值不相等的情况下,将该第一自相关矩阵中对角线上的数值修改为相等的常数,得到第二自相关矩阵。
[0072]
在得到第一自相关矩阵后,在该第一自相关矩阵中对角线上的数值不相等的情况下,电子设备将第一自相关矩阵中对角线上的数值修改为相等的常数,其中,上述常数可以是任意的常数,比如可以是负数、0、正数、小数以及分数等,本技术对此不作限定。
[0073]
本步骤中,第一自相关矩阵中对角线上的数值不相等可以理解为第一自相关矩阵中对角线上存在不同的数值。可以理解的是,在第一自相关矩阵对角线上的数值本身为相等的常数的情况下,电子设备可以不修改上述第一自相关矩阵,直接基于第一自相关矩阵对上述一帧音频数据进行去混响处理即可。在上述过程中,依然可以采用本技术中其他实施例中方法对去混响效果进行优化。
[0074]
204:基于该第二自相关矩阵对该一帧音频数据进行去混响处理,得到处理后的音频数据。
[0075]
本步骤中,电子设备使用修改后的第二自相关矩阵对该一帧音频数据进行去混响处理,示例性地,电子设备可以基于上述第二自相关矩阵计算出相关系数,然后,根据该相关系数对上述一帧音频数据进行去混响处理。
[0076]
本技术实施例中,对于上述一帧音频数据,在计算出的第一自相关矩阵中对角线上的数值不相等的情况下,将该第一自相关矩阵中对角线上的数值修改为相等的常数。由于自相关矩阵中对角线体现的是自相关特性,因此,自相关矩阵对角线上的数值不同意味着自相关矩阵包括第一通道自身的影响。在对上述一帧音频数据进行去混响处理的过程中,将第一自相关矩阵中对角线上的数值修改为相等的常数,可以减弱通道自相关的影响,从而提高去混响之后的音频数据的音频质量。
[0077]
在一些实施例中,图2所示的方法中,步骤204包括:
[0078]
2401:在上述第二自相关矩阵中非对角线上的每个数值均大于或等于第一阈值的
情况下,执行上述基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据步骤。
[0079]
可以理解的是,自相关矩阵中非对角线上的较小数值体现的是小幅度的噪声干扰,本实施例中,在第二自相关矩阵中非对角线上的每个数值均大于或等于第一阈值的情况下,基于第二自相关矩阵对上述一帧音频数据进行去混响处理,可以保证去混响处理过程中不存在小的噪声干扰,同时达到减小计算量的目的。
[0080]
本技术实施例中,上述第一阈值可以理解为远远小于输入音频数据(比如上述一帧音频数据)的信号幅度且与0非常接近的数。示例性地,输入音频数据的幅度自相关是0.5,上述第一阈值可以是小于幅度自相关的1%的数,比如可以是0.01、0.02等。
[0081]
在另一些实施例中,步骤2401所在的实施例还包括:
[0082]
2042:在上述第二自相关矩阵中非对角线上存在数值小于上述第一阈值的情况下,将上述第二自相关矩阵中非对角线上小于上述第一阈值的数修改为0,得到第三自相关矩阵;
[0083]
2043:基于上述第三自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
[0084]
本实施例中,在第二自相关矩阵中非对角线上存在数值小于上述第一阈值的情况下,将第二自相关矩阵中非对角线上小于上述第一阈值的数修改为0得到第三自相关矩阵,基于第三自相关矩阵进行去混响处理,可以在自相关矩阵中存在噪声扰动的情况下减少噪声干扰,从而减少计算量。
[0085]
本技术实施例中,除了对自相关矩阵进行优化,还可以对去混响处理过程中的方差进行优化。在一些实施例中,图2所示的方法还包括:
[0086]
205:在上述一帧音频数据为上述待处理音频数据中的第一帧音频数据的情况下,将上述第一帧音频数据分别与其他通道采集的第一帧音频数据之间的互相关结果的平均值作为初始方差;上述其他通道为电子设备中除上述第一通道以外的用于采集上述声源信号的通道;
[0087]
步骤204包括:
[0088]
2044:基于上述第二自相关矩阵和上述初始方差对上述第一帧音频数据进行去混响处理,得到处理后的音频数据。
[0089]
本实施例中,上述一帧音频数据为待处理音频数据中的第一帧音频数据可以理解为上述一帧音频数据为上述待处理音频数据中的首帧数据、初始帧数据。可以理解的是,在对第一帧音频数据进行去混响处理之前,需要对方差进行初始化。
[0090]
本技术实施例中,上述其他通道为电子设备中除上述第一通道以外的用于采集上述声源信号的通道,其中的电子设备可以与执行主体的电子设备是同一个设备,也可以是不同的设备。在是同一个设备的情况下,执行本实施例中方法的电子设备中包括多个用于接收同一声源信号的通道;在不是同一个设备的情况下,可以是与执行本实施例中方法的电子设备之间建立通信连接的其他电子设备中包括多个用于接收同一声源信号的通道,即音频数据采集由其他电子设备完成,去混响处理由本技术实施例中的电子设备完成。本实施例中,对于第一帧音频数据而言,将第一帧音频数据分别与其他通道采集的第一帧音频数据之间的互相关结果的平均值作为初始方差。
[0091]
以上述其他通道为通道a为例,上述第一帧音频数据和上述通道a采集的第一帧音频数据经过傅里叶变换后分别得到各自的频谱序列,根据频谱序列作互相关可以得到互相关序列,简称互相关序列。其中,上述互相关序列可以理解为上述互相关结果,互相关序列中的不同位置上的数值表示不同频点上第一通道与通道a在该频点的互相关系数。
[0092]
因此,在第一通道采集的第一帧音频数据分别与其他通道采集的第一帧音频数据分别求取互相关后,将得到多个互相关序列。本实施例中,互相关结果的平均值可以理解为,求取上述多个互相关序列中相同频点所对应的互相关系数的平均值得到的序列。
[0093]
在通过上述方式得到初始方差后,本实施例中,基于初始方差和第二自相关矩阵对第一帧音频数据进行去混响处理。可选地,在第二自相关矩阵被修改为第三自相关矩阵的情况下,还可以基于初始方差和第三自相关矩阵对第一帧音频数据进行处理。
[0094]
可以理解的是,在其他方案中,对第一帧音频数据进行去混响之前,同样需要初始化方差,但是其他方案中以第一帧音频数据的信号功率作为初始化方差,忽略了通道之间的空间耦合。本实施例中,以第一通道与其他通道中第一帧音频数据的互相关结果对方差进行初始化,即采用时不变的全相关矩阵来表达通道之间的短时平均耦合,可以增强通道之间的空间耦合特性,提高去混响处理后的音频质量。
[0095]
以上基于不同通道中的第一帧音频数据对方差进行初始化,对于第一帧音频数据之后的其他帧,可以基于前一帧的去混响处理结果以及声源位置和电子设备中的通道之间的方向角获得方差,从而优化声源位置发生变化的情况下去混响处理性能。
[0096]
在一些实施例中,上述图2所示的方法还包括:
[0097]
206:在上述一帧音频数据不为上述待处理音频数据中的第一帧音频数据的情况下,基于上述第一方向角和第二方向角的差值对第一方差和第二方差进行加权,得到第三方差;其中,上述第一方向角为上述一帧音频数据的前一帧音频数据所在时间段内,声源与上述第一通道所在的位置之间的方向角,上述第二方向角为上述一帧音频数据的前第二帧音频数据所在时间段内,上述声源与上述第一通道所在的位置之间的方向角;上述第一方差为根据上述一帧音频数据的前一帧音频数据分别与其他通道对应采集的一帧音频数据之间的互相关结果的平均值得到的方差,上述第二方差为根据上述一帧音频数据的前一帧音频数据去混响处理后的音频数据得到的方差;上述声源用于产生上述声源信号;
[0098]
步骤204包括:
[0099]
2045:基于上述第二自相关矩阵和上述第三方差对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
[0100]
本实施例中,上述一帧音频数据不为上述待处理音频数据中的第一帧音频数据,可以理解为,上述一帧音频数据为上述待处理音频数据中的第一帧音频数据之后的一帧音频数据,比如可以是第2帧音频数据、第5帧音频数据等。
[0101]
本技术实施例中,声源用于产生上述声源信号,上述方向角可以理解为波达方向(direction of arrival,doa)角,用于表示声源位置与接收端之间的相对位置。
[0102]
可以理解的是,通道在电子设备中的位置是不同的,因此,不同的通道所在的位置也是不同。并且,正是由于通道的空间位置不同,不同的通道接收到上述声源信号(即同一声源信号)的时间不同。因此,不同通道接收声源信号存在时延差,可以根据上述时延差计算波达方向角。
[0103]
本实施例中,第一方向角可以理解为根据第一通道接收上述一帧音频数据与其他通道接收对应的音频数据的时延差得到的波达方向角,其中,上述对应的音频数据可以理解为与上述一帧音频数据的位置相同的一帧音频数据,比如上述一帧音频数据为待处理音频数据中的第10帧音频数据,那么上述对应的音频数据为其他通道接收到的待处理音频数据的第10帧音频数据。
[0104]
可以理解的是,由于一帧音频数据的时间较短,可以认为上述时间内声源与第一通道之间的相对位置不变。因此,第一方向角可以理解为上述一帧音频数据所在时间段内,声源与第一通道所在的位置之间的方向角;同理,第二方向角可以理解为上述一帧音频数据的前一帧音频数据所在时间段内,声源与第一通道所在的位置之间的方向角。因此,第一方向角和第二方向角的差值可以表示声源位置相对于接收通道的位置变化。
[0105]
可以理解的是,每帧音频数据进行去混响处理都需要有初始方差。在其他方案中,对某一帧音频数据(除第一帧音频数据以外的音频数据)进行去混响处理时,初始方差是根据前一帧音频数据去混响处理后得到的音频数据计算得到的,比如对第5帧音频数据进行去混响处理时,第5帧音频数据的初始方差可以为第4帧音频数据去混响后得到的音频数据的信号幅度的平方。
[0106]
本实施例中,第一方差为为根据所述一帧音频数据的前一帧音频数据分别与其他通道对应采集的一帧音频数据之间的互相关结果的平均值得到的方差,第二方差为根据所述一帧音频数据的前一帧音频数据去混响处理后的音频数据得到的方差。
[0107]
示例性地,上述一帧音频数据为第2帧音频数据,上述第一方差可以是第一帧音频数据通过上述步骤205确定出的初始方差,简称第一帧方差。上述第二方差可以是对第一帧音频数据进行去混响处理后得到的音频数据的信号幅度的平方,简称第一帧去混响方差。
[0108]
特别地,对于第二帧音频数据来说,第一方向角和第二方向角均可以理解为上述第一帧音频数据所在时间段内声源与上述第一通道所在的位置之间的方向角,因此,第一方向角与第二方向角之间的差值为0。
[0109]
最终,基于上述差值对第一帧方差和第一帧去混响方差进行加权,得到第二帧音频数据的初始方差,即上述第三方差。为了与后续第三帧音频数据中的方差区别开,将第二帧音频数据的初始方差称为第二帧初始方差。
[0110]
又示例性地,对于第三帧音频数据,上述第一方差可以是第二帧音频数据分别与其他通道对应采集的一帧音频数据之间的互相关结果的平均值,简称第二帧方差,其中的具体计算方式与前文步骤205类似,这里不再赘述。本实施例中,上述对应采集的一帧音频数据可以理解为与上述一帧音频数据的前一帧音频数据的位置相同的一帧音频数据,比如上述一帧音频数据为待处理音频数据中的第三帧音频数据,那么上述对应采集的一帧音频数据为其他通道接收到的待处理音频数据的第二帧音频数据。上述第二方差可以是对第二帧音频数据进行去混响处理后得到的音频数据的信号幅度的平方,简称第二帧去混响方差。
[0111]
本技术实施例中,上述一帧音频数据的前第二帧音频数据可以理解为上述一帧音频数据往前第二帧音频数据。对于第三帧音频数据来说,第一方向角可以理解为第二帧音频数据所在时间段内声源与上述第一通道所在的位置之间的方向角,第二方向角可以理解为第一帧音频数据所在时间段内声源与上述第一通道所在的位置之间的方向角。因此,上
述第一方向角与第二方向角之间的差值可能为0,也可能不为0。
[0112]
最终,基于上述差值对第二帧方差和第二帧去混响方差进行加权得到第三帧音频数据的初始方差。
[0113]
本实施例中,步骤206中的加权方式可以有多种,可以对第一方向角与第二方向角之间差值求正弦或余弦得到范围在[0,1]之间的数(称为变换数),然后以该变换数和1减去该变化数作为系数对上述第一方差和第二方差进加权得到第三方差。
[0114]
在一些实施例中,上述第一方差的加权系数等于1减去余弦值,上述余弦值为第一方向角与第二方向角之间差值的余弦值,上述第二方差的加权系数等于上述余弦值。本实施例中,在上述第一方向角与上述第二方向角相同,即声源与第一通道之间的相对位置不变的情况下,上述第三方差等于上述第二方差;在上述第一方向角与上述第二方向角之间的夹角为90度的情况下,上述第三方差等于上述第一方差。
[0115]
可以理解的是,后续每帧音频数据的初始方差可以采用如上述第二帧音频数据和第三帧音频数据类似的方式得到,经过多帧音频数据的迭代,去混响的效果将越来越好。
[0116]
本技术实施例中,对于待处理音频数据中第一帧音频数据来说,初始方差采用上述步骤205的方式得到。对于其他帧音频数据的初始方差,根据前一帧音频数据的方差以及第一方向角和第二方向角得到,通过历史的音频数据对应的方向角对方差进行修改,这样得到的方差是时变的,可以更好地适应声源位置与接收通道之间的相对位置发生变化的时变情况,使得时变情况下去混响处理得到的音频质量更好。
[0117]
可以理解的是,输入的音频数据中包括了混响部分以及噪声干扰,正常情况下,经过去混响处理后的音频数据的信号幅度应该小于输入的音频数据的信号幅度。但是,也不排除去混响处理出错,即失真的情况。因此,在一些实施例中,上述图2所示的方法还包括:
[0118]
207:在上述处理后的音频数据的信号幅度大于上述一帧音频数据的信号幅度的情况下,将上述处理后的音频数据的信号幅度修改为上述一帧音频数据的信号幅度。
[0119]
本实施例中,在处理后的音频数据的信号幅度大于上述一帧音频数据的信号幅度的情况下,将上述处理后的音频数据的信号幅度修改为上述一帧音频数据的信号幅度,也就是处理前的音频数据的信号幅度。
[0120]
可以理解的是,从前文步骤207相关实施例可以知道,对于相邻两帧音频数据,后一帧音频数据的初始方差是根据前一帧音频数据去混响处理后的音频数据得到的,通过对处理后的音频数据的信号幅度限制,可以提升算法的鲁棒性,减轻由于瞬态噪声造成的更新出错所带来的影响。
[0121]
需要说明的是,本技术实施例中,步骤前的编号是为了便于描述方案以及理解方案作出的,不应理解为对步骤的执行顺序的限定。
[0122]
为了更清楚地理解本技术实施例提供的音频数据处理方法,接下来结合公式对音频数据的去混响处理过程进行介绍。
[0123]
示例性地,电子设备中的通道为麦克风,即电子设备中包括麦克风阵列,每个麦克风用于采集音频信号。可以理解的是,电子设备通过麦克风接收到的音频信号是音频模拟信号;将音频模拟信号转化为电信号后,对电信号进行采样、量化、编码可以得到音频数字信号;进一步对音频数字信号进行傅里叶变换从时域转换到频域,可以得到待处理音频数据。应理解,每个麦克风都可以通过上述方式得到各自的待处理音频数据。
[0124]
以某个麦克风(称为麦克风a)得到的待处理音频数据(待处理音频数据a)进行去混响处理为例。电子设备获取待处理音频数据a中的第一帧待处理音频数据,进行以下步骤:
[0125]
(1)初始化方差p
f2
[0126]
本步骤中,麦克风a接收到的音频数据和其他麦克风接收到的音频数据初始化方差,示例性地,方差p
f2
可以用式(5)表示:
[0127][0128]
其中,m表示通道数量,即麦克风数量。n表示帧索引,f表示频率索引。x表示麦克风接收到的待处理音频数据,x的上标表示麦克风索引;示例性地,上标为1表示上述麦克风a接收到的待处理音频数据,上标为其他数表示其他麦克风接收到的待处理音频数据。conj表示求复数的共轭,ε表示预设的最小值,在基于待处理音频数据计算出的数值小于ε的情况下,方差取ε。
[0129]
可以理解的是,在mclp算法中,假设声源信号为时变方差的高斯分布,且期望语音服从高斯分布,使用mclp算法去混响时,采用麦克风a接收的待处理音频数据的输入信号功率作为初始方差,但是,仅仅使用输入信号功率进行方差初始化忽略了通道之间的空间耦合。
[0130]
为增强通道之间的空间耦合特性,本技术采用麦克风a接收的待处理音频数据与其他麦克风接收的待处理音频数据的共轭转置的乘积作为初始方差,即麦克风a接收的待处理音频数据与其他麦克风接收的待处理音频数据的互相关结果的平均值作为初始方差。通过上述方式得到的方差是时不变的,可以用于表达通道的短时平均耦合。本技术由于考虑了通道之间的空间耦合,去混响性能更好。
[0131]
(2)修改自相关矩阵φ
[0132]
基于上述公式(4),可以得到相关系数的表达式(6):
[0133][0134]
其中,n表示帧索引,f表示频率索引,自相关矩阵
[0135]
本技术实施例中,在基于自相关矩阵φ计算相关系数的过程中,对自相关矩阵进行修改,使得自相关矩阵中对角线上的数值相等且为常数,从而减弱通道自相关的影响。其中,未修改之前的自相关矩阵可以理解为上述第一自相关矩阵,修改之后的自相关矩阵可以理解为上述第二自相关矩阵。
[0136]
另外,利用稀疏特性,将自相关矩阵中值小于第一阈值的值修改为0,得到的自相关矩阵可以理解为上述第三自相关矩阵,从而减小噪声所造成的扰动,减少计算量。
[0137]
(3)得到去混响后的音频数据
[0138]
示例性地,去混响后的音频数据d
(n,f)
可以理解为上述处理后的音频数据,可以用式(7)表示:
[0139][0140]
其中,n表示帧索引,f表示频率索引。对第一帧音频数据进行处理得到后,可以认为完成第一帧音频数据的去混响处理。
[0141]
(4)失调检测
[0142]
本技术实施例中,对去混响后的音频数据增加失调检测,失调检测可以通过下述式(8)表示:
[0143][0144]
可以理解的是,当音频数据为干净音频或混响音频时,由于语音信号的短时相关性以及时间延迟的存在,式(6)计算得到的相关系数不为0。目前,采用mclp算法对音频数据进行去混响处理后的输出信号可能存在失真,即输出信号的幅度可能会大于输入信号的幅度。当输出信号幅度大于输入信号幅度,表明mclp算法在该频点处有冗余信息产生。
[0145]
本技术实施例中,在满足即输出信号幅度小于或等于输入信号幅度的情况下,不修改输出信号,即输出通过式(7)计算得到的在满足即输出信号幅度大于输入信号幅度的情况下,将输出信号幅度修改为输入信号的幅度,即将输出信号幅度乘上输入信号幅度与输出信号幅度的比值,即式(8)中的从而减少冗余信息。
[0146]
(5)更新方差
[0147]
示例性地,可以采用式(9)对方差进行更新:
[0148][0149]
式(9)中,表示更新后得到的方差,用于当前帧的下一帧音频数据去混响处理。其中,表示利用当前帧对应的输入信号得到的方差,可以是麦克风a接收的一帧音频数据与其他麦克风对应接收的一帧音频数据的互相关结果的平均值。表示当前帧的经过去混响处理后得到的计算出的方差,可以是对的信号幅度取平方。可选地,对方差的计算设置最小值ε,当小于ε的情况下,取最小值ε。
[0150]
式(9)中,a(n)=cos(θ(n)-θ(n-1)),其中,θ(n)表示当前帧估计的波达方向角,θ(n-1)表示当前帧的前一帧估计的波达方向角。
[0151]
示例性地,在当前帧为麦克风a接收的第一帧音频数据,且经过以上步骤(1)-步骤(4)完成第一帧音频数据的去混响处理的情况下,按照式(9)对方差进行更新。特别地,对于第一帧音频数据来说,预设θ(n)=θ(n-1)。因此,第一帧音频数据的去混响处理后,得到更新的方差为便于理解将基于第一帧音频数据更新得到的方差称为第一帧去混响方差,上述第一帧去混响方差用于第二帧音频数据的去混响处理。
[0152]
对于麦克风a接收的第二帧音频数据来说,上述第一帧去混响方差作为初始方差进行去混响处理,其中,去混响处理过程与第一帧音频数据类似,即上述步骤(2)-步骤(4)。在完成上述第二帧音频数据的去混响处理后,根据上述式(9)更新方差。
[0153]
可以理解的是,对于第二帧音频数据来说,θ(n)表示第二帧音频数据估计的波达方向角,θ(n-1)表示第一帧音频数据估计的波达方向角;为麦克风a接收的第二帧音频数据与其他麦克风对应接收的第二帧音频数据的互相关结果的平均值;为第二帧音频数据去混响处理后得到的计算出的方差。因此,第二帧音频数据更新得到的方差是和加权的结果,为便于理解将基于第二帧音频数据更新得到的方差称为第二帧去混响方差,上述第二帧去混响方差用于第三帧音频数据的去混响处理。
[0154]
可以理解的是,后续其他帧的去混响处理以及方差更新与上述第二帧音频数据类似,这里不再赘述。这样,经过不断迭代,后续其他帧的去混响处理效果将越来越好。
[0155]
可以理解的是,上述过程以完成去混响处理的当前帧的视角去更新方差,如果以下一帧音频数据的视角去看,即下一帧未处理的音频数据为当前帧,那么,式(9)中的可以理解为利用当前帧的前一帧对应的输入信号得到的方差,因此,上述可以理解为上述第一方差。同理,式(9)中的可以理解为当前帧的前一帧的经过去混响处理后得到的计算出的方差,因此,可以理解为上述第二方差。
[0156]
同理,上述θ(n)可以理解为当前帧的前一帧估计的波达方向角,因此,θ(n)可以理解为上述第一方向角;上述θ(n-1)可以理解为当前帧的前第二帧估计的波达方向角,因此,θ(n-1)可以理解为上述第二方向角。最终,基于上述上述上述θ(n)以及上述θ(n-1)得到的结果可以理解为上述第三方差,基于该第三方差对当前帧进行去混响处理。
[0157]
以上详细阐述了本技术实施例的方法,下面阐述本技术实施例提供的装置。
[0158]
示例性地,请参阅图3,图3是本技术实施例提供的一种电子设备30的结构示意图。如图3所示,该电子设备30包括获取单元301、处理单元302以及修改单元303。可选地,还可以包括确定单元304,具体描述如下:
[0159]
获取单元301,用于获取待处理音频数据中的一帧音频数据,上述待处理音频数据为通过第一通道对声源信号采集后得到的音频数据;
[0160]
处理单元302,用于基于上述一帧音频数据计算第一自相关矩阵;
[0161]
修改单元303,用于在上述第一自相关矩阵中对角线上的数值不相等的情况下,将上述第一自相关矩阵中对角线上的数值修改为相等的常数,得到第二自相关矩阵;
[0162]
处理单元302,还用于基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
[0163]
在一种可能的实现方式中,处理单元302,具体用于在上述第二自相关矩阵中非对角线上的每个数值均大于或等于第一阈值的情况下,执行上述基于上述第二自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据步骤。
[0164]
在一种可能的实现方式中,修改单元303,还用于在上述第二自相关矩阵中非对角线上存在数值小于上述第一阈值的情况下,将上述第二自相关矩阵中非对角线上小于上述第一阈值的数修改为0,得到第三自相关矩阵;
[0165]
处理单元302,还用于基于上述第三自相关矩阵对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
[0166]
在一种可能的实现方式中,上述装置还包括确定单元304,用于在上述一帧音频数据为上述待处理音频数据中的第一帧音频数据的情况下,将上述第一帧音频数据分别与其他通道采集的第一帧音频数据之间的互相关结果的平均值作为初始方差;上述其他通道为电子设备中除上述第一通道以外的用于采集上述声源信号的通道;
[0167]
处理单元302,具体用于基于上述第二自相关矩阵和上述初始方差对上述第一帧音频数据进行去混响处理,得到处理后的音频数据。
[0168]
在一种可能的实现方式中,处理单元302,还用于在上述一帧音频数据不为上述待处理音频数据中的第一帧音频数据的情况下,基于第一方向角和第二方向角的差值对第一方差和第二方差进行加权,得到第三方差;其中,上述第一方向角为上述一帧音频数据的前一帧音频数据所在时间段内,声源与上述第一通道所在的位置之间的方向角,上述第二方向角为上述一帧音频数据的前第二帧音频数据所在时间段内,上述声源与上述第一通道所在的位置之间的方向角;上述第一方差为根据上述一帧音频数据的前一帧音频数据分别与其他通道对应采集的一帧音频数据之间的互相关结果的平均值得到的方差,上述第二方差为根据上述一帧音频数据的前一帧音频数据去混响处理后的音频数据得到的方差;上述声源用于产生上述声源信号;
[0169]
处理单元302,具体用于基于上述第二自相关矩阵和上述第三方差对上述一帧音频数据进行去混响处理,得到处理后的音频数据。
[0170]
在一种可能的实现方式中,修改单元303,还用于在上述处理后的音频数据的信号幅度大于上述一帧音频数据的信号幅度的情况下,将上述处理后的音频数据的信号幅度修改为上述一帧音频数据的信号幅度。
[0171]
请参阅图4,图4是本技术实施例提供的一种电子设备40的结构示意图。如图4所示,上述电子设备40包括存储器401、处理器402。进一步可选的,还可以包含通信接口403以及总线404,其中,存储器401、处理器402以及通信接口403通过总线404实现彼此之间的通信连接。
[0172]
其中,存储器401用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器401包括但不限于是随机存储记忆体(random access memory,ram)、只读存储器(read-only memory,rom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、或便携式只读存储器(compact disc read-only memory,cd-rom)。
[0173]
处理器402是进行算术运算和逻辑运算的模块,可以是中央处理器(central processing unit,cpu)、显卡处理器(graphics processing unit,gpu)或微处理器(microprocessor unit,mpu)等处理模块中的一种或者多种的组合。
[0174]
存储器401中存储有计算机程序,处理器402调用存储器401中存储的计算机程序,以执行上述图像配准方法。示例性地,在上述电子设备40为上述电子设备30的情况下,上述获取单元301获取的内容可以由通信接口403实现,上述处理单元302、修改单元303以及确定单元304执行的步骤可以由处理器402实现。
[0175]
本技术实施例还提供一种芯片。该芯片包括:处理器和存储器。其中,处理器的数量可以是一个或多个,存储器的数量可以是一个或多个。处理器通过读取存储器上存储的指令和数据,可执行上述方法,以及相关实施方式所执行的步骤。当然,该芯片中也可能没有存储器。
[0176]
示例性地,请参阅图5,图5是本技术实施例提供的一种模组设备的结构示意图。该模组设备50可以执行前述方法实施例中电子设备的相关步骤。该模组设备50包括:通信模组501、电源模组502、存储模组503以及芯片模组504。其中,电源模组502用于为模组设备提供电能;存储模组503用于存储数据和指令;通信模组501用于进行模组设备内部通信,或者用于模组设备与外部设备进行通信,用于执行上述获取单元301执行的步骤;芯片模组504可执行上述处理单元302、修改单元303以及确定单元304执行的步骤。
[0177]
本技术还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机代码,当计算机代码在计算机上运行时,使得计算机执行上述实施例的方法。
[0178]
本技术还提供一种计算机程序产品,该计算机程序产品包括计算机代码或计算机程序,当该计算机代码或计算机程序在计算机上运行时,使得上述实施例中的方法被执行。
[0179]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以上述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1