c=load('C:\Users\Administrator\Desktop\renwushu\ecg101.txt')
t=c(:,1)
a=c(:,2)
figure(1)
subplot(3,1,1)plot(t,a)title('原始心电信号的时域波形图')xlabel('时间t/s')ylabel('幅值a/A')
matlab里面有直接求出功率谱的函数呀~用周期图法或者间接法计算就行。cx=xcorr(x,'unbiased')
CXk=fft(cx,N)
Pxx=abs(CXk)
index=0:round(N/2-1)
k=index*Fs/nfft
plot_Pxx=10*log10(Pxx(index+1))
figure(3)
plot(k,plot_Pxx)
这只是计算功率谱的一种方法,不知道对你有没有帮助
或者你可以直接用periodogram函数计算,函数的格式你在matlab的帮助可以看到
[x,fs,nbits]=wavread('chi1.wav')fs=16000
M =length (x)
t=0:1/16000:(M-1)/16000
x1=x+cos(3*pi*t)
sound(x1,fs)
X=fft(x1,8192)
N=8192n=0:N-1
q=n*2*pi/N
figure(2)
subplot(2,1,1)plot(x1)title('add noise 信号波形')
subplot(2,1,2)plot(abs(X))title('add noise信号频谱')axis([0 9000 0 8])
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)