用MATLAB对语音信号做时域和频谱分析。要求有详细的程序,谢谢了。

用MATLAB对语音信号做时域和频谱分析。要求有详细的程序,谢谢了。,第1张

[y,fs,bits]=wavread('E:\滚盯MATLA\work\hnist.wav')

sound(y,fs,bits)%回放该侍或音频

Y=fft(y,4096)%进行傅立叶变换

subplot(2,1,1)

plot(y)

title('声音信号的老备伍波形')

subplot(2,1,2)

plot(abs(Y))

title('声音信号的频谱')

%你好,该程序读mywav.wav文件,然后显示频谱以及波形。注意,mywav.wav文件不要太长,否则运算会很慢。

[y,Fs,bits]=wavread('mywav.wav')%读滚慎出信号,采样率和采样位数。

y=y(:,1)%我者段这里假首备誉设你的声音是双声道,我只取单声道作分析,如果你想分析另外一个声道,请改成y=y(:,2)

sigLength=length(y)

Y = fft(y,sigLength)

Pyy = Y.* conj(Y) / sigLength

halflength=floor(sigLength/2)

f=Fs*(0:halflength)/sigLength

figureplot(f,Pyy(1:halflength+1))xlabel('Frequency(Hz)')

t=(0:sigLength-1)/Fs

figureplot(t,y)xlabel('Time(s)')

y= 2+3*cos(2*pi*50*t-pi*30/180)+1.5*cos(2*pi*75*t+pi*90/180)

这行就是表达式,Y=2+3cos(100πt-。核埋。。。),

那个错误提示就是你用的表达式不合磨氏铅法,需要重新换掉。系统已有这样一个表达瞎好。具体的去网站去搜搜,学会找到这个正确答案的方法


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12504437.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存