同样划分矢量matlab

时间:2015-03-28 15:37:56

标签: matlab

在MFCC中,我指定了f_lowf_high这是我的频率最小和最大频段,我将在这两个频率值之间计算N个等距离的mel值。所以我写了

f_low=1000;  
f_high=fs/2;
filt_num=26;  % number of filters
stp=round(f_high/filt_num); % step 
f=f_low:stp:f_high; % my frequency vector

但是我不能同等地划分我的f向量,也许matlab中有一个函数可以做到,或者我错过了什么?请提前帮助和谢谢。

1 个答案:

答案 0 :(得分:1)

有点挖掘让我相信你想要一个带有filt_num条目的线性间隔向量,从f_low开始到f_high结束。您应该使用linspace,如下所示:

f = linspace(f_low,f_high,filt_num);

这与您最后两行代码基本相同。请注意,只有当f_high大于f_low时,您的代码才有效。 linspace没有这个问题,因为它也支持降序向量。