zoukankan      html  css  js  c++  java
  • The algorithm of entropy realization

    近似熵的一种快速实用算法

    Pincus提出的近似熵算法中有很多冗余的计算,效率低,速度慢,不利于实际应用,洪波等人在定义的基础上引入二值距离矩阵的概率,提出了一种实用快速的算法。

    1. function ApEn=EntropyCompute(sig,m,r0)
    2. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3. % 计算一维信号的近似熵,采用快速算法
    4. % sig: 待求近似熵的源信号
    5. % m: 一般取 2
    6. % r0: 一般取0.1 ~ 0.25
    7. % Ref: 近似熵:一种应用于短数据的的复杂性度量,杨福生
    8. % 近似熵及其在机械设备故障诊断中的应用,胥永刚
    9. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    10. N = size(sig,1);
    11. r=r0*std(sig);
    12. d=zeros(N,N);
    13. %%% 计算距离矩阵 %%%
    14. for i=1:N
    15. d(i,:)=abs(sig(i)-sig) < r;
    16. end
    17. %%% 计算C2 %%%
    18. c2=zeros(1,N-m+1);
    19. for i=1:N-m+1
    20. for j=1:N-1;
    21. buf = d(i,j) & d(i+1,j+1);
    22. c2(i)=c2(i)+buf;
    23. end
    24. end
    25. Fi(1)=sum(log(c2))/(N-m+1);
    26. m=m+1;
    27. %%% 计算C3 %%%
    28. c3=zeros(1,N-m+1);
    29. for i=1:N-m+1
    30. for j=1:N-2;
    31. c3(i)=c3(i)+(d(i,j) & d(i+1,j+1) & d(i+2,j+2));
    32. end
    33. end
    34. Fi(2)=sum(log(c3))/(N-m+1);
    35. ApEn=Fi(1)-Fi(2);
    36. return;




  • 相关阅读:
    golang并发
    golang接口
    golang方法
    golang函数
    微信小程序请求封装
    使用vue实现打印功能时出现多余空白页的问题
    mybatis 基本配置
    sql调优
    触发器 索引
    收藏 故事形式讲解javaScript中创建对象和Java创建对象的区别
  • 原文地址:https://www.cnblogs.com/zeweiwu/p/4752744.html
Copyright © 2011-2022 走看看