概述
功率谱密度简介
PSD(Power Spectrum Density)。PSD定义为单位频带内的信号功率。
MATLAB中PSD函数
Hpsd = dspdata.psd(Data)
最简单的一种计算psd方式。
Hpsd = dspdata.psd(Data, Frequencies)
计算功率谱密度的频率矢量。这个矢量的范围取决于谱型值。对于单侧,默认范围可以为[0, Fs/2]。对于双侧,可以为[0,Fs]。
Hpsd = dspdata.psd(...,'Fs',Fs)
使用采样率Fs。
Matlab里提供很多PSD工具,比如:周期图法、Welch法、Yule-Walker法、Burg法、协方差法。
代码
fs = 5000; % 规定采样率为5000Hz
t = (0 : fs/10) ./ fs; % 规定时间序列
A = [1 2];
f = [150; 140];
xn = A * sin(2 * pi * f * t) + 0.1*randn(size(t));
subplot(321) % 原信号
plot(t, xn)
title('原始信号');
xlabel('时间(Sec)');
ylabel('幅值');
subplot(322) % 周期图估计
Hrect = spectrum.periodogram;
psd(Hrect, xn, 'Fs', fs, 'NFFT', 1024);
subplot(323) % hamming窗估计周期图
Hhamm = spectrum.periodogram('Hamming');
psd(Hhamm, xn, 'Fs', fs, 'NFFT', 1024);
subplot(324) % 矩形窗周期图估计
Hs = spectrum.periodogram('rectangular');
psd(Hs, xn, 'Fs', fs, 'NFFT', 1024);
subplot(325) % welch法周期图估计,使用150点,重合50点
Hs = spectrum.welch('rectangular', 150, 50);
psd(Hs, xn, 'Fs', fs, 'NFFT', 512);
subplot(326) % welch法周期图估计,使用100点,重合75点
Hs = spectrum.welch('rectangular', 100, 75);
psd(Hs, xn, 'Fs', fs, 'NFFT', 512);
图像
最后
以上就是忐忑诺言为你收集整理的功率谱密度功率谱密度简介MATLAB中PSD函数代码图像的全部内容,希望文章能够帮你解决功率谱密度功率谱密度简介MATLAB中PSD函数代码图像所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复