参考文献[1]的作者写的多通道信号经验模式分解包,位置:D:\Digital Signal
Processing\HHT,用法如下:
1. EMD函数 memd.m
imf = memd (X);
产生三维矩阵,'imf(N,M,L)',N表示通道数,M表示imf数量,L为数据点数。
例如,imf_k = imf(k, : , :) 得到第 k (1 <= k <= N) 个变量的 IMF。
imf = memd (X, num_directions);
整型 num_directions 设定总的投影数。根据经验,其最小值应该是通道数的2倍。例如,对于3变量信号,num_directions = 6。缺省值为64。为了提取有意义的IMF,num_directions应大于信号维度。
imf = memd (X, num_directions, 'stopping criteria'):
参数'stopping criteria'控制筛选过程(sifting process),可选项有:
'stop': 使用标准的停止判据 [2];
'fix_h': 使用[3]提出的修改的停止判据;
缺省值为'stop'。
imf = memd (X, num_directions, 'stop', stop_vec);
根据标准的停止准则计算IMF,参数在 'stop_vec' 中设置。
stop_vec 有三个元素,用来设置threshold 和 tolerance values,请参考[2];
默认值是step_vec = [0.075 0.75 0.075];
只有在'stopping criteria'被设置为'stop'的时候才有效。
imf = memd (X, num_directions, 'fix_h', n_iter):
只有当'stopping criteria' 设为'fix_h'时,整数 n_iter 指定当极值点数量与过零点数量相差最多1个时的连续迭代次数[3]。默认值为n_iter = 2;
这个程序允许处理输入信号的通道数为3-16,
1. EMD函数 memd.m
imf = memd (X);
产生三维矩阵,'imf(N,M,L)',N表示通道数,M表示imf数量,L为数据点数。
例如,imf_k = imf(k, : , :) 得到第 k (1 <= k <= N) 个变量的 IMF。
imf = memd (X, num_directions);
整型 num_directions 设定总的投影数。根据经验,其最小值应该是通道数的2倍。例如,对于3变量信号,num_directions = 6。缺省值为64。为了提取有意义的IMF,num_directions应大于信号维度。
imf = memd (X, num_directions, 'stopping criteria'):
参数'stopping criteria'控制筛选过程(sifting process),可选项有:
缺省值为'stop'。
imf = memd (X, num_directions, 'stop', stop_vec);
根据标准的停止准则计算IMF,参数在 'stop_vec' 中设置。
stop_vec 有三个元素,用来设置threshold 和 tolerance values,请参考[2];
默认值是step_vec = [0.075 0.75 0.075];
只有在'stopping criteria'被设置为'stop'的时候才有效。
imf = memd (X, num_directions, 'fix_h', n_iter):
只有当'stopping criteria' 设为'fix_h'时,整数 n_iter 指定当极值点数量与过零点数量相差最多1个时的连续迭代次数[3]。默认值为n_iter = 2;
这个程序允许处理输入信号的通道数为3-16,
