⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fenlipu.m

📁 本程序是基于分离谱算法的最小值选中次数加权算法的MATLAB源代码,可以对一维信号先进行谱分离,然后再在最小值的基础上对信号进行重建.
💻 M
字号:
clear all;close all;
%load tofd1;
hopen=fopen('da04.rfw');hhh=fread(hopen);z2=hhh';
fs=100.000000;%z2=z2(1100:2000);
m=mean(z2);z=z2-m;z=z./640;z=z(1100:2000);
%n=mean(z);z=z-n;
N=length(z);t=(0:N-1)/fs;
x=fft(z,N);
k=(0:N/2-1)/(N/2)*(fs/2);
figure(1);%原始信号时频图
subplot(211);plot(t,z,'black');
subplot(212);plot(k,abs(x(1:N/2)),'black');
y=gaussdit(z,fs,7);f=fft(y,N);
figure(2);%低通滤波后的信号时频图
subplot(211);plot(t,y,'black');
subplot(212);plot(k,abs(f(1:N/2)),'black');grid on;
y1=gaussdt(z,fs,0.5,1.0);
y2=gaussdt(z,fs,0.85,1.35);
y3=gaussdt(z,fs,1.2,1.7);
y4=gaussdt(z,fs,1.55,2.05);
y5=gaussdt(z,fs,1.9,2.4);
y6=gaussdt(z,fs,2.25,2.75);
y7=gaussdt(z,fs,2.9,3.4);
y8=gaussdt(z,fs,3.25,3.75);
y9=gaussdt(z,fs,3.6,4.1);
y10=gaussdt(z,fs,3.95,4.45);
y11=gaussdt(z,fs,4.3,4.8);
y12=gaussdt(z,fs,4.65,5.15);
figure(3);
subplot(421);plot(t,y1,'black');title('0.5~1.0');
subplot(422);plot(t,y2,'black');title('0.85~1.35');
subplot(423);plot(t,y3,'black');title('1.2~1.7');
subplot(424);plot(t,y4,'black');title('1.55~2.05');
subplot(425);plot(t,y5,'black');title('1.9~2.4');
subplot(426);plot(t,y6,'black');title('2.25~2.75');
subplot(427);plot(t,y7,'black');title('2.9~3.4');
subplot(428);plot(t,y8,'black');title('3.25~3.75');
yx=[y1 
    y2 
    y3 
    y4 
    y5 
    y6
    y7
    y8
    y9
    y10
    y11
    y12];

for j=(1:N)
zy(1,j)=min(yx(:,j));
end
%tt=mean(zy);zy=zy-tt;
xx=fft(zy,N);
figure(4);
subplot(211);plot(t,zy,'black');
subplot(212);plot(k,abs(xx(1:N/2)),'black');grid on;
yt=gaussdt(z,fs,4,6);
figure(5);
subplot(311);plot(t,z,'black');title('原始信号');
subplot(312);plot(t,yt,'black');title('[4~6]MHz带通滤波结果');
subplot(313);plot(t,zy,'black');title('最小值算法处理结果');
err=norm(zy-z)
%figure(6);






⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -