Matlab FFT变换细节(信号采样频率,FFT变换点数,频率分辨率)

本文探讨如何通过调整FFT参数来提高深度学习在故障诊断中的准确性。作者分享了实际信号处理方法,分析了不同FFT点数对频率分辨率的影响,并质疑了单纯增加分辨率是否导致训练效果下降。关键讨论了频率范围限制和物理意义的保持,以及可能的解决方案如信号降采样和调整输入序列策略。
摘要由CSDN通过智能技术生成

问题:

在做深度学习的故障诊断中,发现代码直接将原始信号fft之后直接将实频域信号输入网络中进行诊断,虽说效果比较不错95%

但因为输入的是双边谱且频率范围远超故障特征频率同时由于单个样本的点数只有1024点,信号的采样频率又特别高12k,导致频率分辨率极低,输入网络的序列,失去了物理意义,因此想通过优化FFT变换的设置参数,将频率分辨率较高且频率范围[0,800]的序列输入网络,用于提高故障识别准确率

基础:

信号采样频率 : 1秒设备采到的信号点数

FFT变换点数:默认为输入信号的点数,也可以设置任意数值,matlab示例中有关于优化点数的方法,寻找点数最近的2次方

出于算法性能的考虑,fft 允许您用尾随零填充输入。
使每行的长度为比当前长度大的下一个最小的 2 的次幂值。
使用 nextpow2 函数定义新长度。

n = 2^nextpow2(L);

频率分辨率:频域横坐标点之间的间隔 FS/N 采样频率/样本长度

测试:

1.实验室采集的实际信号 通常的分析方法

% 30s 12800 采样频率分析 信号长度为12800*30
y = y -mean(y);
yft = abs(fft(y,12800*30));
yft = yft / length(y);
N = 1 : 12800*30 ;% 采样点数序列
f = 1/30*N; % 频率横坐标
figure(1);
plot(f(1:length(yft)/2) , yft(1:length(yft)/2));

 2.测试FFT采样点数与频率分辨率的关系

% fft 只选取信号1024个点 fft变换点数 12800*30
y = y -mean(y);
yft = abs(fft(y(1:1024),12800*30));
yft = yft / length(yft);
N = 1 : 12800*30; % 采样点数序列
f = 1/30*N; % 频率横坐标
figure(1);
plot(f(1:length(yft)/2) , yft(1:length(yft)/2));

% fft 1024 点 fft变换点数 12800*500
y = y -mean(y);
yft = abs(fft(y(1:1024),12800*500));
yft = yft / length(y);
N = 1 : 12800*500; % 采样点数序列
f = 1/500*N; % 频率横坐标
figure(1);
plot(f(1:length(yft)/2) , yft(1:length(yft)/2));

% fft 1024 点 fft变换点数 1024
y = y -mean(y);
yft = abs(fft(y(1:1024),1024));
yft = yft / length(y);
N = 1 : 1024; % 采样点数序列
f = 12800/1024*N; % 频率横坐标
figure(2);
plot(f(1:length(yft)/2) , yft(1:length(yft)/2));

 

 总结:

可以看到提高fft点数的确能够提高频谱的分辨率,但是这种效果有限,只能提高一点点,最后一个频率分辨率很低,却是输入网络中进行训练的数据,这种识别有意义吗?

提高频率分辨率的方法:1.提高输入fft的信号长度2.对信号进行降采样,降低采样频率

提高分辨率训练效果前: 2048个点的序列 ->fft变换后->2048个点->截取一半1024个点输入网络1dcnn 训练准确率100% 测试准确率 97.8%

提高分辨率训练效果后:2048个点的序列-> fft变换 ->8192个点 ->截取一半 4096个点输入网络1dcnn 训练准确率 99% 测试准确率 93.5% 

反而效果还变差了????

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值