matlab中wavedec2,Matlab中wavedec使用學習及詳解

matlab中wavedec2,Matlab中wavedec使用學習及詳解最近在使用對ECG訊號進行小波係數的提取,所以用到了wavedec這個matlab中内置函數。然後盡心學習,發現還挺高深,不是我學到的衹是一點皮毛,因爲要對一段波形進行特徵提取,所以我要看哪個小波係數最能代表波形特徵,然後進行保留。我使用的是:[C,L]=WAVEDEC(X,N,’wname’)這個會返回信號X在levelN(小波分解級數)的小波分解係數。輸出爲兩部分,第一部分C爲小波分解係…

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

最近在使用對ECG訊號進行小波係數的提取,所以用到了wavedec這個matlab中内置函數。然後盡心學習,發現還挺高深,不是我學到的衹是一點皮毛,因爲要對一段波形進行特徵提取,所以我要看哪個小波係數最能代表波形特徵,然後進行保留。

我使用的是:[C,L] = WAVEDEC(X,N,’wname’)

這個會返回信號X在level N(小波分解級數)的小波分解係數。

輸出爲兩部分,第一部分C爲小波分解係數(是一個矩陣形式),而L則是表示相應小波係數的個數(矩陣内係數的個數)。

我使用的level爲4 ” [C,L] = wavedec(t_signal, 4, ‘db8’)“

具體分解如圖所示:

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

生成的矩陣C爲:

0818b9ca8b590ca3270a3433284dd417.png

而生成的L則相應的cA4,cD4…..cD1中係數的個數。

盜一張圖:

0818b9ca8b590ca3270a3433284dd417.png

from:http://www.mathworks.com/help/wavelet/ref/wavedec.html

0818b9ca8b590ca3270a3433284dd417.png

更具體的算法如圖所示:

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

首先訊號進來,進行高低頻過濾,主要是通過卷積的方式,然後在進行降采樣,大概就是將上一步所生成樣本進行篩選。通過降采樣就可以得到近似係數(approximation coefficient)和細節係數(detail coefficient)。

下圖是我的信號進行一步步的每次分解后圖形的顯示,爲了方便直觀感受,我將每一步生成的小波係數分別進行顯示輸出,分別是N=1,2,3,4的時候進行輸出:

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

因爲這些生成的圖形的縱坐標不同,所以我將cD1,cD2,cD3,cD4,cA1輸出在同一張坐標軸上:

0818b9ca8b590ca3270a3433284dd417.png

顯然cA1, cD3, cD4的係數更爲明顯,更爲代表一個波形,所以要對這三個小波係數進行保留。

0818b9ca8b590ca3270a3433284dd417.png

下一步要把這個計算挪到C上面進行計算,正在尋找相應的源代碼。

有問題,大家可以一起交流。

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

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

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


相关推荐

  • css float属性用法_不属于float的常用属性

    css float属性用法_不属于float的常用属性clear:both表示不允许左右两边的floatclear:left表示不允许左边floatclear:right表示不允许右边float

    2022年9月3日
  • 用eclipse创建JAVA程序的步骤

    用eclipse创建JAVA程序的步骤如何使用Eclipse进行Java程序开发一般分为如下4个步骤:一、创建Java项目二、创建程序包三、编写Java源程序四、运行Java程序1、创建Java项目1.1打开eclipse1.2点击顶部菜单栏File->New->JavaProject,输入项目名2、创建程序包点击顶部菜单栏,File->New->Package,…

    2022年7月7日
  • getparameter方法的作用_have got和have的区别

    getparameter方法的作用_have got和have的区别getParameter和getAttribute区别(超详细分析)对getParameter过程,如下图:对getAttribute过程,如下图:两者区别:①getParameter()获取的是客户端设置的数据。getAttribute()获取的是服务器设置的数据。②getParameter()永远返回字符串getAttribute()返…

    2022年10月24日
  • onedrive免费扩容25t_onedrive怎么免费扩容1T

    onedrive免费扩容25t_onedrive怎么免费扩容1TOneDrive存储我们都知道没有开office365,自己onedrive的储存空间只有5GB,onenote做笔记以及用onedrive同步文档空间不够,但是又不想开office365;所以在网上看到别人说onedrive可以推荐别人注册,可以扩容10GB;加起来一共15GB,用来做笔记完全够用;或许有大佬会说可以弄到Office教育版的微软账号,有5T或1T的存储空间,但是这个会涉及到账号里面文档的安全性,这种账号是属于教育机构的,全局管理员可以有权查看里面储存的文件并且有权删去账号,这样的

    2022年9月10日
  • java垃圾回收机制原理_java垃圾回收的缺点

    java垃圾回收机制原理_java垃圾回收的缺点  最近做一个ETL的项目模块,经常由于查询数据量比较大用消息中间件MQ时引起了内存溢出的报错。做完后没事研究了一下JVM和垃圾回收的相关知识点。一:垃圾回收机制的意义java 语言中一个显著的特点就是引入了java回收机制,是c++程序员最头疼的内存管理的问题迎刃而解,它使得java程序员在编写程序的时候不在考虑内存管理。由于有个垃圾回收机制,java中的额对象不在有“作用域”的概念,只有…

    2022年10月13日
  • SQLServer图数据库一些优点

    SQLServer图数据库一些优点

    2021年11月26日

发表回复

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

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