• 振川
    了解作者
  • matlab
    开发工具
  • 4KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 1
    下载次数
  • 2018-04-04 11:46
    上传日期
该算法可自适应地将信号分解成若干单分量信号
EEMD.rar
  • dist_value.m
    847B
  • extrema.m
    2.1KB
  • significance.m
    2.9KB
  • ifndq.m
    1.8KB
  • eemd.m
    2KB
内容介绍
% function [sigline, logep] = significance(imfs, percenta) % % that is used to obtain the "percenta" line based on Wu and % Huang (2004). % % NOTE: For this program to work well, the minimum data length is 36 % % INPUT: % percenta: a parameter having a value between 0.0 ~ 1.0, e.g., 0.05 % represents 95% confidence level (upper bound); and 0.95 % represents 5% confidence level (lower bound) % imfs: the true IMFs from running EMD code. The first IMF must % be included for it is used to obtain the relative mean % energy for other IMFs. The trend is not included. % OUTPUT: % sigline: a two column matrix, with the first column the natural % logarithm of mean period, and the second column the % natural logarithm of mean energy for significance line % logep: a two colum matrix, with the first column the natural % logarithm of mean period, and the second column the % natural logarithm of mean energy for all IMFs % % References can be found in the "Reference" section. % % The code is prepared by Zhaohua Wu. For questions, please read the "Q&A" section or % contact % zwu@fsu.edu % function [sigline, logep] = significance(imfs, percenta) nDof = length(imfs(:,1)); pdMax = fix(log(nDof))+1; pdIntv = linspace(1,pdMax,100); yBar = -pdIntv; for i=1:100, yUpper(i)=0; yLower(i)= -3-pdIntv(i)*pdIntv(i); end for i=1:100, sigline(i,1)=pdIntv(i); yPos=linspace(yUpper(i),yLower(i),5000); dyPos=yPos(1)-yPos(2); yPDF=dist_value(yPos,yBar(i),nDof); sum = 0.0; for jj=1:5000, sum = sum + yPDF(jj); end jj1=0; jj2=1; psum1=0.0; psum2=yPDF(1); pratio1=psum1/sum; pratio2=psum2/sum; while pratio2 < percenta, jj1=jj1+1; jj2=jj2+1; psum1=psum1+yPDF(jj1); psum2=psum2+yPDF(jj2); pratio1=psum1/sum; pratio2=psum2/sum; yref=yPos(jj1); end sigline(i,2) = yref + dyPos*(pratio2-percenta)/(pratio2-pratio1); sigline(i,2) = sigline(i,2) + 0.066*pdIntv(i) + 0.12; end sigline=1.4427*sigline; columns=length(imfs(1,:)); for i=1:columns, logep(i,2)=0; logep(i,1)=0; for j=1:nDof, logep(i,2)=logep(i,2)+imfs(j,i)*imfs(j,i); end logep(i,2)=logep(i,2)/nDof; end sfactor=logep(1,2); for i=1:columns, logep(i,2)=0.5636*logep(i,2)/sfactor; % 0.6441 end for i=1:3, [spmax, spmin, flag]= extrema(imfs(:,i)); temp=length(spmax(:,1))-1; logep(i,1)=nDof/temp; end for i=4:columns, omega=ifndq(imfs(:,i),1); sumomega=0; for j=1:nDof, sumomega=sumomega+omega(j); end logep(i,1)=nDof*2*pi/sumomega; end logep=1.4427*log(logep);
评论
    相关推荐
    • EMD.rar
      EMD算法的matlab代码,非常详细,每一步都有解释
    • 集成经验模态分解EEMD代码
      EEMD是Ensemble Empirical Mode Decomposition的缩写,中文是集合经验模态分解,是针对EMD方法的不足,提出了一种噪声辅助数据分析方法。EEMD分解原理是当附加的白噪声均匀分布在整个时频空间时,该时频空间就由...
    • matlabcnhelp.rar
      matlab中文帮助很难找的,快速下载
    • MobilePolice.rar
      移动警察,车牌识别,车牌定位系统源代码,已经运用在移动车载稽查系统中。
    • SVM(matlab).rar
      支持向量机(SVM)实现的分类算法源码[matlab]
    • svm.zip
      用MATLAB编写的svm源程序,可以实现支持向量机,用于特征分类或提取
    • Classification-MatLab-Toolbox.rar
      模式识别matlab工具箱,包括SVM,ICA,PCA,NN等等模式识别算法,很有参考价值
    • VC++人脸定位实例.rar
      一个经典的人脸识别算法实例,提供人脸五官定位具体算法及两种实现流程.
    • QPSK_Simulink.rar
      QPSK的Matlab/Simulink的调制解调仿真系统,给出接收信号眼图及系统仿真误码率,包含载波恢复,匹配滤波,定时恢复等重要模块,帮助理解QPSK的系统
    • LPRBPDemo2009KV.rar
      车牌识别,神经网络算法,识别率高达95%,识别时间低于80ms。