一维时间序列信号的多小波分析方法(MATLAB R2021B)

多小波是小波理论新的发展,它是指该多小波是由两个或两个以上的函数作为尺度函数而生成的。鉴于多小波这个名词的解释,将前面讲到的那些由一个函数作为尺度函数而生成的小波叫做单小波,来与多小波解释进行区分。单小波又叫纯量小波。

以谐波检测为例,在运用单小波进行谐波检测时,只需要选定需要使用的小波种类,然后对信号进行采样,接着就可以对信号进行分解了。但是,多小波并没有这么简单,在选定好多小波之后不能直接就运用该多小波对电网电流信号进行分解,而是应该在运用分解公式分解信号之前对数据进行先处理。这是由于我们需要检测的电网信号一般它的维度是一维的,而用来检测电网信号的多小波工具无论其尺度函数还是小波函数都是r维的,如果不先将电网信号通过一定线性变换变为与多小波维度相同的r维,那么该电网信号就无法与r维多小波这样检测工具相匹配,就无法对该信号进行检测,因此在分解以前必须进行对电网信号进行预处理。较典型的预处理法目前有两大类:

(1)预滤波方法。该方法的主要思想是:在分解以前,首先用一个预滤波器将采样得到的电网电流信号按2行输出,接着再乘以分组滤波器,来达到被检测信号与多小波之间维数匹配的目的。

(2)平衡预处理方法。当所测量的信号是经过预滤波器初始化之后的,将形成矢量数据。多小波分解中的低通滤波器存在不平衡信道,当矢量数据中通过低通信道时,会产生尺度系数与小波系数混合的现象,若在这样的情况下仅用尺度系数进行信号重构,那么就会产生强烈的震荡。对不平衡的多小波进行平衡,是解决不平衡的基本思想。运用在电力系统信号检测的具体方法首先是对采样得到的电网电流信号进行简单的分解,常常将电网电流信号分为奇偶两个部分。经过简单处理的采样信号,再以平衡处理,处理对象为在运用多小波进行分解和重构时要用到的滤波矩阵。

鉴于此,采用多小波对一维时间序列信号进行分解重构,运行环境为MATLAB R2021B。

Matlab 复制代码
% Loading the four-channel single filter bank response coeficients
G0 = multiwavelet.S4KF{1};
G1 = multiwavelet.S4KF{2};
G2 = multiwavelet.S4KF{3};
G3 = multiwavelet.S4KF{4};

% applying the extension on input signal
ad = length(G0);
extin = wextend('ac', extension, in, ad);

% Calculating length of output signal after convolution and creating
% variables with calculated length
outLen = conv(extin(1, :), G0, 'full');
c11_c = zeros(size(extin, 1), size(outLen, 2));
c12_c = zeros(size(extin, 1), size(outLen, 2));
d11_c = zeros(size(extin, 1), size(outLen, 2));
d12_c = zeros(size(extin, 1), size(outLen, 2));

% Performing convolution of input signal and response coeficients of
% four-channel single filter bank
for i = 1:size(extin, 1)
    c11_c(i, :) = conv(extin(i, :), G0, 'full');
    c12_c(i, :) = conv(extin(i, :), G1, 'full');
    d11_c(i, :) = conv(extin(i, :), G2, 'full');
    d12_c(i, :) = conv(extin(i, :), G3, 'full');
完整代码可通过知乎学术咨询获得:https://www.zhihu.com/consult/people/792359672131756032?isMe=1
end

工学博士,担任《Mechanical System and Signal Processing》《中国电机工程学报》《控制与决策》等期刊审稿专家,擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

相关推荐
微风中的麦穗28 分钟前
【MATLAB】MATLAB R2025a 详细下载安装图文指南:下一代科学计算与工程仿真平台
开发语言·matlab·开发工具·工程仿真·matlab r2025a·matlab r2025·科学计算与工程仿真
2601_9491465337 分钟前
C语言语音通知API示例代码:基于标准C的语音接口开发与底层调用实践
c语言·开发语言
开源技术1 小时前
Python Pillow 优化,打开和保存速度最快提高14倍
开发语言·python·pillow
学嵌入式的小杨同学1 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
wearegogog1231 小时前
基于MATLAB的CNN图像分类算法实现
matlab·分类·cnn
Niuguangshuo1 小时前
深入解析Stable Diffusion基石——潜在扩散模型(LDMs)
人工智能·计算机视觉·stable diffusion
迈火1 小时前
SD - Latent - Interposer:解锁Stable Diffusion潜在空间的创意工具
人工智能·gpt·计算机视觉·stable diffusion·aigc·语音识别·midjourney
wfeqhfxz25887821 小时前
YOLO13-C3k2-GhostDynamicConv烟雾检测算法实现与优化
人工智能·算法·计算机视觉
芝士爱知识a1 小时前
2026年AI面试软件推荐
人工智能·面试·职场和发展·大模型·ai教育·考公·智蛙面试
Li emily2 小时前
解决港股实时行情数据 API 接入难题
人工智能·python·fastapi