在我的应用中,我需要将来自麦克风的全部语音信号(采样后)分成10ms非重叠窗口。将语音信号分成10ms非重叠窗口
我目前使用的宁窗口在我的代码,为了做到这一点:
public short[] HanningWindow(short[] signal_in, int pos, int size)
{
for (int i = pos; i < pos + size; i++)
{
int j = i - pos; // j = index into Hann window function
signal_in[i] = (short) (signal_in[i] * 0.5 * (1.0 - Math.cos(2.0 * Math.PI * j/size)));
}
return signal_in;
}
现在的问题是,,,我在哪里可以指定我需要10ms的非重叠窗口?
如果你正在使用窗口函数(例如Hanning),那么不可能非重叠的窗口就是你所需要的...... –
实际上我想实现一个信号上的Mahalanobis距离算法,这需要将整个语音信号到10毫秒 非重叠窗口,我的问题是我该如何改进我的代码做到这一点?@ Oli Charlesworth – hana