使用MATLAB实现样本熵算法.docxVIP

  • 21
  • 0
  • 约1.03千字
  • 约 3页
  • 2023-09-11 发布于辽宁
  • 举报
地理与生物信息学院 2011/2012学年第二学期 实验报告课程名称:医学信号处理实验名称:样本熵算法实现班级学号: 学生姓名:AAAAAAA指导教师:BBBBB 期: 2012年6月 一、实验题目: 实现样本熵算法并能够在Matlab平台上编写出程序,用样本熵算法分析医学信号并得出结果。 二、实验要求: 可以熟练使用Matlab进行编程。 三、实验内容: 对一个N点的时间序列1^(J):1VjN}, 构成N-m+1个矢量Xm⑴{i11-N-m+1},其中Xm①={(i+k):0km-1}是从u(i)到u(i+m-1)的m个数据点的矢量。 两个矢量的距离定义为: d[u(i),u(j)]=max{|x(i+k)—u(j+k)}0km-1} 即它们的对应的标量分量的最大差额。 Bi为距离矢量Xm①为r的矢量Xm(j)的数量,A.为距离矢量Xm+1(i)为r的矢量Xm+1(j)的数量。则样本熵定义为: SampEn=-log(AB) 其中r为时间序列u(j)大小的标准差乘以0.15,即: r=0.15xSTD(u(j)) 四、实验过程: 实现代码: clear;yf=textread(d:\nsrdb-i6786.txt);N=i000;random=fix(rand(1)*10000);X(1:N)=yf(random:(random-1+N),2)*100+2100;r=0.巧*std(X);A=0;B=0;m=3;fork=1:mY(1:N-m+1,k)=X(k:(N-m+k));endfori=1:N-m forj=(i+1):N-m+1dij(1:m)=abs(Y(i,1:m)-Y(j,1:m));d=max(dij);if(d=r)B=B+1;end endendm=m+1;fork=1:mY(1:N-m+1,k)=X(k:(N-m+k));endfori=1:N-m forj=(i+1):N-m+1dij(1:m)=abs(Y(i,1:m)-Y(j,1:m));d=max(dij);if(d=r)A=A+1;end endend实验结果: SampEn=0.1784六、实验小结: 通过实验了解了很多有关样本熵算法的公式,样本熵定义为:SampEn=-log(A..B)。这对医学信号处理这门课的学习也有很大帮助,此次实验的主要内容是使用Matlab软件编写、实现样本熵算法并处理生物医学信号。

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档