EMD算法的简单介绍,matlab安装包的安装以及其应用![通俗易懂]

EMD算法的简单介绍,matlab安装包的安装以及其应用![通俗易懂]EMD算法的简单介绍:从编程的角度来看,EMD是两个while循环。固有模特分量(内层while循环)满足的两个条件:(1)极值点的个数和过零点的个数相等或者最多相差为1个;(2)上下包络线的平均值为零。余项的满足条件:单调函数(部分论文上有其他的条件,外层while循环)。具体的步骤如下:1)首先使用三次样条曲线分别拟合信号…

大家好,又见面了,我是你们的朋友全栈君。

EMD(经验模态分解)是由美国NASA的黄锷博士提出的一种信号处理方法。EMD将信号分解为频率按照从高到低的一系列模态分量,并由于噪声占主导的分量主要是高频信号,有效信号占主导的分量主要是低频信号,因而它们之间存在着一个分界点,当找到这个分界点时即可实现对信号的降噪。

EMD的每一个固有模态分量均满足以下两个条件:其极值点和过零点的个数相等或者相差至多为1,任意一点的上下包络线均值为零。EMD进行“筛分”步骤总结如下:

1)使用三次样条曲线拟合信号的极大值点和极小值点,形成了上下包络线,其次计算出上下包络线的均值,然后令信号减去该均值后则可得到了一个新的信号;再次重复上述方法求取上下包络线和均值以及新的信号,直至最后得到信号满足固有模态分量的两个条件;

2)将原始信号减去所有的固有模态分量得到的残余信号代入步骤1)运算,直至最后的残余信号为满足一定的条件时,则停止分解,其即为余项。

EMD安装包的下载:https://download.csdn.net/download/qq_27806947/10366188 其安装过程如下:

1)找到matlab安装目录下的toolbox,并把安装包粘贴进去!

2)添加maltab的路径,设置路径-添加并包含子文件夹-选中toolbox下的package_emd-保存-关闭如下图所示:

EMD算法的简单介绍,matlab安装包的安装以及其应用![通俗易懂]

3)在命令行中运行命令:install_emd即可!

这里使用EMD分解一个加速度信号,程序和结果如下图所示:

modos=emd(s1); %已经知道结果是2个固有模态分量和一个余项了,否则应该用for循环和size(modos)
figure
plot(t1,s1)
xlabel('时间/s');
ylabel('位移/m');
title('原始信号')


figure
subplot(3,1,1)
plot(t1,modos(1,:))
title('EMD分解的信号')

ylabel('IMF1/m');


subplot(3,1,2)
plot(t1,modos(2,:))

ylabel('IMF2/m');


subplot(3,1,3)
plot(t1,modos(3,:))
xlabel('时间/s');
ylabel('余项/m');

 

EMD算法的简单介绍,matlab安装包的安装以及其应用![通俗易懂]

EMD算法的简单介绍,matlab安装包的安装以及其应用![通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134717.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 后缀数组的学习(四):SA数组实现代码分析

    后缀数组的学习(四):SA数组实现代码分析

    2021年8月20日
    53
  • async/await 的理解和用法

    async/await 的理解和用法async/await是什么async/await是ES7提出的基于Promise的解决异步的最终方案。asyncasync是一个加在函数前的修饰符,被async定义的函数会默认返回一个Promise对象resolve的值。因此对async函数可以直接then,返回值就是then方法传入的函数。//async基础语法asyncfunctionfun0(){console.log(1);return1;}fun0().then(val=>{conso

    2022年7月12日
    15
  • mysql一主多从 读写分离_mysql读写分离原理

    mysql一主多从 读写分离_mysql读写分离原理简介:什么是主从复制,如何实现读写分离,看这篇你就懂了!思维导图文章已收录到我的Github精选,欢迎Star:https://github.com/yehongzhi/learningSummary前言在很多项目,特别是互联网项目,在使用MySQL时都会采用主从复制、读写分离的架构。为什么要采用主从复制读写分离的架构?如何实现?有什么缺点?让我们带着这些问题开始这段学习之旅吧!为什么使用主从复制、读写分离主从复制、读写分离一般是一起使用的。目的很简单,就是为了提高数据库的并发性能。你想,假设是单机,读

    2022年8月13日
    8
  • js中join方法

    js中join方法js中的join方法join方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。大白话:join方法可以用符不同的分隔符来构建这个字串。join方法值接受一个参数,即用作分隔符的字符串,然后返回所有数组项的字符串。vararr=["red","yellow","blue"];vararray=[];下面开始调用join方法1a…

    2022年4月29日
    82
  • 【javascript】使用happypack和thread-loader加速构建「建议收藏」

    【javascript】使用happypack和thread-loader加速构建「建议收藏」使用happypack/thread-loader加速构建标签:webpack为什么需要happypack/threadloader webpack需要处理的文件是非常多的,构建过程是一个涉及大量文件读写的过程。项目复杂起来了,文件数量变多之后,webpack构建就会特别满,而且运行在nodeJS上的webpack是单线程模型的,也就是说Webpack一个时刻只能处理一个任务,不能同时…

    2022年8月30日
    4
  • SQL Server 2008安装教程

    SQL Server 2008安装教程1,打开后点击左边项中的“安装”。2,点击右边第一项。3,点击“确定”。4,输入产品密匙PTTFM-X467G-P7RH2-3Q6CG-4DMYB后点击“下一步”。5,安装好后在下一界面点击“全选”并设置共享目录。6,接着是“实例配置”界面,在此界面选择“默认实例”,并设置实例根目录。7,到了“服务器配置”页面,我们需要根据自己所需进行相关设置。点击对所有服务使用

    2022年6月23日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号