一、确定信号与随机信号的介绍
确定性信号与随机信号是不同的,随机信号不能通过一个确切的数学公式来描述,也不能准确的进行预测,而确定性信号可以用正弦函数或者指数函数来描述。因此,对随机信号一般只能在统计意义上来研究了,这就决定了其分析与处理的方法与确定性信号有着较大的差异。
随机信号可以分为平稳和非平稳两大类,而平稳随机信号又可以划分为各态遍历信号和非各态遍历信号。那么,什么是各态遍历性(各态历经性)?
各态遍历性通俗地说,就是指经历各种状态,在通信理论中,对于一个平稳随机过程,如果统计平均值等于时间平均值,统计自相关函数等于时间自相关函数则称之为各态历经性的平稳随机过程。在随机过程中,各态历经性的定义分为两个部分,即数学期望的各态历经性和相关函数的各态历经性。数学期望的各态历经性和相关函数的各态历经性统称为平稳过程的各态历经性,但二者存在显著的不同,只有平稳随机过程才有可能是各态历经性的,但各态历经的随机过程一定是平稳的。
随机信号是时间函数,是无限长信号。在分析随机信号时,往往取某一段有限长信号用于研究随机信号的特征。通常,将有限长信号称为样本,而将无限长信号称为总体。
(!!!重点!!!)各态遍历平稳随机信号中的样本时间均值与总体均值相等,因此可以用样本的统计特性来表示总体的特征,这样子可以简化随机信号的分析!
随机信号在时间上式无限的,其样本数量也是无穷多个,因此是能量无限、功率有限的信号。而能量无限的信号不满足傅里叶变换的绝对可积条件,因此随机信号的傅里叶变换时不存在的。但是,随机信号的功率是有限的,我们可以采用功率谱从统计的角度来描述随机信号的频域特性,从而对随机信号的频域进行分析。
分析平稳随机过程统计特征要求随机信号无限长,而实际上只能用一个样本(一段有限长信号),即有限长序列来计算随机信号的统计特征。因此,所计算的统计特征不是随机信号的统计值,而仅仅是一种数据有限长度的估计。
功率谱估计有多种方法,一般可以分为非参数化方法与参数化方法。非参数化方法中较为常用的是韦尔奇(Welch)方法,这种方法属于经典谱估计;参数化方法则主要围绕如何通过参数建模来更准确地估计信号的功率谱,属于现代谱估计方法,其频率分辨率往往要优于经典谱估计。
二、案例:正弦信号的频率为50Hz和120Hz,50Hz的信号幅值为1,120Hz信号的幅值为3,采样频率为1000Hz,随机信号的均值为0,方差为1,用周期图发和自相关法求出信号的功率谱,并进行比较。程序如下:
Fs=1000; % 采样频率
N=1000; % 数据长度
n=1:N; % 索引号
t=(n-1)/Fs; % 时间序列
randn('state',0); % 随机数发生器初始化
f1=50; f2=120; % 两个正弦分量频率
x=cos(2*pi*f1*t)+3*cos(2*pi*f2*t)+randn(size(t)); % 信号
% 周期图法
window=boxcar(N); % 窗函数
nfft=1000; % FFT长
[Pxx1,f]=periodogram(x,window,nfft,Fs); % 周期图
sqrt(sum(Pxx1)*Fs/nfft) % 计算周期图法平均能量
% 相关图法
nfft=1000; % FFT长
cxn=xcorr(x,500,'biased'); % 求有偏自相关函数,延迟只有N/2
cxn=cxn(1:nfft).*bartlett(nfft)'; % 乘以bartlett窗函数
CXk=fft(cxn,nfft)/Fs; % 计算功率谱密度
Pxx2=abs(CXk); % 取幅值
ind=1:nfft/2; % 索引取一半,为取正频率部分
freq=(0:nfft-1)*Fs/nfft; % 频率刻度
plot_Pxx=Pxx2(ind); % 取正频率部分
plot_Pxx(2:end)=plot_Pxx(2:end)*2; % 单边谱,把2->nfft/2这部分幅值乘2
sqrt(sum(Pxx2)*Fs/nfft) % 计算自相关法平均能量
% 作图
plot(f,10*log10(Pxx1),'r'); % 画对数刻度图
hold on; axis([0 500 -50 10]);
xlabel('频率/Hz');
ylabel('功率谱密度/(dB/Hz)');
plot(freq(ind),10*log10(plot_Pxx),'k'); % 作功率谱图
title('周期图法与相关图法比较');
legend('周期图法','自相关图法')
set(gcf,'color','w');
运行结果如下:
参考文献:MATLAB数字信号处理85个实用案例精讲——入门到进阶;宋知用(编著)