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

📄 shiyanxinhao_fft.m

📁 傅里叶变换在matlab中的实现过程
💻 M
字号:
clc;
clear;
cd E:\Denoise_wavelet_Mod
load d1_ys;
load d1_qyz;
x=d1_qyz;
% xxref = fft(xref) ; %对原始信号进行傅里叶变换
% xxref = abs(xxref) ;
% % clc;
% % clear;
% % cd E:\Denoise_wavelet_Mod
% % load d_qyz;
% % x=dd';
[n,p]=size(x)
xx = fft(x) ; %对含噪声进行傅里叶变换
absxx = abs(xx);
%下面画出傅里叶变换后的频谱图
figure (3)
% subplot(3,2,1) ; plot(xxref) ;
% title ('原始信号的谱图') ;
plot(absxx) ;
title ( '含噪声信号的谱图') ;
%进行低通滤波,滤波频率0~
for i=100:2400 
   xx(i)=0;
end 
% for i=2400:2500
%     xx(i)=0;
% end
    
 xifft=ifft(xx); 
 magx=real(xifft);
 figure
 plot(magx)
 title ( '傅里叶变换消噪结果') ;
%  SNR=snr(dd',magx)
%  re=sum((magx-dd').^2)
%  RMSE=sqrt(1/n*re)

 %将变量名转换为公共名称
 signal=d1_ys;
% % signal=x;
denoising=magx;
 %求信噪比
SNR=snr(signal,denoising)
re=sum((denoising-signal).^2)
RMSE=sqrt(1/n*re)

% % % % % % % % % % % % % % % % % % 
%求平滑度
for i=1:(n-1)
    sig(i)=(signal(i+1)-signal(i)).^2;         %信号差分数的方差根
    den(i)=(denoising(i+1)-denoising(i)).^2;   %噪声差分数的方差根
end
Ps=sum(sig)
Pd=sum(den)
r=Pd/Ps      %平滑度指标
%求偏差
for i=1:n
    re(i)=signal(i)-denoising(i);       %原始信号与消噪后信号差
end
BIAS=mean(re)  %原始信号与估计信号的偏差
 

⌨️ 快捷键说明

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