用MATLAB对语音信号进行处理时总是出现说输入的语音必须是向量怎么办,如何将矩阵转化为向量
[I,Fs,bits]=wavread('wei.wav');%读入原始语音subplot(3,1,1),;plot(I);title('原始语音波形');Q=I';N=...
[I ,Fs,bits]= wavread('wei.wav');%读入原始语音
subplot(3,1,1),;
plot(I);
title('原始语音波形');
Q = I'; N = 256; % 窗长
Hamm = hamming(N); % 加窗
frame = 60;%需要处理的帧位置
M = Q(((frame - 1) * (N / 2) + 1):((frame - 1) * (N / 2) + N));
Frame = M .* Hamm';%加窗后的语音帧
[S,F,T] = spectrogram(I,N,N/2,N);
??? Error using ==> spectrogram at 113
X must be a vector (either row or column). 展开
subplot(3,1,1),;
plot(I);
title('原始语音波形');
Q = I'; N = 256; % 窗长
Hamm = hamming(N); % 加窗
frame = 60;%需要处理的帧位置
M = Q(((frame - 1) * (N / 2) + 1):((frame - 1) * (N / 2) + N));
Frame = M .* Hamm';%加窗后的语音帧
[S,F,T] = spectrogram(I,N,N/2,N);
??? Error using ==> spectrogram at 113
X must be a vector (either row or column). 展开
2015-01-23
展开全部
你看你一开始读入的[I ,Fs,bits]= wavread('wei.wav');其中的I是不是矩阵,如果是,那后面[S,F,T] = spectrogram(I,N,N/2,N); 就是对矩阵做处理,如果这个函数不支持矩阵,你只能一行一行的做。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询