start_index = len(wav_noise_phase) - self.n_frames + 1为什么可以判断STFT 结果的长度不足以提取 self.n_frames 个帧
时间: 2023-12-06 09:39:59 浏览: 53
segmentatio-.zip_frames matlab_the code
这是因为在进行STFT的过程中,每个帧的长度是由窗口大小和帧移决定的。如果STFT结果的长度不足以提取self.n_frames个帧,那么就意味着信号的长度不足以完全覆盖self.n_frames个帧,即使你可以以自己定义的窗口大小和帧移来提取STFT结果,仍然会有一些帧是不完整的。因此,在这种情况下,我们不能提取self.n_frames个完整的帧,而只能提取能够完整覆盖信号的帧数。这就是为什么start_index = len(wav_noise_phase) - self.n_frames + 1可以判断STFT结果的长度是否足够提取self.n_frames个帧的原因。
阅读全文