相位声码器原理介绍

2 篇文章 0 订阅

Phase Vocoder Done Right(上)

相位声码器(PV)是一种广泛应用的音频信号处理技术。它采用短时傅里叶变换(STFT)分析-修改-合成回路,通常通过使用不同的时间步长进行STFT分析和合成,用于信号的时间缩放。用于此目的的相位声码器的主要挑战是STFT相位的校正。本文介绍了一种基于相位梯度估计及其积分的相位校正方法。该方法不需要明确的峰值拾取和跟踪,也不需要检测瞬态及其单独处理。然而,即使在极端的时间拉伸因素下,该方法也不会受到典型相位声码器伪影的影响。


前言

术语相位声码器是由Flanagan和Golden[1]提出的,但现在的经典形式PV由Portnoff[2]引入,经典形式PV采用STFT分析和合成,使用不同的分析、合成步骤进行时间缩放. 经典PV中的相位校正方法基于恒定频率正弦波的线性相位级数。每个频率通道被视为一个单独的正弦波,其相位通过累积其瞬时频率的估计值来计算,从而保持水平相位相干性[3]。显然,这种方法不能很好地处理时变正弦信号和非正弦信号。Laroche和Dolson[4],[5]提出了对PV的修改。这种改进的PV涉及频谱峰值拾取、跟踪和“锁定”属于正弦波的频率单元的相位到峰值相位(缩放相位锁定)。相位锁定在峰值影响区域内强制垂直相位相干性。虽然锁相PV能够处理由时变频率的正弦波组成的信号,但它仍然不能处理一般的敲击声和瞬态事件。在[6]、[7]、[8]中可以找到对相位声码器、其历史以及音频信号的时间和频率标度修改的替代方法的回顾.

众所周知,使用相位声码器技术进行时间缩放会产生特定的伪影,例如瞬态涂抹、“回声”和“存在丢失”,统称为相位[4]。这些伪影通常归因于垂直相位相干性的损失。瞬态涂抹补偿已由几位作者提出。最常见的方法是在瞬态下执行相位重置或相位锁定[9]、[10]、[11]。其他方法包括禁用瞬态时的时间标度[12],或依赖于对谐波和瞬态部分使用不同的窗口长度[13],[14]。所有提到的方法都依赖于正确的瞬态检测。垂直相位相干性的保持对于时标语音信号的质量至关重要。据报道,不保持基波和分波之间的相对相移被认为是不自然的。提出了几种单声道语音信号时间拉伸的专门方法[15],[16]。历史上,保持各部分之间相对相移的时间缩放技术称为保形技术[17]。为了避免完全处理相位问题,考虑了仅震级重建[18]。尽管最近已经提出了有效的实时算法,例如[19],[20],但对于较大的拉伸因子,它们的性能并不理想。这是由于其大小不符合新的合成步骤。

在本文中,我们提出了一种基于STFT相位偏导数及其积分的PV相位校正新方法。使用中心有限差分估计相位导数,并通过实时相位梯度堆积分算法(RTPGHI)[19]执行积分,该算法是PGHI算法[21]的扩展,最初用于仅幅度重建。该算法自动执行水平和垂直相位一致性,即使对于宽带非正弦分量也是如此。不需要明确的峰值拾取或瞬态检测。


提示:论文《Phase Vocoder Done Right》翻译

一、经典相位声码器(PV)

在本节中,我们回顾与PV相关的基本公式,并解释部分STFT相位导数在时间方向上的作用。我们通过一个简单的例子进一步说明,对于非正弦分量,经典PV的较差性能可归因于忽略了频率方向的部分相位导数。
给出一个离散的时阈信号f,其中f是由一系列非0的间隔信号值
间隔0上非零的离散时间信号f,L1,一个集中在原点和分析时间步长aa周围的实值分析窗口Ga,离散STFT由下式给出:

在这里插入图片描述
对于 m=0,…,M-1,M 为FFT长度,n=0,…,N-1,N,其中 N=L/Aa 是STFT帧的数量。设置M=L将导致全频率分析(备注:无帧移的情况),但是通常情况下,选择应确保M≤L。我们定义频域分析的步长为:
在这里插入图片描述
STFT的幅值s和相位φa分量可分别表示为:
在这里插入图片描述
时域比例因子将定义为:
在这里插入图片描述
其中as表示合成时间步长。因此,输出信号的长度等于αL,合成频率步长等于
在这里插入图片描述
合成相位由递归阶段传播公式[5]构成:
在这里插入图片描述
∆t对分析阶段φa进行微分,或者采用梯度积分,规则如下:
在这里插入图片描述
时域标度信号fe通过下列公式使用:
在这里插入图片描述
作为合成窗口。总之,对于所有频率单元,经典PV在时间方向上执行相位微分和反向积分。
公式(1)可以解释为连续STFT的采样,其本身是时间和频率的二维函数。所以,(∆tφa)可以解释为时间相位偏导数的近似值。然而,完整的相位梯度还涉及频率的偏导数,其近似值将进一步表示为(∆fφa)。在经典的PV中,第二个梯度分量被完全忽略,除了纯的、静止的正弦信号外,它引入了显著的误差。
对于后者(∆fφa)确实等于零。图1A–1C中的示例显示了纯正弦、指数和脉冲以及相位偏导数之和的频谱图。特别是,图1C显示,对于脉冲分量(∆,fφa)具有不可忽略的值。
在这里插入图片描述
(图1A)纯正弦、指数和脉冲之和的频谱图。这些值以dB为单位。
在这里插入图片描述
(图1B)标度时间相位导数fs 2π(∆tφa)(瞬时频率)。fs代表采样率,数值单位为赫兹。在这里插入图片描述
(图1C)比例abs。频率相位导数的值 2πfs|(∆fφa)|(abs。本地组延迟的值)。注意(∆对于纯正弦波,fφa)为零。这些值以毫秒为单位。


这篇文章简单介绍了一下经典相位声码器的实现原理,公式比较多比较晦涩,感兴趣的小伙伴可以直接阅读英文原文。

[1]Zdeněk Pra, Holighaus N . Phase Vocoder Done Right[C]// EUSIPCO 17. 2017. [1]:
论文原文

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值