从绝对频谱图重构音频信号

信息处理 声音的 频谱图
2022-01-10 14:30:49

我有音频信号的绝对频谱图。
由于对信号的原始频谱图进行了各种处理,我丢失了频谱图的相位数据。

我正在尝试仅从频谱图的绝对值以有意义(可听)的方式重建音频信号。
明显的倒数不起作用(绝对值的 DFT 倒数,因为相位很重要)。

频谱图是少数音频信号融合的结果,因为我试图在音频信号之间创建平滑过渡。

任何人都有这个问题的经验?有人有这个程序的经验吗?任何人都可以向我推荐代码,文章等...

谢谢。

3个回答

为了清楚起见,我可以将幅度系数算法的重建总结如下,我采用了本文的算法。(见实验 1)。

取一个随机输入信号,它可能是噪声。并将 STFT 的大小表示为. 表示为 STFT 运算符x|Y|S

迭代地,您必须执行以下步骤,

  1. 执行X=S(x)
  2. 计算Z=|Y|exp(iX)
  3. x=S1(Z)

通常做的一件事(例如在源分离社区中)是使用原始信号的相位数据(在应用到它的变换之前) - 结果比零相位或随机相位好得多,并且与算法的目标相差不远从头开始重建相位信息。

一个经典的重建算法是 Griffin&Lim 的,在论文“Signal estimation from modified short-time Fourier transform”中进行了描述。这是一个迭代算法,每次迭代都需要一个完整的 STFT / 逆 STFT,这使得它的成本相当高。

这个问题确实是一个活跃的研究领域,对 STFT + 重建 + 幅度的搜索将产生大量旨在提高 Griffin&Lim 在信号质量和/或计算效率方面的论文。

要(重新)创建包含比现有信息更多的信息内容的信号,必须做出一些假设。构建过程只会与假设的正确性一样好。

如果您假设原始信号是频谱稀疏的,并且频谱图是从具有已知恒定偏移的帧创建的,那么峰值插值和相邻帧之间那些插值频谱峰值产生的瞬态最小化可以用作“反相声码器”估计器帧之间的相位变化。您将需要一个开始阶段;但任意可能有效。