MATLAB实现基本尺度熵算法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE PAGE 2 地理与生物信息学院 2011 / 2012 学年第 二 学期 实 验 报 告 课程名称: 医学信号处理 实验名称: 基本尺度熵算法实现 班 级 学 号: 学 生 姓 名: AAAA 指 导 教 师: BB 日 期: 2012 年 6 月 实验题目: Matlab软件处理生物医学数字信号(熵方法2) 二、实验要求: 基本尺度熵算法实现 实验内容: 能使用Matlab软件编写、实现基本尺度熵算法并处理生物医学信号。 实验过程: 对于数据长度为的时间序列: , 把该时间序列嵌入维相空间[19]。对于每一个,取个点组成一维矢量: , (1) 这里是嵌入维数,是延迟时间。取,那么共有个维矢量。对于每一个维矢量,计算出基本尺度,定义为维矢量中所有相邻点数据间隔(或大小)的差值方均根值,即 . (2) 根据基本尺度选择符号划分标准为,然后把每一个维矢量转换成维矢量符号序列={ }, ()。具体的转换如下: 这里。代表第个维矢量的平均值,代表第个维矢量的基本尺度,符号0,1,2,3 仅仅作为每一个划分区域的记号,具体数值的大小并没有实际的意义。是一个特殊参数。值从0.1到2都可以。 为了计算基本尺度熵值,先统计维矢量符号序列的分布几率。包含0,1,2,3四种符号的维矢量符号序列(-共有种不同的组合形式。统计每一种不同的组合形式在整个个维矢量所占的几率: 其中,#表示个数。 维矢量的基本尺度熵定义为: , (4) 算法代码 clear; yf=textread(d:\Apb_100_5.txt); N=5000; random=fix(rand(1)*10000); u(1:N)=yf(random:(random-1+N),2)*100+2100; m=3;L=1;a=1; for i=1:N-m+1 for k=1:m X(1:N-m+1,k)=u(k:(N-m+k)); end bs=0; for j=1:m-1 bs=bs+(u(i+j)-u(i+j-1)).^2; end BS(i)=sqrt(bs/(m-1)); clear bs; uave(i)=mean(X(i,:)); for k=1:m if u(i+k-1)uave(i)+a*BS(i) S(i,k)=1; else if u(i+k-1)uave(i) S(i,k)=0; else if u(i+k-1)uave(i)-a*BS(i) S(i,k)=2; else S(i,k)=3; end end end end SX(i)=100*S(i,1)+10*S(i,2)+S(i,3); end p=hist(SX,unique(SX))/(N-m+1); H=-sum(p.*log2(p)) 实验结果: 对数据进行采样分析,求得其3维矢量的基本尺度熵为: 当a=1时,H=3.7355;当a=0.15时,H=3.7768 五、实验小结: 此次实验使用Matlab软件编写、实现基本尺度熵算法并处理生物医学信号。关键是基本尺度选择符号划分标准为,然后把每一个维矢量转换成维矢量符号序列。通过此次试验,对基本尺度熵算法有所了解,进一步熟悉了Matlab编程。

文档评论(0)

191****1763 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档