Matlab中关于语音信号的程序问题,希望高手解答下,非常感谢!

2024年12月02日 13:06
有1个网友回答
网友(1):

framelength不是一个matlab函数,也许是数据库方面的吧,不过依照您给的这些,这里不用考虑那么多,它在这里只是作为一个变量,即数据的长度为8,第一个for中i的值在1到n*m之间,且步长为1,即1,2,3,4……n*m; 第二个for就是j取1,2,3,4,5,6,7,8;最后一句我感觉是不是抄错了?…………当i=1时,让j分别取1到8,得到s1(1)=s(1);s1(2)=s(2);
s1(3)=s(3);s1(4)=s(4);s1(5)=s(5);s1(6)=s(6);s1(7)=s(7);
s1(8)=s(8);然后另i=2,得s1(1)=s(9);s1(1)=s(10);s1(1)=s(11);
s1(1)=s(12);;s1(1)=s(13);s1(1)=s(14);s1(1)=s(15);
s1(1)=s(16)…………以此继续,这不断的给s1(1)到s(8)赋值,如果题目是这样的话,没有什么意义了,那这样的话,最后一步就是算s1(1)=s((n*m-1)*8+1);
s1(1)=s((n*m-1)*8+2);s1(1)=s((n*m-1)*8+3);s1(1)=s((n*m-1)*8+4)
s1(1)=s((n*m-1)*8+5);s1(1)=s((n*m-1)*8+6);s1(1)=s((n*m-1)*8+7)
s1(1)=s((n*m-1)*8+8)那么前面那些都没用了,这么一个for的双重循环根本就不需要了;
可以改为for j=1:8 s1(j)=s((n*m-1)*8+j)
你看看是不是抄错了,不懂的话再问我,谢谢