资源简介
matlab实现循环谱算法,可对具有循环平稳特点的数据进行筛选分析。
代码片段和文件信息
clear
clc
% bark1=[1111-1-1111-11-111111-1-1111-11-111111-1-1111-11-11-1111-11-11-1111-11-11];
bark1=[-11-11-1-11-11-11-11-11-11-1-11-11-11-1-11-1-11-1-11-11-11-11-11-11-11-11-1111-11-111111-1-1111-11-111111-1-1111-11-111111-1-1111-11-11-1111-11-11-1111-11-11];
bark=[bark1 bark1 bark1];
% barklen=length(bark)
fs=1;%采样频率
Ts=1/fs;
fb=1/8;
Tb=1/fb;
% N=13*fs/fb;
N=10240;
for t=1:N
x(t)=bark(ceil(t/Tb));
end
% for t=1:20
% k=(t-1)*8+1;
% if x(k)==1
% x(k)=-1;
% else
% x(k)=1;
% end
% end
% for t=21:50
% k=(t-1)*8+1;
% if x(k)==1
% x(k)=-1;
% x(k+1)=-1;
% else
% x(k)=1;
% x(k+1)=1;
% end
% end
% for t=51:120
% k=(t-1)*8+1;
% if x(k)==1
% x(k)=-1;
% x(k+1)=-1;
% else
% x(k)=1;
% x(k+1)=1;
% end
% end
%
snr=10;
noise=randn(1N);
AN=sqrt(std(noise)^2*10^(snr/10));
x=AN*x+noise;
save phase x;
% [ba] = butter(50.65);
% x=filter(bax);
%%%%%%%%%%%%%%%%%%%%%%%%%%
%求循环谱%
%%%%%%%%%%%%%%%%%%%%%%%%%%
alpha_len=(-0.5:1/N:0.5-1/N);
M=N/16;
X=fft(x);
Y=X;
% figure(5);
% plot(abs(X));
X=fftshift(X);
figure(4);
plot(abs(X));
for alpha=1:N/2-M/2+1
for f1=1:N/2-M/2+2-alpha
if f1==1
tmp(alphaf1)=X([f1+N/2+alpha-1-M/2:f1+N/2+alpha-2+M/2])*(X([f1+N/2-alpha+1-M/2:f1+N/2-alpha+M/2]))‘;
else tmp(alphaf1)=tmp(alphaf1-1)-X(f1+N/2+alpha-2-M/2)*conj(X(f1+N/2-alpha-M/2))+X(f1+N/2+alpha-2+M/2)*conj(X(f1+N/2-alpha+M/2));
end;
end;
end;%tmp为alpha>0f>0的四分之一平面
% for alpha=1:N/2-M/2+1
% for f1=1:N/2-M/2+2-alpha
% if f1==1
% tmp(alphaf1)=X([f1+N/2+alpha-1-M/2:f1+N/2+alpha-2+M/2])*(X([f1+N/2-alpha+1-M/2:f1+N/2-alpha+M/2]))‘;
% else tmp(alphaf1)=tmp(alphaf1-1)-X(f1+N/2+alpha-2-M/2)*conj(X(f1+N/2-alpha-M/2))+X(f1+N/2+alpha-2+M/2)*conj(X(f1+N/2-alpha+M/2));
% end;
% end;
% end;%tmp为alpha>0f>0的四分之一平面
S=[tmp([1:N/2-M/2+1][N/2-M/2+1:-1:2])/M tmp/M];% f轴扩充
S=[S([N/2-M/2+1:-1:2]:);S]; %alpha轴扩充
S1=zeros(NN);
S1([M/2:N-M/2][M/2:N-M/2])=S;
X1=S1(:N/2+1);
X2=S1(N/2+1:);
S1=abs(S1);
f_axe=[-0.5:1/N:0.5-1/N]*2*pi;
alpha_axe=(-0.5:1/N:0.5-1/N)*2;
figure(1);
% mesh(f_axealpha_axeS1);
contour(f_axealpha_axeS1);
xlabel(‘f‘)ylabel(‘alpha‘);
figure(2)
plot(alpha_axeabs(X1));
xlabel(‘alpha‘)
figure(3)
plot(f_axeabs(X2));
xlabel(‘f‘)
[tempJ]=max(abs(X1));
X1(J)=0;
[tempI]=max(abs(X1));
xxx=(N/2-I)*2/N
% J
% xxx=(J-I)*1/J
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2337 2011-12-14 11:22 基于matlab实现的循环谱估计算法,可以对具有循环平稳特点的信号进行参数估计,如直扩信号和周期调制信号\cyclic2.asv
文件 2745 2011-12-13 16:31 基于matlab实现的循环谱估计算法,可以对具有循环平稳特点的信号进行参数估计,如直扩信号和周期调制信号\cyclic2.m
文件 8062 2011-12-12 20:46 基于matlab实现的循环谱估计算法,可以对具有循环平稳特点的信号进行参数估计,如直扩信号和周期调制信号\phase.mat
目录 0 2012-06-19 19:27 基于matlab实现的循环谱估计算法,可以对具有循环平稳特点的信号进行参数估计,如直扩信号和周期调制信号
----------- --------- ---------- ----- ----
13144 4
相关资源
- burg算法实现AR模型的功率谱估计 mat
- siftmatlab算法实现
- 蚁群算法实现三维路径规划Matlab源码
- PCA算法实现人脸识别基于matlab GUI界面
- LMS MATLAB DSP算法实现和程序收集
- JPEG编码标准及算法实现
- 图像加密算法实现 matlab
-
Reversible Data em
bedding Using a Differenc - Meanshift算法实现目标跟踪的MatLAB代码
- 基于PCA算法实现人脸识别完整代码文
- surf的matlab算法实现
- Matlab编写的决策树及剪枝算法实现数
- 研究论文-基于LOS法的自航模航迹跟踪
- 计算mse psnr 以及用直方图均衡化,H
- Kriging插值·最近邻值点插值·距离反比
- 偏最小二乘方法的MATLAB算法实现
- 各种低秩约束矩阵填充方法SVT、SVP、
- 深度置信网络DBN算法实现 matlab
- DPM算法实现:voc-release5(Win7+matlab20
- 基于sift和SVM算法实现的手势识别 MA
- 卷积神经网络CNN算法实现 matlab
- 使用神经网络中的ART算法实现对标签
- matlab DFA降趋脉动分析算法实现
- 指派问题 匈牙利算法实现
- 数值方法 设计、分析和算法实现 高
- 遗传算法实现对SVM的参数进行优化
- 基于MATLAB的KNN算法实现多分类.rar
- NSGA-II算法实现
- TOPSIS的MATLAB算法实现
- KPCA算法实现代码,MATLAB
评论
共有 条评论