资源简介
本代码为自适应局部迭代滤波(ALIF)处理振动信号,内有可运行的示例(demo文件),添加了相关注释,matlab2018可以直接运行,其他版本请自行尝试。ALIF是2016年Antonio Cicone提出的一种自适应信号处理方法,原作者论文已附在压缩包中,代码中的示例效果并不代表最佳效果,只作为运行展示使用。
代码片段和文件信息
function [IMFmask_lengths] = ALIFv5_4(foptions)
%
% Generate the decomposition of a signal f :
%
% f = IMF(1:) + IMF(2:) + ... + IMF(size(IMF 1) :)
%
% where the last component is the trend and other components are IMFs
%
%
% Input
%
% f Signal to be decomposed
%
% options Structure generated using function decompSettings_v5 containing
% all the parameters needed in the various algorithms
%
% Output
%
% IMF Matrices containg in row i the i-th IMF. The last row
% contains the remainder-trend.
%
% mask_lengths Mask length functions used for each IMF
%
% See also SETTINGS_ALIF IF_V8_3 SETTINGS_IF_V1 GET_MASK_V1 MAXMINS_v3 PLOT_IMF_V8.
%
% Ref: A. Cicone J. Liu H. Zhou. ‘Adaptive Local Iterative Filtering for
% Signal Decomposition and Instantaneous Frequency analysis‘. Applied and
% Computational Harmonic Analysis Volume 41 Issue 2 September 2016
% Pages 384-411. doi:10.1016/j.acha.2016.03.001
% ArXiv http://arxiv.org/abs/1411.6051
%
% A. Cicone. ‘Nonstationary signal decomposition for dummies‘.
% To appear in the book Advances in Mechanics and Mathematics.
% ArXiv https://arxiv.org/abs/1710.04844
%
% A. Cicone H. Zhou. ‘Iterative Filtering algorithm numerical analysis
% with new efficient implementations based on FFT‘
% ArXiv http://arxiv.org/abs/1802.01359
%% We deal with the input
if nargin == 0 help ALIFv5_4; return; end
if nargin == 1 options = Settings_ALIF; end
extensionType = ‘p‘; % used in the calculations of mins and maxs
N = length(f);
if size(f1)>size(f2)
f = f.‘;
end
if size(f1)>1
disp(‘Wrong dataset the signal must be a single row vector‘)
end
IMF =[];
if options.plots>0
if options.saveplots==1
nameFile=input(‘Please enter the name of the file as a string using ‘‘ and ‘‘ << ‘); %‘v081_Ex2‘;
end
end
%% Main code
fprintf([‘\n\n ****************** WARNING ******************\n\n ‘...
‘We assume periodicity in the signal and\n\n its instantaneous periods\n\n‘ ...
‘ *********************************************\n‘])
pause(0.5)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Adaptive Local Iterative Filtering %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tic
load(‘prefixed_double_filter‘‘MM‘);
if length(f)>length(MM)
fprintf([‘\n\n ******** Warning *********\n\n‘...
‘ The filter MM should contain more points\n‘...
‘ to properly decompose the given signal\n\n‘...
‘ We will use interpolation to generate a\n‘...
‘ filter with the proper number of points\n\n‘...
‘ *****************************\n\n‘])
end
%%%%%%%%%%%%%%% Identify extreme points %%%%%%%%%%%%%%
maxmins_f=Maxmins_v3(fextensionType);
while length(maxmins_f) > (options.ALIF.ExtPoints)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 15416 2019-10-10 20:35 ALIFv5_4.m
文件 1267 2019-10-10 20:42 demo.m
文件 19449 2019-10-10 20:32 IF_v8_3.m
文件 5747 2019-10-10 20:42 normal1500.mat
文件 4977059 2017-10-23 20:38 normal1500.txt
文件 696 2018-09-06 06:31 plot_imf_v7.m
文件 5855 2019-09-27 17:02 plot_imf_v8.m
文件 182727 2018-09-06 06:31 prefixed_double_filter.mat
文件 4791 2019-09-29 11:29 Settings_ALIF.m
文件 6730 2018-11-26 05:02 Settings_IF_v1.m
文件 3458236 2019-07-26 14:53 (原文章)Adaptive local iterative filtering for signal decomposition and instantaneous frequency analysis.pdf
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 蚁群算法论文+源代码
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 高斯正反算批量计算
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
评论
共有 条评论