因此本发明的目标是克服现有技术的这些和其他问题,提供一种将直接部分和混响部分的能含量的任何差异都考虑在内的估计声信号的混响部分的方法和设备。
因此,本发明提供了一种估计信号中的混响的方法,所述信号包括直接部分和混响部分,所述方法包括使用第一参数、第二参数和所述信号的频谱提供混响部分的频谱估计的步骤,其中第一参数是所述混响部分随时间衰减的指示,第二参数是所述信号的直接部分相对于混响部分的幅值的指示。
通过提供指示直接部分相对于混响部分的幅值的第二参数,将这两个信号部分的相对幅值考虑在内。结果是,可能补偿幅值的任何差异,并因此获得更加准确的估计。
应当理解的是,可以从使用已知谱减法技术估计的混响部分的估计频谱中得到所述直接部分的频谱,因此得到直接信号部分本身。
在优选的实施例中,第二参数与信号的早晚比(early-to-lateratio)成反比。所述早晚比是指示信号的直接(早)部分相对于混响(晚)部分的幅值的比值。
在有利的实施例中,提供混响部分频谱估计的步骤涉及使用混响部分的频谱先前估计。采用这样的方法,使用先前值以及更新项来确定所述估计,所述更新项优选包括信号的频谱。
因此在优选的实施例中,混响部分的频谱估计等于第一参数乘以频谱的先前绝对值,减去第三参数乘以频谱的先前绝对值与混响信号的频谱先前估计的差值,其中第三参数等于第一参数减去第二参数。
在实用的实施例中,本发明的方法包括另外的步骤:
定义包含所述信号的有限时间(time-limited)段的帧,和
为每个帧确定信号的频谱。
所述帧可以部分重叠,因此不止一次使用一些信号值。
尽管对于其中声源和麦克风的距离(因此直接信号的相对幅值)不变的情形,可以确定单个第二参数值,但是优选的是,对于每个帧单独确定第二参数。采用这样的方式,使得可能更加准确地确定第二参数,尤其是当涉及运动时。根据本发明,优选仅使用所述信号及其导数来确定第二参数。
另外还优选的是,对于信号的每个时间段,使用前一个时间段确定信号本身的频谱和用于当前时间段中混响部分频谱估计的直接部分的估计频谱。
为了得到甚至更好的估计,优选的是,对于每个频带的每个帧确定所述信号的频谱,并且还优选对于每个频带确定第二参数、直接信号的估计频谱和混响部分的估计频谱。采用这样的方式,对于个别频带进行单独估计。可以通过特定信号命令频带的选择。
如上所述,使用先前帧的频谱、第一参数、第二参数和先前帧的混响部分的估计频谱(对于第一帧,先前帧的估计可以假设为具有预定值,例如零)来估计混响部分的频谱。所述方法可以包括使用混响部分的频谱估计来对所述信号去混响的另外步骤,优选使用谱减法和基于所述减法产生的频谱的去混响信号的重构来实施。
本发明还提供了用于执行上述定义方法的计算机程序产品。该计算机程序产品可以包括其上以电子或者光学形式存储了计算机程序的载体,诸如CD、DVD或者软盘。计算机程序规定了将由通用计算机或者专用计算机执行的方法步骤。
本发明另外提供了用于执行上述定义方法的设备以及音频系统,诸如包括这种设备的语音识别系统。
下面将参考附图中示出的示范性实施例对本发明进行进一步说明,图中:
图1中示出的示范性信号代表房间的脉冲响应,即,在房间内产生声脉冲(持续时间极短的脉冲)时由相同房间中的麦克风所接收的信号。该脉冲响应包含没有包括重要信号分量的第一(信号延迟)部分I、包含直接信号部分d的第二部分II和包含混响信号间接部分r的第三部分III。直接信号部分d和混响信号部分r一起构成信号y,所述信号的幅值yi作为采样指数(sample index)i的函数绘制。应当理解的是,被采样(被数字化)信号的采样指数i对应于模拟信号中的时间。
直接信号部分d通过直接信号路径(即没有被反射)接收,而间接或者混响部分r通过墙或者其他反射表面接收。正如可以看出的,混响部分r的幅值yi以指数衰减。这一点在图2中同样示出,图2表示作为采样指数i函数的信号y的能量衰减曲线EDC。所述EDC定义为:
用语言表示,对于给定采样指数i所述能量衰减曲线EDC等于信号剩余能量的对数的10倍。可以看出,在包含混响部分r的EDC的第三部分III中,EDC近似为线性(注意在当前实例中所有yi的值都远远小于1时,示出的EDC值为负)。由于EDC为对数,因此该EDC的线性衰减表示信号y的指数衰减。在第三部分III中EDC的斜率可以由参数αr表示,其中下标r指的是混响。
在图2中进一步可以看出,在区域I和区域III之间的EDC中发生了阶跃。该阶跃代表直接信号部分d相对于混响部分r的能量(图1)。在一些情形下,该阶跃相对较小,混响部分r具有与直接部分d相似(或比其更大)的幅值。然而,在示出的实例中,由于图1的直接部分d显著大于混响部分r,因此EDC中的阶跃相对较大。估计混响部分r(的频谱)时忽略该阶跃可能导致估计误差。然而,本发明使用另一参数β将该阶跃考虑在内,因此产生了有很大改善的结果。
可以使用已知技术对图1的信号y去混响,诸如使用混响频谱的估计来代替噪声频谱的单通道噪声抑制技术。在谱减法的情况下,这涉及到确定信号的频谱Y,估计混响的频谱R,从信号频谱中减去估计的混响频谱,以得到直接信号部分的估计频谱,以及根据直接信号部分的估计频谱重构直接信号。
根据上述提到的现有技术,可以如下实现。将信号y分成帧,每个帧包括数个数字化信号的采样。每个帧例如可以包括128至256个采样。可以添加零(所谓的“零填充”)以达到每帧适当的采样数。帧通常并不需要部分重叠,术语“块(block)”用于指示每个帧的“新”采样。
有利地,利用窗(例如,本身已知的汉明(Hamming)窗)来减轻伪像(artifact)的引入。对于每个帧,使用已知的快速傅立叶变换(FFT)来确定频谱Y。对于每个帧k,通过下式来确定混响频谱R的估计
其中B为块大小(即,每个帧中新采样的数量),m为频率,竖直线表示绝对值,αr是指示混响部分r的衰减速度的参数。在数学上,αr可以定义为:
其中Fs为采样频率并且
1n为自然对数(31n10近似等于6.9),T60为混响时间,即,在其后信号水平相对于原始信号水平已经下降60dB(分贝)的时间长度。
混响频谱的估计可以用于确定增益函数:
其中λ为所谓的频谱基(spectral floor),保证可避免去混响信号的任何严重失真的值。尽管还可以使用其他值,但λ的典型值为0.1。将原始信号的频谱Y乘以增益因子G(kB,m)以到直接(去混响)信号d的频谱D。
尽管该已知的方法非常有效,但是当信号y的直接部分d相对于混响部分r具有大幅值(能量)时,或者换句话讲,当在图2的区域II中信号显示出大阶跃时,这种已知的方法将导致信号失真。直接部分相对于混响部分的幅值可以使用早晚比ELR来表示,早晚比可以写为:
其中k为图2中分隔区域II和III采样号(sample number),即EDC曲线下降结束和相对较直部分开始处的点。因此ELR确定了直接部分(至采样点k)和混响部分(从采样点k)的(对数)能量比。有时ELR也称作透明度指数(clarity index)。
当早晚比ELR较小(例如使用上述定义小于0dB)时,直接部分d的能含量与信号y的混响部分r相比较小,可以有效地使用上述讨论的现有技术方法对信号y去混响。然而,当ELR较大时(例如使用上述定义大于0dB或者大于5dB)时,由于忽略了EDC的区域II(图2)中的阶跃,因而已知方法引入了失真。
因此,本发明使用了一种改善的估计方法,其中考虑了直接信号部分d和混响信号部分r的相对能含量。
从上述等式(2)开始,本发明提议通过减去一个校正项γ.C(κ)来校正混响部分r的频谱R的估计,其中γ为取决于ELR的因子,其中C为帧编号k(即,时间)和可能的块大小B和频率m的函数,
应当理解,还可能存在其他具有所需特性的函数C。
因此等式(8)可以写为:
引入参数β(κB)=αr-γ,其中0≤β(κB)≤αr’,等式(10)可以写为:
使用等式(9),等式(11)还可以表示为:
可以示出:
换句话讲,(第二)参数β(kB)与早晚比ELR成反比。还注意到ELR和β都是时间的函数(即帧指数k乘以块指数B),所述β(和ELR)还可以取决于频率(或者子频带)m:β(kB,m)。
从等式(11)可以看出根据本发明的估计将先前帧的频谱Y(的绝对值)和先前估计结合起来,同时考虑了ELR。从等式(11)和(12)还可以进一步看出,对于大ELR,β(kB)较小,估计有效地基于先前估计,抑制了频谱Y的影响。对于小ELR,β(kB)“较大”,近似等于αr,因而近似等于αr·|Y((κ-1)B,m)|,与现有技术相同。
因此可以看出,在早晚比ELR较小时,本发明的方法与现有技术是一致的,而当ELR较大时提供了重大改善。
注意,本发明的方法可以对每个子频带执行,即每个频率m,或者对于所有频率使用单个项而独立于频率地执行。
本发明的方法可以以软件或者硬件实施。图3中示出了示范性的硬件实施,其中示出了滤波器部分10。滤波器部分10包括第一延迟元件11、第一放大器12、结合元件13、第二延迟元件14和第二放大器15。
在示出的实例中,第一延迟元件11接收频谱Y的绝对值(即,幅值)|Y(kB,m)|,并输出延迟的绝对值|Y((k-1)B,m)|。在优选的实施例中,延迟Δ等于一个帧。在放大器12中,将该延迟的绝对值乘以(第二)参数β并馈送给优选由加法器构成的结合元件13。
结合元件13还接收第二放大器15的输出信号并输出估计
该估计由第二延迟元件14接收,所述第二延迟元件向第二放大器15输出延迟估计
在放大器15中将该延迟估计
乘以因子(α
r-β),并将其馈送至结合元件13。可以看出,滤波器部分10产生了与上述等式(11)相同的结果。
参数β(或β(kB))可以预先确定。例如,对于假定该情形下ELR的估计已知的情形,可以使用固定值0.1或0.2。然而,优选的是,针对每个信号估计β(kB)。当然,可以使用上述公式(13)基于早晚比来估计β(kB)。然而,从β(kB)的初始值(可以为预定值,例如为零)开始,可以使用下列公式提供更新:
其中函数f()为更新函数,而参数λ为上述提及的频谱基。使用绝对值|Y(kB,m)|和估计频谱
的更新函数的实例为:
其中,ε为辅助参数,其具有防止被零除的(非常小的)值,其中μ为控制β(kB)更新精确度和速度的非负参数。
在图4中示意性地示出了用于去混响信号的设备的优选实施例。图4中示出的示范性设备1包括滤波器单元10、FFT单元20、频谱分解单元30、参数估计单元40、增益确定单元50、延迟单元60、乘法单元70、频谱重构单元80和反FFT单元90。
FFT单元20接收(数字)信号y(k)并对于信号采样的帧执行公知的快速傅立叶变换。应当理解的是,如果原始信号为模拟信号则可以存在A/D(模拟/数字)转换器。将由FFT单元20产生的(复数)频谱Y(m)馈送给分解单元30,该分解单元将复数频谱分解成相位部分φ和幅值部分ρ。该幅值ρ等于绝对值|Y(kB,m)|,此处k为帧指数(帧编号),B为块大小,m为频率,与前面相同。将相位部分φ直接馈送至频谱重构单元80,而将幅值部分ρ馈送给滤波器单元10、参数单元40、增益单元50和乘法单元70。
滤波器单元10可以与图3的滤波器单元10相同,同样接收参数αr和β(kB)以产生被馈送至单元40和50的估计混响频谱单元40例如根据等式15使用估计参数λ和由延迟(Δ)单元60输出的延迟值β((k-1)B)来产生β(kB)的更新值。
单元50例如根据等式(5)产生增益因子G(kB,m)。该增益因子馈送至乘法器70,此处将该增益因子乘以绝对值频谱|Y(kB,m)|以产生去混响频谱幅值ρ’。重构单元80根据φ和ρ’重构去混响频谱
然后通过IFFT(反快速傅立叶变换)单元90将该频谱
转换为去混响时间信号
在图5中示意性地示出了包括图4的设备1的音频系统。该系统9包括去混响设备1、信号处理设备2、麦克风3和扬声器4。去混响设备1优选是图4的设备1或者其等效设备。信号处理设备2可以包括放大器和/或任何其他适当的音频信号处理装置。麦克风3可以由一组麦克风替代。同样扬声器4也可由一组扬声器或者其他适当的转换器替代。去混响设备1和信号处理设备2的顺序可以倒置,可以添加其他设备(未示出)。系统9例如可以构成会议系统、免提电话系统或者语音识别系统。
本发明基于这样的认识,即当去混响信号时必须考虑直接信号部分和混响信号部分的能含量比。通过引入与该能含量比相关的参数,实现了引入信号失真较少的更好的去混响。
本发明可以总结为一种估计信号中混响的方法,所述信号包括直接部分和混响部分,所述方法包括步骤:使用第一参数和信号频谱来估计混响部分的频谱,使用涉及第二参数的校正项来校正所估计的频谱,其中第二参数指示了信号的直接部分相对于混响部分的幅值。
注意,在该文件中使用的任何术语不应理解为是对本发明范围的限制。特别地,词语“包括”和“包含”并不意味着排除了任何没有明确陈述的元件。可以使用多个(电路)元件或者其等效物替代单个(电路)元件。
术语计算机程序产品应当理解为包括任何物理实现,例如使得通用处理器或者专用处理器在一系列的加载步骤之后,能够得到处理器中的命令并执行任何本发明特征函数的命令集合制造的产品。特别地,可以作为程序代码、从该程序代码衍生的处理器改编代码(processor adapted code)或者该程序代码的中间译码来实现所述计算机程序产品,可以位于载体上(诸如磁盘或者其他可插入部件)、存在于内存中、临时存在于有线或者无线连接网络上或者是存在于纸上的代码。除程序代码之外,程序所需的本发明特征数据同样可以以计算机程序产品来实施。
本领域技术人员应当理解的是,本发明并未受到上述示出的实施例的限制,在并未偏离本发明附属权利要求书所限定的本发明范围的情况下,可以进行许多变型和附加。