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

空间可识别子带音频源的检测和提取方法、装置以及系统与流程

2023-03-03 09:47:56 来源:中国专利 TAG:

空间可识别子带音频源的检测和提取方法、装置以及系统
1.相关申请的交叉引用
2.本技术要求来自于2020年6月11日提交的美国临时专利申请no.63/038,048、以及于2020年6月11日提交的欧洲专利申请no.20179447.6的优先权的权益,所述专利申请中的每一件都通过引用以其全文并入本文。
技术领域
3.本公开总体上涉及音频信号处理,尤其涉及音频源分离技术。


背景技术:

4.双声道(two-channel)音频混合(例如,立体声混合)是通过将多个音频源混合在一起来创建的。存在期望从双声道混合中检测并提取各个个体音频源的若干示例,包括但不限于:再混合应用,其中将音频源重新定位在双声道混合中;上混合应用,其中将音频源定位或重新定位在环绕声混合中;以及音频源增强应用,其中提升某些音频源(例如,语音/对话)并将其添加回双声道或环绕声混合中。


技术实现要素:

5.下文的附图和描述中阐述了所公开的实施方式的细节。根据本说明书、附图和权利要求,其他特征、目的和优点是显而易见的。
6.在实施例中,一种方法包括:使用一个或多个处理器将双声道时域音频信号的一个或多个帧变换成包括多个时频片(time-frequency tile)的时频域表示,其中,时频域表示的频域包括多个频率仓(frequency bin),该多个频率仓被分组成多个子带;针对每个时频片:使用一个或多个处理器计算时频片的空间参数和电平;使用一个或多个处理器,使用移位参数和挤压参数(shift and squeeze parameters)修改空间参数;使用一个或多个处理器,使用经修改的空间参数、电平、以及子带信息获得用于每个频率仓的软掩码(softmask)值;以及使用一个或多个处理器,将软掩码值应用于时频片以生成所估计的音频源的经修改的时频片。
7.在实施例中,将时频片的多个帧组装成多个组块(chunk),每个组块包括多个子带,并且该方法包括:针对每个组块中的每个子带:使用一个或多个处理器计算组块中的每个时频片的空间参数和电平;使用一个或多个处理器,使用移位参数和挤压参数修改空间参数;使用一个或多个处理器,使用经修改的空间参数、电平、以及子带信息获得用于每个频率仓的软掩码值;以及使用一个或多个处理器,将软掩码值应用于时频片以生成所估计的音频源的经修改的时频片。
8.在实施例中,该方法进一步包括:使用一个或多个处理器将经修改的时频片变换成多个时域音频源信号。
9.在实施例中,空间参数包括时频片中的每一个的平移(panning)和相位差。
10.在实施例中,该方法包括:针对每个子带,确定平移参数的统计分布和相位差参数
的统计分布;将移位参数确定为与平移参数和相位差参数的相应统计分布的峰值相对应的平移参数和相位差参数;以及将挤压参数确定为平移参数和相位差参数的相应分布的峰值周围的宽度,以捕获预定量的音频能量。
11.在实施例中,预定量的音频能量是平移参数的统计分布中总能量的至少百分之四十,并且是相位差参数的统计分布中总能量的至少百分之八十。
12.在实施例中,软掩码值是从针对中心平移(center-panned)目标源训练的空间电平滤波(slf)系统的查找表或函数获得的。
13.在实施例中,将双声道时域音频信号的一个或多个帧变换成频域信号包括将短时频率变换(stft)应用于双声道时域音频信号。
14.在实施例中,多个频率仓被分组成倍频程子带(octave subband)或近似倍频程子带。
15.在实施例中,空间参数包括针对每个时频片的平移参数和相位差参数,并且计算移位参数和挤压参数进一步包括:可选地将时频片的连续帧(consecutive frames)组装成组块,每个组块包括多个子带;针对每个组块中的每个子带:在平移参数上创建经平滑的电平参数加权(level-parameter-weighted)直方图;在第一相位差参数上创建经平滑的电平参数加权的第一相位差直方图,其中,第一相位差参数具有第一范围;在第二相位差参数上创建经平滑的电平参数加权的第二相位差直方图,其中,第二相位差参数具有不同于第一范围的第二范围;在经平滑的平移直方图中检测平移峰值;确定平移峰值宽度;确定平移中间值;在经平滑的第一相位差直方图中检测第一相位差峰值;确定第一相位差峰值宽度;确定第一相位差中间值;在经平滑的第二相位差直方图中检测第二相位差峰值;确定第二相位差峰值宽度;以及确定第二相位差中间值,其中,移位参数包括平移中间值以及第一相位差中间值或第二相位差中间值,并且挤压参数包括平移峰值宽度以及第一相位差峰值宽度或第二相位差峰值宽度。上述实施例的平移参数的统计分布可以包括平移参数上的经平滑的电平参数加权直方图。相位差参数的统计分布可以包括第一相位直方图和第二相位直方图。确定与平移参数的统计分布的峰值以及平移参数的统计分布的峰值周围的宽度相对应的平移参数可以包括:检测平移峰值,确定平移峰值宽度,以及确定平移中间值。确定与相位差参数的统计分布的峰值以及相位差参数的统计分布的峰值周围的宽度相对应的相位差参数可以包括:检测第一相位差峰值和第二相位差峰值,确定第一相位差峰值宽度和第二相位差峰值宽度,确定第一相位差中间值和第二相位差中间值。
16.在实施例中,该方法进一步包括:确定第一相位差峰值宽度和第二相位差峰值宽度中的哪一个(在调整之后)更窄,其中,移位参数包括平移中间值以及第一相位差中间值或第二相位差中间值中具有更窄峰值的,并且挤压参数包括平移峰值宽度以及第一相位差峰值宽度或第二相位差峰值宽度中更窄的。应该理解的是,“(在调整以后)更窄”指示仅当第二相位差值明显比第一相位差值更窄时才使用第二相位差值;这有助于确保值的稳定性。在实施例中,该值是窄了一倍(twice as narrow)。术语“(在调整以后)更窄”还意味着对于相同量的所捕获音频能量,更多能量集中在峰值周围。
17.在实施例中,空间参数包括针对每个时频片的平移参数和相位差参数,并且计算移位参数和挤压参数进一步包括:针对每个组块中的每个子带:在平移参数上创建经平滑的电平参数加权直方图;在第一相位差参数上创建经平滑的电平参数加权的第一相位差直
方图,其中,第一相位差参数具有第一范围;在第二相位差参数上创建经平滑的电平参数加权的第二相位差直方图,其中,第二相位差参数具有不同于第一范围的第二范围;在经平滑的平移直方图中检测平移峰值;确定平移峰值宽度;确定平移中间值;在经平滑的第一相位差直方图中检测第一相位差峰值;确定第一相位差峰值宽度;确定第一相位差中间值;在经平滑的第二相位差直方图中检测第二相位差峰值;确定第二相位差峰值宽度;以及确定第二相位差中间值,其中,移位参数包括平移中间值以及第一相位差中间值或第二相位差中间值,并且挤压参数包括平移峰值宽度以及第一相位差峰值宽度或第二相位差峰值宽度。
18.在实施例中,该方法进一步包括:确定第一相位差峰值宽度和第二相位差峰值宽度中的哪一个(在调整之后)更窄,其中,移位参数包括平移中间值以及第一相位差中间值或第二相位差中间值中具有更窄峰值的,并且挤压参数包括平移峰值宽度以及第一相位差峰值宽度或第二相位差峰值宽度中更窄的。
19.在实施例中,第一相位差范围是从-π至π弧度,并且第二相位差范围是从0至2π弧度。
20.在实施例中,使用针对先前组块和后续组块创建的平移直方图和相位差直方图,在时间上对平移直方图以及第一相位直方图和第二相位直方图进行平滑;或收集先前组块和后续组块中的加权数据,然后直接用于形成直方图。
21.在实施例中,平移峰值宽度捕获平移直方图中总能量的至少百分之四十,并且第一相位差峰值宽度和第二相位差峰值宽度各自捕获它们相应的直方图中总能量的至少百分之八十。
22.在实施例中,将每个组块中的每个子带的移位参数和挤压参数转换成对于一个或多个帧中的每个帧都存在。
23.在实施例中,使用线性插值将平移移位参数和挤压参数转换为对于每个帧都存在,并且使用零阶保持将第一相位差移位参数或第二相位差移位参数转换为对于每个帧都存在。
24.在实施例中,该方法进一步包括:针对一个或多个组块中的一个或多个子带确定每单位时间的单个平移中间值和单个平移峰值宽度值。
25.在实施例中,在时间和频率上对软掩码值进行平滑。
26.在实施例中,一种装置包括:一个或多个处理器以及存储器,该存储器存储指令,这些指令在由一个或多个处理器执行时使一个或多个处理器执行前述方法中的任何一种方法。
27.在实施例中,一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质具有存储在其上的指令,这些指令在由一个或多个处理器执行时使一个或多个处理器执行前述方法中的任何一种方法。
28.本文公开的特定实施例提供了以下优点中的一个或多个。从双声道混合中高效且稳健地提取空间可识别子带音频源。该系统是稳健的,因为它可以提取任何空间可识别子带音频源,包括经过振幅平移的音频源和未经振幅平移的音频源,如声道之间有延迟地混合或记录的音频源、有混响地混合或记录的音频源、以及具有随子频带(frequency subband)变化的空间特性的音频源。该系统也很高效,几乎不需要训练数据或几乎没有延时。
附图说明
29.在下文所参考的附图中,以框图、流程图和其他图的形式图示了各种实施例。流程图或框图中的每个框可以表示包含用于执行指定逻辑功能的一个或多个可执行指令的模块、程序或代码部分。尽管这些框以执行这些方法步骤的特定顺序图示,但是它们可能不一定严格按照所图示的顺序执行。例如,取决于相应操作的性质,这些框可以按相反的顺序执行或同时执行。还应当注意的是,框图和/或流程图中的每个框及其组合可以由用于执行指定功能/操作的基于软件或基于硬件的专用系统来实施,或者由专用硬件和计算机指令的组合来实施。
30.图1是根据实施例的用于从双声道混合中检测并提取空间可识别子带音频源的系统的框图。
31.图2是根据实施例的经过训练以提取平移源的空间电平滤波器(slf)的输入和输出的视觉描绘。
32.图3是根据实施例的从双声道混合中检测并提取空间可识别子带音频源的过程的流程图。
33.图4示出了根据实施例的用于实施参考图1至图3描述的系统和过程的设备架构的框图。
34.各附图中使用的相同附图标记指示相似的元素。
具体实施方式
35.所公开的实施例允许从双声道音频混合中对空间可识别子带音频源进行检测和提取(音频源分离)。如本文所使用的,“空间可识别”子带音频源是能量在空间上集中在倍频程子频带或近似倍频程子频带内的子带音频源。
36.所公开的实施例主要用在声源分离系统的上下文中,该声源分离系统将两个声道(立体声)信号作为输入,并且在如短时傅立叶变换(stft)域等频域中操作。在典型的声源分离系统中,使用四个基本步骤。
37.第一,应用前端以将双声道时域音频信号变换到频域中。在实施例中,通常使用stft,该stft在频域中产生输入信号的声谱图(例如,幅度和相位)。stft输出的元素可以通过指示它们的时间和频率中的索引来引用;每个这样的元素都可以被称为时频片。每个时间点对应于帧号,该帧号包括多个频率仓,这些频率仓可以被细分或分组为子带。stft参数(例如,窗口类型、跳跃大小(hop size))由本领域的普通技术人员选择以针对源分离问题相对优化。根据stft表示,所描述的系统计算空间参数θ(θ)和以及电平参数u(均在下面被定义)并且记下相关的准倍频程(quasi-octave)子带b。
38.第二,检测音频源的存在以及描述这些音频源的空间身份的参数。
39.第三,使用空间参数θ(θ)和以及电平参数u通过将幅度软掩码(例如,在连续范围[0,1]中的值)应用于每个声道的stft表示的每个仓(例如,左声道和右声道的每个时频片的每个仓)来执行对所估计的(多个)音频源的提取。
[0040]
第四,通过对每个声道的stft表示执行逆短期傅立叶变换(istft),将(多个)音频源的stft域估计转换为双声道时域估计。应该注意的是,虽然此步骤在本上下文中按顺序被描述为“第四”,但在该第四步骤之前可能存在stft域中发生的其他可选处理。在实施例
中,在其他stft域处理完成之后执行istft。
[0041]
stft表示中的每个仓的参数包括两个空间参数θ(θ)和以及参数u,这些参数被如下定义和计算。
[0042]
θ(θ)是每个时频片(ω,t)的检测到的平移,被定义为:
[0043][0044]
其中“满左(full left)”是0弧度,而“满右(full right)”是π/2弧度,并且“死点(dead center)”是π/4弧度。应该注意的是,“检测到的平移”也可以被认为是被表示为从0到π/2的连续值的声道间(interchannel)差异。
[0045]
是每个时频片的检测到的相位差,被定义为:
[0046][0047]
其中,的范围在从-π到π弧度,其中0意味着在两个声道中检测到的相位是相同的。对于某些内容,可能集中在 /-π附近,即,位于此处定义的范围的相反端。因此,定义其数据与相同但在单位圆上旋转以使得范围从0至2π。从数学上讲,这仅意味着任何低于0的值都被设置为它们的先前值加上2π。应该注意的是,在系统的特定部分中有用。
[0048]
u是每个时频片的检测到的电平,被定义为:
[0049]
u(ω,t)=10*log
10
(|xr(ω,t)|2 |x
l
(ω,t)|2,
ꢀꢀ
[3]
[0050]
这是两个声道的“毕达哥拉斯”幅度的分贝(db)版本。它可以被认为是单幅度(mono magnitude)声谱图。等式[3]中u的版本以db为尺度,并且也可以被称为u db。还可以在系统中的各个点处使用u的各种尺度。例如,u-power(u幂)是u-power(ω,t)=(|xr(ω,t)|2 |xl(ω,t)|2)。可以通过将u提高到各种指数(幂)来生成u的附加版本。这与本文中所有对“电平加权直方图”的提及特别相关。应该理解的是,这样的提及暗示在应用电平加权时可以使用各种幂;建议使用1与2之间的幂,并且在如前文提到的特定步骤中建议使用u-power(2的幂)。
[0051]
每个频率仓ω被理解为表示特定频率。然而,数据也可以被分组在子带内,这些子带是连续仓的集合,其中每个频率仓ω属于一子带。将数据分组在子带内对于系统中执行的某些估计任务是特别有用的。在实施例中,使用倍频程子带或近似倍频程子带,但是也可以使用其他子带定义。分带(banding)的一些示例包括如下定义频带边缘,其中,以hz为单位列出值:
[0052]
[0,400,800,1600,3200,6400,13200,24000],
[0053]
[0,375,750,1500,3000,6000,12000,24000],以及
[0054]
[0,375,750,1500,2625,4125,6375,10125,15375,24000]。
[0055]
应该注意的是,如果严格遵循“倍频程”定义,则可能有无限多个这样的频带,其中最低频带接近无穷小宽度,因此需要进行一些选择以允许有限数量的子带。在实施例中,最低频带被选择为在大小上等于第二频带,但是在其他实施例中可以使用其他惯例。
[0056]
在实施例中,系统处理连续帧组,下文中也称为“组块”。这允许使用来自多个帧的数据来实现更稳定的空间属性估计。通过使用组块,而不仅仅是更长的帧长度,保留了特定
帧长度(例如,50-100ms之间)的优势(例如,准稳定性(quasistationarity)、源分离的最优性)。可以通过选择小于组块中的帧数量的组块跳跃大小来使组块重叠。在实施例中,系统使用10帧的组块,并且组块跳跃大小为5帧。因为这些帧本身将以1024个样本(假设采样率为48khz)的帧跳跃大小进行跳跃,并且其长度为4096个样本,所以这些组块将需要约277毫秒的数据。取决于计算、延时和数据稳定性实施要求,可以使用更小或更大的组块或跳跃大小,其中,所使用的前瞻(lookahead)和回顾(lookback)的量也由实施需要来确定。在实施例中,组块有5个前瞻帧和5个回顾帧。
[0057]
在实施例中,本文描述的稳健、高效的声源分离系统使用空间电平滤波(slf)系统。空间电平滤波器(slf)是已被训练以实现以下目的的系统:从包括具有给定电平分布和空间参数的背景的混合中提取具有给定电平分布和指定空间参数的目标源。出于说明和实用的目的,下面对slf的描述将假设目标空间参数仅由平移参数θ1构成,并且进一步假设θ1对应于中心平移源。本文描述的技术也可以与经过训练以提取空间参数不如此受约束的目标源的slf结合使用;下面在移位参数和挤压参数的上下文中描述这样的技术。
[0058]
平移参数θ1存在于如下的信号模型的上下文中,在该信号模型中,目标源s1和背景b取决于上下文而被混合到两个声道中,在下文中称为“左声道”(x1或xl)和“右声道”(x2或xr)。
[0059]
假设使用恒幂定律(constant power law)对目标源s1进行幅度平移。由于其他平移定律可以被转换为恒幂定律,因此在信号模型100中使用恒幂定律是非限制性的。在恒幂定律平移下,混合到左/右(l/r)声道的源s1被描述如下:
[0060]
x1=cos(θ1)s1,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
[1]
[0061]
x2=sin(θ1)s1,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
[2]
[0062]
其中,θ1的范围在从0(平移至最左的源)至π/2(平移至最右的源)。我们可以在短时傅立叶变换(stft)域中将其表示为
[0063]
x
l
=cos(θi),si,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
[3]
[0064]
xr=sin(θ1)s1。
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
14]
[0065]
然后回顾一下,“目标源”被假设进行了平移,这意味着该源可以用θ1来表征。通过检查应该清楚,如果信号在时频空间中的给定点处仅包含目标源,则上述检测到的平移参数θ(θ)将产生目标源平移参数θ1的完美估计。
[0066]
返回至如何使用slf的概念,回想上面θ(ω,t)、以及u(ω,t)的上述定义,这些也可以被记为并且被理解为对于每个时频片(ω,t)都存在。θ(θ)和是检测到的“空间参数”,并且u是检测到的“电平参数”。进一步应该注意的是,所讨论的时频片的频率值ω是大致倍频程子带b的成员,slf是针对该大致倍频程子带进行训练的。在一个实施例中,对于时频表示中的每个时频片(ω,t),slf获取四个值的输入并输出单个stft软掩码值。因此,stft软掩码值由任何经训练的slf确定,对于每个时频片,该slf采用四个输入并产生一个输出。软掩码值乘以输入混合表示值以产生所估计的目标源值。
[0067]
应该注意的是,采用四个输入值并产生一个输出值的slf可以以函数(四个输入、一个输出)或表(四维,其中表中存储的值代表输出值)的形式存在。在实施例中,所使用的
slf采用表的形式。表查找106是用于使用本领域技术人员熟悉的任何方法来访问表中的值的技术。
[0068]
典型经训练的slf查找表的输入和输出的可视化描述如图2所示。图2所图示的非限制性示例性slf系统是可以在所公开的实施例中使用的一个示例slf系统。也可以使用其他slf系统,这些系统:1)经过训练以提取中心平移源;2)至少具有四个输入,这些输入包括:如上定义的θ、u、以及子带b;3)至少具有一个输出,该输出是从0至1(含端值)的浮点值;4)对于每个stft仓执行输入/输出操作;5)具有stft大小的输出,该输出由针对每个stft片的浮点值(称为软掩码)构成;以及6)具有输入stft表示,该输入stft表示乘以软掩码值以获得所估计的源输出stft表示,然后将该源输出stft表示变换为双声道时域的所估计的源信号。
[0069]
为训练数据检测到的空间θ和参数将在每个子带中具有分布。当存在中心平移源时,这些值给出了这样的数据的“散布”或“宽度”的一些概念。在实施例中,在训练期间执行对每个子带中的数据的直方图分析,其跟踪宽度以相对于θ捕获40%的能量或相对于捕获80%的数据。这些宽度分别被记录为每个子带的“参考θ宽度”和“参考宽度”。对于图2中描绘的示例slf系统,参考θ宽度(在7个子带上)为[0.1 0.07 0.04 0.10 0.12 0.2 0.12],并且参考宽度为[0.6 0.5 0.4 0.6 0.8 1.0 1.0]。
[0070]
在实施例中,通过以下方式创建slf查找表:从频域中的子频带中的多个目标源电平和空间分布获得第一样本集;从频域中的子频带中的多个背景电平和空间分布获得第二样本集;将第一样本集和第二样本集相加以创建组合样本集;针对每个子带,检测组合样本集中的每个样本的电平参数和空间参数;在子带内,通过目标源和背景的相应电平和空间分布对检测到的电平参数和空间参数进行加权;将组合样本集中的每个样本在子带内的加权后的电平参数、空间参数和信噪比(snr)存储在表中;以及通过子带以及加权后的电平参数和空间参数对表重建索引,使得该表包括子带以及加权后的电平参数和空间参数的目标百分位snr,并且针对子带以及量化后的检测到的空间参数和电平参数的给定输入,从表中获得与量化后的检测到的空间参数和电平参数相关联的所估计的snr。然后可以将slf查找表存储在数据库中以供在源分离中使用。
[0071]
本文描述的示例性音频源分离系统是基于对包括对话的典型音频源混合示例的调查研究而设计的。该系统利用调查研究期间发现的信息。下一部分将简要总结调查研究的结果、相关假设、以及相关系统目标。
[0072]
·
子带空间集中度与可理解对话源相关。当u-power加权2-d直方图被绘制在针对帧组块的θ和数据的子带分布上时,如果存在集中峰值(例如,大部分能量集中在数据的子带分布上时,如果存在集中峰值(例如,大部分能量集中在空间的10%以下),则带通信号也将是可理解的——或者像倍频程带通语音信号一样可理解。因此,系统将尝试识别、参数化并捕获这样的能量。
[0073]
·
倍频程子带精度对于“延迟源”的识别和提取可以是足够好的。声道间延迟估计是比在stft域中计算更具挑战性的问题,尤其是当存在大量干扰时。然而,对于许多或大多数典型的混合或延迟录制的内容,在倍频程子带内仍然有足够的相对于的集中度,从而可以基于来识别和提取源。这是重要的观察结果,因为它允许进行源分离而无需明确地估计延迟。能量绕其集中的θ和的值将随子频带而不同。给定这些观察结果,系统将估计每
单位时间每个子带中的集中度。
[0074]
·
对于某些示例,每个子频带提取一个源是有效且高效的。在声源分离中,任务是取决于目标或上下文在单位时间内提取一个或多个源。当目标是从典型的娱乐内容中高效地提取空间可识别源(例如,对话)时,实验表明,就产生的输出音频质量而言,每个大约倍频程子带提取一个源可能就足够了。这是因为两个源同时在同一子带中占主导地位的情况可能很少见。这是“w-分离正交性(w-disjoint orthogonality)”的一个版本,该版本对每个stft(更高频率分辨率)仓进行类似的观察。需要强调的是,音频源分离仍然发生在各个stft仓中;只进行源识别和空间参数估计,对此,发现大约倍频程子带处理是足够的。基于观察结果,系统将尝试在每单位时间内每个子带仅参数化一个源。
[0075]
·
对于语音源,在识别空间参数或执行提取时避开某些频率。一些语音能量存在于非常低的频率处,这取决于扬声器的基频。在最好情况场景下,此能量可以用于识别空间参数和执行提取。实际上,由于特殊效果和其他背景的存在,这种场景很少存在于典型的娱乐内容中。由于这个原因,当检测对话时,排除约175hz以下的数据,并且当提取对话时,不会尝试提取约117hz以下的数据。由于类似原因以及计算成本,检测或提取不考虑高于大约13200hz的频率。
[0076]
·
如果违反了假设,则需要进一步注意。上述观察结果导致下面描述的声源分离系统的设计,该系统基于可检测的子带空间集中度来识别和提取源。假设目标源在子带中至少与任何干扰源一样空间可识别。这通常还要求目标源在子带中也至少与干扰源处于同一电平。
[0077]
图1是根据实施例的用于从双声道混合中检测并提取空间可识别子带音频源的示例性系统100的框图。系统100包括变换模块101、参数提取模块102、检测模块103、参数修改模块104、表查找模块105、查找表106、软掩码应用模块107以及逆变换模块108。这些模块中的每一个都可以以硬件或软件、或者硬件或软件的组合被实施。在实施例中,系统100可以使用如参考图4所示的设备架构来实施。现在将参考图1依次描述每个模块。
[0078]
参考图1的左侧,变换模块101使用本领域技术人员所熟悉的窗口和参数将双声道时域混合音频信号(例如,立体声信号)变换成频域表示,如stft域表示(例如,声谱图/时频片)。在实施例中,窗口是以1024帧跳跃的汉宁窗口(hann window)的4096点平方根,并且stft是用于48khz采样输入的4096点fft。也可以使用如高斯窗口等其他窗口。在限制内,可以使用保持以毫秒为单位的跳跃大小和帧长度的尺度以获得较低或较高的采样率。
[0079]
提取模块102针对stft表示中的每个时频片(仓和帧)计算上述参数即,如果示例具有1000帧并使用2049个独特的stft仓(假设4096点stft),则每个参数将有2,049,000个值。
[0080]
在实施例中,基于测量的输入数据电平来调整u参数。对于每个帧,为当前帧和一些合理数量的先前帧组装数据的缓冲区。这旨在成为长期测量。出于实际目的,缓冲区长度通常为多秒(例如,5秒)。对于缓冲区中的数据,使用相对于满刻度的响度(lkfs)方法计算帧的电平。也可以使用其他方法。然而,无论使用哪种方法,它都应该与用于计算训练数据电平的方法相匹配。应该注意的是,假设先前已对训练数据执行了类似但更长期的测量,以产生测量的训练数据电平。
[0081]
在实施例中,然后将电平参数u调整如下:udb=udb-(测量的训练数据电平-测量
的输入数据电平 额外的电平移位),其中,测量的训练数据电平是以db(如上面所描述的训练数据的lkfs)为单位的总电平值。测量的输入数据电平是以db(如以lkfs)为单位的输入数据电平值,如上所描述的,它是针对每个帧实时测量的。
[0082]
额外的电平移位是可选的用户可选择值。该值在下面描述的系统100的后续部分中使用,但在此处解决。通过选择正值,用户可以指定输入数据处于比实际更高的电平,这驱动系统使用slf系统的更多选择性值。系统操作员可以经由接口选择该参数,其示例包括api调用中的参数选择或编辑配置文件的文本。
[0083]
图2是slf系统的输入和输出的采样表示,提供了相关slf系统的示例,但是可以利用任何slf系统。图2中的示意图是4维图。四个输入变量由每个子图的左右轴线和进出轴线以及竖直子图索引和水平子图索引表示。这些变量分别对应于输入变量:(1)经修改的θ、(2)经修改的(3)子带b、(4)电平u。应该注意的是,出于实际原因,水平子图维度(电平u)并未描绘存储在slf查找表中的所有电平;这样做将需要128个左右子图,因为在表中的128db范围内使用了1db增量。实际上,更精细或更粗略的增量可以分别用于更高的精度或更高的查找效率。输出变量由每个子图的竖直值表示;这对应于0与1之间的软掩码值。
[0084]
当查看图2时,应该注意的是,从左到右有很多“未显示”的子图。对额外电平移位使用正值对应于从与输入电平相对应的给定子图移动至与更高输入电平相对应的更右子图(或对应的未显示数据)。负值对应于移动至更左子图(或对应的数据)。通常可以观察到,移动至更右子图(或移动至与这样的子图相对应的表中数据,无论其是否包括在图2中)产生更具选择性(较不“平坦”)的滤波。这与更少的背景捕获但更多的源估计中的伪像相关联。相反,使用更低的值会产生相反的效果,如更多的背景捕获但更少的伪像。
[0085]
检测模块103针对每个子带检测一个空间可识别音频源。这样做的推荐方法涉及直方图,并在下面详细描述。然而,符合以下条件的任何方法(例如来自帕尔森窗口(parzen window)的分布估计)满足系统的设计要求:(1)估计θ和上相关分布的峰值,(2)估计所述分布的范围以相对于θ和捕获大量能量,例如预定量的音频能量(建议对于θ为40%和对于为80%)。应该注意的是,对于在13khz以上几乎没有能量的对话音频源,检测最高倍频程的成本可能不值得使用。因此,该程序可能仅适用于最低频率等于或低于13khz的子带。检测模块103将连续的帧数据组装成组块(例如,10帧组块)。对于每个组块中的每个子带(如果在第一子带中,低于175hz的数据被排除,如上文所建议的),检测模块103在θ上创建u-power加权直方图,该直方图在θ上是平滑的。此外,将相同的过程被应用于(范围从-π至π)和(范围从0至2π)。u-power加权直方图可以使用任何数量的仓(例如,相对于θ51个仓,相对于个仓)。因为较低的子带具有较少的数据点,所以它们将需要更多的平滑。在另一实施例中,对于较低的子带可以使用较少的直方图仓可以用,而对于较高的子带可以使用较多的直方图仓。可以使用本领域技术人员熟悉的技术执行平滑。然而,在优选实施例中,建议在θ和中的每一个上使用平滑核,这些平滑核对应于θ或数据范围的以下分数值:41%、41%、37%、29%、22%、18%以及18%。应该注意的是,这7个分数值对应于如图2所示的7个子频带b。在实施例中,可以使用保持位于直方图的两端的峰值的平滑技术。
[0086]
假设随着时间的推移积累了足够的组块,则应用平滑器相对于时间平滑直方图。即,针对给定组块的θ直方图应受针对该组块的前后组块的θ直方图的影响。对于和
的直方图,情况类似。建议的权重如下:当前组块1.0、前一组块0.4、前一组块之前的组块0.2、后一组块0.1。根据应用,平滑的方法可以(1)跨时间共享加权数据,然后从平滑后的数据创建直方图,或(2)首先创建直方图,然后跨时间共享加权直方图,从而平滑直方图。当内存和计算量有限时,可以使用方法(2)。
[0087]
再次参考图1,检测模块103如下拾取并检测峰值宽度。对于θ直方图,检测峰值的θ值,称为“θ中间(thetamiddle)”,并且还检测捕获直方图中40%的能量所需的此峰值周围的宽度,称为“θ宽度(thetawidth)”。对和应用相同的过程,记录中间(phimiddle)、中间(phi2middle)、宽度(phiwidth)和宽度(phi2width),但在记录宽度时要求捕获80%而不是40%的能量。回顾一下,θ的范围是从0(最左)至π/2(最右),因此最大的θ宽度值总是小于π/2。回顾一下,的范围从-π至π弧度(表示单位圆上的所有相位值),因此最大的宽度值将始终小于2π。另外应该注意的是,80%和40%的能量捕获是建议值,也可以选择其他百分比。
[0088]
现在已知和的宽度,基于较小的宽度值指示哪个参数在空间中具有更高的集中度来记录中间和宽度的最终值。然而,宽度仅当至少小于宽度的二分之一时才被选择。这在存在相对于的非常广泛分布的准随机数据时允许减少在与之间的快速交替。
[0089]
现在,每个子带和组块的θ中间、θ宽度、中间、以及宽度参数都是已知的。(回顾一下,子带和仓是不同的:只有约7个子带,但很可能有2049个独特的仓。帧和组块也是不同的;每个组块中有多个帧。)。通过使用一阶线性插值将θ中间、θ宽度、以及宽度参数转换为每帧存在,但是也可以使用本领域技术人员熟悉的其他技术。通过使用零阶保持将中间参数转换为每帧存在,以避免在某些组块接近或等于 π和某些组块接近或等于-π的情况下发生快速相位变化。参数θ中间和θ宽度在下文中也被称为“θ移位和挤压”参数,并且参数中间和宽度在下文中也被称为“移位和挤压”参数。这四个参数在下文中统称为“移位和挤压”或“s&s”参数。
[0090]
s&s参数在概念上可以理解为表示检测到的θ和数据的集中度之间的差异、以及对于具有有限背景或无背景的理想中心平移源的集中度。这个概念稍后将允许系统使用s&s参数来修改检测到的数据,其方式使得可以使用针对中心平移源设计的slf来提取在θ和上具有任意集中度的目标源。在大多数情况下,这样的应用应该被理解为是最佳和推荐的。然而,所使用的slf不需要仅针对中心平移源进行训练,s&s参数不需要仅相对于中心平移源进行计算,并且系统不需要将自身限制为仅使用单个经训练的slf模型来执行目标源提取。通过计算相对于经训练的slf目标源参数的s&s参数,可以使用任意slf模型,包括更多数量的模型。出于效率考虑,系统使用单个中心平移源slf。
[0091]
上述步骤在每个子带内针对每个θ和生成对应于“中间”和“宽度”的值。在一些实施例中,还可能期望每单位时间对于θ具有考虑了所有子带中的数据的单个总体“中间”值。为了实现这一点,在进行峰值拾取之前针对给定的组块如下计算大多数子带θ直方图的加权和。由于低频率下空间模糊的特殊效果——这可能会特别挑战语音源的检测,因此可选地完全忽略子带1。通过将子带2直方图缩放一定因子(例如0.1)来降低子带2的权重。
对其他子带直方图同等地加权(例如,通过每个缩放1.0)。应该注意的是,虽然较高的倍频程子带往往具有较低的每仓能量,但这些子带具有更多的仓,从而抵消了这种影响,并确保所有子带都具有感知相关的机会来对单个θ估计产生影响。一旦如上文所述的针对给定组块创建了组合的θ直方图,就相对于其他时间组块如上所述地对直方图进行平滑,以获得θ中间等。接下来,执行简单的峰值拾取。所拾取的峰值是每组块的单个θ值。在实施例中,在组块之间应用线性插值以获得每帧的这些值。以这种方式获得的每帧单个θ值在下文中也称为“单个θ(singletheta)”。
[0092]
再次参考图1,参数修改模块104使用移位和挤压(s&s)参数来修改输入至slf系统的参数值。这部分的步骤如下。逐帧并且逐子带进行处理。即,下面的步骤假定在一帧和子带内进行处理。如前所述,可以可选地跳过频率大部分或完全超出所考虑范围(例如,频率在13khz以上)的任何子带;当然,如果s&s参数检测跳过了对应子带,则这些子带应该被跳过,因为它们将没有数据起作用。如果没有另外说明,本文变量中描述的数据特定于所考虑的帧和子带。例如,“θ中间”被理解为具有针对每个帧和子带的值,因此对θ中间的提及暗指对当前帧和子带的考虑。
[0093]
如上所建议的,当考虑第一子带的slf系统输出值时,可以忽略大约117hz以下的频率(未给出输入),或者同样地,对应的软掩码值可以在它们被计算之后被设置为零。应该注意的是仓与子带之间的关键区别。对于单个子带中的每个仓,θ、以及u的“原始数据”都是单个的。例如,子带4可以包含136个仓。特定帧的所有136个仓都有都是单个的。例如,子带4可以包含136个仓。特定帧的所有136个仓都有的单个值,但对应于该帧中的θ中间、θ宽度、中间以及宽度的针对“子带4”的单个值。
[0094]
在实施例中,θ值根据其s&s参数如下修改。
[0095]
计算:挤压因子(squeezefactor)=θ宽度/(与要应用的经训练的slf相对应的参考θ宽度值)。如果挤压因子在[1.0,1.5]范围之外,则使其回到此范围内。应该注意的是,可以使用高于1.5的值来允许更充分地捕获更扩散的源。值为1.5的挤压因子为提取空间可识别源提供了良好的平衡。为了使系统更具选择性,可以通过将参考θ宽度(和参考宽度)值乘以0.5或其他合适的因子来缩小它们。
[0096]
计算:移位因子(shiftfactor)=(该帧和子带的)θ中间-π/4。应该注意的是,此处使用π/4是因为它代表中心平移源。要使用的经训练的slf系统应当是针对中心平移源的。
[0097]
计算:与中间的距离(distsfrommiddle)=θ中间-(该帧和该子带中每个仓的原始θ数据)。
[0098]
计算:新的与中间的距离(newdistsfrommiddle)=与中间的距离/挤压因子。
[0099]
计算:修改的θ(thetamodified)=θ中间 新的与中间的距离-移位因子;
[0100]
如果修改的θ超出[0,2*π]范围,则将其限制在该范围内。
[0101]
使用类似的方法根据s&s参数修改值。应该注意的是,与θ情况会有一些关键差异。
[0102]
计算:
[0103]
这可能会使一些数据超出[-π,π]范围,因此,使用相位的循环处理来使所有值回到该范围内。即,将低于-π的任何值加上2*π,并且从高于π的任何值减去2*π。
[0104]
计算:
[0105]
在这一点上,挤压因子值应该像上面的θ一样受到限制。但在这里,还考虑了额外的现实情况。根据定义,具有接近0(最左)或π/2(最右)的“极端”θ值的源被预期在上始终具有广泛的分布。因此,当θ中间采用极值时,对维度的“挤压”施加严格限制并不是最优的。为确保施加合理的限制,执行以下程序。第一,基于对应的参考宽度值如下计算“理论最大挤压”(tpms):tpms=2*π/(该子带的参考宽度)。该值仅与合理接近中心θ值之外的值,即,那些大致在0.231至1.3398范围之外的值相关,回顾一下,θ的整个范围是0至π/2。对于从0.231至1.3398的中间范围内的值,使用常规的最大挤压因子,该常规的最大挤压因子为1.5。对于非常接近0或π/2的值(在这些值的5%以内的值),使用理论最大值。对于已关注值之间的剩余范围内的那些值,基于θ中间值在范围内有多远来执行简单的线性插值以获得最大挤压因子。
[0106]
接下来,将先前计算的挤压因子限制为前一步骤计算的值。
[0107]
最后,计算:修改的此时,不应该有在范围-π至π之外的值。
[0108]
此时,修改的θ、修改的以及u已经被修改。应该注意的是,先前已经对u进行了缩放,以解决检测到的输入信号电平与训练数据电平之间的电平差异、以及由用户指定的任何额外电平移位。
[0109]
再次参考图1,表查找模块105从slf查找表106中取得软掩码值并且软掩码应用模块107将软掩码值应用于stft时频片。将输入值(修改的θ、修改的以及u)用于从查找表106中获取针对每个帧和仓的软掩码值。尽管查找表106是作为示例实施例提供的,但slf本身可以使用不同方式实施,包括但不限于有四个输入值和一个输出值的查找表、函数、嵌套表和/或函数、(多个)神经网络等。由于要使用的slf对应于中心平移源,因此这些方法中的任何一种都可以利用如下事实:对于训练数据中的典型通用背景,中心slf应该关于π/4对称。这可以通过在平滑时对θ==π/4两侧的数据求平均来实现,这样有效地将训练数据相对于θ减半。还可以通过将高于π/4的任何修改的θ值与相反地低于该值的修改的θ值视为相同来减少所需的有效内存。这也增加了系统输出的一致性。
[0110]
如前所述,在一个非限制性示例中,图2中示出了n个slf的采样表示。输出被显示在每个子图的竖直轴线上。四个输入变量是每个子图的左右(θ)轴线和输入输出轴线、以及竖直(子带b)子图索引和水平(电平u)子图索引。输出变量在0与1之间(包含端值)并表示应该传递到输出的对应输入stft的分数。由于每stft片有一个(四维)输入,因此每个stft片也有一个输出。应用slf函数的结果是stft大小的表示,该表示由0与1之间的值(也称为软掩码)构成。该软掩码表示被称为“源掩码1”。
[0111]
在后续的步骤中将需要u值。因此,将u值返回到先前描述的未缩放的原始值(slf输入不需要)。
[0112]
在实施例中,使用本领域技术人员熟悉的技术在时间和频率上对软掩码值和/或信号值进行平滑。假设为4096点的fft,可以使用相对于频率的平滑,该平滑使用平滑器[0.17 0.33 1.0 0.33 0.17]/总和([0.17 0.33 1.0 0.33 0.17])。对于更高或更低的fft
大小,应该对平滑范围和系数执行一些合理的缩放。假设1024个样本的跳跃大小,可以使用相对于时间的大约[0.1 0.55 1.0 0.55 0.1]/总和([0.1 0.55 1.0 0.55 0.1])的平滑器。如果跳跃大小或帧长度发生变化,则应适当调整平滑。
[0113]
再次参考图1,逆变换模块108对所估计的音频源的stft表示执行逆stft。在实施例中,使用与分析窗口相同的合成窗口(后窗口)、如汉宁窗口的平方根来执行逆stft。因为有两个stft表示,所以现在有两个时域信号。
[0114]
逆变换模块108的输出是将从七个子带中的六个(或七个)提取的音频源进行组合的双声道时域音频信号。在一些示例中,这就是所需要的全部,并且可以随后处理或利用这一单个时域信号。在其他示例中,可能期望的是单独具有每个子带信号。当子带信号可能具有彼此非常不同的θ和/或值时,这是尤其有意义的。例如,如果子带1-4具有最左θ源,而子带5和6具有中心右侧的源,则系统可以被配置为通过在逆变换模块108之前在stft域中进行处理、或者通过对所估计的提取的音频源信号进行带通滤波来产生带通输出。
[0115]
图2是根据实施例的经过训练以提取平移源的slf系统的输入和输出的视觉描绘。更具体地,图2是图1中描述的经训练的slf查找表的示例。
[0116]
图3是根据实施例的用于从双声道混合中检测并提取空间可识别子带音频源的过程300的流程图。过程300可以使用例如参考图4所描述的设备架构400来实施。
[0117]
过程300可以开始于将双声道时域音频信号(例如,立体声信号)变换成包括具有多个频率仓的时频片的频域表示(301)。例如,可以将立体声音频信号变换成时频片的stft表示,如参考图1所描述的。
[0118]
过程300继续针对每个时频片计算空间参数和电平参数(302)。例如,过程300针对每个时频片计算θ、以及u参数,如参考图1所描述的。
[0119]
过程300继续使用空间参数和电平参数(θ、以及u)计算移位参数和挤压参数(303),并且使用移位参数和挤压参数修改空间参数(304)。例如,可以如参考图1所描述的那样计算移位参数和挤压参数。
[0120]
过程300继续使用经修改的空间参数获得软掩码值(305)。例如,可以使用经修改的空间参数从经训练的slf查找表(如图2所示的示例性slf查找表)中选择软掩码值。
[0121]
过程300继续将软掩码值应用于时频片以生成所估计的音频源的时频片(306)。例如,软掩码值是0与1之间的连续值(分数),在stft片的仓中将这些连续值乘以它们在维度上对应的幅度。因为软掩码值是分数,所以将软掩码值应用于stft仓将有效地降低所有频率仓中不包含音频源数据的幅度。
[0122]
过程300继续将所估计的音频源的时频片逆变换成音频源的双声道时域估计(307)。
[0123]
图4是根据实施例的图1所示的系统100的设备架构400的框图。设备架构400可以用在能够执行上述数学计算的任何计算机或电子设备中。本文描述的特征和过程可以在编码器、解码器或中间设备中的一个或多个中实施。这些特征和过程可以以硬件或软件、或者硬件或软件的组合被实施。
[0124]
在所示的示例中,设备架构400包括一个或多个处理器(401)(例如,cpu、dsp芯片、
asic)、一个或多个输入设备(402)(例如,键盘、鼠标、触摸表面)、一个或多个输出设备(例如,led/lcd显示器)、存储器404(例如,ram、rom、闪速存储器)、以及耦接至扬声器406的音频子系统406(例如,媒体播放器、音频放大器以及支持电路)。这些部件中的每一个都耦接至一个或多个总线407(例如,系统、电源、外围设备等)。在实施例中,本文描述的特征和过程可以被实现为存储在存储器404或任何其他计算机可读介质中并且由一个或多个处理器401执行的软件指令。具有更多或更少部件的其他架构也是可能的,如使用软件和硬件的混合来实施此处描述的功能和过程的架构。
[0125]
虽然本文档包含许多具体实施方式细节,但是这些细节不应被解释为对可能要求的事物的范围的限制,而是被解释为对可能特定于特定实施例的特征的描述。在单独的实施例的上下文中在本说明书中所描述的某些特征还可以按组合方式实施在单一实施例中。相反,在单一实施例的上下文中描述的各种特征也可以被单独地或以任何适合的子组合的方式实施在多个实施例中。此外,尽管特征在上文可以被描述为以某些组合起作用并且甚至最初如此声明,但是在一些情况下可以从组合中去除要求保护的组合的一个或多个特征,并且所要求保护的组合可以涉及子组合或子组合的变体。在附图中描绘的逻辑流程不需要所示出的特定顺序或者有序顺序来实现期望的结果。另外,可以从所描述的流程中提供其他步骤,或者可以删除步骤,并且可以向所描述的系统添加其他部件,或者从所描述的系统中去除其他部件。因此,其他实施方式在以下权利要求的范围内。
[0126]
可以从以下枚举的示例实施例(eee)中理解本发明的各个方面:
[0127]
eee1.一种方法,包括:
[0128]
使用一个或多个处理器将双声道时域音频信号的一个或多个帧变换为包括多个时频片的时频域表示,其中,所述时频域表示的频域包括多个频率仓,所述多个频率仓被分组为多个子带;
[0129]
针对每个时频片:
[0130]
使用所述一个或多个处理器计算所述时频片的空间参数和电平;
[0131]
使用所述一个或多个处理器,使用移位参数和挤压参数修改所述空间参数;
[0132]
使用所述一个或多个处理器,使用经修改的空间参数、所述电平、以及子带信息获得用于每个频率仓的软掩码值;以及
[0133]
使用所述一个或多个处理器,将所述软掩码值应用于所述时频片以生成所估计的音频源的经修改的时频片。
[0134]
eee2.如eee 1所述的方法,其中,将所述时频片的多个帧组装成多个组块,每个组块包括多个子带,所述方法包括:
[0135]
针对每个组块中的每个子带:
[0136]
使用所述一个或多个处理器计算所述组块中的每个时频片的空间参数和电平;使用所述一个或多个处理器,使用移位参数和挤压参数修改所述空间参数;
[0137]
使用所述一个或多个处理器,使用经修改的空间参数、所述电平、以及子带信息获得用于每个频率仓的软掩码值;以及
[0138]
使用所述一个或多个处理器,将所述软掩码值应用于所述时频片以生成所估计的音频源的经修改的时频片。
[0139]
eee3.如eee 2所述的方法,其中,所述空间参数包括每个时频片的平移参数和相
位差参数,并且计算移位参数和挤压参数进一步包括:
[0140]
针对每个组块中的每个子带:
[0141]
在所述平移参数上创建经平滑的电平参数加权直方图;
[0142]
在第一相位差参数上创建经平滑的电平参数加权的第一相位差直方图,其中,所述第一相位差参数具有第一范围;
[0143]
在第二相位差参数上创建经平滑的电平参数加权的第二相位差直方图,其中,所述第二相位差参数具有不同于所述第一范围的第二范围;
[0144]
在所述经平滑的平移直方图中检测平移峰值;
[0145]
确定平移峰值宽度;
[0146]
确定平移中间值;
[0147]
在所述经平滑的第一相位差直方图中检测第一相位差峰值;
[0148]
确定第一相位差峰值宽度;
[0149]
确定第一相位差中间值;
[0150]
在所述经平滑的第二相位差直方图中检测第二相位差峰值;
[0151]
确定第二相位差峰值宽度;以及
[0152]
确定第二相位差中间值,
[0153]
其中,所述移位参数包括所述平移中间值以及所述第一相位差中间值或所述第二相位差中间值,并且所述挤压参数包括所述平移峰值宽度以及所述第一相位差峰值宽度或所述第二相位差峰值宽度。
[0154]
eee4.如eee 3所述的方法,进一步包括:确定所述第一相位差峰值宽度和所述第二相位差峰值宽度中的哪一个更窄,其中,所述移位参数包括所述平移中间值以及所述第一相位差中间值或所述第二相位差中间值中具有更窄峰值的,并且所述挤压参数包括所述平移峰值宽度以及所述第一相位差峰值宽度或所述第二相位差峰值宽度中更窄的。
[0155]
eee5.如eee 1至4中任一项所述的方法,进一步包括:
[0156]
使用所述一个或多个处理器将经修改的时频片变换成多个时域音频源信号。
[0157]
eee6.如eee 1至5中任一项所述的方法,其中,所述空间参数包括所述时频片中的每一个的平移和相位差。
[0158]
eee7.如eee 1至6中任一项所述的方法,其中,所述软掩码值是从针对中心平移目标源训练的空间电平滤波(slf)系统的查找表或函数获得的。
[0159]
eee8.如eee 1至7中任一项所述的方法,其中,将双声道时域音频信号的一个或多个帧变换成频域信号包括将短时频率变换(stft)应用于所述双声道时域音频信号。
[0160]
eee9.如eee 1至8中任一项所述的方法,其中,将多个频率仓分组为倍频程子带或近似倍频程子带。
[0161]
eee10.如eee 1至9中任一项所述的方法,其中,所述空间参数包括每个时频片的平移参数和相位差参数,并且计算移位参数和挤压参数进一步包括:
[0162]
将所述时频片的连续帧组装成组块,每个组块包括多个子带;
[0163]
针对每个组块中的每个子带:
[0164]
在所述平移参数上创建经平滑的电平参数加权直方图;
[0165]
在第一相位差参数上创建经平滑的电平参数加权的第一相位差直方图,其中,所
述第一相位差参数具有第一范围;
[0166]
在第二相位差参数上创建经平滑的电平参数加权的第二相位差直方图,其中,所述第二相位差参数具有不同于所述第一范围的第二范围;
[0167]
在所述经平滑的平移直方图中检测平移峰值;
[0168]
确定平移峰值宽度;
[0169]
确定平移中间值;
[0170]
在所述经平滑的第一相位差直方图中检测第一相位差峰值;
[0171]
确定第一相位差峰值宽度;
[0172]
确定第一相位差中间值;
[0173]
在所述经平滑的第二相位差直方图中检测第二相位差峰值;
[0174]
确定第二相位差峰值宽度;以及
[0175]
确定第二相位差中间值,
[0176]
其中,所述移位参数包括所述平移中间值以及所述第一相位差中间值或所述第二相位差中间值,并且所述挤压参数包括所述平移峰值宽度以及所述第一相位差峰值宽度或所述第二相位差峰值宽度。
[0177]
eee11.如eee 10所述的方法,进一步包括:确定所述第一相位差峰值宽度和所述第二相位差峰值宽度中的哪一个更窄,其中,所述移位参数包括所述平移中间值以及所述第一相位差中间值或所述第二相位差中间值中具有更窄峰值的,并且所述挤压参数包括所述平移峰值宽度以及所述第一相位差峰值宽度或所述第二相位差峰值宽度中更窄的。
[0178]
eee12.如eee 10或11所述的方法,其中,所述第一范围是从-π至π弧度,并且所述第二范围是从0至2π弧度。
[0179]
eee13.如eee 10至12中任一项所述的方法,其中,使用针对先前组块和后续组块创建的平移直方图和相位差直方图,在时间上对所述平移直方图以及所述第一相位直方图和所述第二相位直方图进行平滑;或收集所述先前组块和所述后续组块中的加权数据,然后直接用于形成所述直方图。
[0180]
eee14.如eee 10至13中任一项所述的方法,其中,所述平移峰值宽度捕获所述平移直方图中总能量的至少百分之四十,并且所述第一相位差峰值宽度和所述第二相位差峰值宽度各自捕获它们相应的直方图中总能量的至少百分之八十。
[0181]
eee15.如eee 10至14中任一项所述的方法,其中,将每个组块中的每个子带的所述移位参数和所述挤压参数转换成对于所述一个或多个帧中的每个帧都存在。
[0182]
eee16.如eee 10至15中任一项所述的方法,其中,使用线性插值将所述平移移位参数和所述挤压参数转换为对于每个帧都存在,并且使用零阶保持将所述第一相位差移位参数或所述第二相位差移位参数转换为对于每个帧都存在。
[0183]
eee17.如eee 10至16中任一项所述的方法,进一步包括:针对所述一个或多个组块中的所述一个或多个子带确定每单位时间的单个平移中间值和单个平移峰值宽度值。
[0184]
eee18.如eee 10至17中任一项所述的方法,其中,在时间和频率上对所述软掩码值进行平滑。
[0185]
eee19.一种装置,包括:
[0186]
一个或多个处理器;
[0187]
存储器,所述存储器存储指令,所述指令在由所述一个或多个处理器执行时使所述一个或多个处理器执行eee 1至18所述的前述方法中的任何一种方法。
[0188]
eee20.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质具有存储在其上的指令,所述指令在由一个或多个处理器执行时使所述一个或多个处理器执行如eee 1至18所述的前述方法中的任何一种方法。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献