如何减少相位声码器产生的合成伪影?

信息处理 过滤器 语音处理 stft
2022-02-20 15:28:09

我按照这篇论文并参考了这个MATLAB 教程,在 Python 中实现了相位声码器算法来对语音信号进行时间拉伸我可以将原始信号中的单词与再合成结果区分开来,并且正如预期的那样,即使时间轴已被拉伸,音高也不会改变(这是使用相位声码器的目标)。但是,存在明显的伪影。具体来说,与输入相比,输出包含更多类似于高斯噪声的噪声,并且这些词听起来有点像机器人说话。我已经尝试了一些改进,例如本文提出的身份锁相,但结果保持不变。有没有人遇到过类似的问题?我怎样才能改善结果?

1个回答

第二个伪影可能是由于相位声码器减慢再合成可以降低人类说话声音中任何自然颤音和颤音的频率,以及声门闭合中任何微小的周期到周期的抖动。

一种可能的解决方案可能是测量浊音窗口的颤音和颤音的频率以及抖动统计,如果它们不存在或太小,则将这些伪影重新添加到(或调制)PV 再合成的结果。