本文是在下面博客的基础上改进的,原博主提供的工具箱已经不能使用了,个人慢慢摸索后最终使程序正常运行了,本人使用MATLAB 2016a软件。
https://blog.csdn.net/qrlhl/article/details/52213135#commentsedit
EMD简介及原理等的讲解请查看原博客,此处不再赘述,本文主要介绍MATLAB实现的过程。
1.Matlab工具箱安装
个人在实现原博客中的例子时,没有专门再安装时频分析工具箱,不知是以前做其他的项目时已经安装了还是2016版已经默认自带了(如果需要额外安装,请提醒我改正一下),我只安装了EMD工具箱(下载地址:https://download.csdn.net/download/u012115453/10865683)。
(1)解压下载的工具箱,将其复制到matlab的toolbox文件夹下;
(2)建立搜索路径,matlab->设置路径->添加并包含子文件夹->找到在toolbox目录下的emd->保存->关闭
(3)在MATLAB命令行窗口输入“install_emd.m”运行就可以啦。
2、程序演示
这里还是使用原博客的例子,简单易懂。
fs = 1000;
ts = 1/fs;
t=0:ts:0.3;
z = sin(2*pi*10*t) + sin(2*pi*100*t);
imf=emd(z);
emd_visu(z,t,imf) % EMD专用画图函数
运行后得到以下结果: