功能:数据清洗降噪

格式:
Wavelet1D_DataCleaning(data, n, filter, noise)
Wavelet1D_DataCleaning(data, n, filter)
Wavelet1D_DataCleaning(data, n)
Wavelet1D_DataCleaning(data)

data  : 矩阵变量存储的一维信号数据
n     : 信号拆分层数,此参数必须满足 n≥0 且 2^n ≤ length(data)，length(data)表示data的长度.此参数默认为3.
filter：每一层分解、重建滤波器参数。当此参数为矩阵变量时，矩阵变量的列数必须为4，其中每一列分别表示[低频分解系数、高频分解系数、低频重建系数、高频重建系数；当此参数为符号变量时，直接指定需要的小波基函数名称即可。具体支持的函数，可参看{WaveletFilter<矩阵运算\WaveletFilter>}。此参数默认为"db6"
noise ：降噪控制系数，默认为0.1

说明:
1、函数执行成功返回分解降噪后，重建的数据。
2、本函数主要是将所有降噪分层的功能集合在了一起,更精细的控制,可使用其它函数
3、参数n, filter, noise的不同，降噪效果有所差异，所以，可以尝试对参数进行调参
4、每一层采用硬阈值降噪法，对每层阈值th，采用如下方式确定
th = noise * {DataMedian<矩阵运算\DataMedian>}({abs<矩阵运算\abs>}(x))/0.6745 * {sqrt<矩阵运算\sqrt>}(2 * {log<矩阵运算\log>}(m))

例子:
x = 1:1000;
y = 10 * {sin<矩阵运算\sin>}(x/100);//这里假设真实数据为y
r = {rand<矩阵运算\rand>}(1.0,1,1000);
y0 = y + (r - 0.5)* 4.0;//加了噪音的y0
y1 = Wavelet1D_DataCleaning(y0, 9, "db6", 0.25);//降噪后的y1
{plot<矩阵运算\plot>}(x,y,x,y0,x,y1);//最终可以画图对比