Comparison and simulation of digital signal spectrum estimation methods - estimated autocorrelation, periodogram method, covariance method, burg algorithm, modified covariance method

Table of contents

1. Theoretical basis

1.1 Autocorrelation Spectrum Estimation

1.2 Periodogram Spectral Estimation

1.3 Covariance Spectral Estimation

1.4 Burg Algorithm Spectral Estimation

1.5 Modified Covariance Spectrum Estimation

2. Core program

3. Simulation conclusion


1. Theoretical basis

       Autocorrelation spectral estimation, periodogram spectral estimation, covariance spectral estimation, Burg algorithm spectral estimation and modified covariance spectral estimation are common signal spectral estimation methods, which are used to analyze the spectral information of signals. This paper will introduce the principles and characteristics of these methods in detail.

1.1 Autocorrelation Spectrum Estimation

       Autocorrelation spectrum estimation is the simplest spectrum estimation method, which estimates the spectrum of a signal based on the autocorrelation function of the signal. The autocorrelation function represents the similarity between the signal and itself after a certain time delay, and its peak value corresponds to the period of the signal, so it can be used to estimate the frequency component of the signal.
The specific steps of autocorrelation spectrum estimation are as follows:
calculate the autocorrelation function of the signal.
Perform Fourier transform on the autocorrelation function to obtain the frequency spectrum of the signal.
The advantage of autocorrelation spectrum estimation is that it is simple to calculate, but its disadvantage is that it has low precision and is sensitive to noise.

1.2 Periodogram Spectral Estimation

       Periodogram spectral estimation is a spectral estimation method based on a periodic signal model. It believes that the signal is superimposed by several periodic signals, so the signal spectrum can be obtained by decomposing the signal into multiple periodic signals and performing Fourier transform on each periodic signal. Specifically, the steps of periodogram spectrum estimation are as follows:
the signal is decomposed into several periodic signals, for example, by dividing the signal according to the period length.
Perform Fourier transform on each periodic signal to obtain the frequency spectrum of the periodic signal.
The spectrum of all periodic signals is superimposed to obtain the spectrum estimation result of the signal.
The advantage of periodogram spectral estimation is that it has high estimation accuracy for periodic signals, but its disadvantage is that it has low estimation accuracy for non-periodic signals.

1.3 Covariance Spectral Estimation

       The covariance method spectrum estimation is a spectrum estimation method based on a statistical model, which considers that the signal is a random process, and the spectrum of the signal can be estimated by calculating the sample covariance function of the signal. Specifically, the steps of spectral estimation by covariance method are as follows:
Calculate the sample covariance function of the signal.
Perform Fourier transform on the covariance function to obtain the spectrum estimation result of the signal.
The advantage of covariance spectral estimation is higher accuracy, but its disadvantage is higher computational complexity.

1.4 Burg Algorithm Spectral Estimation

       Burg algorithm spectral estimation is a spectral estimation method based on the recursive least squares method, which estimates the spectrum of a signal by iteratively calculating the coefficients of an autoregressive (AR) model. Specifically, the steps of Burg algorithm spectral estimation are as follows:
Initialize the coefficients of the AR model.
Calculate the prediction error and power spectrum of the AR model.
Update the coefficients of the AR model to minimize the prediction error and power spectrum.
Repeat steps 2 and 3 until convergence.
The advantage of Burg algorithm spectrum estimation is high accuracy, but its disadvantage is high computational complexity and sensitivity to noise.

1.5 Modified Covariance Spectrum Estimation


        Modified covariance spectral estimation is an improved method based on covariance method spectral estimation, which improves the accuracy of spectral estimation by modifying the covariance function. Specifically, the steps of correcting the estimation of the covariance spectrum are as follows:
Calculate the sample covariance function of the signal.
Modify the covariance function, for example, by smoothing, truncating, etc. the covariance function.
Perform Fourier transform on the modified covariance function to obtain the spectrum estimation result of the signal.
The advantage of modified covariance spectrum estimation is high precision and insensitivity to noise, but its disadvantage is that the covariance function needs to be corrected, and the choice of correction method may affect the spectral estimation results.

2. Core program

 

%画图
figure(2);
stem(rx_d,'r');
title('估计自相关与真实自相关比较');
xlabel('n');
ylabel('rx');
grid on;
hold on;
stem(rx0,'b');
legend('估计自相关','真实自相关');


%用x进行功率谱估计,即周期图法
p0 = fft(xn,512);
p0 = p0(1:N);
p0 = (abs(p0)).^2./length(xn);
p0 = 10*log10(p0);

 
%自相关法
[a1,err1]=acm(xn,4);
p1 = estm_p(sqrt(err1),a1);

%协方差法
[a2,err2]=covm(xn,4);
p2 = estm_p(sqrt(err2),a2);

%burg算法
[g3,err3]=burg(xn,4);
a3 = gtoa(g3);
p3 = estm_p(sqrt(err3),a3);


%修正协方差法
[a4,err4]=mcov(xn,4);
p4 = estm_p(sqrt(err4),a4);

%画图比较
f=1./N:1./N:1;
figure(3);
plot(f,p0,f,p1,f,p);
title('自相关法与周期图法比较');
xlabel('归一化频率(pi)');
ylabel('功率谱(db)');
grid on;
legend('周期图法','自相关法','真实功率谱');

figure(4);
plot(f,p0,f,p2,f,p);
title('协方差法与周期图法比较');
xlabel('归一化频率(pi)');
ylabel('功率谱(db)');
grid on;
legend('周期图法','协方差法','真实功率谱');

figure(5);
plot(f,p0,f,p3,f,p);
title('burg算法与周期图法比较');
xlabel('归一化频率(pi)');
ylabel('功率谱(db)');
grid on;
legend('周期图法','burg算法','真实功率谱');

figure(6);
plot(f,p0,f,p4,f,p);
title('修正协方差法与周期图法比较');
xlabel('归一化频率(pi)');
ylabel('功率谱(db)');
grid on;
legend('周期图法','修正协方差法','真实功率谱');

figure(7);
plot(f,p0,f,p1,f,p2,f,p3,f,p4,f,p);
title('各种谱估计法比较');
xlabel('归一化频率(pi)');
ylabel('功率谱(db)');
grid on;
legend('周期图法','自相关法','协方差法','burg算法','修正协方差法','真实功率谱');
UP188

3. Simulation conclusion

 

 

 

 

 

Guess you like

Origin blog.csdn.net/ccsss22/article/details/130737855